SiteHelm

io.github.Mrshahidali420由 GitHub 账号 Mrshahidali420 发布v0.16.0更新于 Oct 24, 2026

Let an AI agent run your WordPress site: every write previewed, verified and reversible.

已验证Streamable HTTP可网页运行效率与工作流开发者工具媒体与设计

概览

AI 生成的概览

一个 WordPress 插件,把站点暴露为 MCP 工具,让 AI 助手预览、应用、验证并回滚对内容、Elementor 页面、媒体和设置的更改。

可以做什么
通过类型化操作管理文章、页面、自定义类型、媒体、菜单、评论、重定向、用户、站点设置、SEO 元数据、表单以及插件和主题清单,并可用自然语言查询搜索所需操作。构建和编辑 Elementor 文档、元素树、模板、全局样式和主题模板条件。通过一次调用写入 ACF、Meta Box 及多个 SEO 插件。每次写入先以差异预览,绑定该差异后应用,再验证,并可从审计日志回滚。
适用场景
当你希望 AI 客户端操作线上 WordPress 站点——编辑内容、搭建 Elementor 布局、审核评论或更新 SEO 字段——同时保留每次更改的审批、验证和撤销时适用。
运行要求
运行 SiteHelm 插件的 WordPress 6.6+ 站点,PHP 8.1+,并通过 HTTPS 访问插件的 MCP 端点。需要具备相应权限的已登录 WordPress 用户,使用 bearer Authorization,其值为由 WordPress 用户名和应用程序密码构成的 Basic 认证。仅对不支持 HTTP 的客户端所用的 stdio 桥接需要 Node 18+。
安装前请注意
Authorization 头包含 WordPress 用户名和应用程序密码;经明文 HTTP 传输即等于明文泄露,应使用 HTTPS。代理以所连接用户的真实权限行事,因此在该范围内可执行写入、评论审核以及用户或设置更改。媒体删除被说明为不可恢复。Pro 是通过 Freemius 单独销售的付费附加组件。

安装

在 SourceWeft 中

  1. 打开 控制台中的 SiteHelm,将其添加到工作区。
  2. 连接 Authorization token 凭据。它们会被私密存储,绝不会在公开页面上展示。
  3. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

SiteHelm

An MCP server inside WordPress, so an AI agent can change a live site and you can see, approve and undo every change.


Turn your WordPress site into something an AI agent can operate — and something you can still audit afterwards.

SiteHelm is a WordPress plugin that exposes your site as MCP tools, so Claude, Claude Code, Cursor, VS Code, and any other MCP client can write content, build Elementor pages, manage media and menus, edit ACF and Meta Box fields, moderate comments, and work the SEO plugin you already run. Every change is previewed before it lands, verified after, logged, and undoable.

[!TIP] SiteHelm Pro, 30% off for the GitHub community: use code GITHUB30 at checkout. It applies to the first payment and every renewal.

What it does

Run the site. Posts, pages and custom types, media, menus, comments, redirects, users, site settings, SEO metadata, forms and entries, and the plugin and theme inventory — 115 typed operations, reached through 11 MCP tools. Each tool returns its own catalogue at runtime, and system-operation-find searches the whole surface from a plain-language query.

Build with Elementor. 37 operations across the two Elementor tools: documents, element trees, page and container settings, templates, global colours, typography and classes, and theme-template conditions.

See, approve, and undo. Every write is two calls: a preview that writes nothing and returns a diff, then an apply bound to that exact diff. The engine snapshots before it writes, reads the site back after, and reports a mismatch as a failure rather than a success. Every change lands in an audit log in wp-admin, and applied changes roll back from there.

Speak your plugins. ACF, Meta Box, and seven SEO plugins behind one call in a fixed precedence, so the same operation writes through whichever one the site runs. Pro adds WooCommerce and Elementor Pro. Where an integration is missing, the operation refuses and names what to activate.

The agent gets named operations with strict input schemas. It does not get PHP, SQL, a shell, or the filesystem.

→ Full operations reference — every operation with its capability, risk level and rollback policy.

Install

  1. Download the latest sitehelm-*.zip from Releases.
  2. In WordPress: Plugins → Add New → Upload Plugin, choose the zip, install, and activate.
  3. Open SiteHelm → Connect. The endpoint, a credential, and a config snippet for your client are all on that screen.

Installed copies update in place from Dashboard → Updates.

Requires WordPress 6.6+ and PHP 8.1+. Elementor, ACF, Meta Box and WooCommerce are optional integrations, not requirements. Node 18+ is needed only for the stdio bridge. Below the PHP or WordPress floor, the plugin refuses to boot and shows a notice instead of a fatal error.

Connect your AI client

The endpoint is:

POST https://your-site.com/wp-json/sitehelm/v1/mcp

The Connect screen offers two ways in. Sign in from the app (HTTPS only): paste the endpoint into a client that supports it, approve it on the site, and no password ever goes into a config file. Application password: works with every client, and the snippets below use it.

