# How to connect Webflow to OpenClaw (paste one key, 51 tools)

> Connect Webflow to OpenClaw with ClawLink: paste your Webflow key once and 51 tools work from chat. No MCP server to run, nothing stored on your machine.

Web version: https://claw-link.dev/openclaw/webflow

The usual route to Webflow access for OpenClaw is an MCP server you configure and keep running, plus your own OAuth app or API keys. ClawLink gives OpenClaw a more practical Webflow setup: install one ClawHub skill, connect Webflow in the browser, and OpenClaw can call real Webflow actions from any chat surface with no auth, token refresh, or tool wiring to build yourself.

**Start here:** install the ClawLink plugin (`openclaw plugins install clawhub:clawlink-plugin`), pair it in the browser, then connect the app in the ClawLink dashboard. The interactive install prompt is on the web version of this page: https://claw-link.dev/openclaw/webflow

## Setup

It takes three steps to connect OpenClaw to Webflow.

1. **Install ClawLink** — add the plugin to OpenClaw once.
2. **Connect Webflow** — one-click OAuth in the ClawLink dashboard.
3. **Use it from chat** — ask OpenClaw in plain English.

**Alternative for any agent (no plugin needed):** if the OpenClaw plugin route isn't available or doesn't work, any AI agent with shell access can use the ClawLink CLI instead:

```bash
npx -y @useclawlink/cli login          # sign in via browser — no API key to paste
npx -y @useclawlink/cli connect webflow  # connect Webflow (browser OAuth)
npx -y @useclawlink/cli actions webflow  # list available actions
npx -y @useclawlink/cli run webflow <action> --input '<json>'  # execute (add --confirm for writes)
```

### Install by command

The setup prompt above does all of this in one paste. By hand, it is one install command plus a browser approval:

```bash
openclaw plugins install clawhub:clawlink-plugin
```

