关于 Cowboy MCP
Cowboy MCP 是一个开源 WordPress 插件,可将站点作为 MCP 服务,让客户端通过工具管理内容、商店和站点设置。它以内置变更撤销、数据库检查点和审计日志为特点,且服务端点直接运行在 WordPress 中。
主要功能
- 01提供内容与站点管理工具
- 02支持 WooCommerce 和多种插件
- 03逐项撤销更改并创建数据库检查点
- 04写入操作支持试运行与安全确认
- 05通过 OAuth 或 API 密钥连接
- 06按需发现工具以减少上下文占用
适用场景
- 01编辑页面、文章和媒体
- 02维护 WooCommerce 商品与订单
- 03管理插件、主题和站点设置
- 04回滚变更并检查审计记录
MCP 相关
在 WordPress 中通过 Streamable HTTP 提供 MCP 服务,客户端可使用 OAuth 登录或 API 密钥连接。它按需发现和执行工具,并提供资源、资源模板及工作流提示词。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://{site_host}/wp-json/cowboy-mcp/v1/endpointclaude mcp add --transport http februality-cowboy https://{site_host}/wp-json/cowboy-mcp/v1/endpoint{"mcpServers":{"februality-cowboy":{"type":"http","url":"https://{site_host}/wp-json/cowboy-mcp/v1/endpoint"}}}在 Cursor 中打开{"servers":{"februality-cowboy":{"type":"http","url":"https://{site_host}/wp-json/cowboy-mcp/v1/endpoint"}}}在 VS Code 中打开{"mcpServers":{"februality-cowboy":{"type":"http","url":"https://{site_host}/wp-json/cowboy-mcp/v1/endpoint"}}}{"mcpServers":{"februality-cowboy":{"serverUrl":"https://{site_host}/wp-json/cowboy-mcp/v1/endpoint"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
https://{site_host}/wp-json/cowboy-mcp/v1/endpoint需要授权工具
详细介绍
Cowboy MCP 🤠 — 带撤销功能的免费 WordPress MCP 服务
Cowboy MCP 是一款免费的开源 WordPress 插件,可通过 Streamable HTTP 将任何 WordPress 网站转换为 Model Context Protocol(MCP)服务,让 Claude、ChatGPT、Gemini、Grok、Perplexity、Muse、Cursor、VS Code、Claude Code、Codex、n8n、OpenClaw、Hermes Agent 以及任何其他 MCP 客户端,都能通过 203 个工具 使用简单的英语管理网站;它还提供逐项更改撤销、数据库检查点和审计日志,因此可放心用于线上网站。
安装: WordPress.org 插件目录
网站与指南: cowboymcp.com
为什么选择 Cowboy MCP?
- 所有工具都免费。 最多 203 个内置工具,加上插件通过 WordPress Abilities API 注册的所有功能——内容、Gutenberg/Site Editor、WooCommerce、用户、媒体、菜单、插件、主题、文件、数据库、WP-CLI、诊断、修订版本、SEO(Yoast、Rank Math、AIOSEO、SEOPress)、The Events Calendar、ACF、Elementor、Beaver Builder、SiteOrigin、Wordfence、缓存、表单——均采用 GPL 许可,没有专业版、积分或用量限制。
- 每项更改都可撤销。 按更改记录的撤销日志(更改前状态快照、冲突检测、批量撤销),外加一键数据库检查点,并始终启用审计日志。插件和主题更新前会先备份文件并创建检查点;如果更新后的健康检查失败,系统会自动还原。
- 没有中间环节。 MCP 端点在你的 WordPress 安装中运行。没有托管中继、无需账户、不收集遥测数据——你的 AI 客户端直接连接到你的网站。
- 默认安全。 安全模式(破坏性工具需要确认)、每个写入工具均支持试运行、按凭据设置只读/自定义范围、密钥以哈希形式生成且仅显示一次、按密钥设置速率限制、针对敏感选项/危险 SQL/WP-CLI 命令的拒绝列表、SSRF 防护、路径限制在
wp-content内,以及只能由人工在 wp-admin 中启用的 Power 模式。 - 每款应用都支持一键登录。 每款应用都会将你带到自己网站上的登录页面:Claude、ChatGPT、Gemini、Grok、Perplexity、Cursor 和 VS Code 只需点按按钮或粘贴链接即可登录;Claude Code、Codex、Gemini CLI 和 Muse Code 可通过一条命令登录;Muse、OpenClaw 和 Hermes Agent 可通过粘贴一条消息登录;n8n 则通过 OAuth2 登录。授权页面会显示应用名称,并允许你授予完整访问权限、只读权限或手动选择的工具列表;只有点击 Approve 后才会授予权限。API 密钥仍可用于脚本、CI 和无需浏览器登录的编辑器(Windsurf、Cline、Zed)。
- 本地环境也能用。 Local、Studio、MAMP、DevKinsta、wp-env:终端工具像连接线上网站一样使用密钥连接;Claude Desktop 则通过 Connections 标签页为你生成的
mcp-remote桥接服务连接。 - 高效利用上下文。
tools/list会返回两个网关工具(cowboy_discover、cowboy_run);Agent 按需发现并运行其他工具,而不是将 203 个工具的架构全部载入上下文。在 WordPress 6.9+ 中,每个工具也都是cowboy-mcp/*能力,可供 WP-CLI、REST 和官方 MCP Adapter 使用,并支持撤销。 - 零依赖。 仅使用原生 WordPress API——无需 Composer、npm、构建步骤,也不在请求时加载
wp-admin/includes。在不支持 WP-CLI 或shell_exec()的主机上也能运行。
“提供的访问权限比任何其他 MCP 都多,用起来简单,而且我非常喜欢更改日志和检查点——即使出了问题也很安全。”——WordPress.org 评价
工具覆盖范围
| 领域 | 工具 | Agent 可以执行的操作 |
|---|---|---|
| 内容 | 5 篇文章/页面/CPT · 4 个分类法 · 4 条评论 · 4 个媒体 · 6 个菜单 · 1 个选项 | 起草、编辑、安排发布时间、发布;上传媒体、修正替代文本;构建导航菜单 |
| Gutenberg 与 Site Editor | 15 个(经典主题中为 8 个) | 将页面作为区块树读取并按路径编辑;区块类型、样式、FSE 模板/部件、全局样式、导航 |
| 站点管理 | 5 个用户 · 6 个插件 · 5 个主题 · 4 个文件 · 5 个数据库 · 3 个 WP-CLI/系统 · 1 个站点健康 | 安全地安装/更新/删除插件和主题、管理角色、编辑 wp-content 中的文件、修复数据表、运行 WP-CLI |
| 诊断 | 10 个 | 错误日志、HTTP 和电子邮件测试、钩子、临时数据、REST 路由、缩略图、重写规则、快照、Connection Doctor |
| 安全 | 6 个回滚 · 2 个批量操作/审计 | 列出并撤销更改、创建/列出/恢复/删除检查点、批量执行、检索审计日志 |
| WooCommerce | 40 个 | 产品和变体、订单和退款、客户、优惠券、税费/配送/支付设置、报告 |
| Wordfence | 17 个 | 扫描、封锁、防火墙、实时流量、活动、设置 |
| ACF / Elementor | 9 / 7 个 | 字段组、字段、重复字段 / 模板、页面内容、全局样式、小工具 |
| Beaver Builder / SiteOrigin | 7 / 12 个 | 页面构建器页面、带试运行差异的布局、模块、全局设置 / 布局和行/小工具编辑、预置布局、小工具、设置、激活 Widgets Bundle |
| 修订版本 / 活动 | 3 / 13 个 | 列出、比较差异并恢复文章修订版本 / The Events Calendar 活动、场地、组织者 + Events Calendar Pro 重复活动 |
| SEO / 缓存 / 表单 | 4 / 4 / 1 个 | Yoast、Rank Math、All in One SEO 和 SEOPress 元数据读取/写入/审计 / WP Rocket、LiteSpeed、W3TC / WPForms、Gravity Forms、CF7 |
也支持大多数其他页面构建器:如果构建器将布局保存在文章内容或文章元数据中,就可以通过标准文章工具进行编辑,并使用相同的试运行和逐项更改撤销功能。
此外还提供 17 个只读资源(包括 wordpress://tools/catalog)、4 个资源模板(wordpress://posts/{id}、wordpress://options/{name}、wordpress://plugins/{slug}、wordpress://users/{id})以及 8 个支持参数自动补全的工作流提示词。只有在插件处于启用状态时,才会注册相应的集成。
要求
- WordPress 6.2+(已测试至 7.1)
- PHP 8.0+
- OAuth 连接器和云端客户端(claude.ai、ChatGPT)需要 HTTPS;在本地站点上,终端工具使用普通 HTTP 即可
安装
- 前往 插件 → 安装新插件,搜索 Cowboy MCP,安装并启用;也可以从 WordPress.org 下载。
- 前往 设置 → Cowboy MCP → 生成 API 密钥。复制密钥——它只显示一次,并以哈希形式存储。
- 连接客户端(见下文)。连接标签页会显示已预填站点端点的所有配置片段。
更新会通过 WordPress 常规更新界面推送。
连接应用
每个应用都会通过你自己站点上的授权页面登录;无需粘贴 API 密钥。完整列表——包括方案限制、本地站点是否可用,以及每一项最近一次端到端验证的日期——请见 cowboymcp.com/connect。
| 应用 | 所需套餐 | 按钮或命令 | 指南 |
|---|---|---|---|
| Claude (claude.ai) | 任意 Claude 套餐;免费版允许添加一个自定义连接器。Team 和 Enterprise:需由所有者先添加 | Connections 标签页 → Add to Claude | 将 WordPress 连接到 Claude |
| Claude Desktop | 与 claude.ai 相同 | Connections 标签页 → Add to Claude,或 Customize → Connectors → Add custom connector | 将 WordPress 连接到 Claude Desktop |
| Claude Code | 包含 Claude Code 的 Claude 套餐(Pro 或 Max),或 API 计费 | Connections 标签页 → Claude Code 面板 → 运行两行命令(claude mcp add、claude mcp login) | 将 WordPress 连接到 Claude Code |
| ChatGPT | 网页端的 Business、Enterprise 或 Edu 工作区;Pro 可只读方式连接一个服务。不提供 Developer mode | Connections 标签页 → Open ChatGPT,然后 Plugins → Add → Add custom MCP server → Create as a plugin | 将 WordPress 连接到 ChatGPT |
| Codex CLI 和应用 | 包含 Codex 的 ChatGPT 套餐(Plus、Pro、Business、Enterprise 或 Edu),或 API 密钥 | Connections 标签页 → Codex 面板 → 一条 codex mcp add 命令 | 将 WordPress 连接到 Codex |
| Perplexity | Pro、Max 或 Enterprise。免费版不支持自定义连接器 | Connections 标签页 → Open Perplexity,然后 Plugins(或 Customize → Connectors)→ Add custom → Add MCP connector | 将 WordPress 连接到 Perplexity |
| Grok | 任意套餐,包括免费套餐 | Connections 标签页 → Open Grok,然后 grok.com/connectors → New Connector → Custom | 将 WordPress 连接到 Grok |
| Gemini app | 美国地区的个人 Google 账号,年满 18 周岁,Gemini 语言为英语;未列出付费套餐要求 | Connections 标签页 → Open Gemini,然后 Customize → Connectors → + Custom | 将 WordPress 连接到 Gemini |
| Gemini CLI | Google 账号;免费层级可用 | Connections 标签页 → Gemini CLI 面板 → 一条 gemini mcp add 命令,然后运行 /mcp auth | 将 WordPress 连接到 Gemini |
| Muse (Meta) | 免费;Meta 在美国和加拿大提供 Muse | Connections 标签页 → Muse 面板 → Copy message,将其粘贴到新的 Muse 聊天中 | 将 WordPress 连接到 Muse |
| Muse Code | 同一个 Muse 账号 | Connections 标签页 → Muse Code 面板 → Copy message,将其粘贴到 muse,然后运行一条 muse mcp login 命令 | 将 WordPress 连接到 Muse |
| Cursor | 任意 Cursor 套餐 | Connections 标签页 → Add to Cursor | 将 WordPress 连接到 Cursor |
| VS Code (GitHub Copilot) | 任意 Copilot 套餐,包括 Free | Connections 标签页 → Install in VS Code | 将 WordPress 连接到 VS Code |
| n8n | 任意 n8n Cloud 套餐,或可自托管的 n8n(包括 Community Edition) | Connections 标签页 → n8n 面板;添加一个 MCP Client Tool 节点,并使用 MCP OAuth2 凭据 | 将 WordPress 连接到 n8n |
| OpenClaw | 正在运行的 OpenClaw 网关 | Connections 标签页 → OpenClaw 面板 → Copy message,将其粘贴到你的 OpenClaw 聊天中;或运行 openclaw mcp add + openclaw mcp login | 将 WordPress 连接到 OpenClaw |
| Hermes Agent | Nous Research 的 Hermes Agent;聊天方式需要其连接工具,终端命令适用于所有安装方式 | Connections 标签页 → Hermes Agent 面板 → Copy message,将其粘贴到你的 Hermes 聊天中;或运行一条 hermes mcp add … --auth oauth 命令 | 将 WordPress 连接到 Hermes Agent |
| Windsurf、Cline、Zed、LibreChat 以及任何其他 Streamable HTTP 客户端都可以使用限定范围的 API 密钥连接(配置块如下);Opencode 使用相同的浏览器流程登录。 |
连接 Agent
端点为 https://yoursite.com/wp-json/cowboy-mcp/v1/endpoint(通过 Streamable HTTP 传输的 JSON-RPC 2.0,MCP 2025-06-18)。
Claude Code
claude mcp add --transport http your-site https://yoursite.com/wp-json/cowboy-mcp/v1/endpoint \
--header "Authorization: Bearer YOUR_API_KEY"
Claude 桌面版和网页版、ChatGPT(单击连接,无需密钥) — 在 Connections 选项卡中点击 Add to Claude / Open ChatGPT(已为你启用浏览器登录;对于 ChatGPT,将复制的链接粘贴为自定义 MCP 服务),在你的网站上批准授权页面(选择完全访问、只读访问或自定义访问权限)。需要可通过 HTTPS 公开访问的网站。
本地网站上的 Claude Desktop — 使用 Connections 选项卡中显示的 mcp-remote 桥接配置:
{
"mcpServers": {
"your-site": {
"command": "npx",
"args": ["-y", "mcp-remote", "http://yoursite.local/wp-json/cowboy-mcp/v1/endpoint",
"--header", "Authorization:${AUTH_HEADER}"],
"env": { "AUTH_HEADER": "Bearer YOUR_API_KEY" }
}
}
}
Cursor / Windsurf(Devin Desktop)(~/.cursor/mcp.json、~/.config/devin/mcp_config.json)
{
"mcpServers": {
"your-site": {
"url": "https://yoursite.com/wp-json/cowboy-mcp/v1/endpoint",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}
Cline:在条目中添加 "type": "streamableHttp"。VS Code(.vscode/mcp.json):使用 servers 替代 mcpServers,并添加 "type": "http"。Zed:在其设置的 context_servers 下填写相同的 url + headers。
Codex CLI — Codex 每次启动时都会读取密钥,因此也要将 export 添加到你的 shell 配置文件中。
export COWBOY_MCP_API_KEY="YOUR_API_KEY"
codex mcp add your-site --url https://yoursite.com/wp-json/cowboy-mcp/v1/endpoint --bearer-token-env-var COWBOY_MCP_API_KEY
Gemini CLI
gemini mcp add --scope user --transport http your-site https://yoursite.com/wp-json/cowboy-mcp/v1/endpoint \
--header "Authorization: Bearer YOUR_API_KEY"
Gemini app、Grok、Perplexity、Meta Muse、OpenClaw、Hermes Agent、n8n(无需密钥) — Connections 选项卡中为每个客户端提供了专属面板:云端应用将连接链接作为自定义 MCP 服务;Muse、OpenClaw 和 Hermes 使用你粘贴到聊天中的消息;n8n 的 MCP Client Tool 节点则使用 MCP OAuth2。它们都会通过浏览器在你的网站上登录。
任何支持带 Bearer 标头的 Streamable HTTP 的客户端都可以使用相同方式连接(n8n、Opencode、LibreChat 或你自己的 Agent)。Opencode:在远程服务上将 "oauth": false 设为关闭,以便使用密钥。各客户端的分步指南:cowboymcp.com。
使用 curl 快速进行冒烟测试
curl -s -X POST https://yoursite.com/wp-json/cowboy-mcp/v1/endpoint \
-H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"cowboy_run","arguments":{"tool":"wp_site_info","arguments":{}}}}'
安全模型
- 安全模式(默认开启):标注了
destructiveHint的工具在收到包含confirm: true的重新调用前会拒绝运行;拒绝响应中会包含预览。 - 试运行:每个非只读工具都接受
dry_run: true,并准确报告将发生的更改。 - 撤销日志:为已记录的更改(文章、选项、用户、媒体、菜单、术语、评论、WooCommerce 对象、SEO 元数据、Gutenberg/FSE 编辑、搜索替换行、插件/主题包)保存更改前的状态快照;支持
wp_list_changes/wp_undo_change、批量撤销、冲突检测和撤销后重做;默认保留 7 天。 - 数据库检查点:转储网站表的前缀范围数据,并支持原子恢复;最多保留 5 个;在插件/主题更新和会修改数据的 WP-CLI 命令前自动创建。检查点恢复表数据,不恢复上传文件或代码。
- 审计日志:将每次工具调用、错误和身份验证事件记录到
{prefix}cowboy_mcp_audit_log(键、工具、参数、结果、IP);30 天后清理;读取时会隐藏机密信息。 - 限定范围的凭据:API 密钥和 OAuth 连接包含
{mode: full|read_only|custom, allowed_tools[]};在分发时强制执行,也适用于通过cowboy_run调用的工具和批处理。readOnlyHint被视为安全边界。 - 密钥与限制:密钥以单向哈希形式存储,仅显示一次,可单独撤销;每个密钥都有速率限制(默认每分钟 120 次);请求
Origin允许列表;OAuth 令牌以哈希形式存储,默认关闭,且需要管理员同意。 - 防护措施:受保护选项拒绝列表(
siteurl、active_plugins、凭据、插件自身设置等)、危险 SQL 和 WP-CLI 命令拒绝列表(eval、shell、db drop等)均基于类 shell 分词器应用;对出站请求进行 SSRF 验证;限制wp-content路径并使用原子写入;每次写入文件前检查 PHP 语法;未启用 Power mode 时禁止写入mu-plugins;保护插件不被自行删除,并防止移除最后一名管理员。 - Power mode:仅管理员可用的复选框,可在一次性任务中解除精选防护措施;无法通过 API 启用,且不会解除凭据选项保护、机密信息隐藏或自我保护措施。
- Connection Doctor:一键自检(HTTPS、可访问性、REST、OAuth 发现、Cloudflare 验证挑战、ModSecurity 类 WAF、LiteSpeed 缓存等主机端阻碍),并提供带指纹标记的原因和修复方案;也可使用
wp cowboy-mcp doctor和wp_connection_doctor工具。
对比
网站上提供了有事实依据且注明日期的对比:所有 WordPress MCP 插件对比 · 与 Novamira 对比 · 与 AI Engine 对比 · 与 WPVibe 对比 · 与 InstaWP 对比 · 与 WordPress MCP Adapter 对比 · 自托管与托管版对比。简而言之:端点由用户自托管,无中继或计量,每个工具都免费,并且同时提供撤销、检查点和审计日志。
架构
cowboy-mcp.php # entry point, constants, activation/uninstall
includes/
class-mcp-transport.php # REST route, JSON-RPC dispatch, sessions (Streamable HTTP)
class-mcp-auth.php # API keys (hashed), Bearer validation, rate limits, Origin allowlist
class-mcp-oauth.php # OAuth 2.1 authorization server (discovery, DCR, consent, tokens)
class-mcp-security.php # denylists, SSRF, SQL/WP-CLI gates, scoping, secret scrubbing
class-mcp-tools.php # registry, gateway meta-tools, dispatch, lazy domain loading
class-mcp-rollback.php # undo journal class-mcp-checkpoint.php # DB checkpoints
class-mcp-audit-log.php # audit table class-mcp-installer.php # WP.org package installer
class-mcp-doctor.php # Connection Doctor class-mcp-compat.php # admin-free reimplementations
class-mcp-resources.php / class-mcp-prompts.php / class-mcp-completion.php
tools/{core,gutenberg,acf,woocommerce,seo,forms,cache,elementor,wordfence}/
admin/ # settings page (Connection, Settings, Activity, Logs, About), assets
languages/ # 12 bundled locales for the admin UI (ru, uk, zh_CN, ja, ko, es, fr, de, pt_BR, it, hi, id)
返回给 Agent 的工具描述和错误消息有意使用英文;管理界面已翻译。
可扩展性
cowboy_mcp_tools过滤器——注册自定义工具定义和处理程序。cowboy_mcp_tool_allowed过滤器——按请求阻止特定工具。cowboy_mcp_allowed_origins过滤器——扩展请求Origin允许列表。
开发
npx wp-env start # local WordPress at http://localhost:8890 with this checkout mounted as the plugin
CLI="$(docker container ls -q --filter 'name=^[0-9a-f]+-cli-1$')"
docker exec "$CLI" wp plugin check cowboy-mcp --format=csv # Plugin Check (install it in wp-env first)
find . -name '*.php' -not -path './node_modules/*' -exec php -l {} + # syntax check
无需构建。欢迎提交拉取请求——请遵守 WordPress.org 审核要求(不引用 wp-admin/includes、不使用路径常量、对 $wpdb 查询进行预处理/验证、转义输出)。
支持、评价与安全
- 问题和连接问题:WordPress.org 支持论坛——请粘贴您的 Connection Doctor 报告;通常会在一天内回复主题。
- 错误和功能请求:GitHub 问题。
- **安全问题:**请通过此代码库的 Security 标签页(私密漏洞报告)私下报告,而不要公开提交问题。
- **评价:**如果 Cowboy MCP 为您节省了时间,请在 WordPress.org 上留下评价,帮助其他站点所有者发现它。
许可证
GPL-2.0-or-later。© Andrew Ivanov(februality)。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