Either way, the route needs a logged-in WordPress user, and every operation re-checks that user's capabilities. An agent can only do what that user could do by hand in wp-admin.

Claude Code
bash
claude mcp add --transport http sitehelm https://your-site.com/wp-json/sitehelm/v1/mcp \  --header "Authorization: Basic $(printf '%s' 'admin:xxxx xxxx xxxx xxxx xxxx xxxx' | base64)"
Cursor, VS Code, or any HTTP MCP client
jsonc
{  "mcpServers": {    "sitehelm": {      "url": "https://your-site.com/wp-json/sitehelm/v1/mcp",      "headers": {        "Authorization": "Basic BASE64_OF_username:application_password"      }    }  }}
Clients that only speak stdio, such as Claude Desktop

The plugin ships a bridge at bridge/sitehelm-bridge.mjs. It needs Node 18 or newer and has no dependencies. It reads its settings from the environment, so the credential is not visible to other processes.

jsonc
{  "mcpServers": {    "sitehelm": {      "command": "node",      "args": ["/path/to/wp-content/plugins/sitehelm/bridge/sitehelm-bridge.mjs"],      "env": {        "SITEHELM_ENDPOINT": "https://your-site.com/wp-json/sitehelm/v1/mcp",        "SITEHELM_AUTH": "Basic BASE64_OF_username:application_password"      }    }  }}

Use HTTPS. An application password sent over plain HTTP is a credential sent in the clear.

Safe by default

Every operation runs the connected user's real WordPress capability check inside the handler before it looks anything up. On top of that:

  • Preview, then apply. The first call writes nothing and returns each field's before and after value with a single-use plan token. The apply is bound to those exact arguments; change one and it is refused. The diff you approved is the diff that lands.
  • Snapshot and verify. Before a write, the engine records everything a restore would need. After it, the site is read back and compared with the preview's promise. A mismatch is reported as VerificationFailed, not as success.
  • Audit and rollback. Every change is written to a log you can read in wp-admin, in plain sentences, and applied changes can be rolled back from there — with a preview first.
  • Owner controls the agent cannot reach. From the console you can pause every write with one switch, turn off a single operation or a whole module, set what each connected app may do per integration (Off, Read, Edit, or Full), and revoke credentials. None of these controls is reachable over MCP.

And some things are decisions, not gaps: no PHP execution, no raw SQL, no filesystem access, no permanent delete of content (removal means trash — the one exception, media-delete, previews and says plainly there is no way back). Plugins and themes install only from WordPress.org by slug or from a zip already in the media library, never from an address the agent chose, and a fresh install lands deactivated.

→ The write contract, the audit record and the permission model are documented in docs/INTERNALS.md.

Sample prompts

"List the Elementor documents on this site, then show me the element tree of the home page."

"Preview changing the title of page 412 to 'Spring Campaign'. Do not apply it. Show me the diff first."

"Find every post that links to the old pricing page and update the links. Preview each change before applying."

"Is ACF active, and is it above the version floor? Then list the field groups on product pages."

Free and Pro

The free plugin is the whole safety model: the two-phase write, snapshots, verification, the audit log, rollback, and every console control. That stays free, and batch size is never a reason to charge — if the free plugin has the single write, it has the bulk version too.

SiteHelm Pro is a separate add-on sold through Freemius. It adds 53 operations on surfaces the free plugin does not reach:

AreaWhat Pro adds
SEOThe SEO plugin's own settings, per-post schema, Rank Math's 404 log and redirections
WooCommerceProducts, prices, stock and categories read and written; orders and customers read-only
Elementor ProPopups and dynamic tags
Plugins and themesActivate, deactivate, switch, update, install from WordPress.org or a media-library zip, delete
CodeCode snippets, in its own risk tier; the one module that ships switched off

The plugin is open source, so the free/Pro line is checkable rather than promised.

Privacy

SiteHelm contains no AI model and sends no site content anywhere. The only outbound calls it makes are the update check against its GitHub releases, the Pro licence check when the add-on is installed, the WordPress.org lookup when a Pro install is requested, and a media import you asked for.

Contributing

Bug reports, feature requests and pull requests are all welcome. CONTRIBUTING.md has the workflow and the standards a change has to meet.

bash
composer installcomposer test    # PHPUnitcomposer lint    # phpcs

The suite runs on PHP 8.1, 8.2 and 8.3 on every push, an 80% line-coverage floor is enforced in CI, and every operation definition is pinned by a golden fixture, so a capability, risk level or rollback policy cannot change without showing in a diff. Details in docs/INTERNALS.md.

Security

Do not open a public issue for a vulnerability. Use GitHub's private reporting. SECURITY.md has the fallback contact, what to include, and the response times.

License

GNU General Public License v2.0 or later, the same license as WordPress.

来源:README.md,提交 6ffbe61

工具

0
该服务器需要 API 密钥等凭据,因此 SourceWeft 无法在没有凭据的情况下读取其工具,也未收录。

版本历史

1
  1. v0.16.0最新Sep 16, 2026

评分

已满足适用检查项的 60%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式必需10 分
  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分