Agent-first e-signature MCP server with offline PAdES signing and hash-chained audit.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Fully-offline e-signature CLI. The built-in PAdES signer (PKCS#7 in /ByteRange, self-issued cert) produces real, cryptographically verifiable signed PDFs with no signup and no third-party provider β or routes through Dropbox Sign / DocuSign / SignWell when you need an external trust anchor. Per-signer approval tokens (TTL-bounded, scoped to one email), hash-chained audit events, RFC 3161 timestamping, named profiles, a 19-tool MCP server, and a 20-route HTTP API.
The asymmetry is the architecture: an agent can drive every step except the actual signing gesture, which stays gated behind a human.
Part of the contract-ops CLI suite β optional. sign-cli works entirely on its own; it's also the signing + audit step of the contract-ops suite: template-vault-cli β draft-cli β nda-review-cli β docx2pdf-cli β sign-cli, with drift detection via compare-cli.
That single command runs the entire lifecycle β create (consent + email-verification gates on) β send β watch the gates block signing β verify email β capture consent β approve β sign β verify chain β export receipt β against the offline local provider, then deletes everything. No signup. No keys. ~5 seconds.
Live demo β β read-only, resets every 4 hours. Self-host: see
deploy/README.md.
| If you are⦠| Start here |
|---|---|
| A new user evaluating the tool | This README's Quick start, then Standard user journey |
| An operator wiring up a hosted provider | docs/setup/ β Dropbox / DocuSign / SignWell / embedded |
| An LLM agent driving the CLI | AGENTS.md β docs/agent-guide.md β docs/recipes/ |
| An auditor verifying a signed bundle | docs/reference/audit-chain.md, docs/reference/legal.md |
| A contributor | docs/reference/architecture.md, docs/regression-testing.md |
| Adding a new CLI to the suite | The build-a-CLI playbook β the conventions every suite CLI follows |
Concept deep-dives live in docs/reference/; task-oriented recipes in docs/recipes/.
Or download a standalone binary from Releases β ./sign-linux-x64 demo. See DISTRIBUTION.md for every install path.
--require-consent gates signing on a recorded intent-to-sign attestation + electronic-records consent (versioned canonical texts, hashed into the audit chain); --require-email-verification gates it on a mailbox-control code; signer record-identity logs how identity was checked out-of-band. No KYC data is collected β by design. See docs/reference/consent-and-identity.md.request send β refuses to double-send unless --force true; pair with --idempotency-key for safe retries.request from-template.sign pdf detect-signature-field + sign sign --auto-place). Detects AcroForm /Sig widgets and anchor text in English + French/EU conventions.sign pdf inspect β parses PAdES PKCS#7 from sign-cli or any other producer (Adobe, DocuSign, Dropbox Sign, SignWell). Returns signer CN/email, cert subject + issuer, validity window, fingerprint, trust label (self_signed_local / self_signed_other / ca_signed / unknown), and message-digest match.signer fetch-document and the MCP signer_fetch_document tool surface existingSignatures, so a signer can see what they're countersigning before they sign.sign document (chains the bundled docx2pdf-cli, auto-place, stamp, PAdES-seal, verify in one call against a scoped temp DB).--read-only true on both mcp serve and serve. Mutating tools/routes return FORBIDDEN_READ_ONLY.{{env:VAR}} references for shell-managed secrets). See docs/reference/profiles.md.request verify-signed-pdf recomputes the digest, extracts X.509 signer certs, supports --recipient <email> for a redacted single-signer view, and reports per-signer trust labels.Or fully offline:
For full provider-specific setup, see docs/setup/.
sign document chains: convert (via the bundled docx2pdf-cli) β detect signature field β stamp β PAdES-seal β verify chain. All intermediate state lives in a scoped temp DB.
19 tools, split read-only vs mutating. Backed by the same SignCliError envelopes you'd see at the CLI. The full discovery contract, wire-up snippets (Claude Desktop, Cursor), and read-only walkthrough are in AGENTS.md. Three resource shapes (request://<id> snapshot, .../document PDF blob, .../audit chain) and four agent-as-signer prompt templates (review_and_sign, policy_check, inbox_triage, verify_receipt) are also exposed.
Twenty routes under /v1/*, 1:1 parity with the MCP tool surface β same input shape, same path-traversal guards, same read-only gating. Bearer auth via --auth-token or SIGN_HTTP_AUTH_TOKEN. Responses are { ok, result } on success or the standard error envelope on failure.
For --provider local, an agent can act as a signer end-to-end without an email link. Set SIGN_LOCAL_AUTOCOMPLETE=false so the local provider holds at sent until each signer explicitly runs sign sign.
Factual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/sign-cli)<a href="https://allmcps.com/mcp/sign-cli"><img src="https://allmcps.com/api/badge/sign-cli?style=directory" alt="Sign Cli on AllMCPs" /></a>