cancelWorkflowInstance
ChatGPTCancel a running workflow instance
createEnvelope
ChatGPTCreates a new Docusign envelope from an EXISTING Docusign template or from documents provided via a remote URL. There are two ways to create an envelope: (A) TEMPLATE-BASED: Call getTemplates first and confirm the exact templateId with the user. (B) REMOTE URL DOCUMENT: Provide documents with a remoteUrl pointing to any publicly accessible HTTP/HTTPS URL that returns raw file bytes. Each document requires documentId, name, and remoteUrl. Optionally include fileExtension only if you are certain of the format — otherwise omit it and let Docusign auto-detect. The URL must return file content directly (not an HTML viewer page). Convert share links to direct-download URLs where needed. Max 25 MB per document. CRITICAL CONSTRAINTS: (1) For template-based envelopes, NEVER call this tool unless the user has explicitly identified a specific template by name or ID. (2) NEVER auto-select, guess, or substitute a "similar" template — if no template is confirmed, ask the user to choose. (3) DO NOT generate documentBase64 content — this tool does not accept base64 file uploads. (4) Recipients and tabs are optional when using templateId (the template may already define them). (5) When using remoteUrl documents, recipients with at least one signer are required.
createEnvelopeWithDocuments
ChatGPTLaunch the Docusign upload widget so the user can select one or more local files, add recipients, customize the email subject and message, place signature fields, and send for signature — all within the widget UI. CALL THIS TOOL ONLY when the user explicitly wants to upload local files to create a brand-new envelope from scratch. MUST NOT call this tool when: - An envelopeId already exists from a previous step and the user is asking about, continuing, modifying, or acting on that existing envelope. - You want to retrieve, refresh, verify, restore, or re-establish envelope context. - You are trying to resume a previously launched upload flow. Re-invoking this tool resets and relaunches the upload widget from scratch — it does not resume, inspect, or verify an existing envelope. Exception: if the user explicitly asks to create a completely new envelope separate from the existing one, it is correct to call this tool. For existing envelopes, use the known envelopeId directly with the specific tool for the information requested: - status/timeline/lifecycle → getEnvelope (Note: getEnvelope does NOT return documents or recipients) - documents/attachments → listEnvelopeDocuments - recipients/signers/routing order → listRecipients - other queries → the corresponding envelope tool If the user query is vague or ambiguous, ask the user to clarify what specific envelope details they need. Prerequisites (for a new upload): 1. Call resolveEnvelopeSendMethod with intent: 'documents' first — do not call this tool directly, even if the user's phrasing closely matches the tool name. 2. Obtain the user's accountId via #getUserInfo before calling this tool. 3. Do NOT ask the user for recipient details, email subject, message, or other envelope content before calling. The widget collects all of that interactively. If the user provided a URL instead of a local file, follow the URL path returned by resolveEnvelopeSendMethod. After the widget launches: As soon as an envelopeId is available (sent automatically by the widget as it progresses), preserve it and use that ID directly for all subsequent operations on that envelope. You do NOT need to invoke this tool again before calling another envelope tool. If the user is referring to an existing envelope but its envelopeId is not available, retrieve or identify it using the appropriate envelope search/list tool. Do not relaunch this widget to recover context. For questions about the envelope's current Docusign server-side state, use the appropriate envelope read tool with its envelopeId (getEnvelope for status, listEnvelopeDocuments for documents, listRecipients for recipients). If the user query is vague, ask what specific information is needed.
deleteEnvelopeDocument
ChatGPTRemoves a document from an existing draft envelope by document ID.
getAccount
ChatGPTRetrieve account information for a specific eSign account.
getAgreementDetails
ChatGPTUse this tool to retrieve detailed information about a specific agreement
getAgreementFilterSkill
ChatGPTREQUIRED BEFORE A FILTERED getAllAgreements CALL: Call this skill before constructing the filter. Contains the complete OData filter syntax, all accepted field names, enum values with exact casing, quoting rules, common mistakes, and copy-paste templates for every pattern. Using this skill produces a correct filter on the first attempt without retries.
getAllAgreements
ChatGPTThis tool retrieves a list of all agreements associated with a Docusign account
getClmWorkflowDefinitions
ChatGPTRetrieve workflow definitions for a CLM account. Returns definition uid, name, createdDate, and updatedDate. Returns at most 20 definitions per call. When pagination.hasMore is true, call this tool again passing pagination.nextCursor as cursor to get the next page, and repeat until hasMore is false. The cursor preserves the original name filter and sort, so do not rebuild the query by hand and do not re-send name, limit, offset or sort alongside a cursor — they are ignored. Only if hasMore is true while nextCursor is null, page manually by passing pagination.nextOffset as offset. An empty result means no definition matched OR the upstream CLM service was unavailable — CLM does not distinguish the two — so report it as "none found" rather than asserting the account has no workflows. This tool is for CLM workflows ONLY. If the user intent is known to be Maestro, you MUST NOT call this tool — use the Maestro workflow tools instead. A workflow can be of type CLM or Maestro. If the type is not known, clarify with the user before proceeding. This tool is ONLY for CLM workflows — if the user intends to action on Maestro, use the Maestro tools instead. If the user does not specify whether they mean CLM or Maestro workflows, you MUST ask the user to clarify before calling any workflow tool.
getDraftSenderView
ChatGPTReturns a one-time URL for the Docusign embedded sender view of a draft envelope. When opened in a browser, the sender can add signature fields, place tabs, and send the envelope.
getEnvelope
ChatGPTGets the status of a single envelope. Retrieves the overall status and information for the specified envelope from Docusign eSign REST API.
getEnvelopeVsAgreementSkill
ChatGPTREQUIRED PRE-QUERY SKILL: Call this once before getAllAgreements or getEnvelopes. It identifies whether the request needs Agreement Manager records, eSign envelope transactions, or separate results from both systems.
getEnvelopes
ChatGPTSearch for specific sets of envelopes by using search filters. Retrieve envelope status, documents, and metadata from Docusign eSign REST API Start date for envelope search in ISO 8601 format (YYYY-MM-DD). At least one of from_date, envelope_ids, or transaction_ids must be provided. Pause and ask the user from which date they would like to search. Only proceed with a 30-day look-back period if the user does not respond.
getTemplates
ChatGPTRetrieves the list of templates for the specified account with comprehensive filtering options including date ranges, folder types, search text, and sharing settings.
getUploadConfig
ChatGPTReturns upload configuration for the widget: the upload strategy and strategy-specific credentials. Widget-internal use only.
getUser
ChatGPTRetrieve detailed information for a specific eSign user within an account.
getUserInfo
ChatGPTProvides information about the currently authenticated Docusign user - such as profile details, associated accounts, and API base URIs - to establish user and account context for subsequent API operations.
getUsers
ChatGPTRetrieve a list of eSign users for an account with optional filtering.
getWorkflowInstance
ChatGPTRetrieve details of a specific workflow instance
getWorkflowInstancesList
ChatGPTRetrieve all workflow instances for a specific workflow
getWorkflowTriggerRequirements
ChatGPTRetrieve trigger requirements for a specific Maestro workflow
getWorkflowsList
ChatGPTRetrieve a list of available Maestro workflows
listEnvelopeDocuments
ChatGPTRetrieves a list of documents associated with the specified envelope. Use this tool with include_tabs=true when retrieving document/sender prefill tabs for an envelope.
listRecipients
ChatGPTGets the status of recipients for an envelope. Retrieves the status of all recipients in a single envelope and identifies the current recipient in the routing list. This method can also be used to retrieve the tab values.
logWidgetError
ChatGPTReceives error and telemetry reports from MCP widgets and logs them server-side for observability.
pauseNewWorkflowInstances
ChatGPTPause new workflow instances from being created
resolveEnvelopeSendMethod
ChatGPTReturns step-by-step instructions for sending a Docusign envelope for signature. THIS TOOL DOES NOT CREATE OR SEND ANYTHING — it returns guidance. CALL THIS FIRST for any request to send something for signature, upload a document (local file or URL), or determine whether to use a template or document. Set intent to: - template (user mentions using a Docusign template) - documents (user wants to upload or provide their own file) - mixed (both — not yet supported; you'll get a redirect) - unknown (ambiguous or unclear request) For template envelopes, the returned instructions field contains a mandatory 9-step orchestration procedure. Skipping these steps (particularly steps 1–3: document discovery, recipient discovery, tab filtering) will cause envelope creation to fail or produce malformed envelopes. For document envelopes (intent: documents), the returned instructions cover two sub-paths: - Local file: user has a file on their machine → createEnvelopeWithDocuments (widget) - URL-based: user has or provides a URL to a document → createEnvelope with remoteUrl Follow the instructions field to determine which path applies.
resumeWorkflow
ChatGPTResume a paused workflow to allow new instances
sendReminder
ChatGPTSends reminder notifications to all pending recipients in a Docusign envelope who need to sign or take action. Only remote (email-based) recipients receive reminders; embedded signers (with clientUserId) are silently skipped. Before calling, use listRecipients to check if any pending recipients are embedded and inform the user accordingly. Optionally override the email subject and body before sending reminders.
startClmWorkflow
ChatGPTStart a new CLM workflow instance by providing the workflow definition name. The Name must exactly match a workflow definition configured in the CLM designer. Optionally pass XML parameters (Params) or documents (workflowDocuments) required by the workflow. Note: workflowParams and workflowDocuments are mutually exclusive — if both are provided, only workflowParams is used. DOCUMENT RESOLUTION: If the user does not provide a full href, you MUST automatically resolve it without asking: Path A (user provides a document/file name): 1) call getAllAgreements with the file name to find matching agreements. If no results are found, retry with status set to PENDING. 2) If multiple agreements match, present the list to the user and ask them to select the correct one before proceeding. 3) call getAgreementDetails with the agreementId to retrieve the document _links/href, 4) use that href in workflowDocuments. Path B (user provides an agreementId): 1) call getAgreementDetails with the agreementId to retrieve the document _links/href, 2) use that href in workflowDocuments. Do NOT ask the user for the href — resolve it yourself. A workflow can be of type CLM or Maestro. If the type is not known, clarify with the user before proceeding. This tool is ONLY for CLM workflows — if the user intends to action on Maestro, use the Maestro tools instead. If the user does not specify whether they mean CLM or Maestro workflows, you MUST ask the user to clarify before calling any workflow tool.
stopClmWorkflow
ChatGPTStop (abort) a pending or running CLM workflow instance by providing its workflow instance ID. In case more than one workflow is running always clarify the instance ID to stop.Only instances where IsCompleted is false can be stopped. This permanently aborts the in-progress instance and cannot be undone. Requires the spring_write OAuth scope and a user assigned the Super Admin account role. The workflowInstanceId is the uid segment of the href returned when the workflow was started. A workflow can be of type CLM or Maestro. If the type is not known, clarify with the user before proceeding. This tool is ONLY for CLM workflows — if the user intends to action on Maestro, use the Maestro tools instead. If the user does not specify whether they mean CLM or Maestro workflows, you MUST ask the user to clarify before calling any workflow tool.
triggerWorkflow
ChatGPTTrigger a new instance of a Maestro workflow
updateEnvelope
ChatGPTUpdates an existing Docusign envelope. Supports sending draft envelopes, voiding envelopes, modifying email content, purge operations, and workflow management.
updateEnvelopeDocument
ChatGPTAdds or updates a document on an existing draft envelope. Used by the upload-document widget to attach files one at a time to an envelope that was already created in draft status. Accepts base64-encoded file content. Uploads one document per call for fault-tolerance — if one file fails, others can still succeed.
updateEnvelopeRecipients
ChatGPTAdds, updates, or removes recipients on an existing envelope. At least one of recipientsToAdd, recipientsToUpdate, or recipientsToRemove must be provided. Operations are performed sequentially: add, then update, then remove. In case of recipient updates, only recipientIds are returned; if the user wants to check the updated values they can use the listRecipients tool.
updateEnvelopeTabs
ChatGPTUpdates tabs for a document or recipient in an envelope. Provide documentId to update document-level prefill tabs, or recipientId to update recipient-level tabs. Exactly one of documentId or recipientId must be provided. IMPORTANT: The tabs field is mandatory and must not be empty — at least one tab must be provided. Always use tabId whenever possible to identify the specific tab to update. For prefilled tabs (within the prefillTabs object), you MUST ask the user to provide the necessary input values before updating.
cancelWorkflowInstance
ClaudecreateEnvelope
ClaudegetAccount
ClaudegetAgreementDetails
ClaudegetAllAgreements
ClaudegetEnvelope
ClaudegetEnvelopes
ClaudegetTemplates
ClaudegetUser
ClaudegetUserInfo
ClaudegetUsers
ClaudegetWorkflowInstance
ClaudegetWorkflowInstancesList
ClaudegetWorkflowTriggerRequirements
ClaudegetWorkflowsList
ClaudelistRecipients
ClaudepauseNewWorkflowInstances
ClauderesumeWorkflow
ClaudetriggerWorkflow
ClaudeupdateEnvelope
Claude