Skip to main content
Shipstar exposes its content endpoints as Model Context Protocol (MCP) tools so LLM agents — Claude Desktop, Cursor, Windsurf, custom agents, and anything else that speaks MCP — can read your published changelogs, blog posts, and knowledge base articles natively, without you having to build a REST client. Same data, same guarantees (only published, completed content is returned), same API tokens that protect the V1 REST API — but surfaced as typed tools the model can call directly.

Endpoint

The MCP server is mounted on the main Shipstar backend using the Streamable HTTP transport.
POST https://api.shipstar.ai/mcp

Authentication

Every request to /mcp must include a valid Shipstar API token in the Authorization header — the same tokens you use with the V1 REST API. Create one in the dashboard at Settings → API Tokens (/dashboard/console).
Authorization: Bearer sk_live_...
Requests without a token, or with an invalid/expired token, return 401 Unauthorized.

Connecting from Claude Desktop

Add the server to your claude_desktop_config.json, including the bearer token as a custom header:
{
  "mcpServers": {
    "shipstar": {
      "url": "https://api.shipstar.ai/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}
Restart Claude Desktop and the six Shipstar tools will be available in any chat.

Connecting from Cursor / Windsurf

Both editors accept the same MCP server configuration. Add an entry with the URL above and the tools will appear in the agent sidebar.

Available Tools

Generation (kick off content from commits)

ToolDescription
generate_changelogGenerate a public changelog from recent commits
generate_blog_postGenerate a blog post (optionally steered by an idea)
generate_blog_post_ideasBrainstorm blog post angles (synchronous)
generate_feature_blogGenerate a feature-of-the-week deep-dive blog post
generate_feature_pageGenerate a marketing feature landing page
generate_kb_articlesGenerate a set of knowledge base articles
Generation tools (except generate_blog_post_ideas) return a pending content_id and run in the background. Poll the read tools below — or the V1 REST API — for the finished output.

Read (fetch published content)

ToolDescription
list_changelogsList all published changelogs, newest first
get_changelogFetch a single changelog by slug
list_blog_postsList all published blog posts, newest first
get_blog_postFetch a single blog post by slug
list_kb_article_setsList all published knowledge base article sets
get_kb_article_setFetch a single KB article set by slug

Use Cases

Release-aware support bots

Point a support agent at list_changelogs / get_changelog so it can answer “what’s new this week?” and cite the exact release that shipped a feature — without you having to copy release notes into a knowledge base.

Docs-grounded coding agents

Let a coding agent (Cursor, Claude Code, Windsurf) pull your latest blog walkthroughs and KB articles on demand. The agent grounds its answers in your published guidance instead of hallucinating APIs.

Marketing copy research

When drafting landing pages, ads, or email campaigns, have Claude fetch recent changelogs and blog posts to pull accurate product details, quotes, and screenshots from material you already shipped.

Investor / exec updates

Ask an agent to summarise the last N changelogs into a weekly or monthly update. The tool output is structured, so the model doesn’t have to scrape your website.

Internal knowledge lookups

Expose list_kb_article_sets / get_kb_article_set to an internal agent so employees can ask “how do I X?” in Slack and get answers drawn from your published KB.

Cross-tool content reuse

Any agent framework that speaks MCP (LangGraph, Agent SDK, Mastra, custom) can pull Shipstar content as a read-only data source without you writing a bespoke REST client.

How it works under the hood

The MCP tools call directly into the same app.services.content layer that powers the V1 REST endpoints. That means:
  • One source of truth. Any bug fix or behaviour change in the content service automatically flows to both transports.
  • Only published content is returned. Drafts, pending items, and wrong-type rows are filtered out at the service layer.
  • Graceful skipping of invalid data. List endpoints skip rows whose stored JSON is malformed rather than failing the whole call.
If you need finer control (pagination, RSS feeds, custom filtering) or you’re building a non-agent integration, use the V1 REST API directly.