Ghost MCP Server

Manage Ghost CMS posts, members, and newsletters through your AI assistant.

Data last scanned today · Reviewed yesterday

489 dangerous tools42 tools213TypeScriptMIT

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

Claude Desktop
{
  "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

ToolDescriptionRisk
Browse PostsList posts with optional filters, pagination, and ordering.low
Read PostRetrieve a post by ID or slug.low
Add PostCreate a new post with title, content, and status.medium
Edit PostUpdate an existing post by ID.medium
Delete PostRemove a post by ID.high
Browse MembersList members with filters and pagination.low
Read MemberRetrieve a member by ID or email.low
Add MemberCreate a new member.medium
Edit MemberUpdate member details.medium
Delete MemberRemove a member.high
Browse NewslettersList newsletters.low
Read NewsletterRetrieve a newsletter by ID.low
Add NewsletterCreate a new newsletter.medium
Edit NewsletterUpdate newsletter details.medium
Delete NewsletterRemove a newsletter.high
Browse OffersList offers.low
Read OfferRetrieve an offer by ID.low
Add OfferCreate a new offer.medium
Edit OfferUpdate offer details.medium
Delete OfferRemove a newsletter.high
Browse InvitesList invites.low
Add InviteCreate a new invite.medium
Delete InviteRemove a newsletter.high
Browse RolesList roles.low
Read RoleRetrieve a role by ID.low
Browse TagsList tags.low
Read TagRetrieve a tag by ID or slug.low
Add TagCreate a new tag.medium
Edit TagUpdate tag details.medium
Delete TagRemove a tag.high
Browse TiersList tiers.low
Read TierRetrieve a tier by ID.low
Add TierCreate a new tier.medium
Edit TierUpdate tier details.medium
Delete TierRemove a tier.high
Browse UsersList users.low
Read UserRetrieve a user by ID or slug.low
Edit UserUpdate user details.medium
Delete UserRemove a user.high
Browse WebhooksList webhooks.low
Add WebhookCreate a new webhook.medium
Delete WebhookRemove a webhook.high

Compatibility

ClientLocalDockerRemoteRead-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

Ghost MCP Server security score, rated on RepoAI

Maintain this server? Add the live badge to your README.