Carbone MCP server
11 operations0 webhooks
Document generation and template rendering API for creating files from data-driven templates.
Try Carbone with your agent
Connect Carbone, then paste this into Claude, ChatGPT or Cursor. For ideas from other apps, see the use cases.
Using Corsair, show me what you can do in Carbone on my account, then run one read-only example and show me the result.
Carbone tools and triggers
Tools are what your agent can do in Carbone through Corsair's MCP server. Triggers are the Carbone events a routine can start from.
Templates
- DeleteDestructive
Permanently delete a template from the Carbone server by its 64-character hexadecimal template ID. This action is irreversible. Ensure you have the correct template ID before deleting.
templates.delete
- DownloadRead-only
Tool to download a template from Carbone by template ID. Use when you need to retrieve the original template file.
templates.download
- ListRead-only
Tool to retrieve a list of templates from Carbone storage with filtering, search, and cursor-based pagination. Use when you need to find templates, search by name or ID, or iterate through all deployed templates.
templates.list
- List CategoriesRead-only
Tool to retrieve a list of all categories used in templates. Categories function like folders for organizing templates. Use when you need to see available template groupings.
templates.listCategories
- List TagsRead-only
Tool to list all tags currently used in templates. Use when you need to discover available tags for categorizing or filtering templates by document type or version.
templates.listTags
- UpdateWrite
Tool to update metadata and attributes of an existing Carbone template. Use when you need to modify template name, comment, tags, category, or control version deployment and lifecycle.
templates.update
- UploadWrite
Upload a template file to the Carbone server to obtain a template ID for document generation. Supported template formats: DOCX, XLSX, PPTX, ODT, ODS, ODP, ODG, XHTML, IDML, HTML, or XML. Templates can contain placeholders like {d.fieldname} that will be replaced with data during report generation.
templates.upload
Render
- Generate ReportWrite
Tool to generate a Carbone report from a template and JSON data. Use when you need to render documents in various formats.
render.generateReport
- Render DirectWrite
Tool to generate a document by uploading a base64-encoded template and data in a single API call. Use when you need to render documents without uploading templates separately.
render.renderDirect
Status
- GetRead-only
Tool to retrieve the current status and health of the Carbone server. Use before generating reports to ensure the service is operational.
status.get
Version
- SetWrite
Tool to set the Carbone API version to be used for subsequent requests. Use before rendering or managing templates to ensure correct version is applied.
version.set
Connect Carbone to Claude, ChatGPT or Cursor
- 1
Connect Carbone in Corsair
Add your Carbone API key once in Corsair. Corsair stores the credential encrypted and makes the Carbone API calls for your agent, so it never goes into a prompt or a config file. Connect Carbone
If your link lets the agent add apps, you can skip this: it gives you a sign-in link the first time it needs Carbone. On a ChatGPT personal plan, connect Carbone here first.
- 2
Add Corsair's MCP server to your agent
Every client uses the same address:
https://mcp.corsair.dev/mcpOpen Customize → Connectors → Add custom connector, paste the address, then select Connect.Add a custom MCP server with the address and choose OAuth. Personal plans get read tools only.Add to CursorOr add this to~/.cursor/mcp.json. Cursor opens Corsair to sign in the first time it connects.{ "mcpServers": { "corsair": { "url": "https://mcp.corsair.dev/mcp" } } }Run this, then run/mcpin Claude Code to sign in.claude mcp add --transport http corsair https://mcp.corsair.dev/mcpCodex, Gemini CLI, VS Code, Zed and other clients with OAuth sign-in work the same way. Clients without it, such as GitHub Copilot's coding agent, use a link's own address and an API key. Setup for every client
- 3
Sign in and choose what needs your approval
Your client opens Corsair to sign in. Pick a link: the apps your agent can use and a mode that decides what it may do without asking. In the default Cautious mode, Carbone's read and write operations run right away and its 1 destructive operation waits for your approval. Strict mode asks before every write and refuses destructive operations, and Read mode allows reads only.
FAQ
Install corsair and @corsair-dev/carbone, add the Carbone plugin, and connect with an API key. Then call methods like corsair.carbone.api.render.generateReport() from your app. Corsair syncs data per tenant.
Yes. Carbone requires an API key from your Carbone account or developer dashboard. Create credentials with access that matches what you automate, then paste them into Corsair or connect through managed auth in Hub.
Yes. One Corsair client can hit Carbone, GitHub, Notion, Stripe, and the rest. Trigger Carbone from a webhook, push updates to Slack, or chain actions across plugins. Same tenant context across integrations, plain TypeScript.
Teams use Corsair for document generation and template rendering api for creating files from data-driven templates. Common builds include sync jobs, admin tooling, and agents that call Carbone APIs from your backend. Local DB entities let you query synced Carbone records without hitting the API on every read.
The SDK is open source. Self-host and you pay Corsair nothing for the integration layer. Hub bills for hosted auth and execution, not per Carbone API call. Hub has a generous free tier. For hobby projects you can probably run the whole thing on free. Paid plans start to matter with more tenants or heavier traffic.
We maintain @corsair-dev/carbone in the open repo. When Carbone ships API changes, upgrade the package. Your call sites stay typed. You should not need to rewrite the integration layer each time.
No. Corsair does not read your Carbone data or hold individual access credentials. Credentials stay in your database. API calls run on your instance. We do not store Carbone data on your behalf.
Yes. Add https://mcp.corsair.dev/mcp as a custom connector or MCP server in Claude, ChatGPT, Cursor, VS Code, Claude Code, Codex or any client that supports remote MCP servers with OAuth sign-in, then sign in to Corsair. On ChatGPT personal plans, custom servers currently get read tools only.
Yes. Put Carbone on a link in Strict mode and every write waits for your approval, while destructive actions are refused. The default Cautious mode asks only before the 1 destructive Carbone operation. You can change a link's mode at hub.corsair.dev/me.