mcpField
W
wordpress-mcp

wordpress-mcp

本地服务
github.com/cvrt-jh商业与营销33 周前更新

关于 wordpress-mcp

wordpress-mcp 通过 MCP 工具提供 WordPress 站点管理功能,面向管理员和站点运营者。单个实例可管理多个站点,并精简 REST API 响应以减少返回数据。

主要功能

  1. 01管理多个 WordPress 站点
  2. 02创建和编辑文章、页面及用户
  3. 03管理插件、主题、媒体和评论
  4. 04可选数据库、菜单及小工具管理
  5. 05精简 REST API 响应

适用场景

  1. 01更新已配置站点的内容
  2. 02查看并审核评论
  3. 03检查站点健康状况和插件更新

MCP 相关

通过基于 REST API 的工具将 MCP 客户端连接到 WordPress;扩展操作还依赖 cvrt-mcp-endpoints 插件。工具针对配置的站点 ID,使用 WordPress Application Passwords 进行认证。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cvrt-jh-wordpress": {
"command": "npx",
"args": [
"-y",
"@cavort-it-systems/wordpress-mcp"
],
"env": {
"WORDPRESS_SITE_URL": "<WORDPRESS_SITE_URL>",
"WORDPRESS_USERNAME": "<WORDPRESS_USERNAME>",
"WORDPRESS_PASSWORD": "<WORDPRESS_PASSWORD>"
}
}
}
}
启动命令npx -y @cavort-it-systems/wordpress-mcp
需要配置的环境变量
WORDPRESS_SITE_URLWordPress site URL (e.g., https://example.com)
WORDPRESS_USERNAMEWordPress username
WORDPRESS_PASSWORD密钥WordPress Application Password (Users > Profile > Application Passwords)

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@cavort-it-systems/wordpress-mcp1.0.0

工具

48

收录的工具列表 · 更新于 2 周前

此工具无需参数。

详细介绍

wordpress-mcp

npm version License: MIT MCP SDK

轻量级 WordPress MCP 服务,用于站点管理。266 个工具,提供经过 Token 优化的响应——REST API 响应会自动从数千字节精简为必要内容。

v3.5:fields_*(12 个工具)支持 cvrt-fields 0.1.2+,涵盖状态、设置、字段类型、位置值、架构,以及字段组、文章类型、分类法和选项页面的 CRUD + JSON 同步。

v3.4:cvrt-legal 0.9.0——标记修复开关(legal_put_accessibility 上的 repairs)和报告(legal_get_accessibility_report / legal_reset_accessibility_report),文档类型 barrierefreiheit。

v3.3:cvrt-legal 的每个管理路由都有对应工具——生成器(legal_*_generator*、从本地文件导入库)、Impressum 信息、社交媒体部分、设置,以及可自托管的无障碍工具(legal_get_accessibility / legal_put_accessibility,cvrt-legal 0.8.0+)。

v3.2:cvrt-legal 同意决策日志的 legal_consent_log_get / legal_consent_log_stats / legal_consent_log_export(需要 cvrt-legal 0.5.0+);legal_put_consent 接受 log_enabled。

v3.1:为我们的自有插件提供工具——cvrt-seo-manager 的 seo_*(31 个),cvrt-legal 的 legal_*(15 个,包含 legal_link_page,需要 cvrt-legal 0.4.2+),以及 cvrt-order-fulfillment 的 fulfillment_*(8 个)。

v3.0(重大变更):多站点——一个服务实例通过单个 WORDPRESS_SITES 环境变量管理任意数量的站点。现在每个工具都需要 site 参数;使用新的 list_sites 工具查找已配置的 ID。旧的单站点环境变量已移除。wp_activate_plugin / wp_deactivate_plugin / wp_delete_plugin 现在使用 cvrt-mcp-endpoints 的 mcp/v1 路由,并接受插件文件路径(例如 akismet/akismet.php),而非 slug。

v2.1:现在通过 wp-pilot-pro 包含 ACF 和 WooCommerce 的 Pro 模块。

v2.0:扩展了针对 cvrt-mcp-endpoints 插件的工具——从 WordPress.org 安装插件/主题、数据库管理、完整的挂件/菜单控制等。

为什么选择此服务?

WordPress REST API 会返回非常冗长的 JSON(每篇文章约 5–10KB)。此服务会精简这些内容:

响应精简前精简后缩减比例
wp_list_posts(10 篇文章)~50KB~2KB96%
wp_get_post~5KB~200 字节96%
wp_list_plugins~15KB~800 字节95%

Token 更少 = 响应更快、成本更低,为 AI 提供更多上下文。

安装

npm install -g @cavort-it-systems/wordpress-mcp

或直接运行:

npx @cavort-it-systems/wordpress-mcp

配置

v3.0 支持多站点(重大变更)。 现在一个服务实例可管理任意数量的 WordPress 站点,这些站点通过一个 WORDPRESS_SITES 环境变量定义为包含 {id, url, username, password} 对象的 JSON 数组。旧的单站点环境变量(WORDPRESS_SITE_URL、WORDPRESS_USERNAME、WORDPRESS_PASSWORD)不再读取——请改为设置 WORDPRESS_SITES。

现在每个工具(list_sites 除外)都需要一个 site 参数,用于指定目标站点 ID。先调用 list_sites,查找已配置的 ID——它会返回每个站点的 {id, url}(绝不会返回或记录密码)。

Claude Desktop / 手动配置

将以下内容添加到 MCP 配置(~/.claude.json 或 Claude Desktop 设置)中:

{
  "mcpServers": {
    "wordpress": {
      "command": "npx",
      "args": ["@cavort-it-systems/wordpress-mcp"],
      "env": {
        "WORDPRESS_SITES": "[{\"id\":\"boardcouture\",\"url\":\"https://boardcouture.shop\",\"username\":\"cavortkonzepte\",\"password\":\"xxxx xxxx xxxx\"}]"
      }
    }
  }
}

将更多对象追加到 WORDPRESS_SITES 数组即可添加站点——一个服务实例即可处理所有站点。

Claude Code CLI
claude mcp add wordpress \
  -e WORDPRESS_SITES='[{"id":"boardcouture","url":"https://boardcouture.shop","username":"cavortkonzepte","password":"xxxx xxxx xxxx"}]' \
  -- npx @cavort-it-systems/wordpress-mcp
从源代码运行
git clone https://github.com/cvrt-jh/wordpress-mcp.git
cd wordpress-mcp
npm install && npm run build

身份验证

使用 Application Passwords(WordPress 5.6+):

  1. 在 WordPress 管理后台中前往 用户 → 个人资料
  2. 向下滚动到 Application Passwords
  3. 为“Claude MCP”创建新密码
  4. 使用生成的密码(保留空格)

响应精简

所有响应都会自动精简。示例:

wp_get_post - 从约 5KB 精简至约 200 字节:

// Before (WordPress REST API raw)
{"id":123,"date":"2026-01-15T10:30:00","date_gmt":"2026-01-15T09:30:00",
"guid":{"rendered":"https://example.com/?p=123"},"modified":"2026-01-20T14:00:00",
"modified_gmt":"2026-01-20T13:00:00","slug":"my-post","status":"publish",
"type":"post","link":"https://example.com/my-post/","title":{"rendered":"My Post"},
"content":{"rendered":"<p>Full content...</p>","protected":false},
"excerpt":{"rendered":"<p>Excerpt...</p>","protected":false},
"author":1,"featured_media":456,"comment_status":"open","ping_status":"open",
"sticky":false,"template":"","format":"standard","meta":{"footnotes":""},
"categories":[1,5],"tags":[10,20],"class_list":["post-123","type-post",...],
"_links":{"self":[...],"collection":[...],"about":[...],...}}

// After (slimmed)
{"id":123,"title":"My Post","slug":"my-post","status":"publish",
"date":"2026-01-15T10:30:00","modified":"2026-01-20T14:00:00",
"link":"https://example.com/my-post/","excerpt":"Excerpt...",
"author":1,"categories":[1,5],"tags":[10,20],"featured_media":456}

精简内容:

字段位置原因
guid、_links所有位置WordPress 内部数据
content.rendered列表仅在明确请求时包含
meta、class_list文章/页面主题/插件元数据
ping_status、comment_status文章很少需要
template、format、sticky文章特定于主题
HTML 标签摘要输出纯净文本
美化格式 JSON全部输出紧凑的单行内容

工具(314)

除 list_sites 本身外,以下每个工具都需要 site 参数(即 WORDPRESS_SITES 配置中的 id)。

站点(1)
  • list_sites - 列出已配置的站点 id 和 URL(无需 site 参数;绝不会返回密码)
标准 WordPress REST API(42 个工具)

这些工具适用于任何 WordPress 站点:

站点(4)
  • wp_site_info - 获取站点名称、描述和 URL
  • wp_get_settings - 获取站点设置
  • wp_update_settings - 更新站点设置
  • wp_get_namespaces - 列出 REST API 命名空间
文章(6)
  • wp_list_posts - 按筛选条件列出文章
  • wp_get_post - 获取单篇文章
  • wp_create_post - 创建文章
  • wp_update_post - 更新文章
  • wp_delete_post - 删除文章
  • wp_search_posts - 搜索文章
页面(5)
  • wp_list_pages - 列出页面
  • wp_get_page - 获取单个页面
  • wp_create_page - 创建页面
  • wp_update_page - 更新页面
  • wp_delete_page - 删除页面
用户(6)
  • wp_list_users - 列出用户
  • wp_me - 获取当前用户
  • wp_get_user - 按 ID 获取用户
  • wp_create_user - 创建用户
  • wp_update_user - 更新用户
  • wp_delete_user - 删除用户
插件(5)
  • wp_list_plugins - 列出插件
  • wp_get_plugin - 获取插件详情
  • wp_activate_plugin - 激活插件(mcp/v1;plugin 是文件路径,例如 akismet/akismet.php)
  • wp_deactivate_plugin - 停用插件(mcp/v1;plugin 是文件路径)
  • wp_delete_plugin - 删除插件(mcp/v1;plugin 是文件路径)
主题(4)
  • wp_list_themes - 列出主题
  • wp_get_active_theme - 获取当前启用的主题
  • wp_get_theme - 获取主题详情
  • wp_activate_theme - 切换主题
媒体(4)
  • wp_list_media - 列出媒体库
  • wp_get_media - 获取媒体项
  • wp_update_media - 更新媒体元数据
  • wp_delete_media - 删除媒体
分类和标签(8)
  • wp_list_categories - 列出分类
  • wp_create_category - 创建分类
  • wp_update_category - 更新分类
  • wp_delete_category - 删除分类
  • wp_list_tags - 列出标签
  • wp_create_tag - 创建标签
  • wp_update_tag - 更新标签
  • wp_delete_tag - 删除标签
评论(6)
  • wp_list_comments - 列出评论
  • wp_get_comment - 获取评论
  • wp_create_comment - 创建评论
  • wp_update_comment - 更新/审核评论
  • wp_delete_comment - 删除评论
  • wp_moderate_comments - 批量审核

扩展工具(43 个工具)- 需要 cvrt-mcp-endpoints 插件

这些工具需要安装并启用 WordPress 插件 cvrt-mcp-endpoints。

插件管理(4)
  • mcp_search_plugins - 搜索 WordPress.org 插件
  • mcp_install_plugin - 从 WordPress.org 安装插件
  • mcp_update_plugin - 更新单个插件(refresh 会先进行检查,包括 GitHub/PUC 插件)
  • mcp_check_plugin_updates - 立即运行 Plugin Update Checker 和 wp.org 检查,并列出可用更新
  • mcp_update_all_plugins - 更新所有插件
主题管理(5)
  • mcp_search_themes - 搜索 WordPress.org 主题
  • mcp_install_theme - 从 WordPress.org 安装主题
  • mcp_update_theme - 更新单个主题
  • mcp_update_all_themes - 更新所有主题
  • mcp_delete_theme - 删除未启用的主题
核心管理(6)
  • mcp_get_version - 获取 WordPress 版本信息
  • mcp_get_system_info - 获取全面的系统信息
  • mcp_check_updates - 检查所有更新
  • mcp_update_core - 更新 WordPress 核心
  • mcp_flush_rewrite - 刷新重写规则
  • mcp_flush_cache - 刷新对象缓存和瞬态(不是 WordPress 前端的页面缓存)
数据库管理(5)
  • mcp_get_tables - 列出数据表及其大小
  • mcp_search_replace - 在数据库中搜索并替换
  • mcp_optimize_tables - 优化所有数据表
  • mcp_clean_revisions - 删除旧修订版本
  • mcp_clean_comments - 删除垃圾评论和回收站中的评论
选项管理(5)
  • mcp_list_options - 按前缀筛选并列出选项
  • mcp_get_option - 获取单个选项
  • mcp_set_option - 创建/更新选项
  • mcp_delete_option - 删除选项
  • mcp_bulk_get_options - 获取多个选项
菜单管理(8)
  • mcp_list_menus - 列出导航菜单
  • mcp_get_menu_locations - 获取主题位置
  • mcp_get_menu - 获取菜单及其菜单项
  • mcp_create_menu - 创建菜单
  • mcp_delete_menu - 删除菜单
  • mcp_add_menu_item - 添加菜单项
  • mcp_delete_menu_item - 删除菜单项
  • mcp_assign_menu_location - 将菜单分配到指定位置
小工具管理(8)
  • mcp_list_sidebars - 列出所有侧边栏
  • mcp_get_sidebar_widgets - 获取侧边栏小工具
  • mcp_list_widget_types - 列出小工具类型
  • mcp_get_widget - 获取小工具详情
  • mcp_add_widget - 将小工具添加到侧边栏
  • mcp_update_widget - 更新小工具设置
  • mcp_delete_widget - 移除小工具
  • mcp_move_widget - 将小工具移至侧边栏
健康与诊断(6)
  • mcp_get_health - 获取网站健康评分
  • mcp_get_debug_info - 获取调试信息
  • mcp_get_php_info - 获取 PHP 配置信息
  • mcp_get_plugins_health - 获取插件健康状况/更新信息
  • mcp_get_cron_status - 获取 Cron 任务状态
  • mcp_run_cron - 立即运行 Cron 事件(按计划/非计划,类似于 wp cron event run)
  • mcp_get_action_scheduler - 获取 Action Scheduler 计数、逾期情况和近期失败记录
  • mcp_run_action_scheduler - 立即运行到期的 Action Scheduler 操作(1-50 个,可选钩子/组)
  • mcp_scan_uploads - 扫描 uploads 目录下的可执行文件(sha256、良性标记)
  • mcp_get_audit_log - 获取会更改状态的 MCP 调用审计记录

ACF 模块(31 个工具)- 需要 wp-pilot-pro + ACF

需要 wp-pilot-pro 和 Advanced Custom Fields。

字段组(4)
  • acf_list_field_groups - 列出所有字段组
  • acf_get_field_group - 获取字段组及其架构
  • acf_export_field_groups - 导出为 JSON
  • acf_import_field_groups - 从 JSON 导入
文章字段(4)
  • acf_get_post_fields - 获取文章的所有字段
  • acf_update_post_fields - 更新多个字段
  • acf_get_post_field - 获取单个字段值
  • acf_update_post_field - 更新单个字段
分类项与用户字段(4)
  • acf_get_term_fields - 获取分类项的 ACF 字段
  • acf_update_term_fields - 更新分类项字段
  • acf_get_user_fields - 获取用户的 ACF 字段
  • acf_update_user_fields - 更新用户字段
选项页面(3)
  • acf_list_options_pages - 列出选项页面
  • acf_get_options_fields - 获取选项页面字段
  • acf_update_options_fields - 更新选项字段
中继器字段(5)
  • acf_get_repeater - 获取中继器行
  • acf_add_repeater_row - 添加行
  • acf_update_repeater_row - 更新行
  • acf_delete_repeater_row - 删除行
  • acf_reorder_repeater - 重新排列行
灵活内容(5)
  • acf_get_flexible - 获取布局
  • acf_add_flexible_layout - 添加布局
  • acf_update_flexible_layout - 更新布局
  • acf_delete_flexible_layout - 删除布局
  • acf_reorder_flexible - 重新排列布局
关系字段(4)
  • acf_get_relationship - 获取关联文章
  • acf_set_relationship - 设置关联文章
  • acf_add_to_relationship - 添加文章
  • acf_remove_from_relationship - 移除文章
实用工具(2)
  • acf_get_clone_references - 获取克隆字段引用
  • acf_get_field_object - 获取字段架构

WooCommerce 模块(42 个工具)- 需要 wp-pilot-pro 和 WooCommerce

需要 wp-pilot-pro 和 WooCommerce。

产品(5)
  • woo_list_products - 列出产品并应用筛选条件
  • woo_get_product - 获取产品详情
  • woo_create_product - 创建产品
  • woo_update_product - 更新产品
  • woo_delete_product - 删除产品
变体(4)
  • woo_list_variations - 列出产品变体
  • woo_create_variation - 创建变体
  • woo_update_variation - 更新变体
  • woo_delete_variation - 删除变体
属性(4)
  • woo_list_attributes - 列出属性
  • woo_list_attribute_terms - 列出属性项
  • woo_create_attribute - 创建属性
  • woo_create_attribute_term - 创建属性项
分类与标签(5)
  • woo_list_categories - 列出产品分类
  • woo_create_category - 创建分类
  • woo_update_category - 更新分类
  • woo_delete_category - 删除分类
  • woo_list_tags - 列出产品标签
订单(5)
  • woo_list_orders - 列出订单
  • woo_get_order - 获取订单详情
  • woo_update_order_status - 更新订单状态
  • woo_add_order_note - 添加备注
  • woo_get_order_notes - 获取备注
客户(5)
  • woo_list_customers - 列出客户
  • woo_get_customer - 获取客户
  • woo_create_customer - 创建客户
  • woo_update_customer - 更新客户
  • woo_get_customer_orders - 获取订单历史记录
优惠券(5)
  • woo_list_coupons - 列出优惠券
  • woo_get_coupon - 获取优惠券
  • woo_create_coupon - 创建优惠券
  • woo_update_coupon - 更新优惠券
  • woo_delete_coupon - 删除优惠券
报告(3)
  • woo_sales_report - 销售报告
  • woo_top_sellers - 热销产品
  • woo_stock_report - 库存状态报告
产品元数据与库存(3)
  • woo_get_product_meta - 获取产品元数据
  • woo_update_product_meta - 更新产品元数据
  • woo_bulk_update_stock - 批量更新库存
SEO 模块(31 个工具)- 需要 cvrt-seo-manager
  • seo_status - 获取 cvrt-seo-manager 状态(版本、是否已配置、依赖项)
  • seo_get_settings - 获取 cvrt-seo-manager 设置
  • seo_update_settings - 更新 cvrt-seo-manager 设置
  • seo_get_post_seo - 获取文章的 SEO 元数据
  • seo_update_post_seo - 更新文章的 SEO 元数据
  • seo_delete_post_seo - 删除(重置)文章的 SEO 元数据
  • seo_get_post_analysis - 获取文章的 SEO 分析(评分、问题)
  • seo_list_posts_seo - 列出多篇文章的 SEO 元数据
  • seo_bulk_update_posts_seo - 批量更新多篇文章的 SEO 元数据
  • seo_get_term_seo - 获取分类法术语的 SEO 元数据
  • seo_update_term_seo - 更新分类法术语的 SEO 元数据
  • seo_delete_term_seo - 删除(重置)分类法术语的 SEO 元数据
  • seo_keyword_check - 运行关键词分析检查
  • seo_list_redirects - 列出所有重定向
  • seo_create_redirect - 创建重定向
  • seo_get_redirect - 根据 ID 获取重定向
  • seo_update_redirect - 根据 ID 更新重定向
  • seo_delete_redirect - 根据 ID 删除重定向
  • seo_list_monitor_log - 列出 404/重定向监控日志条目
  • seo_clear_monitor_log - 清除 404/重定向监控日志
  • seo_create_redirect_from_log - 直接根据监控日志条目创建重定向
  • seo_sitemap_status - 获取站点地图状态
  • seo_sitemap_ping - 使用站点地图通知搜索引擎
  • seo_indexnow_ping - 向 IndexNow 提交 URL
  • seo_export_settings - 导出 cvrt-seo-manager 设置
  • seo_import_settings - 导入 cvrt-seo-manager 设置
  • seo_export_csv - 将文章 SEO 元数据导出为 CSV
  • seo_import_csv - 从 CSV 导入文章 SEO 元数据
  • seo_export_redirects - 导出重定向
  • seo_import_redirects - 导入重定向
  • seo_import_migrate - 运行迁移导入(例如
法律模块(34 个工具)- 需要 cvrt-legal(legal_get_page / legal_link_page 需要 0.4.2+,legal_consent_log_* 需要 0.5.0+,社交功能需要 0.6.0+,生成器和事实需要 0.7.0+,无障碍功能需要 0.8.0+)
  • legal_status - 网站的法律文档状态:哪些文档为必需、已填写和已发布,并提供一个合规标志
  • legal_list_documents - 列出所有法律文档类型及其必需/已填写状态和关联页面
  • legal_get_document - 获取一份法律文档,包括按顺序排列的章节
  • legal_put_document - 替换一份法律文档
  • legal_render_document - 将文档渲染为规范化 HTML,但不保存
  • legal_get_page - 获取法律文档关联的页面信息:是否已关联、page_id、页面的文章状态,以及 ok(已关联且已发布)
  • legal_link_page - 将法律文档关联到其 WordPress 页面(仅限文章类型为 page;拒绝文章和产品)
  • legal_add_section - 向法律文档追加一个章节
  • legal_update_section - 更新一个章节
  • legal_delete_section - 从法律文档中删除一个章节
  • legal_get_consent - 获取 Cookie 同意横幅配置
  • legal_put_consent - 配置同意横幅及网站使用的所有跟踪凭据
  • legal_get_theme - 获取横幅主题:预设名称、CSS 自定义属性覆盖项和渲染后的 CSS
  • legal_put_theme - 设置横幅主题预设和/或单个 CSS 自定义属性
  • legal_get_settings - 获取 cvrt-legal 设置
  • legal_consent_log_get - 获取某个 consent_id 的所有已记录同意决定
  • legal_consent_log_stats - 按操作和 banner_version 汇总指定天数范围内的同意决定数
  • legal_consent_log_export - 将指定天数范围内的原始同意决定日志导出为 CSV
  • legal_update_settings - 设置 GitHub 更新令牌(仅写入)和必需文档覆盖项
  • legal_get_facts / legal_put_facts - 生成器填入 Impressum 和 Datenschutz 的 Impressum 字段(合并)
  • legal_get_generator / legal_put_generator - 选择要生成的文档(模块、选项、保留的章节);PUT 操作会重新生成文档
  • legal_get_generator_library / legal_put_generator_library - 已导入的文本库;可内联导入,也可通过 library_file(本地 .json)导入
  • legal_restore_generator - 将文档还原为生成器首次写入前的状态
  • legal_get_social / legal_put_social - 社交媒体章节:社交网络和个人资料 URL
  • legal_get_social_modules / legal_put_social_modules - 社交媒体文本模块(内联或通过 modules_file)
  • legal_get_accessibility / legal_put_accessibility - 可自托管的无障碍工具(替代 Ally 小组件,不会向第三方发送请求);repairs 用于切换标记修复规则(0.9.0+)
  • legal_get_accessibility_report / legal_reset_accessibility_report - 按页面查看标记修复内容和仍未解决的问题(0.9.0+)
字段模块(12 个工具)- 需要 cvrt-fields 0.1.2+
  • fields_status - 插件版本、定义数量、ACF / Elementor 是否存在、JSON 同步状态
  • fields_get_settings / fields_update_settings - 更新令牌(以 { set } 屏蔽显示,仅写入,加密存储)和 JSON 同步路径
  • fields_list_types - 可用字段类型
  • fields_get_location_values - 位置规则的值
  • fields_get_schema - 定义类型的编辑器表单架构
  • fields_list_definitions / fields_get_definition / fields_create_definition / fields_update_definition / fields_delete_definition - 对 groups、post-types、taxonomies、options-pages 执行 CRUD 操作
  • fields_sync_definition - 将 JSON 来源的定义复制到数据库
订单履约模块(8 个工具)- 需要 cvrt-order-fulfillment 0.2.0+
  • fulfillment_get_settings - 获取 cvrt-order-fulfillment 插件设置
  • fulfillment_update_settings - 更新 cvrt-order-fulfillment 设置
  • fulfillment_status - 流水线运行状况:已设置的凭据、ClickUp 列表/负责人、打印 Agent 上次轮询时间以及打印队列数量
  • fulfillment_queue - 打印队列状态:各状态的数量(待处理/打印中/已打印/失败)以及包含错误信息的近期作业
  • fulfillment_reprint_job - 将打印作业重置为待处理状态,让 Agent 再次打印
  • fulfillment_fulfill_order - 手动(强制)为订单执行履约:生成装箱单、创建 ClickUp 任务并通知 Slack
  • fulfillment_update_check - 立即强制检查插件更新(绕过 PUC 的节流限制),并报告是否有新版本可用

架构

src/
  index.ts          # Entry: McpServer + StdioServerTransport
  client.ts         # WordPress REST API client (Basic Auth)
  types.ts          # Shared Zod schemas + jsonResult helper
  slim.ts           # Response slimming transformers
  tools/
    # Standard WP REST API (wp/v2)
    site.ts         # 4 tools
    posts.ts        # 6 tools
    pages.ts        # 5 tools
    users.ts        # 6 tools
    plugins.ts      # 5 tools
    themes.ts       # 4 tools
    media.ts        # 4 tools
    taxonomies.ts   # 8 tools (categories + tags)
    comments.ts     # 6 tools
    # Extended (mcp/v1) - requires cvrt-mcp-endpoints plugin
    mcp-plugins.ts  # 4 tools - install from WordPress.org
    mcp-themes.ts   # 5 tools - install from WordPress.org
    mcp-core.ts     # 6 tools - updates, cache flush
    mcp-database.ts # 5 tools - search-replace, optimize
    mcp-options.ts  # 5 tools - full options CRUD
    mcp-menus.ts    # 8 tools - navigation menus
    mcp-widgets.ts  # 8 tools - sidebar widgets
    mcp-health.ts   # 6 tools - diagnostics, cron
    # Pro modules (mcp/v1) - requires wp-pilot-pro
    mcp-acf.ts      # 31 tools - ACF integration
    mcp-woo.ts      # 42 tools - WooCommerce

Fort 工具(Bearfort)

对于托管在 Bearfort 上的站点,fort_* 工具会通过 Bearfort API 调用 worker: 备份(fort_backup_create、fort_backup_list、fort_job_get)、清除页面缓存 (fort_cache_purge)以及服务器日志(fort_logs_read:access、error、php、wp-cron,可使用 lines、grep、since)。设置 BEARFORT_API_KEY(管理员密钥),并可选设置 BEARFORT_API_URL; 未设置密钥时,这些工具将拒绝运行。Fort 根据站点 URL 解析。未提供恢复功能。

Stripe 和支付

stripe_* 工具(cvrt-mcp-endpoints 1.17.0+)通过站点自身读取 WooCommerce Stripe Gateway 背后的 Stripe 账户:密钥不会离开 WordPress,结果也经过白名单筛选。写入操作 (stripe_recreate_webhook、stripe_set_payment_method)需要设置 confirm: true,并会在站点上记录审计日志。woo_gateway_status 会显示指定国家的 客户可使用哪些网关。快捷结账和 Stripe.js 的加载位置由 cvrt-woo-helper(woo_helper_*)负责。

密钥屏蔽

每个工具结果在发送给模型之前都会经过 src/mask.ts。具有疑似密钥特征的键(token、secret、password、api_key、whsec、signing_key 等)下的值,以及具有凭据特征的值(sk_live_、whsec_、GitHub/Slack/AWS 令牌、PEM 区块)都会被替换为 [masked];此规则递归生效,也适用于 JSON 字符串。标志值(yes、0、空值)仍会显示,因此“未设置”的状态依然清晰可见。可以写入密钥,但不会读回。cvrt-mcp-endpoints 1.15.0+ 的服务端也采用相同规则。

多站点支持

一个服务实例可通过 WORDPRESS_SITES 环境变量管理所有站点(参见配置)。调用 list_sites 查看已配置的 ID,然后将 site: "<id>" 传递给其他任意工具:

{
  "mcpServers": {
    "wordpress": {
      "command": "npx",
      "args": ["@cavort-it-systems/wordpress-mcp"],
      "env": {
        "WORDPRESS_SITES": "[{\"id\":\"site1\",\"url\":\"https://site1.com\",\"username\":\"admin\",\"password\":\"xxxx xxxx xxxx xxxx\"},{\"id\":\"site2\",\"url\":\"https://site2.com\",\"username\":\"admin\",\"password\":\"yyyy yyyy yyyy yyyy\"}]"
      }
    }
  }
}

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。