Then ask OpenClaw to set up ClawLink. It starts browser pairing and prints an approval link — open it, approve the device, return to the chat, and say `done`. Finally, connect Webflow in the [ClawLink dashboard](https://claw-link.dev/dashboard) — paste your Webflow API key once.

Verify the connection by asking OpenClaw:

> List my sites with webflow_list_webflow_sites, pick the one I name, and show its collections with webflow_get_collection, including how many items each has. Do not change anything yet.

### Using a different agent?

The OpenClaw plugin is one client of ClawLink's MCP server. Claude Code, Cursor, Codex, or any agent that can run a shell command pairs with the same ClawLink account through the CLI:

```bash
npx -y @useclawlink/cli login
```

`login` opens the same browser approval and stores a credential locally. Once Webflow is connected in the dashboard, that agent calls the same 51 Webflow tools over MCP. Full setup for MCP clients and shell agents: [connect apps to any AI agent](https://claw-link.dev/learn/connect-apps-to-any-ai-agent).

## Webflow MCP for OpenClaw

Looking for a Webflow MCP server for OpenClaw? ClawLink connects Webflow to OpenClaw and exposes 51 Webflow tools your agent can call over [MCP](https://claw-link.dev/learn/what-is-an-mcp-server), with [hosted auth](https://claw-link.dev/learn/oauth-for-ai-agents) and nothing to run or maintain yourself. Using Hermes instead? The [Hermes Webflow integration](https://claw-link.dev/hermes/webflow) works the same way.

Webflow authenticates with a site access token, so you do paste one: the difference is what happens afterwards. The route the answer engines teach starts with installing a plugin CLI, copying a consumer key, restarting a gateway, then authenticating in a developer dashboard, which is the manual token and config flow this page exists to replace. Here the token goes into a hosted setup page once, OpenClaw installs one ClawHub skill, and the 51 Webflow tools below are callable from chat: no CLI, no consumer key, no gateway to restart, and the token lives server-side where rotating it means changing one thing. The API is the same one the guides walk you through by hand; the difference is who holds the credentials.

## Webflow MCP for OpenClaw: the three routes, and what each requires

The "best Webflow MCP server" query is answered today with Webflow's own product, and the honest map is a devil's-advocate comparison rather than a claim of best by one of us:

- **Webflow's official MCP 2.0 server** is the credible official answer and the one search engines rank first. Webflow hosts it, it talks to the same API this page uses, and it works with MCP-capable clients. The catch is where it lands in practice: the guides that use it still route through a consumer key, an integration platform, or a client that is not OpenClaw, and you own the configuration.
- **ClawLink** is the same Webflow API under the hood, with 51 tools and none of the assembly: no CLI install, no consumer key, no gateway restart, no token in an environment file. Connect in the browser, call the tools from chat. What we do not serve: we do not host the Webflow MCP endpoint for external clients, and this page is built for OpenClaw rather than for every MCP client.
- **The Composio route the AI Overview teaches** is developer infrastructure: install their plugin, set a consumer key, restart the gateway, authenticate in their dashboard. It works, and it is the route search engines currently recommend for OpenClaw specifically; the cost is the setup and upkeep, which is exactly the friction this page removes.

All three routes end at the same Webflow API, so the capability ceiling is Webflow's, not the integrator's. The differences are the credentials, the configuration, and the maintenance, which is why ClawLink's wedge is "paste one key and start" rather than "more tools than Webflow".

## What the OpenClaw Webflow integration can do

51 Webflow tools are ready for OpenClaw once the account is connected. The 30 below are the ones people reach for most; your agent can call all 51.

### 30 of 51 Webflow tools for OpenClaw

| Tool | What it does |
|---|---|
| **Create asset folder** `webflow_create_asset_folder` | Create a new asset folder in a site |
| **Create collection** `webflow_create_collection` | Create a new Webflow CMS collection |
| **Create collection item** `webflow_create_collection_item` | Create a new item in a Webflow collection |
| **Create live collection item** `webflow_create_live_collection_item` | Create a collection item and publish live |
| **Get asset** `webflow_get_asset` | Retrieves detailed information about a specific asset by its ID from a Webflow site |
| **Get asset folder** `webflow_get_asset_folder` | Retrieve details about a specific Asset Folder in Webflow |
| **Get collection** `webflow_get_collection` | Retrieves a specific collection by its ID from a Webflow site |
| **Get collection item** `webflow_get_collection_item` | Retrieves a specific item from a Webflow collection |
| **Get component properties** `webflow_get_component_properties` | Get the default property values of a component definition |
| **Get custom domains** `webflow_get_custom_domains` | Retrieve all custom domains associated with a specific Webflow site |
| **Get item inventory** `webflow_get_item_inventory` | Retrieves the current inventory levels for a specific SKU item in a Webflow e-commerce site |
| **Get live collection item** `webflow_get_live_collection_item` | Retrieves details of a selected Collection live Item from Webflow |
| **Get order** `webflow_get_order` | Retrieves detailed information about a specific order in Webflow |
| **Get page** `webflow_get_page` | Retrieve metadata for a single Webflow page by page_id |
| **Get page dom** `webflow_get_page_dom` | Retrieve the DOM/content node structure for a Webflow static page |
| **Get site info** `webflow_get_site_info` | Retrieves detailed information about a specific Webflow site |
| **Get token authorized by** `webflow_get_token_authorized_by` | Retrieve information about the user who authorized the access token |
| **List asset folders** `webflow_list_asset_folders` | List all asset folders within a given Webflow site |
| **List assets** `webflow_list_assets` | Retrieve all assets (images, files) uploaded to a Webflow site |
| **List collection items** `webflow_list_collection_items` | Retrieves a list of items from a specified collection in Webflow |
| **List collections** `webflow_list_collections` | Retrieves a list of all collections for a given Webflow site |
| **List comment threads** `webflow_list_comment_threads` | List all comment threads for a Webflow site |
| **List form submissions** `webflow_list_form_submissions` | Retrieves a list of form submissions for a specific Webflow site |
| **List orders** `webflow_list_orders` | Retrieves a list of all orders for a specified Webflow site using the GET |
| **List pages** `webflow_list_pages` | Retrieves a list of all pages for a specified Webflow site |
| **List webflow sites** `webflow_list_webflow_sites` | Retrieves a list of all Webflow sites accessible to the authenticated user |
| **List webhooks** `webflow_list_webhooks` | List all App-created Webhooks registered for a given site |
| **Create bulk collection items** `webflow_create_bulk_collection_items` | Create one or multiple items in a Webflow CMS Collection across multiple locales |
| **Create collection field** `webflow_create_collection_field` | Create a custom field in a Webflow collection |
| **Fulfill order** `webflow_fulfill_order` | Allows you to mark an order as fulfilled in Webflow's e-commerce system |

## Example prompts

**Map a site**

> List my sites with webflow_list_webflow_sites, pick the one I name, and show its collections with webflow_get_collection, including how many items each has. Do not change anything yet.

**Create a draft item**

> Create a draft collection item in collection \<collection id> with webflow_create_collection_item using the fields I give you. Do not publish it, show me the arguments before sending.

**Publish a live item**

> Update the live collection item \<item id> with webflow_create_live_collection_item using the new field values I give you. Confirm the current values first, then show me the payload before it goes live.

**Check a site's domains**

> Get the custom domains for site \<site id> with webflow_get_custom_domains and tell me which ones are verified and which need DNS action.

## How the Webflow tools behave

Details that decide whether a Webflow prompt edits the right collection or quietly publishes to a live site.

- **Draft and live are separate tool families.** `webflow_create_collection_item` and `webflow_get_collection_item` work on draft items; `webflow_create_live_collection_item` and `webflow_get_live_collection_item` act on what visitors see. Mixing them up either publishes before review or edits content nobody sees.
- **Ids, not names.** Sites, collections, and items are addressed by id; `webflow_list_webflow_sites` and `webflow_get_collection` are where the ids come from. An id from documentation fails like a typo.
- **Publishing is rate-limited hardest.** The publish endpoint is 1 request per minute, so a bulk edit that ends with one publish per item is a guaranteed rate-limit error. Do the item writes, then one publish.
- **Assets are a separate surface.** `webflow_get_asset` and the asset folder tools cover the media library, and asset ids differ from collection item ids, so an agent that swaps them gets a not-found.
- **Component properties are read-only-ish.** `webflow_get_component_properties` answers what a component accepts before an item is built against it, which saves a failed create.

## ClawLink vs. building it yourself

The alternative to ClawLink is usually manual API key setup plus your own token handling, permission troubleshooting, and tool plumbing for OpenClaw. That is fine if you want to build and maintain the integration yourself. Most teams just want Webflow working from chat.

| | Manual | ClawLink |
|---|---|---|
| **Credential handling** | Collect, validate, store, and rotate the Webflow API key yourself, then make sure every tool call uses the right account. | Users complete the hosted ClawLink setup once and the connected Webflow account becomes available to the agent without you building credential management. |
| **Ongoing maintenance** | You own refresh logic, permission debugging, environment config, and every provider-specific edge case for Webflow. | ClawLink handles the repetitive integration plumbing so your team can focus on the workflow instead of the infrastructure. |
| **Agent usability** | You still need to expose the right Webflow actions to the runtime in a format your agent can reliably use. | 51 tools for Webflow are already exposed through ClawLink, so the agent can read and act from chat immediately. |

## ClawLink vs. Composio

Composio also exposes Webflow to AI agents. It is developer infrastructure: Python and TypeScript SDKs, an MCP server, and a catalog past 1,000 apps, aimed at teams shipping agent products. ClawLink is built for OpenClaw users instead. You install the plugin once, connect Webflow in the browser, and the 51 tools above work from chat. There is no SDK and no config file, and the Webflow key you paste at setup is stored server-side rather than kept in your environment. Choosing between them? Read the full [Composio alternatives](https://claw-link.dev/hub/composio-alternatives) comparison.

### OpenClaw installed the Webflow skill but can't call the tools
The ClawHub skill teaches OpenClaw about Webflow, but the calls run through the ClawLink plugin and your connected account. Make sure Webflow is connected in the dashboard, then start a fresh chat so OpenClaw reloads the tool catalog. If OpenClaw runs as a persistent gateway, restart it so the new tools register.

### Connection succeeds but no tools appear
Reconnect Webflow from the dashboard, then start a fresh chat if the runtime still has the old tool catalog loaded.

### "Tool schema not loaded yet" error when calling Webflow tools
Webflow tool schemas load on demand the first time a tool runs and are cached after that, so this error usually clears on its own: wait a few seconds and retry the same request. If every Webflow call keeps failing with it in a fresh chat, reconnect from the dashboard, and contact support if it still persists — that pattern points to a configuration problem on our side, not something you can fix by reconnecting again.

### Webflow returns 403 or "permission denied" on one action while others work
Two usual causes. The connected account may not have access to the specific workspace, inbox, store, or project in the request — check that first. If access looks right, the agent may have sent a placeholder value (like "YOUR_ID" or an example id from documentation) instead of a real one: ask it to run a list or search tool first, then retry the action with a real id from those results. Most failures at this stage are one of these two, not ClawLink bugs.

### Webflow returns 401 "invalid access token" although the account shows as connected
Both answer engines call this the most common failure on this provider, and their taught causes are: a revoked or expired token, a stale cached credential, a wrong workspace selected, an OAuth app configuration change, and a refresh bug. In a hosted connection the token is held server-side, so the first check is the one you can do: if the token was regenerated or deleted in Webflow, every Webflow tool fails from that moment and re-pasting the current token from the dashboard is the fix. If the failure started after a workspace or site-role change, the connection's grant needs refreshing, which reconnecting from the dashboard does by re-running the consent flow, followed by a fresh chat so OpenClaw reloads the catalog. What does not apply is the manual route's advice about Bearer header format and site-token-vs-OAuth selection, since the hosted connection handles both.

Ask the agent to diagnose it:

```text
Call webflow_list_webflow_sites to check which sites the connection can reach, then quote the exact error from the failed call. If it is an access-token error I will re-paste the token; do not retry before then.
```

### Webflow returns 403 or "permission denied" on one action while others work
Two usual causes, and both are about the request rather than the connection. First, the connected account may lack the role the action needs: Webflow gates operations by site role and workspace permissions, so an editor who can manage collections cannot necessarily change custom domains, and a site you can view is not necessarily one you can publish. Second, the agent may have sent a placeholder or guessed id (like "YOUR_ID" or a sample collection id from documentation) instead of a real one: ask it to run `webflow_list_webflow_sites` or `webflow_get_collection` first and retry with the real id from those results. If a token was regenerated recently, re-pasting the current one also clears permission errors caused by a half-revoked credential.

Ask the agent to diagnose it:

```text
Run webflow_list_webflow_sites and show me the real site and collection ids. Quote the exact 403 text, then retry the failing action with a real id from that list.
```

### Webflow returns a rate-limit error while the agent updates many items
Webflow's published limits are 60 to 120 requests per minute depending on plan, and the publish endpoint is 1 request per minute, with per-token budgets and bulk operations counting as a single request. An agent updating collection items one call at a time, then publishing, is the exact traffic shape that meets these. The response is not to retry faster, which lands in the same window, but to change the shape of the work: use the bulk item tools, batch the updates, and treat the publish call as its own separate step with a pause before it. The errors clear on their own, so spacing the calls beats retrying them.

Ask the agent to diagnose it:

```text
Tell me what you were updating and publishing when the rate-limit error hit and quote the error text. Switch to the bulk collection-item tools, and do not call the publish endpoint more than once per minute.
```

### Webflow tools are missing, or one tool name is not found
Two different failures. If OpenClaw shows no Webflow tools at all, the connection or pairing is incomplete: confirm the skill was installed, that Webflow shows as connected in the dashboard, and start a fresh chat so the tool catalog reloads. If most tools work and a single name fails, that name is wrong rather than missing: the error lists the closest real tools, and `clawlink_list_tools --integration webflow` shows the exact catalog. There is also a first-call timing case unique to this setup: schemas load on demand, so the opening Webflow call in a fresh session can arrive before the catalog and needs one retry. What does not apply is the advice for this symptom that blames a client-side stale tool list and a connector resync in a desktop client, since this connection is hosted.

Ask the agent to diagnose it:

```text
List the Webflow tools you actually have access to. If there are none, run clawlink_list_integrations and say so plainly. If there are, tell me which one lists sites and use that exact name.
```

### API key setup works but results look incomplete
Double-check that the API key for Webflow has the right scopes or account access. A valid key can still be too limited for some reads or writes.

### Is there a OpenClaw Webflow integration?
Yes. ClawLink is the fastest way to connect OpenClaw to Webflow: link your Webflow account once in the browser and OpenClaw can call the Webflow API through 51 ready-made tools — no custom code or token handling.

### How do I add Webflow to OpenClaw with ClawLink?
Paste the setup prompt from this page into OpenClaw. It installs the ClawLink Webflow skill from ClawHub, then you click Connect in the dashboard to authorize Webflow. OpenClaw calls the tools from the next message — no config files, and the Webflow key you paste is stored server-side instead of in your environment.

### How long does it take to connect Webflow to OpenClaw?
About two minutes. Sign in, click Connect next to Webflow in the dashboard, authenticate, and OpenClaw can use it from the next chat message.

### Why use ClawLink instead of wiring Webflow up myself?
The alternative to ClawLink is usually manual API key setup plus your own token handling, permission troubleshooting, and tool plumbing for OpenClaw. That is fine if you want to build and maintain the integration yourself. Most teams just want Webflow working from chat.

### Do I need a Webflow site token or API token?
You paste one Webflow access token at setup, generated in your Webflow account settings, and it is stored server-side. The distinction the search results teach matters only on the manual route: site tokens and OAuth tokens differ in what they can reach, and the common 401 causes are header format mistakes and tokens that expired or were revoked. On a hosted connection you see none of that plumbing: the token is entered once, the agent calls the tools, and regenerating the token in Webflow means updating a single place in the dashboard. The common claim that "you need a Webflow developer account and your own app" applies to building the integration yourself, not to using this one.

### Can Webflow be used by an AI agent without an API key?
The AI Overview's own answer to this query is yes: it names Webflow's native integrations, remote OAuth architectures, and serverless proxies as routes that avoid local API keys. This page is the remote-OAuth slot: the connection is authorized in the browser through Webflow's own consent screen, the token is held by the hosted provider, and nothing key-shaped exists on your machine or in OpenClaw's config. That is the same no-local-key promise the guides describe, already set up.

### What can the agent do in Webflow?
The 51 tools cover the CMS and site surface: sites and their info, collections and their items, live versus draft collection items, assets and asset folders, custom domains, and component properties. The writes to be deliberate about are creating and updating live collection items, because those publish content to a real site immediately; draft items are the safe rehearsal path. Reading the site structure first, with `webflow_list_webflow_sites` and `webflow_get_collection`, is the habit that keeps an agent from acting on a wrong id.

### How is this different from the Composio plugin route the search results teach?
The underlying Webflow API is the same, so the capability difference is small; the setup and upkeep difference is not. The Composio route the AI Overview teaches involves installing their plugin CLI, setting a consumer key, restarting the gateway, and authenticating in their dashboard, infrastructure you then own. Here the skill install and one dashboard connection are the entire client-side story, and Webflow sits alongside your other connected accounts with one place to revoke. Choose on how much you want to run, not on features.

### OpenClaw installed the Webflow skill but can't call the tools
The ClawHub skill teaches OpenClaw about Webflow, but the calls run through the ClawLink plugin and your connected account. Make sure Webflow is connected in the dashboard, then start a fresh chat so OpenClaw reloads the tool catalog. If OpenClaw runs as a persistent gateway, restart it so the new tools register.

## Related

- [GitHub](https://claw-link.dev/openclaw/github) — Manage repositories, issues, pull requests, and workflows
- [PagerDuty tools](https://claw-link.dev/openclaw/pagerduty) — Manage incidents, on-call schedules, and services
- [OpenClaw SafetyCulture integration](https://claw-link.dev/openclaw/safetyculture) — SafetyCulture (formerly iAuditor) is a workplace operations platform that enables teams to conduct digital inspections, manage audits, track issues, schedule tasks, and maintain compliance through mobile and web applications.
