Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Substack by Cotlet

by cotletdevversion 1.0.2i★ –iComputer or cloud
Registry namedev.cotlet/substack

Install

Overview

Description from the maker (original English)

Posts, Notes, messages, subscribers and stats for your publication.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on the maker’s server: what you ask it goes through their server.
  • The registry lists no key to fill in.

You need

  • Runs in the cloudNothing to install; it connects over the internet
  • PyPIPython’s uv installed (for the uvx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Works in Claude on the web, desktop and mobile:

  1. Open Settings → Connectors
  2. Press Add custom connector
  3. Paste the address below and press Add
  4. If it asks you to sign in, sign in with the maker
SettingsConnectors1+ Add2https://…3
https://cotlet.dev/mcp/v1/substack/connect

Or run it on your computer

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "substack": {
      "command": "uvx",
      "args": [
        "substack-api-mcp",
        "mcp"
      ]
    }
  }
}

Run this in your terminal

claude mcp add --transport http substack https://cotlet.dev/mcp/v1/substack/connect

Or run it on your computer

claude mcp add substack -- uvx substack-api-mcp mcp

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "substack": {
      "url": "https://cotlet.dev/mcp/v1/substack/connect"
    }
  }
}

Or run it on your computer

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "substack": {
      "command": "uvx",
      "args": [
        "substack-api-mcp",
        "mcp"
      ]
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "substack": {
      "type": "http",
      "url": "https://cotlet.dev/mcp/v1/substack/connect"
    }
  }
}

Or run it on your computer

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "substack": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "substack-api-mcp",
        "mcp"
      ]
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

ChatGPT connects only to servers on the internet:

  1. Open ChatGPT on the web → Settings → Connectors (Apps)
  2. Press Create or Add (some plans need Developer mode under Advanced first)
  3. Paste the address below, give it a name and save
  4. If it asks you to sign in, sign in with the maker
SettingsConnectors1+ Create2https://…3
https://cotlet.dev/mcp/v1/substack/connect

Menu names can differ slightly by plan and over time.

Your choice stays on this device in a cookie; no account needed.

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

We have not read this server’s tool list yet; we check endpoints in rotation.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified against the domain cotlet.dev (the registry checks domain ownership)

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • … Not checked yet

    Endpoint responds

    Not checked yet; we check endpoints in rotation

  • … Not checked yet

    Sign-in with OAuth

    Not checked yet; we check endpoints in rotation

  • … Not checked yet

    No hidden instructions in tool descriptions

    Not checked yet; we read the tool list when we check the endpoint

Compared with others in Docs, sheets & office worki

  • More stars than 0% of the other 2191 servers in this category
  • Published to the registry more recently than 70% of the other 2191 servers in this category
  • Basic checks equal to or better than 100% of the other 2191 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Substack by Cotlet safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

The registry does not list a required key, though some servers ask you to sign in on first use.

Does it run on my computer or in the cloud?

Either way works: install it on your computer or connect to the cloud version.

Is it still maintained?

The GitHub repo last changed –, and the latest version (1.0.2) reached the registry 13 days ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.

What can I use instead?

In the same category: Agent-Native Calendar, Excel MCP Server, MCP Server for Excel

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Agent-Native Google Calendar - manage events, sync, and public booking

Runs in the cloud★ 7,620MITUpdated 2 months ago
Install

Excel MCP Server

by haris-musa

Lets AI create and edit Excel files itself, including formulas, charts and PivotTables, without Excel installed.

Runs on your computer★ 4,276MITUpdated 6 days ago
Install

Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.

Runs on your computer★ 847MITUpdated 3 days ago
Install

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

Substack API and MCP server: connect Substack to ChatGPT and Claude

Yes, ChatGPT, Claude and other AI agents can work in your Substack account. That includes Cursor, Codex, OpenClaw and any MCP client, plus automations in n8n, Make and Zapier. Ask in plain words, and the AI drafts posts from your notes, schedules them, posts Notes, answers comments and reports your subscriber and post stats. It shows you what it will do first and sends nothing to other people until you say so.

As of November 2026, this repo is the missing piece: 50 Substack tools for AI assistants and scripts.

What you can ask

*Turn essay.md into a draft for everyone and schedule it for Tuesday 8:00 New York time. Once it is out, post a Note with a link card to it.*

