You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A Node.js server implementing Model Context Protocol (MCP) for Webflow using the [Webflow JavaScript SDK](https://github.com/webflow/js-webflow-api). Enable AI agents to interact with Webflow APIs. Learn more about Webflow's Data API in the [developer documentation](https://developers.webflow.com/data/reference).
Get started by installing Webflow's remote MCP server. The remote server uses OAuth to authenticate with your Webflow sites, and a companion app that syncs your live canvas with your AI agent.
17
17
18
-
1. Go to `Settings` → `Cursor Settings` → `MCP`
19
-
2. Click `+ Add New Global MCP Server`
20
-
3. Paste the following configuration (or add the `webflow` part to your existing configuration)
18
+
### Requirements
19
+
20
+
- Node.js 22.3.0 or higher
21
+
22
+
> Note: The MCP server currently supports Node.js 22.3.0 or higher. If you run into version issues, see the [Node.js compatibility guidance.](https://developers.webflow.com/data/v2.0.0/docs/ai-tools#nodejs-compatibility)
23
+
24
+
### Cursor
25
+
26
+
#### Add MCP server to Cursor
27
+
28
+
1. Go to `Settings → Cursor Settings → MCP & Integrations`.
29
+
2. Under MCP Tools, click `+ New MCP Server`.
30
+
3. Paste the following configuration into `.cursor/mcp.json` (or add the `webflow` part to your existing configuration):
21
31
22
32
```json
23
33
{
@@ -29,32 +39,47 @@ A Node.js server implementing Model Context Protocol (MCP) for Webflow using the
29
39
}
30
40
```
31
41
32
-
4. 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.
42
+
> Tip: You can create a project-level `mcp.json`to avoid repeated auth prompts across multiple Cursor windows. See Cursor’s docs on [configuration locations.](https://docs.cursor.com/en/context/mcp#configuration-locations)
33
43
34
-
**For Claude Desktop:**
44
+
4. Save and close the file. Cursor will automatically open an OAuth login page where you can authorize Webflow sites to use with the MCP server.
35
45
36
-
1. Open `Settings` → `Developer`
37
-
2. Click `Edit Config`
38
-
3. Open `claude_desktop_config.json` in a code editor and paste the following configuration (or add the `webflow` part to your existing configuration)
- Open your site in the Webflow Designer, or ask your AI agent:
49
+
50
+
```text
51
+
Give me a link to open <MY_SITE_NAME> in the Webflow Designer
49
52
```
50
53
51
-
4. 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.
54
+
#### Open the MCP Webflow App
55
+
56
+
1. In the Designer, open the Apps panel (press `E`).
57
+
2. Launch your published "Webflow MCP Bridge App".
58
+
3. Wait for the app to connect to the MCP server.
59
+
60
+
#### Write your first prompt
52
61
53
-
**For Windsurf:**
62
+
Try these in your AI chat:
54
63
55
-
1. Navigate to `Windsurf - Settings` → `Advanced Settings`
56
-
2. Scroll down to the `Cascade` section → `Add Server` → `Add custom server +`
57
-
3. Paste the following configuration (or add the `webflow` part to your existing configuration)
64
+
```text
65
+
Analyze my last 5 blog posts and suggest 3 new topic ideas with SEO keywords
66
+
```
67
+
68
+
```text
69
+
Find older blog posts that mention similar topics and add internal links to my latest post
70
+
```
71
+
72
+
```text
73
+
Create a hero section card on my home page with a CTA button and responsive design
2. Open developer settings: `File → Settings → Developer`.
82
+
3. Click `Get Started` or edit the configuration to open `claude_desktop_config.json` and add:
58
83
59
84
```json
60
85
{
@@ -67,88 +92,59 @@ A Node.js server implementing Model Context Protocol (MCP) for Webflow using the
67
92
}
68
93
```
69
94
70
-
4.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.
95
+
4. Save and restart Claude Desktop (`Cmd/Ctrl + R`). An OAuth login page will open to authorize sites.
71
96
72
-
**For VS Code:**
97
+
#### Open the Webflow Designer
73
98
74
-
1. Open `settings.json`
75
-
2. Paste the following configuration (or add the `webflow` part to your existing configuration)
99
+
- Open your site in the Webflow Designer, or ask your AI agent:
Give me a link to open <MY_SITE_NAME> in the Webflow Designer
88
103
```
89
104
90
-
4.`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.
105
+
#### Open the MCP Webflow App
91
106
92
-
**Important note**
107
+
1. In the Designer, open the Apps panel (press `E`).
108
+
2. Launch your published "Webflow MCP Bridge App".
109
+
3. Wait for the app to connect to the MCP server.
93
110
94
-
All these methods rely on the `mcp-remote`[npm package](https://www.npmjs.com/package/mcp-remote) which is still considered experimental as of 04/30/2025.
95
-
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:
111
+
#### Write your first prompt
96
112
97
-
```shell
98
-
rm -rf ~/.mcp-auth
113
+
```text
114
+
Analyze my last 5 blog posts and suggest 3 new topic ideas with SEO keywords
99
115
```
100
116
101
-
## ▶️ Quick start (local installation)
117
+
```text
118
+
Find older blog posts that mention similar topics and add internal links to my latest post
119
+
```
102
120
103
-
1.**Get your Webflow API token**
121
+
```text
122
+
Create a hero section card on my home page with a CTA button and responsive design
123
+
```
104
124
105
-
- Go to [Webflow's API Playground](https://developers.webflow.com/data/reference/token/authorized-by)
106
-
- Log in and generate a token
107
-
- Copy the token from the Request Generator
108
-

125
+
### Reset your OAuth Token
109
126
110
-
2.**Add to your AI editor**
127
+
To reset your OAuth token, run the following command in your terminal.
4. Replace `YOUR_WEBFLOW_TOKEN` with the token you copied earlier
132
-
5. Save and **restart** Cursor
133
-
134
-
**For Claude Desktop:**
135
-
136
-
1. Open Settings → Developer
137
-
2. Click `Edit Config`
138
-
3. Open `claude_desktop_config.json` in a code editor and paste configuration
139
-
4. Replace `YOUR_WEBFLOW_TOKEN` with the token you copied earlier 5. Save and **restart** Claude
135
+
Please see the Node.js [compatibility guidance on Webflow's developer docs.](https://developers.webflow.com/data/v2.0.0/docs/ai-tools#nodejs-compatibility)
140
136
141
137
## ❓ Troubleshooting
142
138
143
139
If you are having issues starting the server in your MCP client e.g. Cursor or Claude Desktop, please try the following.
144
140
145
-
### Ensure you have a valid Webflow API token
141
+
### Make sure you have a valid Webflow API token
146
142
147
143
1. Go to [Webflow's API Playground](https://developers.webflow.com/data/reference/token/authorized-by), log in and generate a token, then copy the token from the Request Generator
148
144
2. Replace `YOUR_WEBFLOW_TOKEN` in your MCP client configuration with the token you copied
See the `./tools` directory for a list of available tools
224
176
225
-
### Custom Code
177
+
#🗣️ Prompts & resources
226
178
227
-
```
228
-
custom code - add - inline - site - script // Register an inline script for a site
229
-
custom code - get - registered - site - script - list // List all scripts registered to a site
230
-
custom code - get - applied - site - script - list //Get all scripts applied to a site
231
-
custom code - delete site custom code // Remove scripts from a site
232
-
```
233
-
234
-
### Components
235
-
236
-
```
237
-
components - list; // List all components for a site
238
-
components - content - get; // Get static content from a component definition
239
-
components - content - update; // Update content within a component definition for secondary locales
240
-
components - properties - get; // Get the default property values of a component definition
241
-
components - properties - update; // Update the default property values of a component definition for secondary locales
242
-
```
243
-
244
-
### Ask Webflow AI
245
-
246
-
```
247
-
ask - webflow - ai; // Search Webflow Docs using AI search
248
-
```
249
-
250
-
# 🗣️ Prompts & Resources
251
-
252
-
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.
253
-
254
-
# 🚧 Development mode
255
-
256
-
If you want to run the server in development mode, you can install dependencies and run the server using the following command:
2. Add your token to a `.env` file at the root of the project:
267
-
268
-
```shell
269
-
# .env
270
-
WEBFLOW_TOKEN=<YOUR_WEBFLOW_TOKEN>
271
-
```
272
-
273
-
3. Start development server:
274
-
275
-
```shell
276
-
npm start
277
-
```
179
+
This implementation **doesn't** include `prompts` or `resources` from the MCP specification. However, this may change in the future when there is broader support across popular MCP clients.
278
180
279
-
## 📄 Webflow Developer resources
181
+
## 📄 Webflow developer resources
280
182
281
183
-[Webflow API Documentation](https://developers.webflow.com/data/reference)
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.
190
+
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 aren't supported and will result in errors.
0 commit comments