
Skill
webflow-mcp:designer-tools
build and manage Webflow Designer elements
Description
Build and manage pages, elements, components, and styles in Webflow Designer. Use when adding sections, creating layouts, building elements, inspecting or updating components, viewing what's inside a component, restructuring pages, creating new pages, previewing page structure, styling elements, or managing component properties. Building, styling, and inspecting run headlessly against an explicit page ID — no Designer connection needed. Designer is required for `designer_tool` actions (reading/switching the page open on canvas, interactively selecting an element, creating page folders, opening a component's canvas view) and for `element_snapshot_tool` visual previews.
SKILL.md
Page Structure
Build, inspect, and manage page elements and components in the Webflow Designer.
Important Note
ALWAYS use Webflow MCP tools for all operations:
- Use Webflow MCP's
webflow_guide_toolto get best practices before any other tool call - Use Webflow MCP's
data_sites_toolwith actionlist_sitesto identify the target site - Use Webflow MCP's
data_pages_toolwith actionlist_pagesto find the target page by name or slug — headless, works against any page - Use Webflow MCP's
data_pages_toolwith actioncreate_pageto create new pages — headless - Use Webflow MCP's
data_element_toolwith actionget_all_elementsorquery_elementsto retrieve or filter page elements — headless, pass the page's ID directly - Use Webflow MCP's
data_element_builderto create new elements — headless, pass the page's ID and a parent element ID - Use Webflow MCP's
data_element_toolwith actionset_attributes,set_text,set_style, orset_linkto modify elements — headless - Use Webflow MCP's
element_snapshot_toolto get visual previews of elements before and after changes — this is a Designer tool and requires a Designer connection - Use Webflow MCP's
data_style_toolto create and update styles on elements — headless - Use Webflow MCP's
webflow_guide_toolto check supported style properties - Use Webflow MCP's
data_component_toolwith actionget_all_componentsorquery_componentsto list site components — headless - Use Webflow MCP's
data_component_toolwith actionget_componentto inspect a component's metadata — headless - Use Webflow MCP's
data_element_toolscoped withscope_component_idto inspect or edit a component's internal elements (its "content") — headless - Use Webflow MCP's
data_component_props_toolto manage prop definitions and set prop values on component instances — headless - Use Webflow MCP's
data_component_variants_toolto manage variants and per-variant style overrides — headless - Use Webflow MCP's
data_component_toolwith actioninsert_component_instanceorunlink_component_instanceto manage component instances on a page — headless, not Designer-gated - Use Webflow MCP's
designer_toolonly for actions that need a live canvas:get_current_page/switch_page(what's open in Designer right now),select_element/get_selected_element(interactive canvas selection),create_page_folder(page folders are Designer-only, unlike page creation itself), andopen_component_view(viewing a component's canvas) - DO NOT use any other tools or methods for Webflow operations
- All tool calls must include the required
contextparameter (15-25 words, third-person perspective) - Designer connection is required for
designer_toolactions and forelement_snapshot_tool. Building, styling, inspecting, and updating elements, components, props, and variants (thedata_tools) runs headlessly against an explicit page ID fromdata_pages_tool'slist_pages— but the before/after visual snapshots this skill relies on for safe mutation need Designer open and connected. If Designer isn't available, skip the snapshot steps and rely onquery_elementsoutput to describe changes instead.
Instructions
Phase 1: Discovery
- Call
webflow_guide_toolfirst — always the first MCP tool call in any workflow - Get the site: Use
data_sites_toolwith actionlist_sitesto identify the target site. If only one site exists, use it automatically. - Get the target page: Use
data_pages_toolwith actionlist_pagesto find the page by name or slug — no Designer connection needed. If the user is actively working in an open Designer session and wants "the page I have open," usedesigner_toolwith actionget_current_pageinstead. - If user specifies a different page: Just use that page's ID directly in later calls — no page "switch" is needed for headless operations. Only use
designer_toolwith actionswitch_pageif the user wants the Designer canvas itself to navigate there. - Identify the task type:
- Inspect: List elements, view structure, preview → go to Phase 2
- Build/Modify/Delete: Add, update, restructure, remove → go to Phase 3
- Components: List, inspect, update → go to Phase 2 or Phase 3 depending on read vs write
Phase 2: Inspection (read-only operations)
- List page elements: Use
data_element_toolwithget_all_elements(orquery_elementsto filter by type/text/attribute) to retrieve page structure, passing the page ID from Phase 1. Present a summary of sections, elements, and nesting. - Preview elements: Use
element_snapshot_toolto get visual previews of specific sections — requires Designer - List components: Use
data_component_toolwith actionget_all_componentsorquery_componentsto list all site components - Inspect a component: Use
data_component_toolwith actionget_componentfor metadata (props, variants), ordata_element_toolwithscope_component_idset to the component's ID to inspect its internal elements
Phase 3: Planning (before any mutation)
Before creating, updating, or deleting anything:
10. Snapshot current state: Use element_snapshot_tool to capture the area being changed — requires Designer; if unavailable, describe the current state from query_elements output instead
11. Present the plan: Describe exactly what will be created, modified, or deleted
12. Request explicit confirmation: Ask the user before proceeding:
- "Would you like me to proceed with these changes?"
- "Shall I go ahead and create this?"
- "Do you want me to apply these changes?"
- "Before I make changes, here's what I'll do: plan. Confirm to proceed."
13. For destructive operations (delete, restructure): Require "confirm" or "delete", warn about child elements that will also be affected
Phase 4: Execution (after confirmation only)
- Build elements: Use
data_element_builderto create new elements (max 3 levels deep), passing the page ID and the parent element ID. For deeper structures, build in multiple passes. - Style elements: Use
data_style_toolto apply or update styles on created or existing elements - Modify elements: Use
data_element_toolwithset_attributes,set_text,set_style, orset_linkto update attributes, text, or links - Update components: Use
data_element_tool(scoped withscope_component_id) to edit a component's internal elements;data_component_props_toolto change prop definitions or instance prop values;data_component_variants_toolto manage variants;data_component_toolwithinsert_component_instance/unlink_component_instanceto add or unlink instances on a page - Create pages: Use
data_pages_toolwith actioncreate_page. To create a page folder, usedesigner_toolwith actioncreate_page_folder— this specific action requires a Designer connection
Phase 5: Verification
- Snapshot the result: Use
element_snapshot_toolto capture the new state — requires Designer; if unavailable, summarize the change from the tool response instead - Report what changed: Summarize the changes made
Examples
Example 1: List page elements
User: "Show me all elements on the homepage"
- Call
webflow_guide_toolfor best practices - Call
data_sites_toolwithlist_sitesto identify the site - Call
data_pages_toolwithlist_pagesto find the homepage's page ID - Call
data_element_toolwithget_all_elements(using that page ID) to retrieve page structure - Present organized summary of sections, elements, and nesting
Example 2: Build a hero section
User: "Add a hero section with a heading and CTA button"
- Call
webflow_guide_toolfor best practices - Call
data_sites_toolwithlist_sitesto identify the site - Call
data_pages_toolwithlist_pagesto find the target page's ID - Call
element_snapshot_toolto capture current state - Present plan: "I'll create a Section with a Heading and Button. Would you like me to proceed?"
- After confirmation: call
data_element_builderwith nested structure - Call
data_style_toolto apply styles (padding, background, typography) - Call
element_snapshot_toolto show the result
Example 3: Update a component
User: "Update the footer copyright text to 2026"
- Call
webflow_guide_toolfor best practices - Call
data_sites_toolwithlist_sitesto identify the site - Call
data_component_toolwithquery_componentsto find the footer component - Call
data_element_tool(scoped withscope_component_id) to inspect its internal elements and find the copyright text element - Present: "I'll update the copyright text from '2025' to '2026'. Would you like me to proceed?"
- After confirmation: call
data_element_toolwithset_text(scoped withscope_component_id) - Report the change
Example 4: Restructure a section
User: "Restructure the hero section layout"
- Call
webflow_guide_toolfor best practices - Call
data_sites_toolwithlist_sitesto identify the site - Call
data_pages_toolwithlist_pagesto find the target page's ID - Call
element_snapshot_toolto capture current hero section - Call
data_element_toolwithquery_elementsto inspect current structure - Present restructuring plan with before/after description
- After confirmation: apply changes using
data_element_tool(move_element,set_style, etc.) and/ordata_element_builder - Call
element_snapshot_toolto show the result
Example 5: Create a two-column layout
User: "Create a two-column layout with text on left and image on right"
- Call
webflow_guide_toolfor best practices - Call
data_sites_toolwithlist_sitesto identify the site - Call
data_pages_toolwithlist_pagesto find the target page's ID - Call
element_snapshot_toolto capture current state - Present plan: "I'll create a Grid with two columns — text block on left, image on right. Would you like me to proceed?"
- After confirmation: call
data_element_builderwith grid structure - Call
data_style_toolto set grid layout properties - Call
element_snapshot_toolto show the result
Guidelines
webflow_guide_toolalways first — before any other MCP tool in every workflow- Snapshot before and after — use
element_snapshot_toolbefore mutations and after to show results - Never silently mutate — every write operation requires explicit user confirmation
- Headless for building and editing — get the page ID once via
data_pages_tool'slist_pages, then pass it directly todata_element_tool,data_element_builder, anddata_style_tool. Reach fordesigner_toolonly when the task specifically needs the live canvas (current-page detection, interactive selection, page folders, component canvas view). - Visual snapshots need Designer —
element_snapshot_toolis a Designer tool; if Designer isn't connected, fall back to describing changes fromquery_elements/tool response data instead of skipping the before/after check entirely. - Batch changes need itemized preview — if modifying multiple elements, list each change
- Prefer Webflow's native layout tools (Grid, Flexbox) over manual positioning
- Components shared across pages should be updated via
data_element_toolscoped to the component (changes propagate to all instances) - Component instance management (
insert_component_instance,unlink_component_instance) is headless viadata_component_tool— not Designer-gated data_element_buildersupports max 3 levels per call — build deeper structures in stages- Check
webflow_guide_toolfor supported style properties when unsure
More skills from the webflow-skills repository
View all 27 skillswebflow-cli:cloud
deploy applications to Webflow Cloud
May 18CLICloudDeploymentFull-stack +1webflow-cli:code-component
create and deploy Webflow Code Components
May 18CLIDeploymentReactUI Components +1webflow-cli:designer-extension
build Webflow Designer Extensions
May 18CLIPlugin DevelopmentReactTypeScript +1webflow-cli:devlink
export Webflow components to React and Next.js
May 18CLIFrontendNext.jsReact +1webflow-cli:troubleshooter
troubleshoot Webflow CLI issues
May 18CLIConfigurationDebuggingWebflowwebflow-code-component:component-audit
audit Webflow Code Component architecture
May 18ArchitectureCode AnalysisReactWebflow
More from Webflow
View publisherwebflow-code-component:component-scaffold
scaffold Webflow Code Component boilerplate
webflow-skills
May 18FrontendReactTemplatesWebflowwebflow-code-component:convert-component
convert React components to Webflow Code Components
webflow-skills
May 18MigrationReactTypeScriptWebflowwebflow-code-component:deploy-guide
deploy Webflow Code Components
webflow-skills
May 18DeploymentFrontendReactWebflowwebflow-code-component:local-dev-setup
set up local Webflow Code Component projects
webflow-skills
May 18ConfigurationLocal DevelopmentReactWebflowwebflow-code-component:pre-deploy-check
validate Webflow Code Components before deployment
webflow-skills
May 18DeploymentQAValidationWebflowwebflow-code-component:troubleshoot-deploy
troubleshoot Webflow Code Component deployments
webflow-skills
May 18DebuggingDeploymentObservabilityWebflow