- Add date_added to all 950+ skills for complete tracking - Update version to 6.5.0 in package.json and README - Regenerate all indexes and catalog - Sync all generated files Features from merged PR #150: - Stars/Upvotes system for community-driven discovery - Auto-update mechanism via START_APP.bat - Interactive Prompt Builder - Date tracking badges - Smart auto-categorization All skills validated and indexed. Made-with: Cursor
213 lines
7.7 KiB
Markdown
213 lines
7.7 KiB
Markdown
---
|
|
name: docusign-automation
|
|
description: "Automate DocuSign tasks via Rube MCP (Composio): templates, envelopes, signatures, document management. Always search tools first for current schemas."
|
|
risk: unknown
|
|
source: community
|
|
date_added: "2026-02-27"
|
|
---
|
|
|
|
# DocuSign Automation via Rube MCP
|
|
|
|
Automate DocuSign e-signature workflows through Composio's DocuSign toolkit via Rube MCP.
|
|
|
|
## 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 |
|
|
|
|
## When to Use
|
|
This skill is applicable to execute the workflow or actions described in the overview.
|