Create Widget (Platform MCP)
Adds a new data visualization widget to a monday.com dashboard or board view with type-specific configuration settings using the Platform MCP.
Use this tool to add a widget to an existing dashboard or board view. Widgets are the building blocks of monday.com dashboards — they visualize board data as charts, counters, calendars, timelines, Gantt charts, and list views.
Always call
all_widgets_schemabefore creating a widget. Each widget type has its own required settings structure. Providing incorrect or incomplete settings will result in an error. Fetch the schema first, then construct your settings object to match the widget type you want to create.
The recommended workflow is:
- Use
all_widgets_schemato retrieve the JSON schema for all widget types. - Build a
settingsobject that conforms to the schema for your chosenwidget_kind. - Call
create_widgetwith the dashboard ID and the validated settings.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| parent_container_id | string | Yes | ID of the parent container — a dashboard ID or a board view ID. |
| parent_container_type | string | Yes | Type of the parent container. Must be DASHBOARD or BOARD_VIEW. |
| widget_kind | string | Yes | The type of widget to create. One of: APP_FEATURE, BATTERY, CALENDAR, CHART, GANTT, LISTVIEW, NUMBER. |
| widget_name | string | Yes | Display name for the widget (1–255 UTF-8 characters). |
| settings | object | No | Widget-specific configuration as a JSON object. Must conform to the schema for the specified widget_kind. Use all_widgets_schema to retrieve the required structure for each type. |
Example
Add a NUMBER (counter) widget to dashboard 37055164 that counts items from board 18394529013:
{
"parent_container_id": "37055164",
"parent_container_type": "DASHBOARD",
"widget_kind": "NUMBER",
"widget_name": "Item Count",
"settings": {
"counter_data": {
"calculation_type": "count",
"column_ids_per_board": {
"18394529013": []
},
"counter_type": "sum"
}
}
}The tool returned widget ID 666707475, confirming the widget was created on dashboard 37055164 with the name Item Count.
Programmatic equivalent
Use the GraphQL API to achieve the same result:
mutation {
create_widget(
board_id: 37055164
widget_type: number
name: "Item Count"
settings: "{\"counter_data\":{\"calculation_type\":\"count\",\"counter_type\":\"sum\"}}"
) {
id
name
type
}
}For full documentation, see Widgets.
Updated about 11 hours ago
