WordPress管理服务器

一个通过REST API允许ChatGPT管理WordPress网站的全功能MCP服务器。

  • by Horosheff
  • Python
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 Horosheff/Mcp-video

使用说明

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.txt Python依赖关系
  • 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应用程序密码:

  1. 登录WordPress→用户→个人资料
  2. 滚动到“应用密码”
  3. 为应用程序创建新密码
  4. 在配置中使用此密码

步骤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中设置

  1. 打开chatgpt
  2. 转到Settings→Integrations→MCP Servers
  3. 添加新服务器:
    • 姓名: WordPress管理器
    • 网址: https://your-tunnel-url.trycloudflare.com/mcp
    • 描述: WordPress Posts管理
    • 身份验证: 无身份验证
  4. 保存并等待授权

重要的是:

  • 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 chatgpt
  • POST /mcp -MCP JSON-RPC端点

🧰 可用工具(Tools)

1.create_post

在WordPress上创建新帖子。

参数:

  • title (必填)-帖子标题
  • content (必填)-文章的HTML内容
  • excerpt (可选)-简短描述
  • status (可选)-状态: publish, draft, private

2.更新_帖子

更新现有职位。

参数:

  • post_id (必填)-帖子ID
  • title (可选)-新标题
  • 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              # Документация

🤝 支持

如果出现问题:

  1. 检查日志: sudo journalctl -u wordpress-mcp-server -f
  2. 确保已安装所有依赖项
  3. 检查WordPress Credentials设置
  4. 确保WordPress Rest API可用

📜 许可证

MIT许可证-免费用于任何目的。

🎉 完成!

您现在可以通过ChatGPT管理WordPress! 🚀