Documentation
Connect other clients
Claude Code, ChatGPT, and any other MCP client can render PDFs through Inkrun. Which endpoint you use depends on how the client authenticates.
Pick your endpoint
| Your client… | Endpoint | Auth |
|---|---|---|
| supports OAuth connectors (claude.ai, Claude Desktop, ChatGPT) | https://inkrun.dev/api/mcp | OAuth — sign in once, no key |
| can send custom headers (Claude Code, Cursor, VS Code, scripts) | https://mcp.inkrun.dev/mcp | API key — Authorization: Bearer sk_... |
For the API-key endpoint, create a key in the dashboard under API & MCP (https://inkrun.dev/api-mcp) — it looks like sk_... and is shown once. Both endpoints expose the same five tools as the Claude connectors.
Claude Code
Register Inkrun as a remote HTTP server, passing your API key as a header:
claude mcp add --transport http inkrun https://mcp.inkrun.dev/mcp --header "Authorization: Bearer sk_..."- By default the server is registered for the current project. Add
--scope userto make it available everywhere. - Check the connection with the
/mcpcommand inside Claude Code — inkrun should show as connected. - Then just ask: "Render the README as a PDF with the technical-manual template."
ChatGPT
https://inkrun.dev/api/mcp.1. Enable developer mode
In ChatGPT, go to Settings → Apps & Connectors → Advanced settings and turn on Developer mode.
2. Add Inkrun
Under Settings → Apps & Connectors, choose Create and fill in:
| Field | Value |
|---|---|
| Name | Inkrun |
| MCP server URL | https://inkrun.dev/api/mcp |
| Authentication | OAuth |
3. Sign in to authorize
ChatGPT opens Inkrun's login. Sign in once — ChatGPT receives its own OAuth token; there's nothing to copy back.
4. Render from a chat
Enable the Inkrun app in a conversation and ask for a PDF. The render shows up in your History (https://inkrun.dev/history), counts against your quota, and ChatGPT replies with a download link.
Any other MCP client
Clients that support remote streamable HTTP servers with custom headers (Cursor, VS Code, and most agent frameworks) connect to the API-key endpoint. The config shape varies by client, but it always comes down to the URL plus the header:
{
"mcpServers": {
"inkrun": {
"url": "https://mcp.inkrun.dev/mcp",
"headers": { "Authorization": "Bearer sk_..." }
}
}
}(Field names differ — e.g. VS Code uses servers with "type": "http" — but URL + header is all Inkrun needs.) If your client supports OAuth connectors instead, point it at https://inkrun.dev/api/mcp and sign in.
What the client can do
The same five tools as the Claude connectors:
| Tool | What it does |
|---|---|
create_pdf | Render Markdown → themed PDF, store it, return a download URL. Accepts template, theme, format, title — plus sendEmailTo + senderName (and optional emailMessage) to email the PDF to someone as a branded download link valid for 3 days (paid plans — on the free tier the PDF still renders, but the email is skipped with a notice). |
list_templates | List your saved templates plus the built-ins. |
create_template | Create a reusable style option (theme + accent + fonts + format). |
get_styles | Return a theme's CSS + page config. |
get_chart_syntax | Explain the chart fenced-block syntax for embedding charts. |
See Templates → Charts for embedding charts in a render.
Troubleshooting
- 401 from
mcp.inkrun.dev. TheAuthorization: Bearer sk_...header is missing or the key was revoked. Create a fresh key in the dashboard under API & MCP and update your client config. - ChatGPT won't add the app / authorization fails. Check the URL is exactly
https://inkrun.dev/api/mcp, that Authentication is set to OAuth, and that developer mode is on. Then remove and re-add the app and sign in again. - Tools don't appear in Claude Code. Run
/mcpto see the connection status; re-add with the exact command above if it shows an error. - 429 / quota exceeded. You've hit your monthly render quota — see quotas.