
Ghost MCP
โ 3from oculairmedia
An MCP server for the Ghost blogging platform with Server-Sent Events (SSE) support.
๐ฅ๐ฅ๐ฅโ VerifiedFreeNeeds API keys
Ghost MCP Server
MCP (Model Context Protocol) server for Ghost CMS blog integration. Enables AI agents and LLMs to manage Ghost blog content through standardized MCP tools.
Directory Structure
.
โโโ index.js # Main entry point
โโโ core/ # Core server functionality
โ โโโ server.js # GhostServer class with API communication
โ โโโ api-client.js # Shared Ghost API utilities and JWT auth
โโโ tools/ # MCP tool implementations
โ โโโ index.js # Tool registry and handlers
โ โโโ ghost-tools.js # Tool exports and definitions
โ โโโ create-ghost-post.js
โ โโโ list-ghost-posts.js
โ โโโ update-ghost-post.js
โ โโโ delete-ghost-post.js
โ โโโ create-ghost-page.js
โ โโโ list-ghost-pages.js
โ โโโ update-ghost-page.js
โ โโโ delete-ghost-page.js
โ โโโ create-ghost-tag.js
โ โโโ update-ghost-tag.js
โโโ transports/ # Server transport implementations
โ โโโ index.js # Transport exports
โ โโโ stdio-transport.js
โ โโโ sse-transport.js
โ โโโ http-transport.js # Streamable HTTP (default)
โโโ __tests__/ # Test filesAvailable Tools
| Tool | Description |
|---|---|
create_ghost_post | Create a new blog post |
list_ghost_posts | List posts with pagination |
update_ghost_post | Update an existing post |
delete_ghost_post | Delete a post |
create_ghost_page | Create a new page |
list_ghost_pages | List pages with pagination |
update_ghost_page | Update an existing page |
delete_ghost_page | Delete a page |
create_ghost_tag | Create a new tag |
update_ghost_tag | Update an existing tag |
Environment Variables
| Variable | Description | Required |
|---|---|---|
GHOST_API_URL | Ghost instance URL | Yes |
GHOST_ADMIN_KEY | Admin API key (format: id:secret) | Yes |
PORT | Server port (default: 3064) | No |
NODE_ENV | Environment mode | No |
Docker
# Build image
docker build -t ghost-mcp .
# Run container
docker run -p 3064:3064 \
-e GHOST_API_URL=https://your-ghost-blog.com \
-e GHOST_ADMIN_KEY=your-key-id:your-key-secret \
ghost-mcpAPI Endpoints
POST /mcp- MCP request endpointGET /mcp- SSE streaming endpointDELETE /mcp- Session terminationGET /health- Health check
Copy & paste โ that's it
# Build image
docker build -t ghost-mcp .
# Run container
docker run -p 3064:3064 \
-e GHOST_API_URL=https://your-ghost-blog.com \
-e GHOST_ADMIN_KEY=your-key-id:your-key-secret \
ghost-mcpBefore it works, you'll need: GHOST_ADMIN_KEY
Running the Server
# HTTP transport (default, for production)
npm start
# SSE transport
npm run start:sse
# Stdio transport (for CLI integration)
npm run start:stdio
# Development
npm run dev
# Run tests
npm testNo common issues documented yet. If you hit a problem, the repository's GitHub Issues page is the best place to look.
License
MIT