Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT and other tools is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AI Fire in da houseCheck it out free

mcp-server

MCP.Pizza Chef: webflow

The mcp-server is a Node.js implementation of the Model Context Protocol designed specifically for Webflow's Data API. It allows AI agents to securely and efficiently interact with Webflow's platform via the Webflow JavaScript SDK, enabling real-time data access and manipulation. This server facilitates integration of AI-driven workflows with Webflow sites, supporting developers in automating content management and site operations.

Use This MCP server To

Enable AI agents to read and update Webflow site data Automate content management on Webflow using AI workflows Integrate Webflow data access into AI-powered applications Facilitate real-time interaction with Webflow APIs via MCP Build AI copilots that manage Webflow CMS collections Trigger Webflow site updates based on AI-generated inputs

README

Webflow's Official MCP Server

A Node.js server implementing Model Context Protocol (MCP) for Webflow using the Webflow JavaScript SDK. Enable AI agents to interact with Webflow APIs. Learn more about Webflow's Data API in the developer documentation.

npm shield fern shield

ℹ Prerequisites

▶️ Quick start (hosted on Cloudflare workers)

For Cursor:

  1. Go to SettingsCursor SettingsMCP
  2. Click + Add New Global MCP Server
  3. Paste the following configuration (or add the webflow part to your existing configuration)
{
  "mcpServers": {
    "webflow": {
      "command": "npx mcp-remote https://mcp.webflow.com/sse"
    }
  }
}
  1. Save, Cursor will automatically open a new browser window showing an OAuth login page to authorize the Webflow sites you want the MCP server to have access to.

For Claude Desktop:

  1. Open SettingsDeveloper
  2. Click Edit Config
  3. Open claude_desktop_config.json in a code editor and paste the following configuration (or add the webflow part to your existing configuration)
{
  "mcpServers": {
    "webflow": {
      "command": "npx",
      "args": ["mcp-remote", "https://mcp.webflow.com/sse"]
    }
  }
}
  1. Save the file and restart Claude Desktop (command/ctrl + R). When Claude restarts, it will automatically open a new browser window showing an OAuth login page to authorize the Webflow sites you want the MCP server to have access to.

For Windsurf:

  1. Navigate to Windsurf - SettingsAdvanced Settings
  2. Scroll down to the Cascade section → Add ServerAdd custom server +
  3. Paste the following configuration (or add the webflow part to your existing configuration)
{
  "mcpServers": {
    "webflow": {
      "command": "npx",
      "args": ["mcp-remote", "https://mcp.webflow.com/sse"]
    }
  }
}
  1. Click Save, Windsurf will automatically open a new browser window showing an OAuth login page to authorize the Webflow sites you want the MCP server to have access to.

For VS Code:

  1. Open settings.json
  2. Paste the following configuration (or add the webflow part to your existing configuration)
{
  "mcp": {
    "servers": {
      "webflow": {
        "command": "npx",
        "args": ["mcp-remote", "https://mcp.webflow.com/sse"]
      }
    }
  }
}
  1. Save the file. You should see a start button appear over the "webflow" key which you can click to open and run the auth flow. Alternatively, restart VS Code and the auth flow should start automatically.

Important note

All these methods rely on the mcp-remote npm package which is still considered experimental as of 04/30/2025. If at any point you have issues, and want to reset your OAuth tokens, you can run the following command before restarting your MCP client:

rm -rf ~/.mcp-auth

▶️ Quick start (local installation)

  1. Get your Webflow API token
  1. Add to your AI editor
{
  "mcpServers": {
    "webflow": {
      "command": "npx",
      "args": ["-y", "webflow-mcp-server@0.6.0"],
      "env": {
        "WEBFLOW_TOKEN": "<YOUR_WEBFLOW_TOKEN>"
      }
    }
  }
}

For Cursor:

  1. Go to Settings → Cursor Settings → MCP
  2. Click + Add New Global MCP Server
  3. Paste configuration
  4. Replace YOUR_WEBFLOW_TOKEN with the token you copied earlier
  5. Save and restart Cursor

For Claude Desktop:

  1. Open Settings → Developer
  2. Click Edit Config
  3. Open claude_desktop_config.json in a code editor and paste configuration
  4. Replace YOUR_WEBFLOW_TOKEN with the token you copied earlier 5. Save and restart Claude

