substack-publisher-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SUBSTACK_API_KEY | No | Your Substack Publisher API key for a single publication. For multiple publications, use the pattern SUBSTACK_API_KEY_<NAME>. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_publicationsA | List all configured Substack publications and their names. Use these names as the 'publication' parameter in other tools. |
| list_postsA | List posts published by a Substack publication. Returns post metadata including title, URL slug, audience, publish date, and type. Use the urlSlug from results with get_post or get_post_stats for details. |
| get_postA | Get detailed information about a specific post by its URL slug. Returns full post metadata including title, subtitle, audience, publish date, and content details. |
| get_post_statsA | Get engagement statistics for a specific post by its URL slug. Returns metrics like opens, clicks, and other engagement data. |
| get_subscriber_countsA | Get daily subscriber counts broken down by subscription type (free, paid, etc.). Useful for tracking growth and churn over time. |
| get_subscriberA | Look up a specific subscriber by email address. Returns their subscription details including type, status, and social handles. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 6 tools
Each tool targets a distinct resource and action: subscriber counts, individual subscriber lookup, publication listing, post listing, post detail, and post stats. Despite similar prefixes like get_subscriber* and get_post*, the descriptions clearly separate aggregate vs. specific lookups.
All tools follow a consistent snake_case verb_noun pattern using either list_ or get_. There is no mixing of camelCase, vague verbs, or irregular naming styles.
Six tools is well-scoped for a Substack-focused server. Each tool covers a distinct need—publication discovery, post metadata, post content, post analytics, subscriber counts, and subscriber lookup—with no evident bloat.
The read-oriented surface is solid for querying posts and subscriber statistics, but the 'publisher' name implies publishing capabilities that are entirely absent: there are no create, update, publish, or delete post tools. This is a notable gap for a toolset claiming to help a publisher.