Ghost MCP Server
Manage Ghost CMS posts, members, and newsletters through your AI assistant.
Data last scanned today · Reviewed yesterday
Overview
This server integrates Ghost CMS with MCP-compatible interfaces, allowing you to perform administrative tasks directly from your LLM. It supports entity management across various categories, including members, posts, newsletters, and subscription tiers. Built using TypeScript and the @tryghost/admin-api, it provides structured access to site data. Users can browse, add, edit, or delete entities, as well as perform complex searches using exact or fuzzy matching, all managed through your local MCP configuration.
Our verdict
With a security score of 33/100, this server is classified as high-risk. The primary concern is the lack of any authentication method, meaning anyone with access to your configuration can potentially manipulate your Ghost site, combined with the lack of a read-only mode that forces full write access on every installation. Given these factors, this tool should only be used in trusted, local development environments by experienced users who understand the implications of exposing their Admin API keys in cleartext configuration files.
- Supports comprehensive management of Ghost CMS entities
- Provides advanced fuzzy and exact search functionality
- Uses only four direct dependencies
- Includes robust error handling and integrated logging
- High security risk due to missing authentication method
- No read-only mode prevents limiting tool capabilities
- Community-maintained project lacks official vendor backing
Setup
{
"mcpServers": {
"ghost-mcp": {
"args": [
"-y",
"@fanyangmeng/ghost-mcp"
],
"command": "npx"
}
}
}Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows), then restart Claude Desktop. Some servers require API keys or tokens as environment variables — check the project's README and add an "env" object if needed.
- No read-only mode — running this grants full read/write access.
- No built-in authentication — anyone with access to this config can invoke every tool it exposes.
Tools
| Tool | Description | Risk |
|---|---|---|
| Browse Posts | List posts with optional filters, pagination, and ordering. | low |
| Read Post | Retrieve a post by ID or slug. | low |
| Add Post | Create a new post with title, content, and status. | medium |
| Edit Post | Update an existing post by ID. | medium |
| Delete Post | Remove a post by ID. | high |
| Browse Members | List members with filters and pagination. | low |
| Read Member | Retrieve a member by ID or email. | low |
| Add Member | Create a new member. | medium |
| Edit Member | Update member details. | medium |
| Delete Member | Remove a member. | high |
| Browse Newsletters | List newsletters. | low |
| Read Newsletter | Retrieve a newsletter by ID. | low |
| Add Newsletter | Create a new newsletter. | medium |
| Edit Newsletter | Update newsletter details. | medium |
| Delete Newsletter | Remove a newsletter. | high |
| Browse Offers | List offers. | low |
| Read Offer | Retrieve an offer by ID. | low |
| Add Offer | Create a new offer. | medium |
| Edit Offer | Update offer details. | medium |
| Delete Offer | Remove a newsletter. | high |
| Browse Invites | List invites. | low |
| Add Invite | Create a new invite. | medium |
| Delete Invite | Remove a newsletter. | high |
| Browse Roles | List roles. | low |
| Read Role | Retrieve a role by ID. | low |
| Browse Tags | List tags. | low |
| Read Tag | Retrieve a tag by ID or slug. | low |
| Add Tag | Create a new tag. | medium |
| Edit Tag | Update tag details. | medium |
| Delete Tag | Remove a tag. | high |
| Browse Tiers | List tiers. | low |
| Read Tier | Retrieve a tier by ID. | low |
| Add Tier | Create a new tier. | medium |
| Edit Tier | Update tier details. | medium |
| Delete Tier | Remove a tier. | high |
| Browse Users | List users. | low |
| Read User | Retrieve a user by ID or slug. | low |
| Edit User | Update user details. | medium |
| Delete User | Remove a user. | high |
| Browse Webhooks | List webhooks. | low |
| Add Webhook | Create a new webhook. | medium |
| Delete Webhook | Remove a webhook. | high |
Compatibility
| Client | Local | Docker | Remote | Read-only |
|---|---|---|---|---|
| Claude Desktop | ||||
| Cursor | ||||
| VS Code | ||||
| Windsurf | ||||
| ChatGPT |
Frequently asked questions
›What authentication is required to use this server?
The server requires a Ghost Admin API key, which must be provided via the GHOST_ADMIN_API_KEY environment variable in your configuration.
›Which environment variables must I set to connect to my blog?
You must configure GHOST_API_URL with your blog's domain, GHOST_ADMIN_API_KEY for authentication, and GHOST_API_VERSION, typically set to v5.0.
›Does this server support CRUD operations on Ghost entities?
Yes, the server provides tools to browse, read, create, edit, and delete various entities, such as posts, members, newsletters, and tags.
›How can I troubleshoot API communication issues?
The server uses custom GhostError exceptions for clear error messages and supports integrated logging via the MCP context to assist with troubleshooting.
Alternatives
Changelog
Badge
Maintain this server? Add the live badge to your README.