Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Signwell MCP

by Bidsketchversion 0.3.8i★ 1iRuns on your computer
Registry nameio.github.Bidsketch/signwell-mcp

Install

Overview

Description from the maker (original English)

Send documents for e-signature, track signing, and manage templates in SignWell from any MCP client.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Docs, sheets & office work
  • You need to fill in: SIGNWELL_API_KEY

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 2 of 2 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • You fill in yourself: SIGNWELL_API_KEY

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "signwell": {
      "command": "npx",
      "args": [
        "-y",
        "@signwell/mcp"
      ],
      "env": {
        "SIGNWELL_API_KEY": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add signwell --env SIGNWELL_API_KEY=your-value -- npx -y @signwell/mcp

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "signwell": {
      "command": "npx",
      "args": [
        "-y",
        "@signwell/mcp"
      ],
      "env": {
        "SIGNWELL_API_KEY": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "signwell": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@signwell/mcp"
      ],
      "env": {
        "SIGNWELL_API_KEY": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • SIGNWELL_API_KEY secret required env
    SignWell API key with document access (Settings > API in your SignWell account).

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

Which apps can use it

Based on how this server connects and on each app’s own docs, checked Nov 10, 2026.

Run on your computer in

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast

All apps, with pros and cons →

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 10, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account Bidsketch, which owns the repo

  • ✓ Pass

    Still maintained

    Code last changed 19 days ago

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Docs, sheets & office worki

  • More stars than 73% of the other 3691 servers in this category
  • Published to the registry more recently than 63% of the other 3691 servers in this category
  • Basic checks equal to or better than 100% of the other 3691 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Signwell MCP safe?

It passed 2 of 2 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: SIGNWELL_API_KEY

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed 19 days ago, and the latest version (0.3.8) reached the registry 19 days ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.

What can I use instead?

In the same category: Puter MCP, Agent-Native Slides, Agent-Native Forms

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Puter MCP

Puter MCP enables AI tools to interact with Puter: manage files, websites, workers, and more

by HeyPuterWidely used★ 44.1KUpdated 5 months ago

Runs in the cloud✓ puter.com

Agent-Native Slides

Agent-Native Google Slides - generate and edit React presentations

by BuilderIOWidely used★ 7.7KUpdated 2 months ago

Runs in the cloud

Agent-Native Forms

Agent-Native form builder - create, edit, and manage forms

by BuilderIOWidely used★ 7.7KUpdated 2 months ago

Runs in the cloud

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

SignWell MCP Server

Model Context Protocol server that orchestrates SignWell's e-signature workflows.

Prerequisites

  • Node.js v18 or newer.
  • A SignWell API key with document access (SIGNWELL_API_KEY environment variable).
  • Optional overrides:
  • SIGNWELL_API_BASE_URL for non-production endpoints.
  • SIGNWELL_API_TIMEOUT_MS to tweak HTTP client timeouts (default 90000 ms; CLI flag --timeout on setup skips env prompts and writes this override).

Setup

Interactive Wizard (recommended)
  1. Install dependencies if you have not already:
   npm install
  1. Bundle the CLI so MCP clients point at the build output:
   npm run build
  1. Run the wizard and follow the prompts:
   node build/index.js setup
  • Stores your SignWell secrets in ~/.config/signwell-mcp/env on Linux, ~/Library/Application Support/SignWell/MCP/env on macOS, or %APPDATA%/SignWell/MCP/env on Windows with 0700/0600 permissions.
  • Automatically updates Claude Desktop, Claude Code, Cursor, and OpenCode configuration files (backups are captured before each write) so you do not have to hunt for platform paths.
  • Client targets:
  • Claude Code: ~/.claude.json at mcpServers.signwell
  • Claude Desktop: claude_desktop_config.json at mcpServers.signwell
  • Cursor: ~/.cursor/mcp.json at mcpServers.signwell
  • OpenCode: ~/.config/opencode/opencode.json at mcp.signwell (Windows: %USERPROFILE%\.config\opencode\opencode.json)
  • Uses each client's documented JSON wrapper and STDIO/local server shape so the server is visible after the client restarts.
  • If a previous Claude Code install wrote the stale ~/.claude/mcp.json servers.signwell entry, rerunning setup backs up that legacy file and removes only the stale SignWell entry after writing the correct ~/.claude.json config.
  • Use --print (or -p) to preview outputs without writing to disk, and --yes --api-key=... for non-interactive runs (CI, devcontainers, etc.).
  • Pass --clients=claude-desktop,cursor to limit which MCP clients the wizard configures; omit for "all". Use --timeout= only if you need a non-default HTTP timeout.
  • After bundling (npm run build) and publishing the package, end users can invoke the same wizard with npx @signwell/mcp setup. Installing globally also enables invoking signwell-mcp setup directly.
Manual exports

Prefer to manage env vars yourself? Export the required values before running the server:

export SIGNWELL_API_KEY="your_api_key"

export SIGNWELL_API_BASE_URL="https://www.signwell.com/api/v1" # optional

Installation (npm)

Once the package is published to npm (GitHub: Bidsketch/signwell-mcp):

  • Run the setup wizard without installing anything globally:
  npx @signwell/mcp setup
  • Install globally if you prefer a persistent binary:
  npm install -g @signwell/mcp

signwell-mcp setup

After configuration, start the MCP server via signwell-mcp (requires Node.js v18+).

The signwell-mcp.mcpb file is a separate Claude Desktop extension artifact. It uses the root manifest.json and should be rebuilt for releases after running npm run build.

Local Development Workflow

  1. Install dependencies: npm install
  2. Bundle the CLI entrypoint (required for MCP client configs): npm run build
  3. Configure credentials: node build/index.js setup (or npx @signwell/mcp setup once published)
  4. Start the MCP server locally: npm start (runs node build/index.js)
  5. Open another terminal to run tests and linters before committing:
   npm test

npm run typecheck npm run lint

  1. When using MCP inspector or other clients, point them at npm start (stdio).

Running the Server

  • Development entrypoint (stdio transport):
  SIGNWELL_API_KEY="$SIGNWELL_API_KEY" npm start

or run directly:

SIGNWELL_API_KEY="$SIGNWELL_API_KEY" node build/index.js

  • CLI helpers:
  • node build/index.js --help prints usage and env expectations.
  • node build/index.js --version prints the current build.
  • node build/index.js setup launches the setup wizard described above when working from source.
  • Once the package is bundled/published, npx @signwell/mcp setup runs the wizard and SIGNWELL_API_KEY=... npx @signwell/mcp starts the server via the packaged binary (global installs can call signwell-mcp ... directly).
MCP Inspector

Use the MCP inspector to exercise tools locally:

npx @modelcontextprotocol/inspector node build/index.js

Tests

Run the quality gates in order:

npm test

npm run typecheck npm run lint npm run format

Demo

Sample MCP inspector session (sanitized IDs):

  1. Create Draft
   Tool: document_create

Input: { "name": "Sales Agreement", "recipients": [{ "id": "1", "name": "Alice Example", "email": "alice@example.com" }], "files": [{ "name": "agreement.pdf", "file_url": "https://files.example.com/agreement.pdf" }] } Output: { "ok": true, "type": "document_create", "message": "Document draft created.", "data": { "id": "doc_123", "status": "draft" } }

  1. Send Draft
   Tool: document_send_draft

Input: { "document_id": "doc_123", "confirm_send": true } Output: { "ok": true, "type": "document_send_draft", "message": "Send request accepted.", "data": { "id": "doc_123", "status": "Sent" }, "warnings": ["Status may update asynchronously. If this response still shows Draft, call document_get after a few seconds; do not send again. Recipient send_email is an embedded-signing setting, not an email-delivery receipt."] }

  1. Check Status
   Tool: document_get

Input: { "document_id": "doc_123" } Output: { "ok": true, "type": "document_get", "message": "Fetched document status.", "data": { "id": "doc_123", "status": "completed", "recipients": [{ "email": "alice@example.com", "status": "signed" }] } }

  1. Completed PDF
   Tool: document_completed_pdf

Input: { "document_id": "doc_123" } Output: { "ok": true, "type": "document_completed_pdf", "data": { "pdf_url": "https://signwell-downloads.example.com/doc_123.pdf" } }

Privacy Policy

This section describes the data practices of the SignWell MCP Server.

Data Collection
  • The MCP server itself does not collect, transmit, or store any personal data or usage analytics.
  • Your SignWell API key is stored locally on your machine with restrictive file permissions (0600) in platform-specific secure locations:
  • macOS: ~/Library/Application Support/SignWell/MCP/env
  • Linux: ~/.config/signwell-mcp/env
  • Windows: %APPDATA%/SignWell/MCP/env
Usage & Storage
  • Files provided via file_store are held temporarily in memory with a 60-minute TTL and are cleared automatically.
  • All in-memory file data is also cleared on server restart.
  • No persistent data storage exists beyond the credential file created during setup.
Third-Party Sharing
  • The MCP server does not share data with any third parties.
  • All API communication goes directly between your machine and SignWell's servers (https://www.signwell.com/api/v1).
Telemetry & Analytics
  • The server does not collect, transmit, or store usage analytics or telemetry of any kind.
Data Retention
  • In-memory file storage is cleared on server restart or after the 60-minute TTL expires.
  • No persistent data is retained beyond the local credential configuration file.
Contact

For privacy inquiries, contact support@signwell.com or open an issue at github.com/Bidsketch/signwell-mcp/issues.

See also the hosted privacy policy at https://www.signwell.com/privacy/.

Resources

  • MCP resources: document://{id} and template://{id} expose read-only JSON snapshots that reuse the same normalization logic as the tools, so inspectors or other MCP clients can browse previously created assets quickly.

Attaching Files & Draft Safety

  • document_create and template_create_document always set draft: true, ensuring nothing is emailed until you intentionally call document_send_draft.
  • Supply files via the files array using either file_url (public URL or the link your MCP client provides when you @-attach a file in UIs like Claude Desktop), file_base64, or resource_uri. When a resource_uri is provided the MCP server automatically calls resources/read to pull the attachment bytes and forwards them to SignWell's /api/v1/documents/ endpoint.

Document Corrections and Signing Dates

  • Recipient names: pass name in each document_create recipient. Legacy first_name and last_name are combined when name is omitted. Set test_mode: true to create a non-binding test document without API billing.
  • Draft settings: document_send_draft accepts optional updates such as name, subject, message, expires_in, and reminders alongside confirm_send: true. Omitted settings are preserved. It cannot edit recipients, files, or fields, or save changes without sending.
  • Sent recipients: call document_get for recipient IDs, then document_update_recipients with document_id, confirm_update: true, and recipients: [{ "id": " ", "name": "Correct Name", "email": "signer@example.com" }]. Include both name and email, keeping the unchanged value. Only recipients who have not started signing on sent/viewed/pending/bounced documents can be changed. Non-embedded recipients receive a new notification email; embedded recipients follow their existing send_email setting.
  • Withdraw a document: document_delete with document_id and confirm_delete: true deletes the document and cancels signing in progress. Delete an incorrect request before creating a replacement to avoid two live requests.
  • Send status: a successful send returns “Send request accepted” and attempts one status refresh. If the refresh fails, the accepted send remains successful. Status may still lag; use document_get after a few seconds instead of resending. send_email is an embedded-signing option, not a delivery receipt.

For an automatically populated, locked signing date, use these existing SignWell text tags with text_tags: true:

{{signature:1:y}} {{autofill_date_signed:1:y}}

{{signature:2:y}} {{date:2:y::::::y}}

Both date forms lock the signing date. Plain {{date:1:y}} remains editable for dates the signer should choose. Text-tag parsing is asynchronous: inspect fields with document_get after processing. See SignWell's text-tag options, recipient updates, and update-and-send limitations.

Available Scripts

ScriptPurpose
npm startExecute the MCP server entrypoint over stdio (after npm run build).
npm testRun the test suite.
npm run typecheckType-check the project with tsc --noEmit.
npm run lintLint source and tests using Biome.
npm run formatApply repository formatting conventions via Biome.
npm run buildProduce an ESM bundle at build/index.js using esbuild.

Directory Layout

.

├── src/ # MCP server source (entrypoint + domain modules) │ └── setup/ # Interactive setup wizard for MCP client configuration ├── test/ # Test suites ├── build/ # Bundled output (ignored in releases) ├─

Only the beginning is shown; read the rest in the repo