About eSignatures.com MCP server
An MCP server that gives AI agents access to the eSignatures.com API for managing e-signature contracts. Contracts stay editable Markdown documents throughout their lifecycle, aimed at developers and automated workflows.
Key features
- 01Markdown-based contract content that stays editable after sending
- 02Contract drafting, sending, signer management and version history
- 03Template management with collaborator permissions
- 04Reusable public contract links for signing
- 05Hosted remote server or local installation
Use cases
- 01Drafting an NDA from a template and sending it to a signer
- 02Amending the terms of an active contract and reviewing earlier versions
- 03Reviewing recent contracts awaiting signatures or contract links in test mode
MCP support
This project is an MCP server that exposes tools for contracts, signers, templates, content and contract links to MCP clients. A hosted endpoint is available at https://esignatures.com/mcp, and local use requires the ESIGNATURES_SECRET_TOKEN variable.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEmcp-server-esignatures
The most developer- and AI-friendly electronic signature platform.
Traditional eSignature tools lock you into rigid, static PDF files. eSignatures.com takes a different approach — contracts remain fully editable, Markdown-based content throughout their entire lifecycle, making them effortless for developers, automation systems, and AI agents to create, understand, modify, and manage.
This MCP server gives AI agents (such as Claude) real-time access to the complete eSignatures API, enabling:
- Dynamic contract creation and editing — even after sending
- Markdown-based content that AI can generate, understand, and update
- End-to-end workflows: drafting → placeholder filling → sending → signing → amendments
- Flexible templates and reusable contract workflows
- Contract links: reusable public signing URLs for waivers, NDAs and onboarding forms
- Signer management, notifications, and lifecycle automation
Built for intelligent, adaptive contract workflows — not outdated PDF-based signing.
Tools
| Tool | Category | Description |
|---|---|---|
create_contract | Contracts | Send a contract, or save it as a draft for review |
send_draft_contract | Contracts | Send a draft contract to its signers |
query_contract | Contracts | Retrieve contract info |
withdraw_contract | Contracts | Withdraw an active contract |
delete_contract | Contracts | Delete a draft or test contract |
list_recent_contracts | Contracts | List recent contracts, 100 per page |
add_contract_signer | Signers | Add a signer to an existing contract |
update_contract_signer | Signers | Update an existing signer's contact details |
resend_contract_signer_request | Signers | Send or resend the sign request to a signer |
delete_contract_signer | Signers | Remove a signer from a contract |
query_contract_placeholder_fields | Placeholders | Get a contract's placeholder field values |
update_contract_placeholder_fields | Placeholders | Update an active contract's placeholder fields |
query_contract_content | Content | Get a contract's content, or an earlier version of it |
update_contract_content | Content | Edit an active contract's body via find/replace |
create_template | Templates | Create a new contract template (Markdown body) |
update_template | Templates | Update an existing template's title/labels |
update_template_content | Templates | Edit a template's Markdown body via find/replace |
query_template | Templates | Retrieve template metadata |
query_template_content | Templates | Retrieve a template's Markdown body |
delete_template | Templates | Delete a template |
list_templates | Templates | List all your templates |
add_template_collaborator | Collaborators | Invite someone to edit a template |
remove_template_collaborator | Collaborators | Revoke template editing rights |
list_template_collaborators | Collaborators | View who can edit a template |
create_contract_link | Contract links | Publish a reusable signing link from a template or Markdown |
query_contract_link | Contract links | Retrieve a contract link's settings and signing URL |
query_contract_link_content | Contract links | Retrieve a contract link's Markdown body |
update_contract_link | Contract links | Update verification, redirect, CC, counter-signer, test mode |
update_contract_link_content | Contract links | Edit a contract link's Markdown body via find/replace |
delete_contract_link | Contract links | Delete a contract link; its signing URL stops working |
list_contract_links | Contract links | List all contract links with their signing URLs |
Examples
Creating a draft contract
Create a draft NDA for a publisher, ready for me to review and send. Signer: John Doe, ACME Corp, [email protected].
Sending a draft
Send the draft NDA for John Doe now.
Sending a contract from a template
Send an NDA based on my template to John Doe from ACME Corp at [email protected]. Set the term to 2 years.
Creating a new contract
Create a contractor agreement for a graphic designer, including payment terms of net 14 days. Prepare it as a draft for review. Signer: John Doe, ACME Corp, [email protected].
Adding a signer to a contract
Add Jane Smith from ACME Corp ([email protected]) as a signer on the NDA contract, then send her the signature request.
Editing an active contract's wording
On the NDA, change the term to 24 months and remove the jurisdiction section.
Reviewing an earlier version
Show me the NDA as it was before the term changed.
Editing an existing template
Update my NDA template to include a 12-month non-solicitation clause.
Reviewing templates
Review my templates and suggest improvements. Do not apply any changes until I approve them one by one.
Finding the right template
Find the best template for onboarding a contractor and prepare a draft contract for John Doe.
Managing contracts
Show me the recent contracts that are waiting for signatures.
Updating signer details
Update the signer email on the NDA contract for John Doe to [email protected].
Publishing a contract link
Turn my waiver template into a contract link, verify signers by SMS, and CC [email protected] on every signed copy.
Reviewing contract links
List my contract links and flag any still in test mode.
Inviting template collaborators
Invite John Doe to edit the NDA template. His email is [email protected].
Hosted server, no install
Prefer not to run anything locally? Connect any MCP client to https://esignatures.com/mcp (Streamable HTTP, OAuth). Claude, ChatGPT and other clients are covered at https://esignatures.com/docs/mcp.
Install (local)
Create an eSignatures.com account
Create an eSignatures.com account at https://esignatures.com for free, then copy your API secret token from the Automation & API page.
Claude Desktop
On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
Development/Unpublished Servers Configuration
"mcpServers": {
"mcp-server-esignatures": {
"command": "uv",
"env": {
"ESIGNATURES_SECRET_TOKEN": "your-esignatures-api-secret-token"
},
"args": [
"--directory",
"/your-local-directories/mcp-server-esignatures",
"run",
"mcp-server-esignatures"
]
}
}
Published Servers Configuration
"mcpServers": {
"mcp-server-esignatures": {
"command": "uvx",
"args": [
"mcp-server-esignatures"
],
"env": {
"ESIGNATURES_SECRET_TOKEN": "your-esignatures-api-secret-token"
}
}
}
Authentication
To use this server, you need to set the ESIGNATURES_SECRET_TOKEN environment variable with your eSignatures.com API secret token.
eSignatures.com API Documentation
For a detailed guide on API endpoints, parameters, and responses, see eSignatures.com API.
eSignatures.com Support
For support, please navigate to Support or contact [email protected].
Contributing
Contributions are welcome! If you'd like to contribute, please fork the repository and make changes as you see fit. Here are some guidelines:
- Bug Reports: Please open an issue to report any bugs you encounter.
- Feature Requests: Suggest new features by opening an issue with the "enhancement" label.
- Pull Requests: Ensure your pull request follows the existing code style.
- Documentation: Help improve or translate documentation. Any form of documentation enhancement is appreciated.
For major changes, please open an issue first to discuss what you would like to change. We're looking forward to your contributions!
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.