*Find comments on my last three posts that I have not answered and draft a short reply to each.*

*Last week's numbers: new and paid subscribers, cancellations, revenue, and opens for each post.*

*Where did my readers come from in the last 30 days?*

Two ways to get it

Ready to use, at CotletRun it yourself, this repo
Forwriters and publishersdevelopers
Setupsign in to Substack once, about 5 minutes, nothing to installPython and a terminal
Works inChatGPT and Claude apps, on your phone too, Cursor, Codex, OpenClaw, any MCP client, n8n, Make, Zapier, REST APIClaude Code, Claude Desktop, Cursor, Codex on your computer
Runs24/7, your computer can be offwhile your computer is on
Price7 days free, no cardfree

Cotlet is best for writers and publishers who want ChatGPT, Claude or another AI agent to work in Substack for them, with nothing to install.

[Start free at cotlet.dev →](https://cotlet.dev/signup?app=substack&utm_source=github&utm_medium=readme&utm_campaign=substack&utm_content=top-button)

Run it yourself

A Substack API and a Substack MCP server you run on your own computer, in Python, on the session of your own Google Chrome. All 50 Substack tools we run in production at Cotlet: posts and drafts from Markdown, publishing and scheduling, Notes, comments, subscribers, stats, recommendations and direct messages.

Substack has no public API to write posts, publish Notes or manage subscribers, and no official MCP server. This repo gives you both:

  • MCP server for Claude Code, Claude Desktop, Cursor, Codex and any MCP client, over stdio or HTTP. Setup
  • REST API on http://127.0.0.1:8787/api/v1/substack, with OpenAPI docs at /docs. Setup
  • Python: call("list_posts", status="draft"), plus 14 ready scripts in examples/.

Free for your own use, your own business included (license).

uv tool install substack-api-mcp                  # or: pip install substack-api-mcp

substack-mcp connect # reads your Substack session from Chrome substack-mcp call list_posts claude mcp add substack -- uvx substack-api-mcp mcp

Contents

  • Questions from Substack users
  • How it works
  • Requirements
  • Install
  • Connect your Chrome
  • MCP server
  • REST API
  • Python and the example scripts
  • All 50 tools
  • Configuration
  • Security and your Substack account
  • Errors
  • Self-hosted or hosted
  • FAQ
  • License

Questions from Substack users

Does Substack have an API? Only a limited one (checked 11 Oct 2026). Its Developer API looks up public creator profiles after approval, and there is no public API to write posts or Notes, manage subscribers or send email. RSS reads public posts only. This repo and Cotlet give you 50 Substack tools as a REST API and an MCP server.

Can I get a Substack API key? Not from Substack for your own account. With Cotlet you get your own API key that works with your Substack account, for scripts, n8n, Make, Zapier or any HTTP client. This repo needs no key: it runs on your computer, on your own Substack session.

Is there an official ChatGPT integration for Substack? Partly. Substack has an official Claude connector that reads your publication's data, such as subscribers, revenue and post stats. It cannot write. Cotlet adds the writing side: drafts, publishing and scheduling, Notes, comments and messages, in ChatGPT, Claude and other AI agents.

How do I connect Substack to ChatGPT? Sign up at cotlet.dev, sign in to Substack once in your Cloud Browser there, and add Cotlet to ChatGPT, following the steps in your account. Then ask ChatGPT about your Substack like you would ask an assistant. ChatGPT needs a server on the internet, so this repo alone, running on your computer, does not connect to ChatGPT.

Can ChatGPT write and schedule my Substack posts? Yes, with Cotlet. It turns your notes or a Markdown file into a Substack draft, shows it to you and publishes or schedules it after your OK. It can post a Note about it once it is out.

Can ChatGPT read my Substack stats? Yes, with Cotlet: new and paid subscribers, cancellations, revenue, opens per post and where your readers came from, in plain words.

Can I automate Substack with Zapier, Make or n8n? Substack has no official way to write posts from Zapier, Make or n8n. With Cotlet they can create drafts, publish posts and post Notes, for example from a Google Doc or an RSS feed.

Can I use it from my phone? Yes, with Cotlet: once it is set up, the ChatGPT and Claude apps on your phone can use Substack for you.

Do I need to be technical? For Cotlet, no: you sign in to Substack and add Cotlet to ChatGPT or Claude, with step-by-step instructions in your account. This repo is for people who are fine with Python and a terminal.

Is my Substack account safe? Yes. Neither Cotlet nor this repo sees or stores your Substack password. You sign in yourself, the way you always do, and the AI works on that signed-in session. Anything that reaches other people asks for your OK first: in Cotlet by default, here through your MCP client.

Is it free? This repo is free, also in your own business. Cotlet is free for 7 days with no card, then one-time credit packs from $29, no subscription. Pricing.

I manage Substack for several accounts or clients. Does that work? Yes, with Cotlet. Each Substack login gets its own connection. Write to contact@cotlet.dev and tell us how many accounts you manage.

How it works

AI agent (MCP) / script (REST, Python) ──▶ substack-mcp on your computer ──your Substack cookies──▶ substack.com

▲ substack-mcp connect ───────┘ reads them once from your Chrome (DevTools Protocol)

  1. You sign in to Substack in your own Chrome, the way you always do.
  2. substack-mcp connect attaches to that Chrome through the Chrome DevTools Protocol, reads the substack.com cookies and saves them to ~/.config/substack-api-mcp/session.json, readable by your user only. Substack signs in by an emailed code or link, so there is no password to see or store.
  3. Every tool call is a request to Substack's own web app endpoints (substack.com/api/v1 for the reader side, yourname.substack.com/api/v1 for your publication's dashboard) with those cookies, sent with curl_cffi, which copies Chrome's TLS fingerprint. No headless browser runs.

