SignNow MCP Server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ACCESS_TTL | No | OAuth access token time-to-live in seconds | 3600 |
| REFRESH_TTL | No | OAuth refresh token time-to-live in seconds | 2592000 |
| OAUTH_ISSUER | No | OAuth issuer URL for OAuth 2.0 mode | |
| OAUTH_JWK_KID | No | JSON Web Key ID for OAuth RSA key | |
| SIGNNOW_TOKEN | No | Optional direct API access token (not required for normal use) | |
| SIGNNOW_API_BASE | No | SignNow API base URL | https://api.signnow.com |
| SIGNNOW_APP_BASE | No | SignNow app base URL | https://app.signnow.com |
| SIGNNOW_PASSWORD | No | Your SignNow password for username/password authentication | |
| ALLOWED_REDIRECTS | No | Comma-separated list of allowed redirect URIs for OAuth | |
| SIGNNOW_CLIENT_ID | No | OAuth 2.0 client ID for SignNow API | |
| SIGNNOW_USER_EMAIL | No | Your SignNow email address for username/password authentication | |
| OAUTH_RSA_PRIVATE_PEM | No | RSA private key in PEM format for OAuth token signing (critical in production) | |
| SIGNNOW_CLIENT_SECRET | No | OAuth 2.0 client secret for SignNow API | |
| SIGNNOW_API_BASIC_TOKEN | No | Base64 basic token for SignNow API authentication |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| send_inviteA | Send invite to sign a document, document group, template, or template group. Supports both field invites (documents with roles/fields) and freeform invites (documents without fields). Document type is auto-detected — omit 'role' for freeform documents. For templates and template groups, automatically creates a document/group first, then sends the invite. Set self_sign=True (and omit orders) to sign the document yourself — the tool resolves the current user's email and populates SendInviteResponse.link with a direct signing link. The 'link' field is also populated when a freeform recipient's email matches the authenticated user's primary email. |
| create_embedded_inviteA | Create embedded invite for signing a document, document group, template, or template group. For templates and template groups, automatically creates a document/group first, then creates the embedded invite. |
| create_embedded_sendingA | Create embedded sending for managing, editing, or sending invites for a document, document group, template, or template group. For templates and template groups, automatically creates a document/group first, then creates the embedded sending. In MCP Apps-compatible clients the sender UI renders inline — no tab switch needed. |
| create_embedded_editorA | Create embedded editor for editing a document, document group, template, or template group. For templates and template groups, automatically creates a document/group first, then creates the embedded editor. |
| get_documentA | Get full document, template, template group or document group information with field values |
| send_invite_from_templateA | Create a document or document group from a template or template group, then send a signing invite immediately. This tool is ONLY for templates and template groups. |
| create_embedded_sending_from_templateA | Create a document or document group from a template or template group, then create an embedded sending link immediately. This tool is ONLY for templates and template groups. |
| create_embedded_editor_from_templateA | Create a document or document group from a template or template group, then create an embedded editor link immediately. This tool is ONLY for templates and template groups. |
| create_embedded_invite_from_templateB | Create a document or document group from a template or template group, then create an embedded signing invite immediately. This tool is ONLY for templates and template groups. |
| list_all_templatesA | Get simplified list of all templates and template groups with basic information |
| list_documentsA | Get simplified list of documents and document groups with basic information. Returns both documents and document groups in a unified format. Use this tool to fetch lists of documents by status, e.g. documents waiting for your signature (waiting-for-me) or expired documents (expired_filter=expired). |
| create_templateA | Convert an existing document or document group into a reusable template |
| create_from_templateB | Create a new document or document group from an existing template or template group |
| get_invite_statusA | Get invite status for a document or document group. Supports field invites and freeform invites (field invite is preferred when both exist). For freeform document groups, uses the group documents list so signature_requests include signer emails when the API provides them. Returns invite_mode 'field' or 'freeform'. |
| get_document_download_linkA | Get download link for a document or document group |
| get_signing_linkA | Get signing link for a document or document group |
| update_document_fieldsA | Update text fields in multiple documents (only individual documents, not document groups) |
| upload_documentA | Upload a document to SignNow from a local file path, public URL, or MCP resource attachment. Supported file types: PDF, DOC, DOCX, PNG, JPG, JPEG. Max file size: 40 MB. On success the response includes a 'next_steps' array (prepare invite / send for signing / self-sign) and an 'agent_guidance' string — present those options to the user and wait for them to choose before calling any follow-up tool. NOTE: For URL uploads, the returned filename is locally inferred and may differ from how SignNow names the document. |
| send_invite_reminderA | Send a signing reminder to pending signers on a document or document group. |
| cancel_inviteA | Cancel all active (pending) signing invites on a document or document group. |
| update_invite_recipientA | Replace the signing recipient on a pending field invite for a document or document group. Finds the pending invite for the current signer and replaces it with a new signer. For documents: deletes the old invite, creates a replacement, and triggers sending. For document groups: updates the pending step(s) with the new signer information. Only field invites are supported — freeform and embedded invites cannot be updated. |
| view_documentA | Generate a read-only embedded view link for a document or document group. To find an entity by name, first call list_documents or list_templates to search for it, then pass the returned entity_id here. In MCP Apps-compatible clients the document renders inline — no tab switch needed. In other hosts, the returned view_link is presented as a clickable URL. |
| list_contactsA | Search CRM contacts by name, email, or phone. Use this tool before send_invite to resolve a recipient's email address by their name. |
| rename_entityA | Rename a document, document group, template, or template group. |
| signnow_skillsA | Query the bundled SignNow skill library. Omit skill_name to list all skills with descriptions. Provide skill_name to read the full skill body. Load signnow101 before performing any SignNow action — it contains required workflow rules including when to preview before sending. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| document_viewer_app | MCP Apps inline viewer for SignNow documents. Returns an HTML page that renders an embedded document view inside a sandboxed iframe. |
| embedded_sender_app | MCP Apps inline UI for SignNow Embedded Sender. Returns an HTML page that renders the embedded sender inside a sandboxed iframe. |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/signnow/sn-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server