{"servers":[{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.06ketan/substack-ops","description":"Substack CLI + 26-tool MCP server. Your IDE drafts replies via propose_reply. No API keys.","title":"substack-ops","repository":{"url":"https://github.com/06ketan/substack-ops","source":"github"},"version":"0.3.1","websiteUrl":"https://substack-ops.chavan.in","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"substack-ops","version":"0.3.1","runtimeHint":"uvx","transport":{"type":"stdio"},"packageArguments":[{"value":"mcp","type":"positional"},{"value":"serve","type":"positional"}],"environmentVariables":[{"description":"Your Substack publication URL (e.g. https://you.substack.com/). Optional if set in ~/.cursor/mcp.json's mcpServers.substack-api.env.","name":"SUBSTACK_PUBLICATION_URL"},{"description":"Your Substack numeric user id. Optional if set in ~/.cursor/mcp.json.","name":"SUBSTACK_USER_ID"},{"description":"Your Substack session cookie value (the s%3A... string). Required for authenticated calls. Easier path: run `substack-ops auth login --browser chrome` and the cookie is auto-grabbed.","isSecret":true,"name":"SUBSTACK_SESSION_TOKEN"},{"description":"Override path to the mcp.json file the auth layer reads. Defaults to ~/.cursor/mcp.json.","name":"SUBSTACK_OPS_MCP_PATH"},{"description":"Optional: override the host CLI used by the unattended daemon path (default: auto-detect claude / cursor-agent / codex on PATH). Use {prompt} placeholder if your CLI takes the prompt as an arg.","name":"SUBSTACK_OPS_LLM_CMD"}]}],"_meta":{"io.modelcontextprotocol.registry/publisher-provided":{"tool":"manual","version":"0.3.1"}}},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-04-21T12:33:40.632015Z","publishedAt":"2026-04-21T12:33:40.632015Z","updatedAt":"2026-04-21T12:33:40.632015Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.06ketan/substack-ops","description":"Substack CLI + 26-tool MCP server. Your IDE drafts replies via propose_reply. No API keys.","title":"substack-ops","repository":{"url":"https://github.com/06ketan/substack-ops","source":"github"},"version":"0.3.4","websiteUrl":"https://substack-ops.chavan.in","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"substack-ops","version":"0.3.4","runtimeHint":"uvx","transport":{"type":"stdio"},"packageArguments":[{"value":"mcp","type":"positional"},{"value":"serve","type":"positional"}],"environmentVariables":[{"description":"Your Substack publication URL (e.g. https://you.substack.com/). Optional if set in ~/.cursor/mcp.json's mcpServers.substack-api.env.","name":"SUBSTACK_PUBLICATION_URL"},{"description":"Your Substack numeric user id. Optional if set in ~/.cursor/mcp.json.","name":"SUBSTACK_USER_ID"},{"description":"Your Substack session cookie value (the s%3A... string). Required for authenticated calls. Easier path: run `substack-ops auth login --browser chrome` and the cookie is auto-grabbed.","isSecret":true,"name":"SUBSTACK_SESSION_TOKEN"},{"description":"Override path to the mcp.json file the auth layer reads. Defaults to ~/.cursor/mcp.json.","name":"SUBSTACK_OPS_MCP_PATH"},{"description":"Optional: override the host CLI used by the unattended daemon path (default: auto-detect claude / cursor-agent / codex on PATH). Use {prompt} placeholder if your CLI takes the prompt as an arg.","name":"SUBSTACK_OPS_LLM_CMD"}]}],"_meta":{"io.modelcontextprotocol.registry/publisher-provided":{"tool":"manual","version":"0.3.4"}}},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-05-02T12:54:15.231429Z","publishedAt":"2026-05-02T12:54:15.231429Z","updatedAt":"2026-05-02T12:54:15.231429Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.06ketan/substack-ops","description":"Substack CLI + 26-tool MCP server. Your IDE drafts replies via propose_reply. No API keys.","title":"substack-ops","repository":{"url":"https://github.com/06ketan/substack-ops","source":"github"},"version":"0.3.5","websiteUrl":"https://substack-ops.chavan.in","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"substack-ops","version":"0.3.5","runtimeHint":"uvx","transport":{"type":"stdio"},"packageArguments":[{"value":"mcp","type":"positional"},{"value":"serve","type":"positional"}],"environmentVariables":[{"description":"Your Substack publication URL (e.g. https://you.substack.com/). Optional if set in ~/.cursor/mcp.json's mcpServers.substack-api.env.","name":"SUBSTACK_PUBLICATION_URL"},{"description":"Your Substack numeric user id. Optional if set in ~/.cursor/mcp.json.","name":"SUBSTACK_USER_ID"},{"description":"Your Substack session cookie value (the s%3A... string). Required for authenticated calls. Easier path: run `substack-ops auth login --browser chrome` and the cookie is auto-grabbed.","isSecret":true,"name":"SUBSTACK_SESSION_TOKEN"},{"description":"Override path to the mcp.json file the auth layer reads. Defaults to ~/.cursor/mcp.json.","name":"SUBSTACK_OPS_MCP_PATH"},{"description":"Optional: override the host CLI used by the unattended daemon path (default: auto-detect claude / cursor-agent / codex on PATH). Use {prompt} placeholder if your CLI takes the prompt as an arg.","name":"SUBSTACK_OPS_LLM_CMD"}]}],"_meta":{"io.modelcontextprotocol.registry/publisher-provided":{"tool":"manual","version":"0.3.5"}}},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-05-03T06:30:21.883331Z","publishedAt":"2026-05-03T06:30:21.883331Z","updatedAt":"2026-05-03T06:30:21.883331Z","isLatest":true}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.adelaidasofia/substack-mcp","description":"FastMCP server for Substack — publish Notes and posts, pull analytics, manage drafts, pluggable…","title":"FastMCP server for Substack — publish Notes and posts, pull analytics, manage dr","repository":{"url":"https://github.com/adelaidasofia/substack-mcp","source":"github"},"version":"0.1.0","packages":[{"registryType":"mcpb","identifier":"https://github.com/adelaidasofia/substack-mcp/releases/download/v0.1.0/substack-mcp.mcpb","version":"0.1.0","fileSha256":"d4b0d291dd5ba589ddf599a90063b81522be2c1562be905a16b11face5bb3b18","transport":{"type":"stdio"},"environmentVariables":[{"description":"Auth cookie extracted via browser dev tools","isRequired":true,"isSecret":true,"name":"SUBSTACK_SID_COOKIE"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-05-20T03:09:55.889842Z","publishedAt":"2026-05-20T03:09:55.889842Z","updatedAt":"2026-05-20T03:09:55.889842Z","isLatest":true}}}],"metadata":{"count":4}}
