The Paragraph MCP server lets AI tools read and write your publication: draft and publish Web Articles (posts in the API), upload short-form drafts, manage subscribers, and query analytics.

This page connects your AI tools to Paragraph. To connect other tools to your Paragraph agent instead, see agent connections.

Connect the hosted server

The hosted server at https://mcp.paragraph.com/mcp needs no install. The first time you connect, Paragraph opens in your browser so you can approve access.

claude mcp add --transport http --scope user paragraph https://mcp.paragraph.com/mcp

Then run /mcp in Claude Code to sign in.

Where there's no browser to sign in with, such as CI, send an API key in a header instead: Authorization: Bearer <key>. Codex reads it from an environment variable with --bearer-token-env-var PARAGRAPH_API_KEY.

To have your agent do the setup, give it this prompt: "Read https://docs.paragraph.com/developers/agent-setup.md and follow it to connect Paragraph to this agent."

Run it locally

The same server runs over stdio with npx @paragraph-com/mcp (Node.js 18 or later). It uses the PARAGRAPH_API_KEY environment variable if set, and otherwise the key saved by paragraph login. For example, in Claude Desktop:

{
  "mcpServers": {
    "paragraph": {
      "command": "npx",
      "args": ["@paragraph-com/mcp"],
      "env": { "PARAGRAPH_API_KEY": "your-api-key" }
    }
  }
}

Other clients take the same command, args, and env. Add --http --port 3100 to serve over HTTP on 127.0.0.1 instead, with a health check at GET /health.

Tools

Reading public posts and publications works without signing in. Everything else needs access to your publication.

ToolsetTools
postsget-post, list-posts, create-post, update-post, delete-post, send-test-email
contentcreate-content, list-content, get-content, update-content, archive-content, restore-content
bucketslist-content-buckets, get-content-bucket, get-post-content-bucket, create-post-content-bucket
publicationsget-publication, update-publication
subscriberslist-subscribers, get-subscriber-count, add-subscriber, remove-subscriber
usersget-user
feedget-feed
meget-me
analyticsanalytics-query, analytics-schema
emailssend-custom-email

The content tools draft X Posts and X Threads, LinkedIn posts, one-off emails, and X Articles into the library without sending them. The buckets tools group those drafts with the post they came from. See Drafted content.

update-post can also email a post to subscribers without putting it on your website (publishOnline: false), or point its canonical URL at where it first appeared (canonicalUrl). Connected agents get this guidance automatically, so asking for it in plain words works.

To keep an agent's context small, load only the toolsets it needs:

npx @paragraph-com/mcp --toolsets posts,subscribers

Source

The server is open source on GitHub and published to npm.

On this page