---
title: "Webflow MCP server for AI agents - actionlake"
description: "Give Claude 126 Webflow actions through one MCP server: collection items, custom fonts. Your agent never holds the credential. 100,000 calls a month free."
canonical: https://actionlake.com/connectors/webflow
updated: 2026-10-23
---

Connectors · Commerce

# Webflow MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Webflow and the rest of your systems. It gives your agent 126 Webflow actions (56 reads, 49 writes and 21 that wait for a confirmation) and holds the Webflow credential itself, so the agent never does. It paces Webflow's limits and records every call. Connecting Webflow needs your own Webflow OAuth app and one admin sign-in.

[Connect Webflow free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

`claude mcp add --transport http actionlake https://connect.actionlake.com/mcp`

the first call

```
do {
  action: "webflow.sites.list",
  intent: "check which Webflow account is connected"
}
# List Sites · read · 1 upstream call
```

- 126 actions in one signed file
- 56 read look, never change
- 49 write create and update
- 21 wait for a yes destructive, confirmed first

Set up

## Connect Webflow in three steps.

1. 01
   ### Add actionlake to Claude.
   Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
   `https://connect.actionlake.com/mcp`
2. 02
   ### Connect Webflow.
   OAuth 2.0, authorization code. You register your own OAuth app with Webflow, an admin signs in once, and you paste the app's client id and secret and the tokens from that sign-in; actionlake renews the access token from then on. actionlake stores what you paste write-only, sealed under your tenant's key.
   Before the first sign-in, Webflow needs an OAuth app of your own, registered in its developer portal. actionlake has no Webflow app to lend you.
   - `access_token` Access token from one sign-in with your own OAuth app
   - `refresh_token` Refresh token from the same sign-in; the access token is renewed from it
   - `client_id` Webflow app Client ID (Workspace settings > Apps & Integrations > Develop > your Data Client app)
   - `client_secret` Webflow app Client Secret (same app page; enable every scope you want this connection to use)
   ```
   account { op: "connections.requirements", service: "webflow" }
   # free: exactly what to paste, and what is found for you
   ```
3. 03
   ### Make the first call. Check before a write.
   Ask in plain words; Claude picks the action. Before anything changes, `check` validates the call and prices it, for free.
   ```
   do    { action: "webflow.sites.list" }
   # list sites · read · 1 upstream call
   check { action: "webflow.products.create", input: { … } }
   # free: inputs, permissions, cost and confirmations, nothing sent
   ```

Webflow at a glance

**Sign-in**

OAuth 2.0, authorization code. You register your own OAuth app with Webflow, an admin signs in once, and you paste the app's client id and secret and the tokens from that sign-in; actionlake renews the access token from then on.

**You provide**

`access_token` `refresh_token` `client_id` `client_secret`

**Limits we pace to**

60 calls a minute, per connection

**API covered**

Webflow Data API v2 (OpenAPI 3.1.0)`api.webflow.com/v2`

**Built from**

Webflow's documentation, read 23 October 2026[OpenAPI spec (GitHub)](https://raw.githubusercontent.com/webflow/openapi-spec/main/openapi/v2.yml) [developers.webflow.com](https://developers.webflow.com/data/reference/rest-introduction)

**Service file**

Version 1.0.0, signed (Ed25519)

**Cached reads**

54 of 56 reads, for up to 5 minutes; a write clears what it affects

**Shared entities**

7, so ask can line Webflow up with your other systems

**Data**

Processed and stored in Sydney, Australia. No US region yet

Capabilities

## What an AI agent can do in Webflow.

126 actions in 39 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

- **56** read look, never change
- **49** write create and update
- **21** destructive wait for a confirmation

1. ### Collection items
   9
   2 read · 5 write · 2 destructive
   Create Collection Item(s) · Create Collection Items · List Collection Items · Get Collection Item
2. ### Custom fonts
   8
   2 read · 4 write · 2 destructive
   Batch create custom fonts · Create custom font · List custom fonts · Get custom font
3. ### Live collection items
   7
   2 read · 3 write · 2 destructive
   Create Live Collection Item(s) · List Live Collection Items · Get Live Collection Item · Update Live Collection Item
4. ### Orders
   6
   2 read · 3 write · 1 destructive
   List Orders · Get Order · Update Order · Fulfill Order
5. ### Sites
   6
   2 read · 3 write · 1 destructive
   List Sites · Create Site · Get Site · Update Site
6. ### Analyze reports
   5
   5 read · 0 write · 0 destructive
   Get Time On Page Report · Get Top Dimensions Report · Get Top Events Report · Get Top Pages Report
7. ### Assets
   5
   2 read · 2 write · 1 destructive
   List Assets · Get Asset · Delete Asset · Update Asset
8. ### Collections
   5
   2 read · 2 write · 1 destructive
   Create Collection · List Collections · Get Collection Details · Update Collection

**31 more areas · 75 actions**

- Site form submissions **5**
- Form submissions **4**
- Google tags **4**
- Products **4**
- Redirects **4**
- Robots TXT **4**
- Webhooks **4**
- Asset folders **3**
- Collection fields **3**
- Comment threads **3**
- Page custom code **3**
- Pages **3**
- Registered scripts **3**
- Site custom code **3**
- Comment replies **2**
- Component content **2**
- Component properties **2**
- Forms **2**
- Inventory **2**
- Page content **2**
- Product skus **2**
- Well known files **2**
- Authorized user **1**
- Components **1**
- Custom code blocks **1**
- Custom domains **1**
- Ecommerce settings **1**
- Site activity logs **1**
- Site plan **1**
- Token **1**
- Workspace audit logs **1**

Top actions

## The Webflow API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 40 of Webflow's 40 action names are shared with at least one other connector, so an agent learns them once.

| Action | What it does | Effect | Same name in |
| --- | --- | --- | --- |
| `webflow.products.list` List Products & SKUs | Retrieve all products for a site. | read | `commerce.product.list` 112 connectors |
| `webflow.orders.list` List Orders | List all orders created for a given site. | read | `commerce.order.list` 82 connectors |
| `webflow.sites.list` List Sites | List of all sites the provided access token is able to access. | read | `content.site.list` 16 connectors |
| `webflow.assets.list` List Assets | List of assets uploaded to a site. | read | `content.file.list` 77 connectors |
| `webflow.pages.list` List Pages | List of all pages for a site. | read | `content.site_page.list` 11 connectors |
| `webflow.asset_folders.list` List Asset Folders | List Asset Folders within a given site. | read | `content.folder.list` 62 connectors |
| `webflow.products.create` Create Product & SKU | Create a new ecommerce product and defaultSKU. | write | `commerce.product.create` 92 connectors |
| `webflow.sites.create` Create Site | Create a site. | write | `content.site.create` 12 connectors |
| `webflow.asset_folders.create` Create Asset Folder | Create an Asset Folder within a given site. | write | `content.folder.create` 62 connectors |
| `webflow.orders.get` Get Order | Retrieve a single product by its ID. | read | `commerce.order.get` 87 connectors |
| `webflow.authorized_user.get` Get Authorization User Info | Information about the Authorized User Required Scope \| `authorized_user:read`. | read | `identity.current_user.get` 307 connectors |
| `webflow.sites.delete` Delete Site | Delete a site. | destructive | `content.site.delete` 13 connectors |

Try it

## Prompts to paste into Claude.

Each one names the Webflow actions it will call, so you know what it reads and what it changes before you send it.

1. Read read
   Which Webflow orders from the last seven days are still unfulfilled?
   calls `webflow.orders.list`
2. Write write
   Create Product & SKU in Webflow. Show me exactly what you will send before you save it.
   calls `webflow.products.create`

Governance for Webflow

## Destructive actions wait for a yes.

21 Webflow actions are destructive. These are all of them:

- Delete Site `webflow.sites.delete`
- Delete Asset `webflow.assets.delete`
- Delete Form Submission `webflow.form_submissions.delete`
- Remove Webhook `webflow.webhooks.delete`
- Refund Order `webflow.orders.refund`
- Delete Collection `webflow.collections.delete`
- Delete Collection Item `webflow.collection_items.delete`
- Delete Collection Items `webflow.collection_items.delete_many`
- Delete 301 redirects `webflow.redirects.delete`
- Delete robots.txt `webflow.robots_txt.delete`
- Delete Google Tag `webflow.google_tags.delete`
- Delete custom font `webflow.custom_fonts.delete`
- Delete Google Tags `webflow.google_tags.delete_all`
- Delete Custom Code `webflow.page_custom_code.delete`
- Delete Custom Code `webflow.site_custom_code.delete`
- Delete a well-known file `webflow.well_known_files.delete`
- Delete Collection Field `webflow.collection_fields.delete`
- Batch delete custom fonts `webflow.custom_fonts.batch_delete`
- Delete Form Submission by Site `webflow.site_form_submissions.delete`
- Unpublish Live Collection Item `webflow.live_collection_items.unpublish`
- Unpublish Live Collection Items `webflow.live_collection_items.unpublish_many`

A destructive action runs only with `confirm: true`. Under the `human` policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

do webflow.sites.delete confirm_policy: **human**

Delete Site?

**intent:** the user asked me to delete Site

run suspended · waiting for a named person · key _webflow-agent_ cannot confirm itself

In the console, or from an emailed signed link.

a key for this connector

```
account {
  op: "keys.create", name: "webflow-agent",
  allowed_actions: ["webflow.*"], cap_calls: 2000,
  confirm_policy: "human_for_writes",
  approval_rules: [
    { match: "webflow.sites.delete", approver: "lead@example.com" },
    { match: "webflow.assets.delete", approver: "lead@example.com" },
    { match: "webflow.form_submissions.delete", approver: "lead@example.com" }
  ]
}
```

Illustrative. Scoped to Webflow only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

## What Webflow costs on actionlake.

Every Webflow action is one upstream call, the only thing actionlake bills. Searching, `check`, `cost`, `account` and any call Webflow refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

- 1 upstream call per action all 126 Webflow actions
- 20 actions page each page of a long list is one call
- 54 reads can be cached a cache hit costs nothing
- 100,000 calls a month, free paid plans from US$49 a month for 250,000

[See pricing](https://actionlake.com/pricing)

Action index

## Every Webflow action.

126 actions by area: the id your agent calls, what it does, and its effect.

**Collection items 9**

- `webflow.collection_items.create` Create Collection Item(s) write
- `webflow.collection_items.create_bulk` Create Collection Items write
- `webflow.collection_items.delete` Delete Collection Item destructive
- `webflow.collection_items.delete_many` Delete Collection Items destructive
- `webflow.collection_items.get` Get Collection Item read
- `webflow.collection_items.list` List Collection Items read
- `webflow.collection_items.publish` Publish Collection Item write
- `webflow.collection_items.update` Update Collection Item write
- `webflow.collection_items.update_many` Update Collection Items write

**Custom fonts 8**

- `webflow.custom_fonts.batch_create` Batch create custom fonts write
- `webflow.custom_fonts.batch_delete` Batch delete custom fonts destructive
- `webflow.custom_fonts.create` Create custom font write
- `webflow.custom_fonts.delete` Delete custom font destructive
- `webflow.custom_fonts.get` Get custom font read
- `webflow.custom_fonts.list` List custom fonts read
- `webflow.custom_fonts.replace_file` Replace custom font file write
- `webflow.custom_fonts.update` Update custom font write

**Live collection items 7**

- `webflow.live_collection_items.create` Create Live Collection Item(s) write
- `webflow.live_collection_items.get` Get Live Collection Item read
- `webflow.live_collection_items.list` List Live Collection Items read
- `webflow.live_collection_items.unpublish` Unpublish Live Collection Item destructive
- `webflow.live_collection_items.unpublish_many` Unpublish Live Collection Items destructive
- `webflow.live_collection_items.update` Update Live Collection Item write
- `webflow.live_collection_items.update_many` Update Live Collection Items write

**Orders 6**

- `webflow.orders.fulfill` Fulfill Order write
- `webflow.orders.get` Get Order read
- `webflow.orders.list` List Orders read
- `webflow.orders.refund` Refund Order destructive
- `webflow.orders.unfulfill` Unfulfill Order write
- `webflow.orders.update` Update Order write

**Sites 6**

- `webflow.sites.create` Create Site write
- `webflow.sites.delete` Delete Site destructive
- `webflow.sites.get` Get Site read
- `webflow.sites.list` List Sites read
- `webflow.sites.publish` Publish Site write
- `webflow.sites.update` Update Site write

**Analyze reports 5**

- `webflow.analyze_reports.time_on_page` Get Time On Page Report read
- `webflow.analyze_reports.top_dimensions` Get Top Dimensions Report read
- `webflow.analyze_reports.top_events` Get Top Events Report read
- `webflow.analyze_reports.top_pages` Get Top Pages Report read
- `webflow.analyze_reports.traffic` Get Traffic Report read

**Assets 5**

- `webflow.assets.create` Upload Asset write
- `webflow.assets.delete` Delete Asset destructive
- `webflow.assets.get` Get Asset read
- `webflow.assets.list` List Assets read
- `webflow.assets.update` Update Asset write

**Collections 5**

- `webflow.collections.create` Create Collection write
- `webflow.collections.delete` Delete Collection destructive
- `webflow.collections.get` Get Collection Details read
- `webflow.collections.list` List Collections read
- `webflow.collections.update` Update Collection write

**Site form submissions 5**

- `webflow.site_form_submissions.delete` Delete Form Submission by Site destructive
- `webflow.site_form_submissions.get` Get Form Submission by Site read
- `webflow.site_form_submissions.list` List Form Submissions by Site read
- `webflow.site_form_submissions.list_by_form` List Form Submissions read
- `webflow.site_form_submissions.update` Modify Form Submission by Site write

**Form submissions 4**

- `webflow.form_submissions.delete` Delete Form Submission destructive
- `webflow.form_submissions.get` Get Form Submission read
- `webflow.form_submissions.list` List Form Submissions read
- `webflow.form_submissions.update` Modify Form Submission write

**Google tags 4**

- `webflow.google_tags.delete` Delete Google Tag destructive
- `webflow.google_tags.delete_all` Delete Google Tags destructive
- `webflow.google_tags.list` List Google Tags read
- `webflow.google_tags.upsert` Update Google Tag write

**Products 4**

- `webflow.products.create` Create Product & SKU write
- `webflow.products.get` Get Product and SKUs read
- `webflow.products.list` List Products & SKUs read
- `webflow.products.update` Update Product write

**Redirects 4**

- `webflow.redirects.create` Create a 301 redirect write
- `webflow.redirects.delete` Delete 301 redirects destructive
- `webflow.redirects.list` Get 301 redirects read
- `webflow.redirects.update` Update 301 redirect write

**Robots TXT 4**

- `webflow.robots_txt.delete` Delete robots.txt destructive
- `webflow.robots_txt.get` Get robots.txt read
- `webflow.robots_txt.replace` Replace robots.txt write
- `webflow.robots_txt.update` Update robots.txt write

**Webhooks 4**

- `webflow.webhooks.create` Create Webhook write
- `webflow.webhooks.delete` Remove Webhook destructive
- `webflow.webhooks.get` Get Webhook read
- `webflow.webhooks.list` List Webhooks read

**Asset folders 3**

- `webflow.asset_folders.create` Create Asset Folder write
- `webflow.asset_folders.get` Get Asset Folder read
- `webflow.asset_folders.list` List Asset Folders read

**Collection fields 3**

- `webflow.collection_fields.create` Create Collection Field write
- `webflow.collection_fields.delete` Delete Collection Field destructive
- `webflow.collection_fields.update` Update Collection Field write

**Comment threads 3**

- `webflow.comment_threads.get` Get Comment Thread read
- `webflow.comment_threads.list` List Comment Threads read
- `webflow.comment_threads.resolve` Resolve Comment Thread write

**Page custom code 3**

- `webflow.page_custom_code.delete` Delete Custom Code destructive
- `webflow.page_custom_code.get` Get Custom Code read
- `webflow.page_custom_code.upsert` Add/Update Custom Code write

**Pages 3**

- `webflow.pages.get` Get Page Metadata read
- `webflow.pages.list` List Pages read
- `webflow.pages.update` Update Page Metadata write

**Registered scripts 3**

- `webflow.registered_scripts.create_hosted` Register Script - Hosted write
- `webflow.registered_scripts.create_inline` Register Script - Inline write
- `webflow.registered_scripts.list` Get Registered Scripts read

**Site custom code 3**

- `webflow.site_custom_code.delete` Delete Custom Code destructive
- `webflow.site_custom_code.get` Get Custom Code read
- `webflow.site_custom_code.upsert` Add/Update Custom Code write

**Comment replies 2**

- `webflow.comment_replies.create` Create Comment Reply write
- `webflow.comment_replies.list` List Comment Replies read

**Component content 2**

- `webflow.component_content.list` Get Component Content read
- `webflow.component_content.update` Update Component Content write

**Component properties 2**

- `webflow.component_properties.list` Get Component Properties read
- `webflow.component_properties.update` Update Component Properties write

**Forms 2**

- `webflow.forms.get` Get Form Schema read
- `webflow.forms.list` List Forms read

**Inventory 2**

- `webflow.inventory.get` List Inventory read
- `webflow.inventory.update` Update Item Inventory write

**Page content 2**

- `webflow.page_content.list` Get Page Content read
- `webflow.page_content.update` Update Page Content write

**Product skus 2**

- `webflow.product_skus.create` Create SKUs write
- `webflow.product_skus.update` Update SKU write

**Well known files 2**

- `webflow.well_known_files.delete` Delete a well-known file destructive
- `webflow.well_known_files.set` Set a well-known file write

**Authorized user 1**

- `webflow.authorized_user.get` Get Authorization User Info read

**Components 1**

- `webflow.components.list` List Components read

**Custom code blocks 1**

- `webflow.custom_code_blocks.list` List Custom Code Blocks read

**Custom domains 1**

- `webflow.custom_domains.list` Get Custom Domains read

**Ecommerce settings 1**

- `webflow.ecommerce_settings.get` Get Ecommerce Settings read

**Site activity logs 1**

- `webflow.site_activity_logs.list` Get Site Activity Logs read

**Site plan 1**

- `webflow.site_plan.get` Get Site Plan read

**Token 1**

- `webflow.token.introspect` Get Authorization Info read

**Workspace audit logs 1**

- `webflow.workspace_audit_logs.list` Get Workspace Audit Logs read

Questions

## The Webflow MCP server, answered.

**Is there a Webflow MCP server for Claude?**

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 126 Webflow actions across collection items, custom fonts, live collection items and orders, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Webflow.

**What do I need to connect Webflow?**

Your own Webflow OAuth app, registered with Webflow (its client id and client secret), and the access and refresh tokens from one admin sign-in. actionlake has no Webflow app of its own, so this is not a one-step consent. actionlake renews the access token as it expires. The free call account { op: "connections.requirements", service: "webflow" } lists exactly what to paste.

**Can an AI agent delete or change things in Webflow?**

Only if its key allows it, and only with an explicit confirmation. 21 Webflow actions are destructive, including delete Site, delete Asset and delete Form Submission. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

**Will an AI agent use up my Webflow API limit?**

actionlake paces every call to the limits in the Webflow service file: 60 calls a minute per connection. Repeated reads are answered from cache (54 Webflow actions can be), which never reaches Webflow.

**What does a Webflow action cost?**

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (20 Webflow actions page). Cache hits, searches, dry runs and calls Webflow refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

**Which Webflow API does it cover?**

The Webflow Data API v2 (OpenAPI 3.1.0) at api.webflow.com/v2. It is built from Webflow's documentation as read on 23 October 2026. 126 actions in 39 areas, each one in the signed service file (version 1.0.0).

**Does actionlake keep my Webflow data, and where?**

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Webflow credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

**Which AI clients can use it?**

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

## More connectors like Webflow

Shares the most action names with

- [ShipBob 12](https://actionlake.com/connectors/shipbob)
- [Squarespace Commerce 12](https://actionlake.com/connectors/squarespace-commerce)
- [ShipHero 11](https://actionlake.com/connectors/shiphero)
- [AfterShip 9](https://actionlake.com/connectors/aftership)
- [Etsy 8](https://actionlake.com/connectors/etsy)
- [Easyship 8](https://actionlake.com/connectors/easyship)

Joins with, on shared entities

- [Mailchimp 4](https://actionlake.com/connectors/mailchimp)
- [ERPNext (Frappe) 3](https://actionlake.com/connectors/erpnext-frappe)
- [Tripletex 3](https://actionlake.com/connectors/tripletex)
- [Lark Suite 3](https://actionlake.com/connectors/lark-suite)
- [Fortnox 3](https://actionlake.com/connectors/fortnox)
- [Bynder 3](https://actionlake.com/connectors/bynder)

Browse

- [All Commerce connectors](https://actionlake.com/connectors/category/commerce)
- [All connectors](https://actionlake.com/connectors)
- [How actionlake compares](https://actionlake.com/compare)

actionlake is independent. It is not made or endorsed by Webflow; the name is the vendor's own. Counts are from the Webflow service file, version 1.0.0.

## Give your agent Webflow today.

[Connect Webflow free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.

---

Source: https://actionlake.com/connectors/webflow
More: https://actionlake.com/llms.txt
