mcp-name: io.github.KyuRish/patreon-mcp-server
Give AI assistants access to your Patreon creator data. The first authenticated Patreon MCP server - works with Claude Desktop, Cursor, Windsurf, VS Code Copilot, and any MCP-compatible client.
Go to Patreon Developer Portal and copy your Creator Access Token. This token gives access to your own campaign data only.
Claude Desktop - add to claude_desktop_config.json:
{
"mcpServers": {
"patreon": {
"command": "uv",
"args": ["run", "--directory", "/path/to/patreon-mcp-server", "src/patreon_mcp_server/server.py"],
"env": {
"PATREON_ACCESS_TOKEN": "your_token_here"
}
}
}
}Claude Code - add to .mcp.json in your project root:
{
"mcpServers": {
"patreon": {
"command": "uv",
"args": ["run", "--directory", "/path/to/patreon-mcp-server", "src/patreon_mcp_server/server.py"],
"env": {
"PATREON_ACCESS_TOKEN": "your_token_here"
}
}
}
}Ask your AI assistant things like:
- "Show me my Patreon campaigns"
- "Who are my top patrons by lifetime support?"
- "How many patrons are on each tier?"
- "Which patrons have declining payments?"
- "List my recent posts"
| Tool | Description | Returns |
|---|---|---|
fetch_identity |
Your authenticated profile | User |
fetch_campaigns |
List all your campaigns | Campaign[] |
fetch_campaign |
Campaign details with tier breakdown | CampaignDetail |
fetch_members |
Paginated patron list (100/page) | MemberPage |
fetch_posts |
Paginated post list (20/page) | PostPage |
fetch_post |
Single post by ID | Post |
Pagination: fetch_members and fetch_posts return a next_cursor field. Pass it as the cursor parameter to fetch the next page.
full_name, patron_status, pledge_cadence, lifetime_support_cents, currently_entitled_amount_cents, last_charge_date, last_charge_status, will_pay_amount_cents, is_follower, tiers, user_name
creation_name, patron_count, pledge_url, published_at, url, vanity, is_monthly, created_at, image_url, summary, one_liner, pay_per_name
title, amount_cents, description, published, patron_count
title, content, is_paid, is_public, published_at, url, embed_data, embed_url
This server is designed with patron privacy in mind:
- No patron emails - email addresses are never requested from the API
- No private notes - creator notes about patrons are excluded
- Read-only - no write operations, the server only reads your data
- No data storage - the MCP server itself does not cache or persist any data
Important: When using this server with an AI assistant, patron data (names, pledge amounts, charge status) is sent to your AI provider (e.g., Anthropic, OpenAI) and may be temporarily retained per their data processing policies. You are responsible for ensuring your use complies with Patreon's Creator Privacy Promise and applicable data protection laws.
This project is not affiliated with or endorsed by Patreon.
- Python 3.11+
- uv package manager
# Clone the repo
git clone https://github.com/kyurish/patreon-mcp-server.git
cd patreon-mcp-server
# Install dependencies
uv sync
# Test it runs
PATREON_ACCESS_TOKEN=your_token uv run src/patreon_mcp_server/server.pysrc/patreon_mcp_server/
server.py # Entry point
mcp_server.py # FastMCP init + client instance
tools.py # @mcp.tool() definitions
models.py # Pydantic models + JSON:API parsers
utils/
client.py # PatreonClient (HTTP layer)
This server is currently read-only. Write operations (create posts, manage tiers, send messages to patrons) will be added if there's enough demand - open an issue or star the repo to show interest.
MIT License - see LICENSE for details.
If you find this useful, consider supporting development on Patreon.