Supports containerized deployment of the SignNow MCP server using Docker and Docker Compose for scalable eSignature workflow management
Uses environment variable configuration for secure credential management and API authentication settings
Provides source code hosting and collaboration features for the SignNow MCP server project
Integrates with GitHub Copilot Agent Mode to provide AI-powered eSignature workflow automation and code assistance for SignNow API development
Provides integration examples for using SignNow eSignature tools within LangChain AI agent frameworks
Supports OpenAI models for AI-powered document signing, template management, and eSignature workflow automation
Uses Pydantic for configuration validation and data modeling in SignNow API interactions
Distributed through PyPI package manager for easy installation of the SignNow MCP server
Built with Python 3.11+ for SignNow eSignature API integration and MCP server functionality
The SignNow REST API empowers users to deliver a seamless eSignature experience for signers, preparers, and senders. Pre-fill documents, create embedded branded workflows for multiple signers, request payments, and track signature status in real-time. Ensure signing is simple, secure, and intuitive on any device.
What you can do with the SignNow API:
Send documents and document groups for signature in a role-based order
Create reusable templates from documents
Pre-fill document fields with data
Collect payments as part of the signing flow
Embed the document sending, signing, or editing experience into your website, application, or any system of record
Track signing progress and download the completed documents
SignNow MCP Server
A Model Context Protocol (MCP) server that gives AI agents secure, structured access to SignNow eSignature workflows — templates, embedded signing, invites, status tracking, and document downloads — over STDIO or Streamable HTTP.
Table of contents
Features
Templates & groups
Browse all templates and template groups
Create documents or groups from templates (one-shot flows included)
Invites & embedded UX
Email invites and ordered recipients
Embedded signing/sending/editor links for in-app experiences
Status & retrieval
Check invite status and step details
Download final documents (single or merged)
Read normalized document/group structure for programmatic decisions
Transports
STDIO (best for local clients)
Streamable HTTP (best for Docker/remote)
Quick start
Prerequisites
Python 3.11+ installed on your system
Environment variables configured
1. Setup Environment Variables
2. Install and Run
Option A: Install from PyPI (Recommended)
Option B: Install from Source (Development)
STDIO is ideal for desktop clients and local testing.
Local/Remote (HTTP)
By default, the Streamable HTTP MCP endpoint is served under /mcp
. Example URL:
Docker
STDIO inside containers is unreliable with many clients. Prefer HTTP when using Docker.
Docker Compose
Configuration
Copy .env.example
→ .env
and fill in values. All settings are validated via pydantic-settings at startup.
Authentication options
1) Username / Password (recommended for desktop dev flows)
2) OAuth 2.0 (for hosted/advanced scenarios)
When running via some desktop clients, only user/password may be supported.
SignNow & OAuth settings
Production key management
If OAUTH_RSA_PRIVATE_PEM
is missing in production, a new RSA key will be generated on each restart, invalidating all existing tokens. Always provide a persistent private key via secrets management in prod.
Client setup
VS Code — GitHub Copilot (Agent Mode)
Create .vscode/mcp.json
in your workspace:
STDIO (local):
HTTP (remote or Docker):
Then open Chat → Agent mode, enable the signnow tools, and use them in prompts.
Claude Desktop
Use Desktop Extensions or the manual MCP config (Developer → Edit config) to add either:
STDIO command:
sn-mcp serve
HTTP endpoint:
http://localhost:8000/mcp
Follow Claude’s MCP guide for exact steps and secure secret handling.
Cursor
Add the server in Cursor’s MCP settings using either STDIO (sn-mcp serve
) or the HTTP URL (http://localhost:8000/mcp
).
MCP Inspector (testing)
Great for exploring tools & schemas visually.
You can list tools, call them with JSON args, and inspect responses.
Tools
Each tool is described concisely; use an MCP client (e.g., Inspector) to view exact JSON schemas.
list_all_templates
— List templates & template groups with simplified metadata.list_document_groups
— Browse your document groups and statuses.create_from_template
— Make a document or a group from a template/group.send_invite
— Email invites (documents or groups), ordered recipients supported.create_embedded_invite
— Embedded signing session without email delivery.create_embedded_sending
— Embedded “sending/management” experience.create_embedded_editor
— Embedded editor link to place/adjust fields.send_invite_from_template
— One-shot: create from template and invite.create_embedded_sending_from_template
— One-shot: template → embedded sending.create_embedded_editor_from_template
— One-shot: template → embedded editor.create_embedded_invite_from_template
— One-shot: template → embedded signing.get_invite_status
— Current invite status/steps for document or group.get_document_download_link
— Direct download link (merged output for groups).get_document
— Normalized document/group structure with field values.update_document_fields
— Prefill text fields in individual documents.
Tip: Start with
list_all_templates
→create_from_template
→create_embedded_*
/send_invite
, thenget_invite_status
andget_document_download_link
.
FAQ / tips
STDIO vs Docker? Prefer STDIO for local dev; inside Docker, use HTTP.
Sandbox vs production? Start with SignNow’s sandbox/dev credentials; production requires proper OAuth and persistent RSA private key.
Where do I see exact tool schemas? Use MCP Inspector or your client’s “tool details” view.
Where are examples? See
examples/
in this repo for starter integrations.
Examples
The examples/
directory contains working examples of how to integrate the SignNow MCP Server with popular AI agent frameworks:
LangChain - Integration with LangChain agents using
langchain-mcp-adapters
LlamaIndex - Integration with LlamaIndex agents using
llama-index-tools-mcp
SmolAgents - Integration with SmolAgents framework using native MCP support
Each example demonstrates how to:
Start the MCP server as a subprocess
Convert MCP tools to framework-specific tool formats
Create agents that can use SignNow functionality
Handle environment variable configuration
To run an example:
Useful resources
Sample apps
Explore ready-to-use sample apps to quickly test preparing, signing, and sending documents from your software using the SignNow API.
Try the sample apps.
API documentation
Find technical details on SignNow API requests, parameters, code examples, and possible errors. Learn more about the API functionality in detailed guides and use cases.
Read the API documentation.
GitHub Copilot extension
Develop eSignature integrations directly in GitHub using AI-powered code suggestions. Copilot recommends API calls and code snippets that align with SignNow API guidelines.
Get SignNow for GitHub Copilot.
License
MIT — see LICENSE.md.
About SignNow MCP Server — maintained by the SignNow team. Issues and contributions welcome via GitHub pull requests.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
MCP server for SignNow e-signature: templates, invites, embedded signing/editor, status & downloads.
Related MCP Servers
- AsecurityAlicenseAqualityFacilitates contract and template management for eSignatures, enabling users to create, send, update, and manage contracts and templates with customizable options through a user-friendly interface.Last updated -1329MIT License
- -securityAlicense-qualityGmail MCP Server by CDataLast updated -MIT License
- -securityAlicense-qualityThis read-only MCP Server allows you to connect to DocuSign data from Claude Desktop through CData JDBC Drivers. Free (beta) read/write servers available at https://www.cdata.com/solutions/mcpLast updated -3MIT License