AS

arthurcolle/substack-mcp

Developer tools

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る

9 stars 13 forks 品質 54 トレンド 17

Model Context Protocol server for Substack integration with Claude Code

概要

A Model Context Protocol (MCP) server for Substack integration with Claude Code and other MCP-compatible AI tools. - - Create, update, and publish Substack posts programmatically - - Upload images to Substack's CDN with proper metadata - - Real-time post updates with timestamps - - Post short-form content to Substack Notes - - Proper document structure for Substack's editor 1. Go to your Substack dashboard in Chrome/Safari 2. Open DevTools (Cmd+Option+I or F12) 3. Go to Application tab → Cookies → your-substack.substack.com 4. Find substack.sid and copy its value The core client for interacting with Substack's API. Substack uses ProseMirror and requires specific attributes for images: The internalRedirect field is - without it, Substack's editor fails to render the document. - create_draft and update_draft automatically add missing internalRedirect values for any image nodes.

README

以下は原文 README の抜粋です。原文を見る。

Substack MCP Server

A Model Context Protocol (MCP) server for Substack integration with Claude Code and other MCP-compatible AI tools.

Features

  • Create and manage drafts - Create, update, and publish Substack posts programmatically
  • Image upload - Upload images to Substack’s CDN with proper metadata
  • Live blogging - Real-time post updates with timestamps
  • Notes - Post short-form content to Substack Notes
  • Full ProseMirror support - Proper document structure for Substack’s editor

Installation

# Clone the repo
git clone https://github.com/acolle/substack-mcp.git
cd substack-mcp

# Install dependencies
pip install -r requirements.txt

Testing

python -m unittest discover -s tests

Setup

1. Get your Substack credentials

  1. Go to your Substack dashboard in Chrome/Safari
  2. Open DevTools (Cmd+Option+I or F12)
  3. Go to Application tab → Cookies → your-substack.substack.com
  4. Find substack.sid and copy its value

2. Create credentials file

# Create ~/.substackrc
cat > ~/.substackrc << 'EOF'
export SUBSTACK_PUBLICATION="your-publication.substack.com"
export SUBSTACK_SID="your-cookie-value-here"
EOF

3. Add to Claude Code

# Add the MCP server to Claude Code
claude mcp add substack \
  --command "bash" \
  --args "-c" "source ~/.substackrc && python3 $(pwd)/substack_mcp/server.py"

Or manually add to ~/.claude.json:

{
  "mcpServers": {
    "substack": {
      "command": "bash",
      "args": ["-c", "source ~/.substackrc && python3 /path/to/substack-mcp/substack_mcp/server.py"]
    }
  }
}

Available Tools

Tool Description
substack_create_draft Create a new draft post
substack_update_draft Update an existing draft
substack_append_to_draft Append content (for live blogging)
substack_add_code_block Add a code block to a draft
substack_add_image Add an image to a draft
substack_publish Publish a draft
substack_post_note Post a short note
substack_get_drafts List all drafts
substack_get_posts List published posts
substack_live_blog_start Start a live blogging session
substack_live_blog_end End live blogging session

Usage Examples

Create a post with Claude Code

You: Create a new Substack post about AI tools

Claude: I'll create a draft for you...
[Uses substack_create_draft tool]
Created draft 12345. Edit at: https://your-pub.substack.com/publish/post/12345

Upload and embed images

You: Add this diagram to my post [image path]

Claude: I'll upload the image and add it to your draft...
[Uses substack_add_image tool]
Image added successfully.

Live blogging

You: Start a live blog for the product launch

Claude: Starting live blog session...
[Uses substack_live_blog_start tool]
Live blog started. I'll append updates as they happen.

API Reference

SubstackClient

GitHub で README 全文を見る

インストール

This server does not publish a one-line install command.

Open the repository installation guide MCP 初心者?mcpskill.org のガイドから始めましょう →

設定

{ "mcpServers": { "substack": { "command": "bash", "args": ["-c", "source ~/.substackrc && python3 /path/to/substack-mcp/substack_mcp/server.py"] } } }