DocuSign Integration
Manage DocuSign eSignature accounts, envelopes, recipients, documents, and templates
The DocuSign integration provides access to manage DocuSign eSignature accounts, envelopes, recipients, documents, and templates through the Integrate MCP server.
Installation
The DocuSign integration is included with the SDK:
import { docusignIntegration } from "integrate-sdk/server";Setup
1. Create a DocuSign OAuth App
- Create an OAuth application for DocuSign
- Configure your redirect URI
- Note your Client ID and Client Secret
2. Configure the Integration on Your Server
Add the DocuSign integration to your server configuration. The integration automatically reads DOCUSIGN_CLIENT_ID and DOCUSIGN_CLIENT_SECRET from your environment variables:
import { createMCPServer, docusignIntegration } from "integrate-sdk/server";
export const { client: serverClient } = createMCPServer({
apiKey: process.env.INTEGRATE_API_KEY,
integrations: [
docusignIntegration({
scopes: ["signature", "impersonation"], // Optional
}),
],
});You can override the environment variables by passing explicit values:
docusignIntegration({
clientId: process.env.CUSTOM_DOCUSIGN_ID,
clientSecret: process.env.CUSTOM_DOCUSIGN_SECRET,
scopes: ["signature", "impersonation"], // Optional
});3. Client-Side Usage
The default client automatically includes all integrations. You can use it directly:
import { client } from "integrate-sdk";
await client.authorize("docusign");
const result = await client.docusign.getUserInfo({});
console.log(result);If you're using a custom client, add the integration to the integrations array:
import { createMCPClient, docusignIntegration } from "integrate-sdk";
const customClient = createMCPClient({
integrations: [docusignIntegration()],
});Configuration Options
export interface DocusignIntegrationConfig {
clientId?: string;
Default Scopes
These defaults are applied unless you override scopes in the integration config:
signatureimpersonation
Tools
docusign_get_user_info
Get user info
No parameters.
docusign_list_envelopes
List envelopes
export interface DocusignListEnvelopesParams { account_id: string;
docusign_get_envelope
Get envelope
export interface DocusignGetEnvelopeParams { account_id: string;
docusign_create_envelope
Create envelope
export interface DocusignCreateEnvelopeParams { account_id: string;
docusign_list_recipients
List recipients
export interface DocusignListRecipientsParams { account_id: string;
docusign_get_document
Get document
export interface DocusignGetDocumentParams { account_id: string;
docusign_list_templates
List templates
export interface DocusignListTemplatesParams { account_id: string;
Notes
- Category: Legal
- Authentication mode: OAuth