IntegrateIntegrate
Integrations

Webflow Integration

Manage Webflow sites, CMS collections, pages, forms, and publishing

The Webflow integration provides access to manage Webflow sites, CMS collections, pages, forms, and publishing through the Integrate MCP server.

Installation

The Webflow integration is included with the SDK:

import { webflowIntegration } from "integrate-sdk/server";

Setup

1. Create a Webflow OAuth App

  1. Go to Webflow Developer Portal
  2. Create a new OAuth application
  3. Configure your redirect URI
  4. Note your Client ID and Client Secret

2. Configure the Integration on Your Server

Add the Webflow integration to your server configuration. The integration automatically reads WEBFLOW_CLIENT_ID and WEBFLOW_CLIENT_SECRET from your environment variables:

import { createMCPServer, webflowIntegration } from "integrate-sdk/server";

export const { client: serverClient } = createMCPServer({
  apiKey: process.env.INTEGRATE_API_KEY,
  integrations: [
    webflowIntegration({
      scopes: ["authorized_user:read", "assets:read", "assets:write", "cms:read", "cms:write", "custom_code:read", "custom_code:write", "forms:read", "forms:write", "pages:read", "pages:write", "sites:read", "sites:write"], // Optional
    }),
  ],
});

You can override the environment variables by passing explicit values:

webflowIntegration({
  clientId: process.env.CUSTOM_WEBFLOW_ID,
  clientSecret: process.env.CUSTOM_WEBFLOW_SECRET,
      scopes: ["authorized_user:read", "assets:read", "assets:write", "cms:read", "cms:write", "custom_code:read", "custom_code:write", "forms:read", "forms:write", "pages:read", "pages:write", "sites:read", "sites:write"], // Optional
});

3. Client-Side Usage

The default client automatically includes all integrations. You can use it directly:

import { client } from "integrate-sdk";

await client.authorize("webflow");
const result = await client.webflow.tokenIntrospect({});

console.log(result);

If you're using a custom client, add the integration to the integrations array:

import { createMCPClient, webflowIntegration } from "integrate-sdk";

const customClient = createMCPClient({
  integrations: [webflowIntegration()],
});

Configuration Options

Prop

Type

Default Scopes

These defaults are applied unless you override scopes in the integration config:

  • authorized_user:read
  • assets:read
  • assets:write
  • cms:read
  • cms:write
  • custom_code:read
  • custom_code:write
  • forms:read
  • forms:write
  • pages:read
  • pages:write
  • sites:read
  • sites:write

Tools

webflow_token_introspect

Token introspect

No parameters.

webflow_get_authorized_user

Get authorized user

No parameters.

webflow_list_sites

List sites

No parameters.

webflow_get_site

Get site

Prop

Type

webflow_get_site_custom_domains

Get site custom domains

Prop

Type

webflow_publish_site

Publish site

Prop

Type

webflow_list_site_pages

List site pages

Prop

Type

webflow_list_site_collections

List site collections

Prop

Type

webflow_get_collection

Get collection

Prop

Type

webflow_list_collection_items

List collection items

Prop

Type

webflow_list_live_collection_items

List live collection items

Prop

Type

webflow_get_collection_item

Get collection item

Prop

Type

webflow_create_collection_items

Create collection items

Prop

Type

webflow_update_collection_items

Update collection items

Prop

Type

webflow_delete_collection_items

Delete collection items

Prop

Type

webflow_publish_collection_items

Publish collection items

Prop

Type

webflow_list_site_forms

List site forms

Prop

Type

webflow_list_site_webhooks

List site webhooks

Prop

Type

Notes

  • Category: Websites & CMS
  • Authentication mode: OAuth

On this page