Webflow Integration
STDIOMCP server enables Claude to interact with Webflow's APIs.
MCP server enables Claude to interact with Webflow's APIs.
This MCP server enables Claude to interact with Webflow's APIs.
Alternatively, you can also generate an OAuth Access Token.
Install dependencies:
npm install
Create a .env
file for local development (don't commit this file):
WEBFLOW_API_TOKEN=your-api-token
Open your Claude Desktop configuration file:
For MacOS:
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
For Windows:
code %AppData%\Claude\claude_desktop_config.json
Add or update the configuration:
{ "mcpServers": { "webflow": { "command": "node", "args": [ "/ABSOLUTE/PATH/TO/YOUR/build/index.js" ], "env": { "WEBFLOW_API_TOKEN": "your-api-token" } } } }
Save the file and restart Claude Desktop.
To install Webflow MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @kapilduraphe/webflow-mcp-server --client claude
The server currently provides the following tools:
Retrieves a list of all Webflow sites accessible to the authenticated user. Returns detailed information including:
Retrieves detailed information about a specific Webflow site by ID. Requires a siteId parameter and returns the same detailed information as get_sites for a single site.
Retrieves a list of all collections for a specific Webflow site. Requires a siteId parameter and returns detailed information about each collection including:
interface WebflowApiError { status?: number; message: string; code?: string; } interface WebflowCustomDomain { id: string; url: string; lastPublished: string; } interface WebflowLocale { id: string; cmsLocaleId: string; enabled: boolean; displayName: string; redirect: boolean; subdirectory: string; tag: string; } interface WebflowSite { id: string; workspaceId: string; createdOn: string; displayName: string; shortName: string; lastPublished: string; lastUpdated: string; previewUrl: string; timeZone: string; parentFolderId?: string; customDomains: WebflowCustomDomain[]; locales: { primary: WebflowLocale; secondary: WebflowLocale[]; }; dataCollectionEnabled: boolean; dataCollectionType: string; } interface WebflowCollection { _id: string; lastUpdated: string; createdOn: string; name: string; slug: string; singularName: string; itemCount: number; } interface WebflowCollectionsResponse { collections: WebflowCollection[]; }
The server handles various error scenarios:
To view server logs:
For MacOS/Linux:
tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
For Windows:
Get-Content -Path "$env:AppData\Claude\Logs\mcp*.log" -Wait -Tail 20
If you're getting environment variable errors, verify:
WEBFLOW_API_TOKEN
: Should be a valid API tokenIf you encounter any issues:
MIT License - See LICENSE file for details.