A Model Context Protocol (MCP) Server for Substack enabling LLM clients to interact with Substack's API for automations like creating posts, managing drafts, and more.
接入配置
选择客户端,复制配置,再按项目文档补齐环境变量。
claude mcp add substack --env SUBSTACK_PUBLICATION_URL='<SUBSTACK_PUBLICATION_URL>' --env SUBSTACK_SESSION_TOKEN='<SUBSTACK_SESSION_TOKEN>' --env SUBSTACK_USER_ID='<SUBSTACK_USER_ID>' -- npx -y substack-mcp~/.codex/config.toml
[mcp_servers.substack]
command = "npx"
args = ["-y", "substack-mcp"]
env = { SUBSTACK_PUBLICATION_URL = "<SUBSTACK_PUBLICATION_URL>", SUBSTACK_SESSION_TOKEN = "<SUBSTACK_SESSION_TOKEN>", SUBSTACK_USER_ID = "<SUBSTACK_USER_ID>" }
# codex mcp add substack --env SUBSTACK_PUBLICATION_URL='<SUBSTACK_PUBLICATION_URL>' --env SUBSTACK_SESSION_TOKEN='<SUBSTACK_SESSION_TOKEN>' --env SUBSTACK_USER_ID='<SUBSTACK_USER_ID>' -- npx -y substack-mcp~/.cursor/mcp.json
{
"mcpServers": {
"substack": {
"command": "npx",
"args": [
"-y",
"substack-mcp"
],
"env": {
"SUBSTACK_PUBLICATION_URL": "<SUBSTACK_PUBLICATION_URL>",
"SUBSTACK_SESSION_TOKEN": "<SUBSTACK_SESSION_TOKEN>",
"SUBSTACK_USER_ID": "<SUBSTACK_USER_ID>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"substack": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"substack-mcp"
],
"env": {
"SUBSTACK_PUBLICATION_URL": "<SUBSTACK_PUBLICATION_URL>",
"SUBSTACK_SESSION_TOKEN": "<SUBSTACK_SESSION_TOKEN>",
"SUBSTACK_USER_ID": "<SUBSTACK_USER_ID>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"substack": {
"command": "npx",
"args": [
"-y",
"substack-mcp"
],
"env": {
"SUBSTACK_PUBLICATION_URL": "<SUBSTACK_PUBLICATION_URL>",
"SUBSTACK_SESSION_TOKEN": "<SUBSTACK_SESSION_TOKEN>",
"SUBSTACK_USER_ID": "<SUBSTACK_USER_ID>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"substack": {
"command": "npx",
"args": [
"-y",
"substack-mcp"
],
"env": {
"SUBSTACK_PUBLICATION_URL": "<SUBSTACK_PUBLICATION_URL>",
"SUBSTACK_SESSION_TOKEN": "<SUBSTACK_SESSION_TOKEN>",
"SUBSTACK_USER_ID": "<SUBSTACK_USER_ID>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"substack": {
"command": "npx",
"args": [
"-y",
"substack-mcp"
],
"env": {
"SUBSTACK_PUBLICATION_URL": "<SUBSTACK_PUBLICATION_URL>",
"SUBSTACK_SESSION_TOKEN": "<SUBSTACK_SESSION_TOKEN>",
"SUBSTACK_USER_ID": "<SUBSTACK_USER_ID>"
}
}
}
}需要的环境变量
SUBSTACK_PUBLICATION_URLSUBSTACK_SESSION_TOKENSUBSTACK_USER_ID
把占位值换成你自己的密钥;不要把密钥提交到代码仓库。