首页 / 开源榜单 / wordpress-mcp

wordpress-mcp

一个将 WordPress 站点转换为模型上下文协议(MCP)服务器的插件,支持 AI 代理和大型语言模型通过 REST API 与 WordPress 功能交互。

PHPMCP
⭐ GitHubhttps://github.com/Automattic/wordpress-mcp
942
Star 数
+22
Star 增速
2025年8月30日
最后更新
1,504
点击数

WordPress MCP 项目详细介绍

项目概述

WordPress MCP(Model Context Protocol)是由 Automattic 开发的一个 WordPress 插件,旨在将 WordPress 站点转变为一个简单的 MCP 服务器,通过 WordPress REST API 暴露站点功能,使大型语言模型(LLMs)和 AI 代理能够与之交互。该项目允许开发者利用 AI 工具实现内容管理、用户操作、站点配置等自动化任务,提升开发效率和集成能力。

核心功能

  1. MCP 服务器支持

    • 通过 REST API 路由(如 /wp/v2/wpmcp/wp/v2/wpmcp/streamable)提供 MCP 服务器功能,支持 AI 代理与 WordPress 的交互。
    • 支持两种传输层:McpStdioTransport(标准输入输出)和 McpStreamableTransport(流式传输,适用于 SSE 或其他流式协议)。
  2. 认证机制

    • 采用 JWT(JSON Web Token)认证系统,确保安全通信。
    • 支持 WordPress 应用密码(Application Passwords)以及 WooCommerce REST API 的消费者密钥和秘密密钥,增强安全性。
  3. 方法处理器

    • 提供工具(Tools)、资源(Resources)和提示(Prompts)等方法处理器,支持内容管理、站点初始化等操作。
    • 可通过自定义工具扩展功能,满足特定需求。
  4. 管理界面

    • 提供基于 React 的管理界面,方便用户在 WordPress 后台管理认证令牌(Tokens)和其他配置。
  5. 与 MCP 客户端的兼容性

    • 与 MCP 兼容的客户端(如 Claude Desktop)无缝协作,支持通过代理(如 mcp-wordpress-remote)进行 REST API 请求,而无需保持常开连接。

项目特点

  • 安全性:通过 JWT 认证和应用密码确保数据安全,建议使用 HTTPS 加密通信。
  • 扩展性:支持开发者通过添加自定义工具、资源和提示扩展插件功能。
  • 开发友好:提供详细的测试文档(tests/README.md)和贡献指南,鼓励社区参与开发。
  • 轻量高效:代理模式避免了常开连接,优化了性能,适合本地开发和远程部署。
  • 开源许可:采用 GPL v2 或更高版本许可,面向 WordPress 和 AI 社区开放。

技术架构

项目的核心架构包括以下几个模块:

  • 传输层(Transport Layer)

    • McpStdioTransport:通过标准输入输出处理 MCP 请求,适用于本地开发。
    • McpStreamableTransport:支持流式传输,适合实时交互场景(目前部分客户端可能不支持)。
  • 认证系统(Authentication)

    • 使用 JWT 认证,需在 wp-config.php 中定义 WPMCP_JWT_SECRET_KEY
    • 支持 WordPress 应用密码和 WooCommerce 密钥,增强灵活性。
  • 方法处理器(Method Handlers)

    • 工具(Tools):实现内容创建、更新、删除等操作。
    • 资源(Resources):提供站点数据访问接口。
    • 提示(Prompts):为 AI 代理提供上下文引导。
    • 系统初始化(System & Initialization):处理 MCP 服务器的启动和配置。
  • 管理界面(Admin Interface)

    • 使用 React 构建,位于 WordPress 后台的“设置 > WordPress MCP”页面,用于管理认证令牌和功能开关。

安装与配置

安装步骤

  1. 克隆仓库

    cd wp-content/plugins/
    git clone https://github.com/Automattic/wordpress-mcp.git
    cd wordpress-mcp
    
  2. 安装依赖

    composer install --no-dev
    npm install && npm run build
    
  3. 激活插件

    • 在 WordPress 后台的“插件”页面激活 WordPress MCP 插件。
  4. 配置 MCP 功能

    • 导航至“设置 > WordPress MCP”,启用 MCP 功能并配置认证令牌。
  5. 配置 JWT 密钥
    wp-config.php 中添加:

    define('WPMCP_JWT_SECRET_KEY', 'your-secret-key');
    define('WPMCP_DEBUG', true); // Enable debug logging
    
  6. 安装远程客户端(可选):

    • 配合 mcp-wordpress-remote 使用,安装命令如下:
      npx @modelcontextprotocol/inspector \
      -e WP_API_URL=https://your-site.com/ \
      -e JWT_TOKEN=your-jwt-token-here \
      npx @automattic/mcp-wordpress-remote@latest
      

配置注意事项

  • 安全性:切勿将认证令牌提交至版本控制系统,确保 WPMCP_JWT_SECRET_KEY 安全存储。
  • 调试:启用 WPMCP_DEBUG 可记录调试日志,方便排查问题。
  • 删除操作:删除工具可能导致数据永久丢失,仅对可信用户启用。
  • 依赖远程客户端:WordPress MCP 插件需与 mcp-wordpress-remote 配合使用,以实现完整功能。

使用场景

WordPress MCP 项目适用于以下场景:

  1. 自动化内容管理

    • 通过 AI 代理创建、更新或删除文章、页面、用户等,节省手动操作时间。
    • 示例:使用 Claude Desktop 命令“创建 10 篇标题为‘测试文章 #1–10’的草稿文章”,即可自动生成测试内容。
  2. 开发与测试

    • 开发者可利用 MCP 工具快速生成测试数据,加速功能测试和集成开发。
    • 示例:通过 AI 代理查询调试日志并总结问题,简化调试流程。
  3. 站点管理

    • 远程管理站点配置、用户权限或媒体文件,适合分布式团队协作。
    • 支持 WooCommerce 集成,可管理电商相关数据(如订单、产品)。
  4. AI 驱动的定制化

    • 开发者可添加自定义工具,暴露特定业务逻辑,满足个性化需求。
    • 示例:创建自定义工具以批量更新文章分类或优化 SEO 元数据。

扩展与开发

添加自定义工具

开发者可通过以下步骤扩展插件功能:

  1. 创建工具文件

    • wp-content/plugins/wordpress-mcp/includes/Tools/ 目录下添加新工具类。
    • 示例工具类:
      <?php
      namespace WPMCP\Tools;
      class CustomTool {
          public function execute($params) {
              // 实现自定义逻辑
              return ['success' => true, 'data' => 'Custom tool executed'];
          }
      }
      
  2. 注册工具

    • 在插件初始化时注册新工具,确保其通过 MCP 接口可用。
  3. 参考现有实现

    • 查看 includes/Tools/includes/Resources/includes/Prompts/ 目录中的示例代码。

贡献代码

  • 贡献指南:参考仓库中的 Contributing Guidelines,提交 Pull Requests 或报告 Issues。
  • 测试文档:查看 tests/README.md 以了解测试流程,确保代码质量。
  • 许可要求:所有贡献需遵循 GPL v2 或更高版本许可。

相关资源