跳过安装。2 分钟内即可运行。
在 cloud.anythingmcp.com 开始免费试用,一键添加 Webflow,然后将你的 AI 客户端(Claude、ChatGPT、Copilot 或 Cursor)指向生成的 MCP 端点。无需 Docker,无需 git clone,无需任何工程经验。
摘要
让你的 AI 处理 Webflow 网站:读取网站、页面及其 SEO 设置、CMS 集合和条目、表单及提交内容、素材,以及电商商品和订单;起草并更新 CMS 条目,并在你同意后发布条目或整个网站。使用站点 API 令牌。
试试这样问
Webflow 的示例提示
点击任意提示即可复制,然后粘贴到 Claude、ChatGPT、Cursor、Gemini、Copilot 或 OpenClaw 中,在该连接器上运行。
Claude 是 AI,可能会出错。请核对回答。
💡 无需安装? 直接使用 cloud.anythingmcp.com。 登录、点击 Connectors → Webflow、粘贴凭证、生成 MCP API key,即可完成。无 Docker、无
git clone、无本地服务器。
Webflow + Gemini
让你的 AI 处理 Webflow 网站:读取网站、页面及其 SEO 设置、CMS 集合和条目、表单及提交内容、素材,以及电商商品和订单;起草并更新 CMS 条目,并在你同意后发布条目或整个网站。使用站点 API 令牌。
前提条件
完整的设置说明已内置在连接器中 (在 store 中选择连接器时可见)。所需环境变量:
WEBFLOW_API_TOKEN
步骤 1 — 获取凭证
- 登录 https://webflow.com/dashboard,将鼠标悬停在网站上,点击它的齿轮图标打开 Site settings。你需要是该网站的管理员。
- 在左侧边栏选择 Apps & integrations,滚动到页面底部的 API access,点击 Generate API token。
- 为令牌命名(例如 "AnythingMCP"),并选择以下权限范围:
sites:read,sites:write(用于发布网站)pages:read,pages:write(用于页面设置)cms:read,cms:write(用于创建、修改、发布、取消发布或删除条目)forms:read,assets:readecommerce:read(仅限电商网站)
- 点击 Generate token,立即复制令牌,把它填入
WEBFLOW_API_TOKEN,不要带 Bearer 字样,然后安装连接器。 - 先运行
webflow_get_token_info:它会显示令牌的权限范围以及它可访问的网站 id。然后用webflow_list_sites查看网站详情;其中的id就是其他工具所需的site_id。
权限范围:已有的令牌无法再添加权限范围。如果某个工具返回 403 missing_scopes,请生成一个带有所缺权限范围的新令牌,并重新填入 WEBFLOW_API_TOKEN。
只读设置:只勾选 :read 权限范围,并关闭 webflow_publish_site、webflow_update_page_settings、webflow_create_item、webflow_update_item、webflow_publish_items、webflow_create_live_item 和 webflow_update_live_item。
安装时默认关闭:webflow_delete_item,它会永久删除一个 CMS 条目;以及 webflow_unpublish_live_item,它会把已发布的条目从网站上撤下(条目仍以草稿形式保留在 CMS 中)。只有在 AI 需要删除或撤下条目时才打开它们。
每个令牌对应一个网站:站点令牌只能访问生成它的那个网站。一个网站最多可以有 5 个令牌,令牌连续 365 天未使用就会过期。如需管理多个网站,请为每个网站各安装一次连接器。
方案:API 适用于所有网站方案,包括免费的 Starter 方案。CMS 相关工具需要包含 CMS 的方案:Starter 自带一个小型 CMS(20 个集合、50 个条目),Basic 则没有。Webflow 将单独发布条目列为付费 CMS 方案的功能,因此在 Starter 上,webflow_publish_items、webflow_create_live_item、webflow_update_live_item 和 webflow_unpublish_live_item 可能会被拒绝:这时请改为发布整个网站。商品和订单需要电商网站方案;其他网站会返回 409。
暂存内容与线上内容:每个 CMS 条目都有一个暂存(staged)版本(编辑者看到的内容),发布后还有一个网站上的线上(live)版本。webflow_create_item 和 webflow_update_item 只修改暂存内容,公开网站上不会有任何变化;新条目都是草稿。webflow_publish_items 发布选定的条目,webflow_publish_site 发布网站的全部暂存更改,包括页面和条目。webflow_create_live_item 和 webflow_update_live_item 直接写入公开网站。把已发布的条目标记为草稿并不会将其从网站撤下;归档则会在下一次发布网站时将其撤下。webflow_list_items 显示暂存条目,webflow_list_live_items 显示访客看到的内容。
发布是公开的:先确认。 在发布网站或条目、写入线上条目或修改页面设置(通过 webflow_update_page_settings 修改标题、slug、SEO 和 Open Graph 文本)之前,AI 会准确告诉你网站上会发生哪些变化,并等待你同意。Webflow 每分钟只接受一次成功的网站发布。
字段数据:条目内容以 webflow_get_collection 中每个字段的 slug 为键,而不是显示名称;新条目必须提供 name 和 slug。富文本使用 HTML,引用字段填写条目 id,新图片则以公开 URL(最大 4 MB)的形式提供,写作 {"url": "https://..."}。修改条目的 slug 会导致指向旧 URL 的链接失效。
多语言:在本地化网站上,webflow_get_site 会列出各个语言版本(locale)。如果不指定,工具会使用主语言。
速率限制:每个令牌在 Starter 和 Basic 网站方案上每分钟 60 次请求,在 CMS、电商和 Business 方案上每分钟 120 次。超出后 Webflow 会返回 429 并附带 Retry-After 头,通常为 60 秒:稍等后再试。列表类工具每页最多返回 100 条。
常见错误:400 会指出有问题的字段:未知的字段 slug、格式错误的值,或缺少 name 或 slug。401 表示令牌错误、已被撤销或已过期:请在 Site settings → Apps & integrations → API access 中生成新令牌。403(missing_scopes 或 forbidden)表示令牌缺少某个权限范围(请生成带有该权限范围的新令牌),或网站方案不包含该功能。404 表示 id 错误,或使用了另一个网站的 id。409 表示请求与网站当前状态冲突,例如对没有电商功能的网站调用电商接口。429 表示触发了速率限制:请等待 Retry-After 指定的时间。
连接器不会创建或修改集合和字段,不会编辑页面内容、组件或自定义代码,不会上传或删除素材,不会修改表单提交内容,也不会编辑商品和订单,并且不处理 Webhook、评论或数据分析。
步骤 2 — 安装 adapter
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
步骤 3 — 在 Gemini 中添加连接器
你的服务器 URL: 在 AnythingMCP 中打开 MCP Servers → 此连接器所在的服务器,复制它的 URL(
https://cloud.anythingmcp.com/mcp/…)。本指南中出现YOUR_SERVER_ID的地方都用它替换。
Gemini CLI 从 ~/.gemini/settings.json(Windows 上为 %USERPROFILE%\.gemini\settings.json)读取 MCP 服务器。添加:
{
"mcpServers": {
"anythingmcp": {
"httpUrl": "https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID",
"headers": { "X-API-Key": "YOUR_MCP_API_KEY" }
}
}
}
- 在 AnythingMCP 的 MCP Servers → 你的服务器 → API keys 中创建 MCP API 密钥,并用它替换
YOUR_MCP_API_KEY。 - 保存文件并重启
gemini。 - 在 Gemini CLI 中运行
/mcp(或在终端运行gemini mcp list),anythingmcp应显示为已连接。 - 开始输入提示,Gemini CLI 现在可以调用
Webflow的工具。
可用工具
| Tool | What it does |
|---|---|
webflow_get_token_info | Check the connected token: its scopes (comma-separated), the site ids it is authorized for, its rate limit per minute, grant type, and when… |
webflow_list_sites | List the sites the token can reach: id, displayName, shortName, workspaceId, lastPublished, lastUpdated, timeZone, customDomains and locales |
webflow_get_site | Read one site: displayName, shortName, lastPublished, lastUpdated, timeZone, customDomains (id and url) and locales (primary and secondary… |
webflow_list_custom_domains | List the site's custom domains with id, url and lastPublished |
webflow_publish_site | Publish the site (or one page with page_id) to its custom domains and/or the webflow.io subdomain: every staged change, pages and CMS… |
webflow_list_pages | List the site's pages: id, title, slug, parentId, collectionId (set for CMS template pages), publishedPath, draft, archived, lastUpdated… |
webflow_get_page | Read one page's settings: title, slug, publishedPath, draft, archived, collectionId, lastUpdated, seo (title, description) and openGraph… |
webflow_update_page_settings | Change a page's title, slug, SEO title and description, or Open Graph title and description, optionally for one locale |
webflow_list_collections | List the site's CMS collections: id, displayName, singularName, slug, createdOn and lastUpdated |
webflow_get_collection | Read a collection's schema: displayName, singularName, slug and fields, each with id, slug, displayName, type (PlainText, RichText, Image… |
webflow_list_items | List a collection's staged items (drafts and published ones, as editors see them): id, fieldData, isDraft, isArchived, lastPublished (null… |
webflow_get_item | Read one staged item: id, fieldData (keyed by field slug), isDraft, isArchived, lastPublished, lastUpdated, createdOn and cmsLocaleId… |
webflow_create_item | Create a staged CMS item; nothing appears on the public site |
webflow_update_item | Change a staged item: only the fields in field_data change |
webflow_delete_item | Delete an item from the CMS for good (in the primary locale, or in the given locales) |
webflow_publish_items | Publish staged items to the live site without publishing the rest of it: their current staged content becomes public and drafts stop being… |
webflow_list_live_items | List a collection's published items as visitors see them: id, fieldData, lastPublished, lastUpdated, createdOn and cmsLocaleId |
webflow_get_live_item | Read the published version of one item: id, fieldData, lastPublished, lastUpdated and cmsLocaleId |
webflow_create_live_item | Create an item and publish it on the live website at once, skipping the draft stage |
webflow_update_live_item | Change a published item and push the change to the live website immediately: only the fields in field_data change |
webflow_unpublish_live_item | Take a published item off the live website (primary locale, or the given locales) |
webflow_list_forms | List the site's forms: id, displayName, pageId, pageName, formElementId, fields (name and type per field), createdOn and lastUpdated |
webflow_get_form | Read one form's schema: displayName, the page it sits on, formElementId, its fields with their types, and responseSettings (notification… |
webflow_list_form_submissions | List the site's form submissions: id, displayName (the form name), dateSubmitted, formResponse (the submitted values by field name) and… |
webflow_list_form_submissions_by_form | List the submissions of one form by its form id: id, dateSubmitted, formResponse (the submitted values by field name) and localeId |
webflow_get_form_submission | Read one form submission: form name, dateSubmitted, localeId and formResponse with every submitted value by field name |
webflow_list_assets | List the files uploaded to the site: id, displayName, originalFileName, contentType, size in bytes, hostedUrl, altText, folderId, variants… |
webflow_get_asset | Read one asset: displayName, originalFileName, contentType, size, hostedUrl (the public file URL), altText, variants and dates |
webflow_list_products | List e-commerce products, each with its product fieldData (name, slug, description, ...) and its SKUs (variants with price, SKU code and… |
webflow_get_product | Read one e-commerce product with all its SKUs: the product's fieldData and, per SKU, price, compare-at price, SKU code and option values |
webflow_list_orders | List e-commerce orders: orderId, status, acceptedOn, fulfilledOn, customerInfo, shipping and billing address, purchasedItems, totals… |
webflow_get_order | Read one e-commerce order: status, dates, customerInfo, addresses, purchasedItems, totals with taxes and shipping, payment details… |
示例提示
- “列出我们 Webflow 网站中缺少 SEO 标题或 meta description 的页面。”
- “CMS 里哪些博客文章还是草稿?它们最后一次更新是什么时候?”
- “给我看本周联系表单的提交内容,包括姓名、公司和留言。”
- “在 Blog 集合中新建一篇标题为“春季产品更新”的文章,附上简短摘要,只保存为草稿,不要发布。”
FAQ
Gemini CLI 从哪里读取 MCP 服务器? 用户级配置位于 ~/.gemini/settings.json,项目级配置位于项目内的 .gemini/settings.json。gemini mcp list 会列出每个服务器及其连接状态。
下一步
这份指南对你有帮助吗?