使用说明
WordPress MCP服务器
一个功能齐全的MCP(模型上下文协议)服务器,允许CHATGPT通过REST API管理WordPress站点。
🎯 机会
- ✅ 设立职位 -在WordPress上创建新帖子
- ✅ 更新帖子 -编辑现有帖子
- ✅ 获得职位 -查看帖子列表
- ✅ 删除职位 删除不必要的帖子
- ✅ SSE协议 兼容OpenAI/ChatGPT
- ✅ HTTPS通过Cloudflare Tunnel 安全连接
- ✅ systemd服务 -自动启动和控制
🏗️ 建筑
ChatGPT → HTTPS/SSE → Cloudflare Tunnel → MCP Server → WordPress REST API
📋 要求
- ubuntu/debian linux服务器
- Python 3.8+
- 启用REST API的WordPress网站
- 具有管理员权限的WordPress用户
🚀 快速安装
步骤1:下载项目文件
git clone <your-repo-url>
cd wordpress-mcp-server
或者手动创建文件:
mcp_sse_server.py-主服务器requirements.txtPython依赖关系install.sh-安装脚本
步骤2:自定义WordPress Credentials
编辑文件 mcp_sse_server.py:
WORDPRESS_URL = "https://your-wordpress-site.com/"
WORDPRESS_USERNAME = "your-username"
WORDPRESS_PASSWORD = "your-application-password"
重要的是: 使用WordPress应用程序密码:
- 登录WordPress→用户→个人资料
- 滚动到“应用密码”
- 为应用程序创建新密码
- 在配置中使用此密码
步骤3:启动安装
chmod +x install.sh
sudo ./install.sh
脚本自动:
- 更新系统
- 设置所有依赖关系
- 创建虚拟Python环境
- 安装Python包
- 配置systemd服务
- 推出Cloudflare Tunnel
- 将HTTPS URL输出到chatgpt
步骤4:获取HTTPS URL
安装后,您将收到以下URL:
https://random-name.trycloudflare.com
使用此URL+ /mcp 要连接到ChatGPT:
https://random-name.trycloudflare.com/mcp
🔧 在chatgpt中设置
- 打开chatgpt
- 转到Settings→Integrations→MCP Servers
- 添加新服务器:
- 姓名: WordPress管理器
- 网址:
https://your-tunnel-url.trycloudflare.com/mcp - 描述: WordPress Posts管理
- 身份验证: 无身份验证
- 保存并等待授权
重要的是:
- URL必须以
/mcp(не/sse) - 确保Cloudflare Tunnel正常工作
- 第一次连接可能需要10-15秒。
📝 使用ChatGPT
设置后,只需要求chatgpt:
创建帖子:
Создай пост на WordPress с заголовком "Привет мир" и контентом "Это мой первый пост через ChatGPT"
获取帖子列表:
Покажи мне последние 5 постов на моем WordPress
更新帖子:
Обнови пост с ID 123, измени заголовок на "Новый заголовок"
删除帖子:
Удали пост с ID 456
🛠️ 服务器管理
检查状态:
sudo systemctl status wordpress-mcp-server
查看日志:
sudo journalctl -u wordpress-mcp-server -f
重新启动服务器:
sudo systemctl restart wordpress-mcp-server
停止服务器:
sudo systemctl stop wordpress-mcp-server
启动服务器:
sudo systemctl start wordpress-mcp-server
🔍 测试
健康检查:
curl http://localhost:8000/health
获取服务器信息:
curl http://localhost:8000/
测试SSE连接:
curl -N http://localhost:8000/sse
抗议创建帖子:
curl -X POST http://localhost:8000/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "create_post",
"arguments": {
"title": "Test Post",
"content": "This is a test post",
"status": "draft"
}
}
}'
🔐 安全
- 使用 应用程序密码 来自WordPress,而不是主密码
- Cloudflare Tunnel提供HTTPS加密
- 服务器在本地运行,只能通过隧道访问
- 定期更新系统和依赖关系
📚 API终点
GET /-服务器信息GET /health-健康检查GET /sse-SSE endpoint for chatgptPOST /mcp-MCP JSON-RPC端点
🧰 可用工具(Tools)
1.create_post
在WordPress上创建新帖子。
参数:
title(必填)-帖子标题content(必填)-文章的HTML内容excerpt(可选)-简短描述status(可选)-状态:publish,draft,private
2.更新_帖子
更新现有职位。
参数:
post_id(必填)-帖子IDtitle(可选)-新标题content(可选)-新内容excerpt(可选)-新描述
3.获取帖子
得到一个职位列表。
参数:
per_page(可选)-职位数(1-100,默认为10)page(可选)-页面号(默认为1)
4.删除_帖子
撤职。
参数:
post_id(必填)-帖子ID
🐛 解决问题
服务器无法启动:
# Проверьте логи
sudo journalctl -u wordpress-mcp-server -n 50
# Проверьте credentials в mcp_sse_server.py
连接到WordPress错误:
- 检查是否启用WordPress Rest API
- 验证您是否使用Application Password
- 检查WordPress URL(必须以
/)
Cloudflare Tunnel不起作用:
# Проверьте процесс
ps aux | grep cloudflared
# Перезапустите tunnel
pkill cloudflared
nohup cloudflared tunnel --url http://localhost:8000 > cloudflared.log 2>&1 &
ChatGPT看不到工具:
- 确保chatgpt中的URL以
/mcp - 验证服务器是否可以通过HTTPS URL访问
- 检查Cloudflare Tunnel是否正常工作
- 重新启动服务器
📄 项目结构
wordpress-mcp-server/
├── mcp_sse_server.py # Основной сервер
├── requirements.txt # Python зависимости
├── install.sh # Скрипт установки
└── README.md # Документация
🤝 支持
如果出现问题:
- 检查日志:
sudo journalctl -u wordpress-mcp-server -f - 确保已安装所有依赖项
- 检查WordPress Credentials设置
- 确保WordPress Rest API可用
📜 许可证
MIT许可证-免费用于任何目的。
🎉 完成!
您现在可以通过ChatGPT管理WordPress! 🚀