❓ Troubleshooting

If you are having issues starting the server in your MCP client e.g. Cursor or Claude Desktop, please try the following.

Ensure you have a valid Webflow API token

  1. Go to Webflow's API Playground, log in and generate a token, then copy the token from the Request Generator
  2. Replace YOUR_WEBFLOW_TOKEN in your MCP client configuration with the token you copied
  3. Save and restart your MCP client

Ensure you have the Node and NPM installed

Run the following commands to confirm you have Node and NPM installed:

node -v
npm -v

Clear your NPM cache

Sometimes clearing your NPM cache can resolve issues with npx.

npm cache clean --force

Fix NPM global package permissions

If npm -v doesn't work for you but sudo npm -v does, you may need to fix NPM global package permissions. See the official NPM docs for more information.

Note: if you are making changes to your shell configuration, you may need to restart your shell for changes to take effect.

🛠️ Available tools

Sites

sites - list; // List all sites
sites - get; // Get site details
sites - publish; // Publish site changes

Pages

pages - list; // List all pages
pages - get - metadata; // Get page metadata
pages - update - page - settings; // Update page settings
pages - get - content; // Get page content
pages - update - static - content; // Update page content

Components

components - list // List all components in a site
components - get - content // Get component content (text, images, nested components)
components - update - content // Update component content for localization
components - get - properties // Get component properties (default values)
components - update - properties // Update component properties for localization

CMS

collections - list; // List collections
collections - get; // Get collection details
collections - create; // Create a collection
collection - fields - create - static; // Create a static field
collection - fields - create - option; // Create an option field
collection - fields - create - reference; // Create a reference field
collection - fields - update; // Update a custom field
collections - items - create - item - live; // Create items
collections - items - update - items - live; // Update items
collections - items - list - items; // List collection items
collections - items - create - item; // Create collection items (staged)
collections - items - update - items; // Update collection items (staged)
collections - items - publish - items; // Publish collection items

Custom Code

custom code - add - inline - site - script // Register an inline script for a site
custom code - get - registered - site - script - list // List all scripts registered to a site
custom code - get - applied - site - script - list //Get all scripts applied to a site
custom code - delete site custom code // Remove scripts from a site

Components

components - list; // List all components for a site
components - content - get; // Get static content from a component definition
components - content - update; // Update content within a component definition for secondary locales
components - properties - get; // Get the default property values of a component definition
components - properties - update; // Update the default property values of a component definition for secondary locales

Ask Webflow AI

ask - webflow - ai; // Search Webflow Docs using AI search

🗣️ Prompts & Resources

This implementation does not include prompts or resources from the MCP specification. However, this may change in the future when there is broader support across popular MCP clients.

🚧 Development mode

If you want to run the server in development mode, you can install dependencies and run the server using the following command:

  1. Clone and install:
git clone git@github.com:webflow/mcp-server.git
cd mcp-server
npm install
  1. Add your token to a .env file at the root of the project:
# .env
WEBFLOW_TOKEN=<YOUR_WEBFLOW_TOKEN>
  1. Start development server:
npm start

📄 Webflow Developer resources

⚠️ Known Limitations

Static Page Content Updates

The pages_update_static_content endpoint currently only supports updates to localized static pages in secondary locales. Updates to static content in the default locale are not supported and will result in errors.

mcp-server FAQ

How do I install the mcp-server?
Install via npm with 'npm install webflow-mcp-server' and ensure Node.js is set up.
What prerequisites are needed?
Node.js, npm, and a Webflow account are required to run the server.
How does the mcp-server interact with Webflow?
It uses the Webflow JavaScript SDK to expose Webflow Data API endpoints to AI agents.
Can I host the mcp-server on Cloudflare Workers?
Yes, the server supports deployment on Cloudflare Workers for scalable hosting.
Is the mcp-server compatible with multiple LLM providers?
Yes, it is provider-agnostic and works with OpenAI, Claude, Gemini, and others.
How secure is the data interaction?
The server scopes API access securely, ensuring safe AI interactions with Webflow data.
Where can I find developer documentation?
Webflow's developer docs at https://developers.webflow.com/data/reference provide detailed API info.
Can the mcp-server handle real-time updates?
Yes, it supports real-time data access and manipulation through MCP.