eSignatures MCP server
12 operations0 webhooks
Contracts and e-signing with eSignatures - send contracts from templates, track and withdraw them, manage signers, and read back or create templates.
Try eSignatures with your agent
Connect eSignatures, 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 eSignatures on my account, then run one read-only example and show me the result.
eSignatures tools and triggers
Tools are what your agent can do in eSignatures through Corsair's MCP server. Triggers are the eSignatures events a routine can start from.
Contracts
- Add SignerWrite
Add a signer to a contract without sending a sign request; use contracts.resendToSigner to send one
contracts.addSigner
- CreateWrite
Create and send a contract from a template, filling placeholder fields; set save_as_draft to create without sending
contracts.create
- Delete SignerDestructive
Remove a signer from a contract
contracts.deleteSigner
- GetRead-only
Read a contract's status, signers, labels and, once signed, an expiring PDF URL; contracts older than two weeks may return incomplete data
contracts.get
- Resend To SignerWrite
Send or resend the sign request to one signer
contracts.resendToSigner
- Send DraftWrite
Send a draft contract to its signers
contracts.sendDraft
- Update SignerWrite
Update a signer's contact details or signing settings
contracts.updateSigner
- WithdrawDestructive
Withdraw a sent contract so it can no longer be signed; signed contracts cannot be withdrawn
contracts.withdraw
Templates
- CreateWrite
Create a template from markdown with placeholder fields
templates.create
- DeleteDestructive
Permanently delete a template
templates.delete
- GetRead-only
Read a template's title, creation time, placeholder fields and signer field IDs
templates.get
- ListRead-only
List the templates with their IDs and titles
templates.list
Connect eSignatures to Claude, ChatGPT or Cursor
- 1
Connect eSignatures in Corsair
Add your eSignatures API key once in Corsair. Corsair stores the credential encrypted and makes the eSignatures API calls for your agent, so it never goes into a prompt or a config file. Connect eSignatures
If your link lets the agent add apps, you can skip this: it gives you a sign-in link the first time it needs eSignatures. On a ChatGPT personal plan, connect eSignatures 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, eSignatures's read and write operations run right away and its 3 destructive operations wait 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/esignatures, add the eSignatures plugin, and connect with an API key. Then call methods like corsair.esignatures.api.contracts.addSigner() from your app. Corsair keeps each tenant isolated.
Yes. eSignatures requires an API key from your eSignatures 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 eSignatures, GitHub, Notion, Stripe, and the rest. Trigger eSignatures from a webhook, push updates to Slack, or chain actions across plugins. Same tenant context across integrations, plain TypeScript.
Teams use Corsair for contracts and e-signing with esignatures - send contracts from templates, track and withdraw them, manage signers, and read back or create templates. Common builds include sync jobs, admin tooling, and agents that call eSignatures APIs from your backend.
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 eSignatures 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/esignatures in the open repo. When eSignatures 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 eSignatures data or hold individual access credentials. Credentials stay in your database. API calls run on your instance. We do not store eSignatures 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 eSignatures 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 3 destructive eSignatures operations. You can change a link's mode at hub.corsair.dev/me.