Skip to main content
Glama
mwstech

Auditra WordPress MCP

by mwstech

Auditra

一个 WordPress 插件,可将安装它的网站变成只读的 MCP 服务器,因此任何支持 MCP 的 AI 客户端(如 Claude 自定义连接器以及其他客户端)都能用自然语言检查和推理该网站的插件资产。

可以问“我的哪些插件存在漏洞?”、“是什么让我的 options 表变得臃肿?”或“被删除的插件留下了什么?”——然后得到基于网站实际状态的答案。

工作原理

一个插件内含三层,一条 REST 路由,无运行时依赖:

  • 传输层 — POST /wp-json/auditra/v1/mcp/{token} 通过 JSON-RPC 2.0 进行 MCP 通信(普通 JSON 响应,无状态)。两种协议版本均被支持,按请求决定:修订版 2026-07-28(每请求元数据、server/discover、Mcp-* 头部验证)以及 initialize 握手修订版 2025-11-25 / 2025-06-18 / 2025-03-26。路径内令牌认证通过可替换接口实现,并带有 Origin 验证、速率限制和失败认证日志。

  • 采集器 — 直接读取 WordPress:清单、站点上下文、自动加载的 options、cron、数据库表、内容功能使用情况,以及一个三级归属引擎,将 options/表/钩子映射回所属插件,并带有明确的置信度级别(high = 精选,medium = 派生,或明显未归属)。

  • 增强层 — 两个外部服务,wordpress.org 和 WPVulnerability,均无需密钥、均带缓存、均在失败时静默降级,并带有按来源的覆盖率报告和渐进式退避(15 分钟 → 24 小时)。PHP、MySQL 和 MariaDB 的支持生命周期日期根本不会被获取:它们随 includes/data/lifecycle.json 一起提供,由各供应商发布政策编译而成。

共有九个工具;每个响应都携带 _meta(总计、截断、不可用的来源、时间戳),并保持在 20 KB 预算内。服务器只报告事实,绝不给出裁决——刻意不包含评分和建议,因为那是 AI 客户端的职责。完整的设计记录位于 docs/DECISIONS.md。

Related MCP server: AutoWP MCP Server

将其连接到 AI 客户端

  1. 在 wp-admin 中进入 工具 → Auditra:启用端点,生成令牌,复制连接 URL。

  2. 在 Claude 中:设置 → 连接器 → 添加自定义连接器,粘贴 URL(必须是 https://)。

  3. 提出问题。先从“关于这个网站的插件,你能告诉我什么?”开始。

网站必须通过 HTTPS 公开可达,并启用固定链接。使用修订版 2026-07-28 的客户端会在 tools/list 上获得 24 小时的新鲜度提示,因此插件更新新增的工具会在一天内自行出现;较旧的修订版没有过期信号,因此更新后请重新连接连接器,以获取新工具。

贡献

最简单且真正有用的贡献是向 includes/data/prefix-overrides.json 提交拉取请求——这是一个精选映射,将插件 slug 映射到它们实际使用的 option/表前缀(Contact Form 7 → wpcf7_)。每个条目都能提高所有用户的归属准确性。参见 CONTRIBUTING.md。

开发

composer install   # dev-only: PHPCS + WordPress Coding Standards (pinned)
composer lint
php tests/mcp-client.php https://example.com/wp-json/auditra/v1/mcp/{token}

tests/mcp-client.php 是 CLI 测试工具,可在没有 AI 客户端参与的情况下测试端点;tests/seed-conditions.sh 会构建一个刻意制造混乱的测试站点(teardown-conditions.sh 会精确还原)。CI 运行 PHP lint 矩阵(7.4–8.4)、PHPCS,以及一个 grep 门禁,只要插件代码中出现任何写操作,构建就会失败。

安全

支持的版本以及如何私下报告漏洞,请参阅 SECURITY.md。

许可证

GPL-2.0-or-later.

Related MCP Connectors

Related MCP Servers