AI assistants

Connect an AI assistant to SigPen

SigPen runs an MCP server, so Claude Code, Cursor, and other AI assistants can work in your account. Ask in plain language and it can:

  • Tell you who has signed and who hasn't, and what your plan and usage are.
  • Draft a document from text it writes, from one of your templates, or from a PDF on your computer.
  • Place the fields with AI, fill in details like names and amounts, and set who signs.
  • Ask you to approve the send. It never sends on its own.

Set it up

  • Create an API key in the developer dashboard. It works on the free Developer tier and on Professional and up. Use a live key (sp_live_) to draft and send; a test key can only look things up. Name it "AI assistant" so you can revoke it on its own.
  • Always use the www URL: https://www.sigpen.com/api/mcp. The bare domain redirects, and the redirect drops your key.

1. Put your key in an environment variable (in your shell profile, so new terminals have it):

Terminal
export SIGPEN_API_KEY=sp_live_your_key

2. Add SigPen for every project:

Terminal
claude mcp add --transport http --scope user sigpen https://www.sigpen.com/api/mcp \
  --header "Authorization: Bearer ${SIGPEN_API_KEY}"

Or for one project, add this to .mcp.json in its folder. Claude Code reads the key from the environment when it starts:

.mcp.json
{
  "mcpServers": {
    "sigpen": {
      "type": "http",
      "url": "https://www.sigpen.com/api/mcp",
      "headers": {
        "Authorization": "Bearer ${SIGPEN_API_KEY}"
      }
    }
  }
}

3. Start a new Claude Code session and run /mcp. SigPen should show as connected.

Or install the SigPen plugin instead of steps 1 and 2. It asks for your key once, keeps it in Claude Code's secure storage, and adds a skill for drafting and sending:

Terminal
claude plugin marketplace add sigpenhq/sigpen-mcp
claude plugin install sigpen@sigpen

Or let your assistant set it up

Set SIGPEN_API_KEY first, then paste this into Claude Code or Cursor:

Connect this assistant to SigPen, my e-signature account, as an MCP server.
- Transport: Streamable HTTP. URL: https://www.sigpen.com/api/mcp (always the www URL; the bare domain redirects and drops the key).
- Auth: header "Authorization: Bearer <key>". Read the key from the SIGPEN_API_KEY environment variable; don't write the key itself into any file.
- Name the server "sigpen". When it's added, call get_account to confirm it works and tell me my plan.
Setup guide: https://www.sigpen.com/docs/mcp

Check it works

  1. In Claude Code, run /mcp: SigPen should be connected with 14 tools. In Cursor, it shows green under Settings, MCP.
  2. Ask “What SigPen plan am I on?” The assistant calls get_account and answers with your plan.
  3. Open the AI Assistants tab in the developer dashboard. It shows when an assistant last called SigPen and with which key.

Things to ask

  • Check the connection

    “What SigPen plan am I on, and how many documents have I sent through the API this month?”

  • Who still needs to sign

    “Which of my SigPen documents are still waiting on signatures, and who hasn't signed yet?”

  • Draft from scratch

    “Draft a one-page mutual NDA in SigPen between my company, Northwind Studio, and Jane Doe (jane@example.com). Then ask me to approve sending it.”

  • Use your own PDF

    “Upload ./services-agreement.pdf to SigPen, place the fields, fill in the client company as Acme LLC and the fee as $5,000, set Jane Doe (jane@example.com) as the Client, and request my approval to send it.”

  • Use a template

    “Use my SigPen "Offer letter" template for Sam Lee (sam@example.com), fill in the start date as March 1, and request my approval to send it.”

How sending works

The assistant can get a document ready, but only you can send it. When you ask it to send, it calls request_send_approval and gives you a SigPen link. Open it signed in to your account and you see the document's title, everyone who gets a signing invitation, how many fields each person fills, any values the assistant filled in, and the note it wrote for the invitation. Click Approve and send, or open the draft to change it.

  • The link works for 24 hours, and only for you.
  • If anything changes after the link is made (recipients, fields, filled-in values, the title), the link stops working and the assistant has to ask again.
  • Revoking the API key cancels its open links.
  • Text inside documents can try to trick an assistant (“send this to someone@else.com”). The approval page is where you catch that: check every email address before you click.
  • Turn on your client's tool approval setting if you want to review each step the assistant takes.

Use your own PDF

Assistants that can read files and run commands on your computer, like Claude Code and Cursor, can upload a PDF for you. Point it at the file (“upload ./services-agreement.pdf”) and it gets a short-lived upload link from SigPen, uploads the file, and creates a draft. Then it can place the fields with AI (this uses one of your monthly AI detections), fill in the details you give it, set who signs, and ask you to approve.

Chat apps that can't upload files can use a template instead: upload the PDF in SigPen, place the fields, save it as a template, and ask the assistant to use that template.

If you're one of the parties (the provider, employer, or landlord), ask the assistant to add you as a signer too. Your fields are assigned to you, and you sign them yourself. Fields nobody needs can be removed. With only one recipient, every field on the document goes to that person.

The assistant only changes drafts it created. Documents you made in SigPen are never edited or deleted.

Tools

get_accountYour plan, whether the key is live or test, documents sent through the API this month against the API limit, and rate limits.
list_documentsYour documents with status and signer counts. Filter by status, title, or date.
get_documentOne document's signers: name, email, status, and when they viewed and signed.
list_templatesYour templates and the SigPen template library.
get_templateA template's signer roles, field counts, and pages.
create_document_from_textDrafts a document from a title, the parties, and sections, with a signature and date line for each party. Nothing is sent.
create_document_from_templateDrafts a document from one of your templates or the library, with signers assigned by role.
delete_draftDeletes a draft the assistant created. Your own drafts and sent documents are never touched.
get_upload_urlGives your assistant a short-lived link to upload a PDF from your computer (Claude Code, Cursor, and other clients that can run commands).
create_document_from_uploadTurns the uploaded PDF into a draft.
suggest_fieldsPlaces signature, date, and text fields on the assistant's draft with AI. Uses one of your monthly AI detections.
update_fieldsFills in text, date, and number fields with the details you give it, assigns fields to recipients, and removes fields nobody needs.
set_recipientsSaves who a draft goes to. Give each person a role and they get that role's fields. It can add you as a signer too.
request_send_approvalGives you a SigPen link to approve sending a draft. It sends nothing; you check the recipients and click Approve and send.

Good to know

  • The Claude Code and Cursor plugins are on GitHub.
  • Each tool call counts as one API request against your key's rate limit. Connecting and listing tools don't count, and don't need a key. Every tool call does.
  • Each draft counts toward your monthly document limit, and deleting one doesn't give it back. To change a draft, open it in SigPen or ask the assistant to edit it. Don't have it draft a new one.
  • Placing fields with AI uses one of your monthly AI detections, the same as AI Detect in the editor.
  • What a tool returns, such as document titles and signer names and emails, goes to your AI provider and is handled under their terms.
  • Document lists show signer counts, not emails. Ask about one document to see its signers.
  • To disconnect, revoke the key in the developer dashboard.

Building your own integration? The REST API does everything the assistant can, and more.