docusign-automation
Automate DocuSign tasks via Rube MCP (Composio): templates, envelopes, signatures, document management. Always search tools first for current schemas.
Install
npx skills add https://github.com/davepoon/buildwithclaude/tree/main/plugins/all-skills/skills/docusign-automation
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install davepoon-buildwithclaude@llmmart
git clone https://github.com/davepoon/buildwithclaude.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole davepoon/buildwithclaude collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
DocuSign Automation via Rube MCP
Automate DocuSign e-signature workflows through Composio's DocuSign toolkit via Rube MCP.
Toolkit docs: composio.dev/toolkits/docusign
Prerequisites
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active DocuSign connection via
RUBE_MANAGE_CONNECTIONSwith toolkitdocusign - Always call
RUBE_SEARCH_TOOLSfirst to get current tool schemas
Setup
Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
- Verify Rube MCP is available by confirming
RUBE_SEARCH_TOOLSresponds - Call
RUBE_MANAGE_CONNECTIONSwith toolkitdocusign - If connection is not ACTIVE, follow the returned auth link to complete DocuSign OAuth
- Confirm connection status shows ACTIVE before running any workflows
Core Workflows
1. Browse and Select Templates
When to use: User wants to find available document templates for sending
Tool sequence:
DOCUSIGN_LIST_ALL_TEMPLATES- List all available templates [Required]DOCUSIGN_GET_TEMPLATE- Get detailed template information [Optional]
Key parameters:
- For listing: Optional search/filter parameters
- For details:
templateId(from list results) - Response includes template
templateId,name,description, roles, and fields
Pitfalls:
- Template IDs are GUIDs (e.g., '12345678-abcd-1234-efgh-123456789012')
- Templates define recipient roles with signing tabs; understand roles before creating envelopes
- Large template libraries require pagination; check for continuation tokens
- Template access depends on account permissions
2. Create and Send Envelopes from Templates
When to use: User wants to send documents for signature using a pre-built template
Tool sequence:
DOCUSIGN_LIST_ALL_TEMPLATES- Find the template to use [Prerequisite]DOCUSIGN_GET_TEMPLATE- Review template roles and fields [Optional]DOCUSIGN_CREATE_ENVELOPE_FROM_TEMPLATE- Create the envelope [Required]DOCUSIGN_SEND_ENVELOPE- Send the envelope for signing [Required]
Key parameters:
- For CREATE_ENVELOPE_FROM_TEMPLATE:
templateId: Template to usetemplateRoles: Array of role assignments withroleName,name,emailstatus: 'created' (draft) or 'sent' (send immediately)emailSubject: Custom subject line for the signing emailemailBlurb: Custom message in the signing email
- For SEND_ENVELOPE:
envelopeId: Envelope ID from creation response
Pitfalls:
templateRolesmust match the role names defined in the template exactly (case-sensitive)- Setting
statusto 'sent' during creation sends immediately; use 'created' for drafts - If status is 'sent' at creation, no need to call SEND_ENVELOPE separately
- Each role requires at minimum
roleName,name, andemail emailSubjectoverrides the template's default email subject
3. Monitor Envelope Status
When to use: User wants to check the status of sent envelopes or track signing progress
Tool sequence:
DOCUSIGN_GET_ENVELOPE- Get envelope details and status [Required]
Key parameters:
envelopeId: Envelope identifier (GUID)- Response includes
status,recipients,sentDateTime,completedDateTime
Pitfalls:
- Envelope statuses: 'created', 'sent', 'delivered', 'signed', 'completed', 'declined', 'voided'
- 'delivered' means the email was opened, not that the document was signed
- 'completed' means all recipients have signed
- Recipients array shows individual signing status per recipient
- Envelope IDs are GUIDs; always resolve from creation or search results
4. Add Templates to Existing Envelopes
When to use: User wants to add additional documents or templates to an existing envelope
Tool sequence:
DOCUSIGN_GET_ENVELOPE- Verify envelope exists and is in draft state [Prerequisite]DOCUSIGN_ADD_TEMPLATES_TO_DOCUMENT_IN_ENVELOPE- Add template to envelope [Required]
Key parameters:
envelopeId: Target envelope IDdocumentId: Document ID within the envelopetemplateId: Template to add
Pitfalls:
- Envelope must be in 'created' (draft) status to add templates
- Cannot add templates to already-sent envelopes
- Document IDs are sequential within an envelope (starting from '1')
- Adding a template merges its fields and roles into the existing envelope
5. Manage Envelope Lifecycle
When to use: User wants to send, void, or manage draft envelopes
Tool sequence:
DOCUSIGN_GET_ENVELOPE- Check current envelope status [Prerequisite]DOCUSIGN_SEND_ENVELOPE- Send a draft envelope [Optional]
Key parameters:
envelopeId: Envelope to manage- For sending: envelope must be in 'created' status with all required recipients
Pitfalls:
- Only 'created' (draft) envelopes can be sent
- Sent envelopes cannot be unsent; they can only be voided
- Voiding an envelope notifies all recipients
- All required recipients must have valid email addresses before sending
Common Patterns
ID Resolution
Template name -> Template ID:
1. Call DOCUSIGN_LIST_ALL_TEMPLATES
2. Find template by name in results
3. Extract templateId (GUID format)
Envelope tracking:
1. Store envelopeId from CREATE_ENVELOPE_FROM_TEMPLATE response
2. Call DOCUSIGN_GET_ENVELOPE periodically to check status
3. Check recipient-level status for individual signing progress
Template Role Mapping
When creating an envelope from a template:
1. Call DOCUSIGN_GET_TEMPLATE to see defined roles
2. Map each role to actual recipients:
{
"roleName": "Signer 1", // Must match template role name exactly
"name": "John Smith",
"email": "john@example.com"
}
3. Include ALL required roles in templateRoles array
Envelope Status Flow
created (draft) -> sent -> delivered -> signed -> completed
\-> declined
\-> voided (by sender)
Known Pitfalls
Template Roles:
- Role names are case-sensitive; must match template definition exactly
- All required roles must be assigned when creating an envelope
- Missing role assignments cause envelope creation to fail
Envelope Status:
- 'delivered' means email opened, NOT document signed
- 'completed' is the final successful state (all parties signed)
- Status transitions are one-way; cannot revert to previous states
GUIDs:
- All DocuSign IDs (templates, envelopes) are GUID format
- Always resolve names to GUIDs via list/search endpoints
- Do not hardcode GUIDs; they are unique per account
Rate Limits:
- DocuSign API has per-account rate limits
- Bulk envelope creation should be throttled
- Polling envelope status should use reasonable intervals (30-60 seconds)
Response Parsing:
- Response data may be nested under
datakey - Recipient information is nested within envelope response
- Date fields use ISO 8601 format
- Parse defensively with fallbacks for optional fields
Quick Reference
| Task | Tool Slug | Key Params |
|---|---|---|
| List templates | DOCUSIGN_LIST_ALL_TEMPLATES | (optional filters) |
| Get template | DOCUSIGN_GET_TEMPLATE | templateId |
| Create envelope | DOCUSIGN_CREATE_ENVELOPE_FROM_TEMPLATE | templateId, templateRoles, status |
| Send envelope | DOCUSIGN_SEND_ENVELOPE | envelopeId |
| Get envelope status | DOCUSIGN_GET_ENVELOPE | envelopeId |
| Add template to envelope | DOCUSIGN_ADD_TEMPLATES_TO_DOCUMENT_IN_ENVELOPE | envelopeId, documentId, templateId |
Powered by Composio
Files (buildwithclaude)
-
SKILL.md 7.7 KB
--- name: docusign-automation description: "Automate DocuSign tasks via Rube MCP (Composio): templates, envelopes, signatures, document management. Always search tools first for current schemas." requires: mcp: [rube] category: business-productivity --- # DocuSign Automation via Rube MCP Automate DocuSign e-signature workflows through Composio's DocuSign toolkit via Rube MCP. **Toolkit docs**: [composio.dev/toolkits/docusign](https://composio.dev/toolkits/docusign) ## Prerequisites - Rube MCP must be connected (RUBE_SEARCH_TOOLS available) - Active DocuSign connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `docusign` - Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas ## Setup **Get Rube MCP**: Add `https://rube.app/mcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works. 1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds 2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `docusign` 3. If connection is not ACTIVE, follow the returned auth link to complete DocuSign OAuth 4. Confirm connection status shows ACTIVE before running any workflows ## Core Workflows ### 1. Browse and Select Templates **When to use**: User wants to find available document templates for sending **Tool sequence**: 1. `DOCUSIGN_LIST_ALL_TEMPLATES` - List all available templates [Required] 2. `DOCUSIGN_GET_TEMPLATE` - Get detailed template information [Optional] **Key parameters**: - For listing: Optional search/filter parameters - For details: `templateId` (from list results) - Response includes template `templateId`, `name`, `description`, roles, and fields **Pitfalls**: - Template IDs are GUIDs (e.g., '12345678-abcd-1234-efgh-123456789012') - Templates define recipient roles with signing tabs; understand roles before creating envelopes - Large template libraries require pagination; check for continuation tokens - Template access depends on account permissions ### 2. Create and Send Envelopes from Templates **When to use**: User wants to send documents for signature using a pre-built template **Tool sequence**: 1. `DOCUSIGN_LIST_ALL_TEMPLATES` - Find the template to use [Prerequisite] 2. `DOCUSIGN_GET_TEMPLATE` - Review template roles and fields [Optional] 3. `DOCUSIGN_CREATE_ENVELOPE_FROM_TEMPLATE` - Create the envelope [Required] 4. `DOCUSIGN_SEND_ENVELOPE` - Send the envelope for signing [Required] **Key parameters**: - For CREATE_ENVELOPE_FROM_TEMPLATE: - `templateId`: Template to use - `templateRoles`: Array of role assignments with `roleName`, `name`, `email` - `status`: 'created' (draft) or 'sent' (send immediately) - `emailSubject`: Custom subject line for the signing email - `emailBlurb`: Custom message in the signing email - For SEND_ENVELOPE: - `envelopeId`: Envelope ID from creation response **Pitfalls**: - `templateRoles` must match the role names defined in the template exactly (case-sensitive) - Setting `status` to 'sent' during creation sends immediately; use 'created' for drafts - If status is 'sent' at creation, no need to call SEND_ENVELOPE separately - Each role requires at minimum `roleName`, `name`, and `email` - `emailSubject` overrides the template's default email subject ### 3. Monitor Envelope Status **When to use**: User wants to check the status of sent envelopes or track signing progress **Tool sequence**: 1. `DOCUSIGN_GET_ENVELOPE` - Get envelope details and status [Required] **Key parameters**: - `envelopeId`: Envelope identifier (GUID) - Response includes `status`, `recipients`, `sentDateTime`, `completedDateTime` **Pitfalls**: - Envelope statuses: 'created', 'sent', 'delivered', 'signed', 'completed', 'declined', 'voided' - 'delivered' means the email was opened, not that the document was signed - 'completed' means all recipients have signed - Recipients array shows individual signing status per recipient - Envelope IDs are GUIDs; always resolve from creation or search results ### 4. Add Templates to Existing Envelopes **When to use**: User wants to add additional documents or templates to an existing envelope **Tool sequence**: 1. `DOCUSIGN_GET_ENVELOPE` - Verify envelope exists and is in draft state [Prerequisite] 2. `DOCUSIGN_ADD_TEMPLATES_TO_DOCUMENT_IN_ENVELOPE` - Add template to envelope [Required] **Key parameters**: - `envelopeId`: Target envelope ID - `documentId`: Document ID within the envelope - `templateId`: Template to add **Pitfalls**: - Envelope must be in 'created' (draft) status to add templates - Cannot add templates to already-sent envelopes - Document IDs are sequential within an envelope (starting from '1') - Adding a template merges its fields and roles into the existing envelope ### 5. Manage Envelope Lifecycle **When to use**: User wants to send, void, or manage draft envelopes **Tool sequence**: 1. `DOCUSIGN_GET_ENVELOPE` - Check current envelope status [Prerequisite] 2. `DOCUSIGN_SEND_ENVELOPE` - Send a draft envelope [Optional] **Key parameters**: - `envelopeId`: Envelope to manage - For sending: envelope must be in 'created' status with all required recipients **Pitfalls**: - Only 'created' (draft) envelopes can be sent - Sent envelopes cannot be unsent; they can only be voided - Voiding an envelope notifies all recipients - All required recipients must have valid email addresses before sending ## Common Patterns ### ID Resolution **Template name -> Template ID**: ``` 1. Call DOCUSIGN_LIST_ALL_TEMPLATES 2. Find template by name in results 3. Extract templateId (GUID format) ``` **Envelope tracking**: ``` 1. Store envelopeId from CREATE_ENVELOPE_FROM_TEMPLATE response 2. Call DOCUSIGN_GET_ENVELOPE periodically to check status 3. Check recipient-level status for individual signing progress ``` ### Template Role Mapping When creating an envelope from a template: ``` 1. Call DOCUSIGN_GET_TEMPLATE to see defined roles 2. Map each role to actual recipients: { "roleName": "Signer 1", // Must match template role name exactly "name": "John Smith", "email": "john@example.com" } 3. Include ALL required roles in templateRoles array ``` ### Envelope Status Flow ``` created (draft) -> sent -> delivered -> signed -> completed \-> declined \-> voided (by sender) ``` ## Known Pitfalls **Template Roles**: - Role names are case-sensitive; must match template definition exactly - All required roles must be assigned when creating an envelope - Missing role assignments cause envelope creation to fail **Envelope Status**: - 'delivered' means email opened, NOT document signed - 'completed' is the final successful state (all parties signed) - Status transitions are one-way; cannot revert to previous states **GUIDs**: - All DocuSign IDs (templates, envelopes) are GUID format - Always resolve names to GUIDs via list/search endpoints - Do not hardcode GUIDs; they are unique per account **Rate Limits**: - DocuSign API has per-account rate limits - Bulk envelope creation should be throttled - Polling envelope status should use reasonable intervals (30-60 seconds) **Response Parsing**: - Response data may be nested under `data` key - Recipient information is nested within envelope response - Date fields use ISO 8601 format - Parse defensively with fallbacks for optional fields ## Quick Reference | Task | Tool Slug | Key Params | |------|-----------|------------| | List templates | DOCUSIGN_LIST_ALL_TEMPLATES | (optional filters) | | Get template | DOCUSIGN_GET_TEMPLATE | templateId | | Create envelope | DOCUSIGN_CREATE_ENVELOPE_FROM_TEMPLATE | templateId, templateRoles, status | | Send envelope | DOCUSIGN_SEND_ENVELOPE | envelopeId | | Get envelope status | DOCUSIGN_GET_ENVELOPE | envelopeId | | Add template to envelope | DOCUSIGN_ADD_TEMPLATES_TO_DOCUMENT_IN_ENVELOPE | envelopeId, documentId, templateId | --- *Powered by [Composio](https://composio.dev)*
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.