WordPress AI桥
通过REST API启用AI助手与WordPress网站的交互,允许以编程方式管理帖子、用户、评论、分类和标签,并进行安全的身份验证。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"wordpress": {
"args": [
"path/to/wordpress-mcp-server/build/index.js"
],
"command": "node"
}
}
}
该服务需要配置环境变量:password、siteUrl、username
服务介绍
综合 WordPress MCP 服务器
一个全面的模型上下文协议(MCP)服务器,通过 WordPress REST API 使 AI 助手能够与 WordPress 站点进行交互。此服务器提供了程序化管理 WordPress 各个方面的工具,包括文章、用户、评论、分类、标签和自定义端点。
功能
文章管理
- 创建、检索、更新和删除 WordPress 文章
- 按各种参数筛选文章
- 支持文章列表分页
用户管理
- 通过 ID 或登录名检索用户信息
- 更新用户详情
- 删除用户
评论管理
- 创建、检索、更新和删除评论
- 按文章筛选评论
- 支持评论列表分页
分类法管理
- 管理分类和标签
- 创建、检索、更新和删除分类法
- 通过别名查找分类和标签
站点信息
- 检索通用 WordPress 站点信息
自定义请求
- 支持自定义 REST API 端点
- 自定义 HTTP 方法 (GET, POST, PUT, DELETE)
- 自定义数据和参数
先决条件
- Node.js v18 或更高版本
- 已启用 REST API 的 WordPress 站点
- 用于认证的 WordPress 应用程序密码
安装
- 克隆此仓库:
git clone [repository-url]
cd wordpress-mcp-server
- 安装依赖项:
npm install
- 构建服务器:
npm run build
WordPress 配置
在使用服务器之前,需要设置您的 WordPress 站点:
- 确保您的 WordPress 站点已启用 REST API(默认情况下,在 WordPress 4.7+ 中启用)
- 创建应用程序密码:
- 登录到您的 WordPress 管理面板
- 转到 用户 → 个人资料
- 向下滚动到“应用程序密码”
- 输入应用程序名称(例如,“MCP 服务器”)
- 单击“添加新应用程序密码”
- 复制生成的密码(您将无法再次查看它)
MCP 配置
将服务器添加到您的 MCP 设置文件中(通常位于 ~/AppData/Roaming/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json):
{
"mcpServers": {
"wordpress": {
"command": "node",
"args": ["path/to/wordpress-mcp-server/build/index.js"]
}
}
}
可用工具
文章管理
1. create_post
创建新的 WordPress 文章。
参数:
siteUrl(必需):您的 WordPress 站点 URLusername(必需):WordPress 用户名password(必需):WordPress 应用程序密码title(必需):文章标题content(必需):文章内容status(可选):文章状态 ('draft', 'publish' 或 'private',默认为 'draft')
示例:
{
"tool": "create_post",
"siteUrl": "https://example.com",
"username": "admin",
"password": "xxxx xxxx xxxx xxxx",
"title": "My First Post",
"content": "Hello, world!",
"status": "draft"
}
2. get_posts
带分页地检索 WordPress 文章。
参数:
siteUrl(必需):您的 WordPress 站点 URLusername(必需):WordPress 用户名password(必需):WordPress 应用程序密码perPage(可选):每页的文章数量(默认:10)page(可选):页码(默认:1)customParams(可选):其他查询参数
示例:
{
"tool": "get_posts",
"siteUrl": "https://example.com",
"username": "admin",
"password": "xxxx xxxx xxxx xxxx",
"perPage": 5,
"page": 1
}
3. update_post
更新现有的 WordPress 文章。
参数:
siteUrl(必需): 您的WordPress网站URLusername(必需): WordPress用户名password(必需): WordPress应用程序密码postId(必需): 要更新的文章IDtitle(可选): 新文章标题content(可选): 新文章内容status(可选): 新文章状态('draft'、'publish' 或 'private')
示例:
{
"tool": "update_post",
"siteUrl": "https://example.com",
"username": "admin",
"password": "xxxx xxxx xxxx xxxx",
"postId": 123,
"title": "Updated Title",
"content": "Updated content",
"status": "publish"
}
4. delete_post
删除一篇WordPress文章。
参数:
siteUrl(必需): 您的WordPress网站URLusername(必需): WordPress用户名password(必需): WordPress应用程序密码postId(必需): 要删除的文章ID
示例:
{
"tool": "delete_post",
"siteUrl": "https://example.com",
"username": "admin",
"password": "xxxx xxxx xxxx xxxx",
"postId": 123
}
用户管理
1. get_users
检索WordPress用户。
参数:
siteUrl(必需): 您的WordPress网站URLusername(必需): WordPress用户名password(必需): WordPress应用程序密码perPage(可选): 每页用户数(默认:10)page(可选): 页码(默认:1)
2. get_user
通过ID检索特定的WordPress用户。
参数:
siteUrl(必需): 您的WordPress网站URLusername(必需): WordPress用户名password(必需): WordPress应用程序密码userId(必需): 要检索的用户的ID
3. get_user_by_login
通过登录名检索WordPress用户。
参数:
siteUrl(必需): 您的WordPress网站URLusername(必需): WordPress用户名password(必需): WordPress应用程序密码userLogin(必需): 要检索的用户的登录名
评论管理
1. get_comments
检索WordPress评论。
参数:
siteUrl(必需): 您的WordPress网站URLusername(必需): WordPress用户名password(必需): WordPress应用程序密码perPage(可选): 每页评论数(默认:10)page(可选): 页码(默认:1)postIdForComment(可选): 根据文章ID过滤评论
2. create_comment
在文章上创建新评论。
参数:
siteUrl(必需): 您的WordPress网站URLusername(必需): WordPress用户名password(必需): WordPress应用程序密码postIdForComment(必需): 要评论的文章IDcommentContent(必需): 评论内容customData(可选): 其他评论数据
分类和标签管理
1. get_categories
检索WordPress分类。
参数:
siteUrl(必需): 您的WordPress网站URLusername(必需): WordPress用户名password(必需): WordPress应用程序密码perPage(可选): 每页分类数(默认:10)page(可选): 页码(默认:1)
2. create_category
创建新的WordPress分类。
参数:
siteUrl(必需): 您的 WordPress 站点 URLusername(必需): WordPress 用户名password(必需): WordPress 应用程序密码categoryName(必需): 要创建的分类名称customData(可选): 额外的分类数据(描述、父级等)
自定义请求
1. custom_request
向任何 WordPress REST API 端点发出自定义请求。
参数:
siteUrl(必需): 您的 WordPress 站点 URLusername(必需): WordPress 用户名password(必需): WordPress 应用程序密码customEndpoint(必需): API 端点路径customMethod(可选): HTTP 方法 ('GET', 'POST', 'PUT', 'DELETE', 默认: 'GET')customData(可选): POST/PUT 请求的数据customParams(可选): GET 请求的 URL 参数
示例:
{
"tool": "custom_request",
"siteUrl": "https://example.com",
"username": "admin",
"password": "xxxx xxxx xxxx xxxx",
"customEndpoint": "wp/v2/media",
"customMethod": "GET",
"customParams": {
"per_page": 5
}
}
响应格式
所有工具返回的响应都采用以下格式:
成功响应
{
"success": true,
"data": {
// WordPress API response data
},
"meta": {
// Optional metadata (pagination info, etc.)
}
}
错误响应
{
"success": false,
"error": "Error message here"
}
安全注意事项
- 始终为您的 WordPress 站点使用 HTTPS URL
- 使用应用程序密码而不是您的主 WordPress 密码
- 保持您的应用程序密码安全且不共享
- 考虑使用 WordPress 角色和功能来限制访问
- 定期更换应用程序密码
开发
要贡献于开发:
- 叉取仓库
- 创建一个特性分支
- 进行更改
- 运行测试(如果有)
- 提交拉取请求
对于带有自动重新编译的开发模式:
npm run dev
许可证
本项目根据 ISC 许可证获得许可。
贡献
欢迎贡献!请随时提交 Pull Request。