Webflow MCP: No write support for "selectedItems" component props
Summary
The Webflow MCP server's Data API tools can read the value of a component instance prop typed selectedItems (a manually curated list of specific CMS item IDs), but there is no supported way to write a new value to that prop type. This blocks any MCP-driven workflow that needs to programmatically select specific CMS items into a component — e.g. choosing which blog posts appear in a "related posts" grid.
Where this shows up
Component: Blog Posts Grid (custom component, used across our Labs service pages)
Prop: Posts to Show — type: "selectedItems", confirmed via data_component_tool → get_component:
{
"id": "a51e5b2e-374c-cc00-d289-77695d5c1e51",
"type": "selectedItems",
"name": "Posts to Show"
}
Reading the current value works fine via data_component_props_tool → get_component_instance_props:
{
"propId": "a51e5b2e-374c-cc00-d289-77695d5c1e51",
"value": { "itemIds": ["68ded7801746417be58025bf", "684c415d708dedcfc8790180", "65c2d1796e83ec0903eea99f"] },
"name": "Posts to Show"
}
What was attempted
data_component_props_tool → set_component_instance_prop_values only accepts these value types: string | number | boolean | null | link | video | richText | bindable. There is no selectedItems (or equivalent reference-set/multi-item) option in the schema, and no field in the bindable variant that accepts an array of specific item IDs.
Attempt 1 — omit type entirely / pass raw itemIds: rejected at the schema-validation layer (additionalProperties: false on the values object), never reaches the server.
Attempt 2 — use type: "bindable" with binding_source_type: "cms", pointing at the same collection/field the prop already displayed:
{
"prop_id": "a51e5b2e-374c-cc00-d289-77695d5c1e51",
"type": "bindable",
"binding_source_type": "cms",
"binding_collection_id": "65c2d1796e83ec0903eea555",
"binding_field_id": "080c5205de75418f997e425c4acfe0f1"
}
Result:
Error: Tool set_component_instance_prop_values failed: Element is not inside a CMS context
This binding mode requires the element to live on a CMS collection template page (or inside a Collection List), which correctly doesn't apply here — these are static, non-collection pages. But it also means there's no fallback path.
Impact
Any component with a selectedItems-type prop (curated CMS references, as opposed to a dynamic filtered list) cannot have that prop set via the MCP Data API on a static page. The only current workaround is manually selecting the items in the Designer canvas UI, which defeats the purpose of programmatic/agent-driven editing.
Suggested fix
Add a selectedItems (or referenceSet) value type to set_component_instance_prop_values, accepting something like:
{
"prop_id": "...",
"type": "selectedItems",
"selected_item_ids": ["itemId1", "itemId2", "itemId3"]
}
mirroring the shape already returned by the read endpoint.
Environment
- Webflow MCP connector (Data API surface), accessed via Claude's Webflow MCP integration
- Site: Fullstack (
63ea859d3ade03089d7e65c6)
- Component: "Blog Posts Grid" (
640b5309-6dd8-5feb-6816-53d2c0c01db2), group "0. Labs"
- Date encountered: 2026-08-19/20
Webflow MCP: No write support for "selectedItems" component props
Summary
The Webflow MCP server's Data API tools can read the value of a component instance prop typed
selectedItems(a manually curated list of specific CMS item IDs), but there is no supported way to write a new value to that prop type. This blocks any MCP-driven workflow that needs to programmatically select specific CMS items into a component — e.g. choosing which blog posts appear in a "related posts" grid.Where this shows up
Component: Blog Posts Grid (custom component, used across our Labs service pages)
Prop: Posts to Show —
type: "selectedItems", confirmed viadata_component_tool → get_component:{ "id": "a51e5b2e-374c-cc00-d289-77695d5c1e51", "type": "selectedItems", "name": "Posts to Show" }Reading the current value works fine via
data_component_props_tool → get_component_instance_props:{ "propId": "a51e5b2e-374c-cc00-d289-77695d5c1e51", "value": { "itemIds": ["68ded7801746417be58025bf", "684c415d708dedcfc8790180", "65c2d1796e83ec0903eea99f"] }, "name": "Posts to Show" }What was attempted
data_component_props_tool → set_component_instance_prop_valuesonly accepts these value types:string | number | boolean | null | link | video | richText | bindable. There is noselectedItems(or equivalent reference-set/multi-item) option in the schema, and no field in thebindablevariant that accepts an array of specific item IDs.Attempt 1 — omit type entirely / pass raw itemIds: rejected at the schema-validation layer (additionalProperties: false on the values object), never reaches the server.
Attempt 2 — use
type: "bindable"withbinding_source_type: "cms", pointing at the same collection/field the prop already displayed:{ "prop_id": "a51e5b2e-374c-cc00-d289-77695d5c1e51", "type": "bindable", "binding_source_type": "cms", "binding_collection_id": "65c2d1796e83ec0903eea555", "binding_field_id": "080c5205de75418f997e425c4acfe0f1" }Result:
This binding mode requires the element to live on a CMS collection template page (or inside a Collection List), which correctly doesn't apply here — these are static, non-collection pages. But it also means there's no fallback path.
Impact
Any component with a
selectedItems-type prop (curated CMS references, as opposed to a dynamic filtered list) cannot have that prop set via the MCP Data API on a static page. The only current workaround is manually selecting the items in the Designer canvas UI, which defeats the purpose of programmatic/agent-driven editing.Suggested fix
Add a
selectedItems(orreferenceSet) value type toset_component_instance_prop_values, accepting something like:{ "prop_id": "...", "type": "selectedItems", "selected_item_ids": ["itemId1", "itemId2", "itemId3"] }mirroring the shape already returned by the read endpoint.
Environment
63ea859d3ade03089d7e65c6)640b5309-6dd8-5feb-6816-53d2c0c01db2), group "0. Labs"