项目介绍
Ghost MCP 服务器
⚠️ 重要通知:从 Python 到 TypeScript 的迁移
在 v0.1.0 版本中,我完全重写了 Ghost MCP 服务器,从 Python 转换到了 TypeScript。这一重大变化带来了以下好处:
- 简化的安装:现在作为 NPM 包(@fanyangmeng/ghost-mcp)提供
- 提升的可靠性:使用官方的 @tryghost/admin-api 客户端,而不是自定义实现
- 更好的可维护性:TypeScript 提供了类型安全性和更好的代码组织
- 简化的配置:简单的环境变量设置
兼容性变更
- 不再需要 Python 依赖项
- 配置方法已更改(现在使用 Node.js 环境变量)
- Docker 部署已被简化
- 不同的安装过程(现在使用 NPM)
请参阅下面更新的文档以了解从 Python 版本迁移到新版本的详细信息。如果您遇到任何问题,请随时在 GitHub 上打开一个 Issue。
这是一个通过 LLM 接口(如 Claude)与 Ghost CMS 进行交互的模型上下文协议(MCP)服务器。该服务器提供了对您的 Ghost 博客的安全且全面的访问,利用 JWT 认证和丰富的 MCP 工具集来管理文章、用户、成员、等级、优惠和新闻通讯。

功能
- 使用
@tryghost/admin-api 对 Ghost 管理 API 请求进行安全处理
- 包括文章、用户、成员、等级、优惠和新闻通讯在内的全面实体访问
- 支持模糊匹配和精确匹配的高级搜索功能
- 详细的、易于阅读的 Ghost 实体输出
- 使用自定义的
GhostError 异常进行强大的错误处理
- 通过 MCP 上下文支持集成日志记录,以增强故障排除能力
使用方法
要与 MCP 客户端一起使用此服务,例如 Claude Desktop,在您的 claude_desktop_config.json 中添加以下内容:
{
"mcpServers": {
"ghost-mcp": {
"command": "npx",
"args": ["-y", "@fanyangmeng/ghost-mcp"],
"env": {
"GHOST_API_URL": "https://yourblog.com",
"GHOST_ADMIN_API_KEY": "your_admin_api_key",
"GHOST_API_VERSION": "v5.0"
}
}
}
}
可用资源
通过此 MCP 服务器可以访问以下 Ghost CMS 资源:
- 文章:发布在您 Ghost 站点上的文章和内容。
- 成员:您站点的注册用户和订阅者。
- 新闻通讯:通过 Ghost 管理和发送的电子邮件新闻通讯。
- 优惠:针对成员的促销优惠和折扣。
- 邀请:邀请新用户或员工加入您的 Ghost 站点。
- 角色:Ghost 管理员中的用户角色和权限。
- 标签:用于文章和内容的组织标签。
- 等级:成员的订阅等级和计划。
- 用户:管理员用户和员工账户。
- Webhooks:向外部服务发送的自动化事件通知。
可用工具
此 MCP 服务器提供了一整套工具,用于通过模型上下文协议管理您的 Ghost CMS。每个资源都提供了一系列操作,通常包括浏览、读取、创建、编辑和删除实体。以下是可用工具的概述:
文章
- 浏览文章:列出文章,可选过滤器、分页和排序。
- 读取文章:通过 ID 或 slug 获取文章。
- 添加文章:创建一篇新的文章,包括标题、内容和状态。
- 编辑文章:通过 ID 更新现有文章。
- 删除文章:通过 ID 删除文章。
成员
- 浏览成员:列出成员,可选过滤器和分页。
- 读取成员:通过 ID 或电子邮件获取成员。
- 添加成员:创建一个新的成员。
- 编辑成员:更新成员详情。
- 删除成员:删除成员。
新闻通讯
- 浏览新闻通讯:列出新闻通讯。
- 读取新闻通讯:通过 ID 获取新闻通讯。
- 添加新闻通讯:创建一个新的新闻通讯。
- 编辑新闻通讯:更新新闻通讯详情。
- 删除新闻通讯:删除新闻通讯。
优惠
- 浏览优惠:列出优惠。
- 读取优惠:通过 ID 获取优惠。
- 添加优惠:创建一个新的优惠。
- 编辑优惠:更新优惠详情。
- 删除优惠:删除优惠。
邀请
- 浏览邀请:列出邀请。
- 添加邀请:创建一个新的邀请。
- 删除邀请:删除邀请。
角色
- 浏览角色:列出角色。
- 读取角色:通过 ID 获取角色。
标签
- 浏览标签:列出标签。
- 读取标签:通过 ID 或 slug 获取标签。
- 添加标签:创建一个新的标签。
- 编辑标签:更新标签详情。
- 删除标签:删除标签。
等级
- 浏览等级:列出等级。
- 读取等级:通过 ID 获取等级。
- 添加等级:创建一个新的等级。
- 编辑等级:更新等级详情。
- 删除等级:删除等级。
用户
- 浏览用户:列出用户。
- 读取用户:通过 ID 或 slug 获取用户。
- 编辑用户:更新用户详情。
- 删除用户:删除用户。
Webhooks
- 浏览 Webhooks:列出 Webhooks。
- 添加 Webhook:创建一个新的 Webhook。
- 删除 Webhook:删除 Webhook。
每个工具都可以通过 MCP 协议访问,并可以从兼容客户端调用。有关详细参数模式和使用方法,请参见 src/tools/ 目录下的源代码。
错误处理
Ghost MCP 服务器采用自定义的 GhostError 异常来处理 API 通信错误和处理问题。这确保了清晰且描述性的错误消息,有助于故障排除。
贡献
- 分叉仓库
- 创建功能分支
- 提交更改
- 创建拉取请求
许可证
MIT