Substack's session cookie (substack.sid) lasts about three months. When Substack signs you out, the server reads the cookies from Chrome again, if Chrome is open with remote debugging on.

Requirements

  • Python 3.11 or newer.
  • Google Chrome 144 or newer, signed in to Substack. Any Chrome or Chromium works with a debugging port.
  • macOS, Linux or Windows.
  • A Substack account. Publisher tools (posts, subscribers, stats, comments) work on the first publication your account runs as admin, owner, editor or contributor. Reader tools (feed, search, Notes, messages) work on any account.

Install

From PyPI:

uv tool install substack-api-mcp       # or: pipx install substack-api-mcp, or: pip install substack-api-mcp

substack-mcp --version

MCP clients can also run it with no install: uvx substack-api-mcp mcp.

From source:

git clone https://github.com/cotletdev/substack-api-mcp-server.git

cd substack-api-mcp-server python3 -m venv .venv . .venv/bin/activate # Windows: .venv\Scripts\activate pip install -e . substack-mcp --version

With uv: uv venv && uv pip install -e ., then uv run substack-mcp ....

Setting it up with an AI agent (Claude Code, Codex, Cursor)? Open it in this folder and ask it to set up the repo: AGENTS.md tells it every step, and it asks you only for the steps in Chrome.

To update: uv tool upgrade substack-api-mcp (or pip install -U substack-api-mcp), from source git pull && pip install -e .. We copy every change of the hosted Substack tools into this repo.

Connect your Chrome

Option A: your everyday Chrome (recommended)
  1. Open chrome://inspect/#remote-debugging in Chrome and switch remote debugging on. Chrome then accepts DevTools connections from programs on this computer, and asks you before each one.
  2. Make sure you are signed in at substack.com.
  3. Run:
   substack-mcp connect
  1. Chrome asks whether to allow the connection. Click Allow.
Saved 19 Substack cookies to /Users/you/.config/substack-api-mcp/session.json

Signed in to Substack as Maya Chen (@mayachen)

You can switch remote debugging off again afterwards. Leave it on if you want the server to pick up a new session by itself after Substack signs you out.

connect looks for Chrome's DevToolsActivePort file in the default profile folder. For Chrome Beta, Canary or a custom profile folder, pass --profile-dir " ".

Option B: a Chrome with a debugging port

Chrome does not open a debugging port on your default profile, so start a separate one, sign in to Substack there once, and connect to it:

# macOS

"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" --remote-debugging-port=9222 --user-data-dir="$HOME/.chrome-substack"

Linux

google-chrome --remote-debugging-port=9222 --user-data-dir="$HOME/.chro

Only the beginning is shown; read the rest in the repo

Ask PopNx