MCP server for Substack's official Publisher API
MCP server for Substack's official Publisher API. Exposed over MCP by the substack publisher mcp mcp server, that capability becomes something an assistant can invoke while it works, not something you go and do afterwards.
The first MCP server for Substack's official Publisher API. Query post analytics, subscriber counts, and publication data directly from Claude, Cursor, or any MCP client.
Everything the assistant can do here goes through one of these:
list_publications — List configured publicationslist_posts — List published postsget_post — Get a specific post by URL slugget_post_stats — Get engagement stats for a postget_subscriber_counts — Get daily subscriber counts by typeget_subscriber — Look up a subscriber by emailYou will need 4 environment variables: SUBSTACK_API_KEY, SUBSTACK_API_KEY_MAIN, SUBSTACK_API_KEY_TECH, SUBSTACK_API_KEY_COMPANY. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.
node --version; install from nodejs.org if missing. - Substack Publisher API key. Generate one from your publication's Substack dashboard. If you don't see a Publisher API option there, it may not be enabled for your publication yet; see the Publisher API docs for availability.Setup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client. The configuration blocks on this page cover the common clients.
Among the team communication options, the useful question is rarely "what can it do" but "what does it cost you to run" — permissions, credentials, and how much of your context its toolset consumes. Substack Publisher MCP's toolset — list_publications, list_posts, get_post and 3 more — is a fair guide to whether it matches your workflow. It is maintained by dkships; worth a glance at recent repository activity before you build anything load-bearing on it.
This entry was verified against Substack Publisher MCP's own documentation before publication; SyncDev keeps the directory reviewed rather than auto-generated.
| Tool | What it does |
|---|---|
| list_publications | List configured publications |
| list_posts | List published posts |
| get_post | Get a specific post by URL slug |
| get_post_stats | Get engagement stats for a post |
| get_subscriber_counts | Get daily subscriber counts by type |
| get_subscriber | Look up a subscriber by email |
{
"mcpServers": {
"substack": {
"command": "node",
"args": ["/path/to/substack-publisher-mcp/dist/index.js"],
"env": {
"SUBSTACK_API_KEY_MAIN": "your-main-blog-key",
"SUBSTACK_API_KEY_TECH": "your-tech-newsletter-key",
"SUBSTACK_API_KEY_COMPANY": "your-company-updates-key"
}
}
}
}Configuration as documented by the project. Restart the client after saving.
node --version; install from nodejs.org if missing. - Substack Publisher API key. Generate one from your publication's Substack dashboard. If you don't see a Publisher API option there, it may not be enabled for your publication yet; see the Publisher API docs for availability.| Variable | Description | Required |
|---|---|---|
| SUBSTACK_API_KEY | Credential the server authenticates with. | Yes |
| SUBSTACK_API_KEY_MAIN | Credential the server authenticates with. | Yes |
| SUBSTACK_API_KEY_TECH | Credential the server authenticates with. | Yes |
| SUBSTACK_API_KEY_COMPANY | Credential the server authenticates with. | Yes |
Your assistant inside the workspace — read channels, search history, post messages and tame the noise.
Inbox intelligence — search, read, draft and send Gmail through your assistant with OAuth auto-setup.
Read and write Jira, Confluence, Bitbucket, JSM and Compass from your AI client — with your own permissions.
Read and send Telegram messages through your assistant — chats, channels and history via the client API.
Enables Discord bot integration with Model Context Protocol (MCP) compatible applications like Claude Desktop.
Exposes REST APIs defined by OpenAPI specifications as Model Context Protocol (MCP) tools, facilitating seamless integration into MCP-based workflows.