MCP Server - Paragraph
Quick start
The fastest way to get started is with the hosted server at mcp.paragraph.com. No installation or API key management needed — you authenticate through your Paragraph account in the browser.
- Claude Code
- Claude Desktop
- Cursor
- VS Code
claude mcp add paragraph --transport http https://mcp.paragraph.com/mcp
Add to your claude_desktop_config.json:
{
"mcpServers": {
"paragraph": {
"url": "https://mcp.paragraph.com/mcp"
}
}
}
Add to .cursor/mcp.json in your project root:
{
"mcpServers": {
"paragraph": {
"url": "https://mcp.paragraph.com/mcp"
}
}
}
Add to .vscode/mcp.json in your project root:
{
"servers": {
"paragraph": {
"url": "https://mcp.paragraph.com/mcp"
}
}
}
Local server
If you prefer to run the server locally, use npx. Requires Node.js 18+.
npx @paragraph-com/mcp
The server runs over stdio and works with any MCP client.
- Claude Code
- Claude Desktop
- Cursor
- VS Code
claude mcp add paragraph -- npx @paragraph-com/mcp
To include your API key:
claude mcp add --env PARAGRAPH_API_KEY=your-key paragraph -- npx @paragraph-com/mcp
Add to your claude_desktop_config.json:
{
"mcpServers": {
"paragraph": {
"command": "npx",
"args": ["@paragraph-com/mcp"],
"env": {
"PARAGRAPH_API_KEY": "your-key"
}
}
}
}
Add to .cursor/mcp.json in your project root:
{
"mcpServers": {
"paragraph": {
"command": "npx",
"args": ["@paragraph-com/mcp"],
"env": {
"PARAGRAPH_API_KEY": "your-key"
}
}
}
}
Add to .vscode/mcp.json in your project root:
{
"servers": {
"paragraph": {
"command": "npx",
"args": ["@paragraph-com/mcp"],
"env": {
"PARAGRAPH_API_KEY": "your-key"
}
}
}
}
Authentication
The remote server at mcp.paragraph.com handles authentication automatically — when you first connect, you’ll be redirected to approve access through your Paragraph account in the browser. For the local server, the MCP server resolves your API key in this order:
PARAGRAPH_API_KEYenvironment variable (highest priority)- Shared CLI config at
~/.paragraph/config.json(set vianpx @paragraph-com/cli login)
Get your API key from paragraph.com/settings -> Publication -> Developer.
Read-only tools like search, feed, and public post fetching work without authentication. You only need to authenticate for write operations and accessing your own publication data.
Available tools
The server exposes 18 tools organized into toolsets:
| Toolset | Tools | Auth required |
|---|---|---|
| posts | get-post, list-posts, create-post, update-post, delete-post, send-test-email |
Write ops only |
| publications | get-publication |
No |
| subscribers | list-subscribers, get-subscriber-count, add-subscriber |
Yes |
| users | get-user |
No |
| coins | get-coin, list-coin-holders |
No |
| search | search-posts, search-blogs, search-coins |
No |
| feed | get-feed |
No |
| me | get-me |
Yes |
Filtering toolsets
Expose only the tools your agent needs to reduce context usage:
npx @paragraph-com/mcp --toolsets posts,search
Available toolset names: posts, publications, subscribers, users, coins, search, feed, me
HTTP mode
For server deployments, run the MCP server over HTTP instead of stdio:
npx @paragraph-com/mcp --http --port 3100
The HTTP server binds to 127.0.0.1 (localhost only) and accepts POST requests. A health check is available at GET /health.