Docs

MintPage is a stateless Streamable-HTTP MCP server at https://mintpage-mcp.netlify.app/mcp. Everything below is also discoverable by your agent through tools/list.

Authentication

Three equivalent ways to pass a key. Without one you’re a guest (24-hour pages, 3 a day).

  • Authorization: Bearer mp_… header — preferred.
  • https://mintpage-mcp.netlify.app/mcp/mp_… — key in the path, for clients that can’t set headers (Claude.ai connectors, ChatGPT).
  • ?key=mp_… query parameter.

Keys are only ever delivered by email from /start. Lost it? Request another; old keys keep working until you call rotate_api_key.

Connecting

Claude Code

claude mcp add --transport http mintpage https://mintpage-mcp.netlify.app/mcp \
  --header "Authorization: Bearer mp_…"

Claude.ai and Claude Desktop

Settings → Connectors → Add custom connector. URL: https://mintpage-mcp.netlify.app/mcp/mp_… (or the bare /mcp for guest mode). No OAuth needed.

Cursor

// .cursor/mcp.json
{ "mcpServers": { "mintpage": {
    "url": "https://mintpage-mcp.netlify.app/mcp",
    "headers": { "Authorization": "Bearer mp_…" } } } }

ChatGPT

Settings → Connectors → Advanced → Developer mode → Create. URL: https://mintpage-mcp.netlify.app/mcp/mp_…, authentication “None”.

Any other client or SDK

JSON-RPC 2.0 over POST. Send Accept: application/json, text/event-stream; responses are plain JSON. No sessions, no SSE stream, so it works from a cron job or a curl one-liner.

Tools

ToolArgumentsNotes
publish_pagetitle, content, format (markdown|html), theme (paper|ink|terminal), byline, slug (Pro), expires_in_hoursReturns url and page_id. Works for guests.
update_pagepage_id + any of the aboveKeeps the URL. Key required.
list_pages—Newest first, with views and expiry.
delete_pagepage_idIrreversible; URL shows “removed”.
get_page_statspage_idTotal views, last view, 30-day daily series.
get_account—Plan, usage, limits, upgrade link. Works for guests.
rotate_api_key—Returns a new key once; revokes the one in use.

Content

Markdown is GitHub-flavored: tables, task lists, fenced code, strikethrough, autolinks. HTML is sanitized server-side: scripts, forms, iframes, event handlers and external stylesheets are removed; inline style attributes, <style> blocks (no @import/url()), images and inline SVG are allowed. Every page is served with a strict Content-Security-Policy and noindex unless the owner is on Pro.

Themes: paper (light), ink (dark), terminal (dark, monospace). Pages are responsive and print cleanly.

Limits

GuestFreePro
Live pages3 / 24 h10500
Page size100 KB250 KB1 MB
Lifetime24 hup to 7 daysforever, or what you set
Custom slugs——yes
Stats—yesyes
Badge on pageyesyesno
Search enginesnoindexnoindexindexable
Rate limit120 requests / minute / IP

Billing

Pro is $8/month or $59/year, through Stripe, from the dashboard. Pay with the same email as your key and the upgrade applies within seconds. Cancelling keeps Pro until the end of the paid period; pages then fall back to Free rules (they are not deleted, but new expiry applies to pages published afterwards).

Tips for prompting your agent

  • “Publish this as a page and give me the link.” — the agent calls publish_page and returns the URL.
  • “Keep the same page updated.” — the agent reuses the page_id with update_page.
  • “Make it dark.” — theme: "ink".
  • “Expire it after the meeting.” — expires_in_hours: 3.