# Ghost MCP MCP

> Ghost MCP connects your entire publishing workflow—drafting, membership management, and site configuration—to any AI client. It lets you treat your CMS like a conversational tool, letting you query member lists or create posts without ever opening the Ghost dashboard.

## Overview
- **Category:** productivity
- **Price:** Free
- **Tags:** blogging, newsletter-publishing, membership-sites, content-orchestration, subscriber-management, open-source, monetization

## Description

You can manage your entire digital publication using only conversation. This MCP gives your agent direct access to everything running in your Ghost account: from listing every blog post and draft to checking which membership tiers are active. Need to know how many people signed up yesterday? Your agent pulls that member data instantly, including join dates and current status. Want to publish an article? You tell it the title and content, and it handles the creation or update process for you. It also keeps tabs on your site structure, letting you list all static pages (like About or Contact) and even checking core settings. For managing revenue, you can pull a full list of membership offers and see every configured newsletter. This capability makes Vinkius the central hub where your AI agent operates, giving it one pane of glass over content publishing, audience growth, and site configuration.

## Tools

### create_post
Creates a brand new Ghost post or draft, allowing you to set it as published or leave it as a draft.

### get_post_details
Retrieves the full content and metadata for any specific article ID on your site.

### get_site_settings
Pulls core configuration details about your entire Ghost site, like its primary identity settings.

### list_members
Retrieves a directory list of all registered members on the site, including their emails and join dates.

### list_newsletters
Lists all newsletters you've configured for sending content updates to members.

### list_offers
Retrieves a list of active membership offers, so you know what promotions are running right now.

### list_pages
Lists all static pages on your site, like About or Contact, which aren't blog posts.

### list_posts
Provides a basic list of every Ghost blog post ID and metadata for bulk management.

### list_tags
Lists all content tags used across your site, helping you organize and filter posts easily.

### list_membership_tiers
Shows every membership plan available, helping you understand your current subscription structure (e.g., Free vs. Premium).

## Prompt Examples

**Prompt:** 
```
List all my draft posts in Ghost.
```

**Response:** 
```
I've retrieved your drafts. You have 3 posts in progress: 'AI Roadmap 2026', 'New Feature Launch', and 'Community Spotlight'. Would you like the full HTML content for any of these?
```

**Prompt:** 
```
Create a new draft titled 'Welcome to our MCP Blog'.
```

**Response:** 
```
Draft created! 'Welcome to our MCP Blog' is now live in your Ghost admin panel (ID: 654321). It is currently set to 'draft' status. Should I add some initial content for you?
```

**Prompt:** 
```
Show me a list of all site members and their emails.
```

**Response:** 
```
Fetching member directory... You have 150 registered members. Recent subscribers include 'Alice' (alice@example.com) and 'Bob' (bob@example.com). Would you like to check their membership tiers?
```

## Capabilities

### Manage Content Lifecycle
Create drafts, list all posts (published or draft), retrieve detailed article metadata, and organize site pages.

### Analyze Membership Data
List all members on your site, check the available membership tiers, and view active subscription offers.

### Configure Site Structure
Retrieve core site settings, list configured newsletters, and manage content tags across your platform.

## Use Cases

### Need to verify membership rules for a new feature launch?
The agent checks the site settings using `get_site_settings`, then runs `list_membership_tiers` and `list_offers`. It reports back exactly what tiers are available and if there's an active promotional offer, so you know how to write your announcement copy.

### A major content update needs to be published quickly.
Instead of copying the article into a new draft manually, you use `get_post_details` to retrieve the full HTML. Then, you ask the agent to create or update it using `create_post`, ensuring all metadata is correct and published immediately.

### Investigating poor content categorization.
You ask the agent to run `list_tags` and then check `list_posts`. It compiles a report showing which tags are underutilized or missing, giving you a clear action list for improving your site's taxonomy.

### Building an automated member onboarding flow.
The agent first runs `list_members` to get the raw email data. It then cross-references this with `list_newsletters` to confirm which welcome sequence needs to be triggered for new accounts.

## Benefits

- Stop manually checking post status. You can use `list_posts` or `get_post_details` to check if a draft is ready for review without opening the admin panel.
- Track your audience growth instantly. The `list_members` tool gives you member emails and join dates, letting you monitor who signed up when.
- Understand your revenue streams by running `list_membership_tiers` and reviewing what `list_offers` shows for active promotions.
- Keep content organized using `list_tags`. You can quickly see all available tags to make sure your new articles fit into the right structure.
- Manage core site identity. Use `get_site_settings` if you need to confirm basic platform details or check newsletter configurations.
- Streamline publishing. If you're ready, use `create_post` to generate a draft or set content live without manual clicks.

## How It Works

The bottom line is that you stop navigating dashboards; you just talk to your content platform.

1. First, connect by retrieving your Admin API Key and Domain credentials from Ghost's integration section.
2. Next, point your AI client to this MCP through Vinkius. Your agent now has permission to read and write data across your site.
3. Finally, ask your agent to perform a task—like listing all drafts or creating a new post—and it executes the command against Ghost.

## Frequently Asked Questions

**How do I list all my blog posts using the `list_posts` tool?**
You ask your agent to run `list_posts`. It returns a foundational list of every post ID and metadata, which you can then pass to other tools if you need details for specific articles.

**Can I check membership status using the `list_members` tool?**
Yes. The agent uses `list_members` to pull a directory of all site members, providing their emails and join dates so you can track audience growth accurately.

**What is the difference between `list_posts` and `list_pages`?**
Posts are your main blog articles. Pages are static content like 'About' or 'Contact.' You use `list_posts` for chronological content and `list_pages` for foundational site sections.

**How do I create a post using the `create_post` tool?**
You provide the agent with the title, any HTML content, and whether you want it published or kept as a draft. It handles the creation in one step.

**How do I retrieve the full body content for an article using `get_post_details`?**
It returns all the post's raw data. You provide a specific post ID, and it pulls the complete HTML structure of the article, not just the title or metadata. This is useful if you need to copy the full text content for migration or external display.

**What kind of site configuration can I verify with `get_site_settings`?**
It gives you core identity and technical settings. You can check things like the general API domain, default timezone, and fundamental configurations that affect how your entire publication operates across different platforms.

**Using `list_tags`, how do I manage my site's content organization?**
It retrieves a clean list of every tag currently defined on the Ghost site. You use this to ensure consistent terminology when writing new posts or pages, making it much easier for your agent to filter and categorize articles accurately.

**If I want to check my marketing lists, what does `list_newsletters` show?**
This tool shows every configured newsletter list. You can confirm if you have separate mailing lists set up for paid members versus general subscribers, which is key for targeted communication campaigns.

**How do I find my Ghost Admin API Key?**
Log in to your Ghost admin panel, navigate to **Settings** > **Integrations**, click **Add custom integration**, and copy the Admin API Key and API URL.

**What is the Admin Domain?**
It is the API URL provided in your custom integration settings (e.g., `https://your-site.ghost.io`). Do not include the `/ghost/api/admin/` part.

**Can I publish a post immediately via AI?**
Yes! When using the `create_post` tool, set the `status` parameter to 'published' to make your content live instantly.