Unofficial Model Context Protocol (MCP) server for airSlate SignNow e-signatures.
Upload documents, send signing invites, check status, download signed PDFs, and manage templates - all from Claude Code or any MCP-compatible client.
Note: This is a community project and is not affiliated with or endorsed by airSlate SignNow.
| Tool | Description |
|---|---|
upload_document |
Upload a PDF file to SignNow |
get_document |
Get document details and signing status |
list_documents |
List all documents in the account |
download_signed_document |
Download a signed PDF locally |
send_signing_invite |
Send a freeform e-signature invite |
send_role_based_invite |
Send a role-based invite with field assignments |
cancel_invite |
Cancel pending signing invites |
add_signature_field |
Add a signature field to a document |
list_templates |
List all document templates |
create_from_template |
Create a document from a template |
register_webhook |
Register a webhook for document events |
- Create a SignNow account
- Go to API > Applications and create an application
- Note your
client_idandclient_secret - Base64-encode them:
echo -n "client_id:client_secret" | base64
cp .env.example .env
# Edit .env with your credentialspoetry installclaude mcp add signnow -- poetry -C /path/to/signnow-mcp run python -m signnow_mcp.serverOr add it manually to your Claude Code MCP settings:
{
"signnow": {
"type": "stdio",
"command": "poetry",
"args": ["-C", "/path/to/signnow-mcp", "run", "python", "-m", "signnow_mcp.server"],
"env": {
"SIGNNOW_API_BASE_URL": "https://api.signnow.com",
"SIGNNOW_BASIC_AUTH": "your-base64-encoded-credentials",
"SIGNNOW_USERNAME": "your-email@example.com",
"SIGNNOW_PASSWORD": "your-password"
}
}
}Once configured, you can ask Claude:
- "Upload contract.pdf to SignNow and send it to john@example.com for signing"
- "Check the signing status of document abc123"
- "List all my SignNow documents"
- "Download the signed version of document abc123"
- "Create a new document from the NDA template and send it for signing"
For testing, use the SignNow sandbox environment:
- Sandbox API:
https://api-eval.signnow.com - Sandbox app:
https://app-eval.signnow.com
For production:
- Production API:
https://api.signnow.com - Production app:
https://app.signnow.com
# Install dev dependencies
poetry install
# Run the server directly
poetry run python -m signnow_mcp.server- Integrating SignNow E-Signatures into Your Django Application - blog post covering the SignNow API integration in detail
- MCP specification
- SignNow API docs
Contributions are welcome! Please read CONTRIBUTING.md before submitting a PR.
To report a vulnerability, please see SECURITY.md.
MIT - see LICENSE for details.
Website | LinkedIn | Let's talk
Crafted by musictechlab.io
