Skip the install. Get this working in under 2 minutes.
Start a free trial on cloud.anythingmcp.com, add the DocuSign in one click, then point your AI client (Claude, ChatGPT, Copilot or Cursor) at the generated MCP endpoint. No Docker, no git clone, zero engineering experience required.
Summary
Let your AI work with DocuSign eSignature: find envelopes and check who has signed, read recipients, documents, form data and the audit trail, send documents or templates for signature, resend or void envelopes, and browse templates. Demo or production, signed in as a DocuSign user.
Try asking
Example prompts for DocuSign
Click any prompt to copy it. Paste into Claude, ChatGPT, Cursor, Gemini, Copilot or OpenClaw to run it against this connector.
Claude is AI and can make mistakes. Please double-check responses.
💡 No install? Use cloud.anythingmcp.com directly. Sign in, click Connectors → DocuSign, paste your credentials, mint an MCP API key and you're done. No Docker, no
git clone, no local server.
DocuSign + Gemini
Let your AI work with DocuSign eSignature: find envelopes and check who has signed, read recipients, documents, form data and the audit trail, send documents or templates for signature, resend or void envelopes, and browse templates. Demo or production, signed in as a DocuSign user.
Prerequisites
See the full setup instructions baked into the connector (visible in the in-app store when you select the connector). The required environment variables for this connector are:
DOCUSIGN_CLIENT_ID, DOCUSIGN_CLIENT_SECRET, DOCUSIGN_AUTH_URL, DOCUSIGN_BASE_URI, DOCUSIGN_ACCOUNT_ID
Step 1 — Get credentials
- Get a free developer (demo) account at docusign.com/developers/sandbox, or use your production account. Open Apps and Keys: admindemo.docusign.com/apps-and-keys for demo, admin.docusign.com/apps-and-keys for production (or Settings → Integrations → Apps and Keys).
- Click Add App and Integration Key and name it, for example "AnythingMCP". Under User Application → Authentication method, answer "Is your application able to securely store a client secret?" with Yes (Authorization Code Grant).
- Click Add Secret Key and copy it right away: it is shown only once. Paste it into
DOCUSIGN_CLIENT_SECRET, and the Integration Key (a GUID) intoDOCUSIGN_CLIENT_ID. - Under Redirect URIs, add
https://cloud.anythingmcp.com/api/mcp-oauth/callback. If you host AnythingMCP yourself, enterhttps://your-anythingmcp-host/api/mcp-oauth/callbackinstead. The URI must match exactly. Save; changes can take up to 5 minutes. - On the same page, under My Account Information, copy the API Account ID (a GUID, not the short account number) into
DOCUSIGN_ACCOUNT_IDand the Account's Base URI (for examplehttps://demo.docusign.netorhttps://eu.docusign.net, without/restapiand without a trailing slash) intoDOCUSIGN_BASE_URI. - Set
DOCUSIGN_AUTH_URLtohttps://account-d.docusign.comfor a demo account orhttps://account.docusign.comfor production. - Install the connector, click Authorize with Provider on the connector page and sign in to DocuSign.
- Start with
docusign_get_user_info: it lists every account this user can reach, with itsaccount_idandbase_uri. If they differ fromDOCUSIGN_ACCOUNT_IDorDOCUSIGN_BASE_URI, correct the variables. The base URI belongs to the account and can change when DocuSign moves an account.
Going live: a new integration key works only in demo. For production, choose Actions → Start Go-Live Review on the demo Apps and Keys page. Then, in your production account, add a new secret key (into DOCUSIGN_CLIENT_SECRET) and the redirect URI again, because they are not copied over, and switch DOCUSIGN_AUTH_URL, DOCUSIGN_BASE_URI and DOCUSIGN_ACCOUNT_ID to the production values.
Staying signed in: the connector asks for the scopes signature and extended. Access tokens last 8 hours and are renewed automatically; each renewal issues a new refresh token that is valid for 30 days, so the connector stays signed in as long as it is used at least once a month. After a longer pause, or if the sign-in was revoked, click Authorize with Provider again.
Permissions and read-only setup: the connector works as the DocuSign user who signed in, within that user's permissions. For a read-only setup, switch off docusign_create_envelope_from_template, docusign_create_envelope_with_document, docusign_send_draft_envelope, docusign_resend_envelope and docusign_void_envelope.
Switched off at install: docusign_move_envelope_to_trash, which moves envelopes to the Deleted folder. A draft is discarded, but an envelope that was already sent is voided. It stays recoverable for 24 hours. Turn it on only if the AI should clean up envelopes.
Sending is real: a sent envelope emails every recipient a signing request in your company's name. docusign_create_envelope_from_template and docusign_create_envelope_with_document create a draft unless they are told to send, while docusign_send_draft_envelope, docusign_resend_envelope and docusign_void_envelope act on real recipients. The AI tells you who will receive what and waits for your yes. Only envelopes that are out for signature can be voided, and voiding cannot be undone.
Documents and templates: documents pass through the conversation, so keep them small (a whole request is limited to about 35 MB). docusign_download_document returns one document, all documents as one PDF, or the completion certificate; files above about 1.5 MB come back truncated, and DocuSign allows only a few downloads of the same document per hour. docusign_get_form_data needs the account setting that lets senders download form data. To send from a template, every role in it needs a name and an email address.
Limits: 3,000 API calls per hour per account, shared by all integrations, and bursts of up to 500 calls in 30 seconds (200 in demo). DocuSign asks integrations not to check the same envelope more than once every 15 minutes.
Common errors: 401 AUTHORIZATION_INVALID_TOKEN or USER_AUTHENTICATION_FAILED means the sign-in expired or was revoked, or DOCUSIGN_AUTH_URL does not match the environment (account-d for demo, account for production): check it, then click Authorize with Provider again. 400 USER_LACKS_MEMBERSHIP or 404 means DOCUSIGN_ACCOUNT_ID or DOCUSIGN_BASE_URI does not belong to the signed-in user: compare them with docusign_get_user_info. 400 TEMPLATE_ROLE_NAME_MISMATCH means a role name that is not in the template, INVALID_EMAIL_ADDRESS_FOR_RECIPIENT an invalid recipient email, and ENVELOPE_CANNOT_VOID_INVALID_STATE an envelope that is not out for signature. 429 or HOURLY_APIINVOCATION_LIMIT_EXCEEDED means the hourly limit was reached: wait for the next hour.
The connector does not handle embedded signing or sending views, PowerForms, bulk send or Connect webhooks, and it does not edit templates, users or account settings.
Step 2 — Install the adapter
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
Step 3 — Add the connector in Gemini
Your server URL: in AnythingMCP, open MCP Servers → the server this connector is on, and copy its URL (
https://cloud.anythingmcp.com/mcp/…). Use it wherever this guide showsYOUR_SERVER_ID.
Gemini CLI reads MCP servers from ~/.gemini/settings.json (on Windows %USERPROFILE%\.gemini\settings.json). Add:
{
"mcpServers": {
"anythingmcp": {
"httpUrl": "https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID",
"headers": { "X-API-Key": "YOUR_MCP_API_KEY" }
}
}
}
- Create an MCP API key in AnythingMCP under MCP Servers → your server → API keys, and paste it in place of
YOUR_MCP_API_KEY. - Save the file and restart
gemini. - Run
/mcpinside Gemini CLI (orgemini mcp listin your shell):anythingmcpshould show as connected. - Start prompting: Gemini CLI can now call the
DocuSigntools.
Available tools
| Tool | What it does |
|---|---|
docusign_get_user_info | Read who signed in and which DocuSign accounts they can use: name, email, and for each account account_id, account_name, is_default and… |
docusign_get_account | Read the connected account: name, plan, billing period, envelopes sent this period and allowed, and the account's base URL |
docusign_list_envelopes | List envelopes changed since from_date, with id, status, subject, sender, dates and (optionally) recipients |
docusign_get_envelope | Read one envelope: status, subject, sender, sent, delivered and completed times, void reason, and with include its recipients, documents… |
docusign_create_envelope_from_template | Create an envelope from a template, filling each template role with a person |
docusign_create_envelope_with_document | Create an envelope from documents passed as base64 and the recipients who must sign them |
docusign_send_draft_envelope | Send a draft envelope: DocuSign emails the signing request to its recipients |
docusign_void_envelope | Void an envelope that is out for signature (sent or delivered): it can no longer be signed and every recipient is told why |
docusign_resend_envelope | Email the signing request again to the recipients who have not finished yet |
docusign_move_envelope_to_trash | Move envelopes to the Deleted folder (recycle bin) |
docusign_list_recipients | List an envelope's recipients by type (signers, carbonCopies, ...) with routing order, status (created, sent, delivered, completed… |
docusign_list_envelope_documents | List an envelope's documents: documentId, name, type, page count and order |
docusign_download_document | Download one document of an envelope as base64 text (documentBase64): a documentId from docusign_list_envelope_documents, "combined" for… |
docusign_list_audit_events | Read an envelope's audit trail: each event (created, sent, viewed, signed, voided, ...) with user, time, client IP and status |
docusign_get_form_data | Read the values entered in an envelope's fields, per recipient |
docusign_list_templates | List templates with id, name, description, folder, owner, last used and modified dates; optionally with their recipients (roles) and… |
docusign_get_template | Read one template: subject, message, documents and recipients with their role names (needed for docusign_create_envelope_from_template)… |
Example prompts
- "Which envelopes sent in the last 30 days are still waiting for signatures, and who hasn't signed yet?"
- "Show me the audit trail of the Acme Ltd service agreement: when was it opened and when was it signed?"
- "What did the signer enter in the fields of the Northwind supplier onboarding form?"
- "Prepare a draft from our Mutual NDA template for Jane Miller ([email protected]) and show me who gets what before anything is sent."
FAQ
Where does Gemini CLI look for MCP servers? In ~/.gemini/settings.json for your user, or in .gemini/settings.json inside a project. gemini mcp list shows each server and whether it connects.
Next steps
Was this guide helpful?