# SpotDraft MCP connector

The SpotDraft connector brings contracts, templates, approvals, clickwraps and users into Claude, ChatGPT, Cursor or the Elaichi Agent, so each person can draft, look up and approve SpotDraft contracts inside their own access.

Source: https://elaichi.ai/connectors/spotdraft/

## Facts

| | |
| --- | --- |
| Application | SpotDraft |
| Category | E Signature |
| AI tools | 46 |
| Authentication | Connects with an API key |
| Needs your own OAuth app | No |
| MCP endpoint | https://api.elaichi.ai/mcp |
| Works with | Claude, ChatGPT, Cursor, any MCP client, and the Elaichi Agent |
| Tools advertised by name | No. 46 tools is past the 30-tool threshold, so clients use `search_tools` and `execute_tool` |

## What you can ask once SpotDraft is connected

- List SpotDraft contracts created this month by organization entity.
- Which SpotDraft templates changed since last quarter?
- Show SpotDraft users and roles for the EMEA entity.

## Connect SpotDraft in Elaichi

This happens once for the organization, before any client is involved.

1. Open Connections, choose Add connection, and pick SpotDraft.
2. Optionally set Share with, then press Connect.
3. Paste a SpotDraft API key. One person generates a token in SpotDraft and pastes it once. Everyone else works through Share with, and never sees it.

Credentials are vaulted and nobody, including the AI, reads them back. The connection becomes a toolbox immediately, so you can curate which SpotDraft tools are exposed, rename them, or freeze arguments before anyone points a client at it.

## Connect SpotDraft to Claude

Endpoint: https://api.elaichi.ai/mcp

1. Open Customize, then Connectors.
2. Press Add.
3. Name it, paste the MCP server URL, then Continue.
4. Sign in and approve.

On Team and Enterprise, an Owner adds it once. Everyone else turns it on for themselves.

## Connect SpotDraft to ChatGPT

Endpoint: https://api.elaichi.ai/mcp

1. Open Plugins, then press the + button.
2. Name it and paste the endpoint into Server URL.
3. Leave Authentication on OAuth, then tick the risk acknowledgement.
4. Press Create, then sign in and approve.

Works on the web today. The plugin directory lives at chatgpt.com/plugins.

## Connect SpotDraft to Cursor

Endpoint: https://api.elaichi.ai/mcp

1. Open `~/.cursor/mcp.json`.
2. Add the endpoint under `mcpServers`.
3. Reload Cursor, then sign in and approve.

Set up per machine, so repeat it on each computer you work from.

## Connect SpotDraft to any MCP client

Endpoint: https://api.elaichi.ai/mcp

1. Add the endpoint as a remote MCP server.
2. Sign in and approve.

The Elaichi Agent already has these tools, with nothing to set up.

## What the consent screen decides

Only Read is granted by default, which is not enough to call a SpotDraft tool. Over MCP there is no trusted place to confirm a write in the moment, so the consent screen is the standing approval rather than a formality. Grant Read and Run tools. Think hard before granting Delete, which reaches into connected apps and cannot be undone.

## What teams do with SpotDraft through Elaichi

### Start a contract from the approved template

Legal. Ask for a new SpotDraft contract from the right template and the right counterparty entity, with the key terms filled in from your notes, without opening a blank form.

### Get the paperwork moving after a call

Sales. Once a deal is agreed, create the SpotDraft contract for that customer and check which contract type and entity it belongs to, so legal receives something ready to review.

### Correct key dates and values in bulk

Legal Ops. Update renewal dates, contract values and other key pointers on SpotDraft contracts as terms change, and confirm what each contract currently records.

### Move approvals along without chasing

Legal. See where a SpotDraft contract approval stands, raise a new approval when a contract is ready, and answer who still needs to sign off.

### Confirm who accepted your clickwrap terms

Product. Create a SpotDraft clickwrap for new terms of service and check whether a given user has accepted the current version before support or billing acts.

### Keep users and roles in order

IT. List the people and roles in SpotDraft, add a new user with the right role, and keep the entities and contract types your organization uses tidy.

## Frequently asked questions

### How do I connect SpotDraft to Claude?

Connect SpotDraft in Elaichi first: paste the API key from your SpotDraft account when asked, and the connection is ready. There is no OAuth application to register and no client ID or secret to generate. Then in Claude open Customize, then Connectors, then Add, and paste https://api.elaichi.ai/mcp. Claude will ask you to sign in to Elaichi as yourself, and SpotDraft contracts, templates and approvals appear from that point on.

### Does SpotDraft work with ChatGPT and Cursor as well as Claude?

Yes. Once SpotDraft is connected in Elaichi, the same endpoint, https://api.elaichi.ai/mcp, works in Claude, ChatGPT, Cursor, any other MCP client and the Elaichi Agent. You connect SpotDraft once and every client picks it up.

### What can an AI agent actually do with my SpotDraft data?

With SpotDraft connected, an agent can list your contracts, templates, contract types and organization entities, create a new contract from a template, update key dates and values on an existing contract, raise or check a contract approval, and create a clickwrap or check whether someone has accepted it. It can also list users and roles and add a new user. SpotDraft exposes a lot of actions, so short, specific asks such as "create an NDA for Acme from the standard template" work better than long paragraphs.

### Does connecting SpotDraft give the AI access to every contract in my workspace?

No. Every request to SpotDraft runs as the person who signed in, so the agent can only see the contracts, templates and entities that person can already see in SpotDraft. Elaichi can narrow that further, for example to read-only or to a few actions, but it can never grant more than the person's own SpotDraft permissions allow.

### Can my team share one SpotDraft connection?

Yes. One person connects SpotDraft with the API key and shares the connection with a team in Elaichi, and nobody else ever sees or handles that key. Each teammate still signs in to Elaichi as themselves, so the audit log names the actual person behind every contract created or approval raised in SpotDraft.

### Can I stop an agent from deleting or changing things in SpotDraft?

Yes. In Elaichi you restrict SpotDraft action by action, so you can allow looking up contracts and approvals while blocking creating contracts, updating key pointers or deleting webhook secrets. A blocked action is never advertised to Claude, ChatGPT, Cursor or any other client, so no prompt, however worded, can reach it.

### What happens to a SpotDraft connection when someone leaves?

When you offboard someone in Elaichi, their access to SpotDraft through every AI client ends at once. If they had connected a shared SpotDraft connection, it keeps working for everyone else it was shared with. If you want SpotDraft gone entirely, disconnecting it once in Elaichi removes it from Claude, ChatGPT, Cursor and every other client at the same time.

## All 46 SpotDraft tools

Every tool below is callable through https://api.elaichi.ai/mcp once SpotDraft is connected, subject to the toolbox it is in and the restrictions on the caller.

- **List all SpotDraft roles** (List). Get active roles in the current workspace in SpotDraft. Returns id, name, and description of each role.
- **List all SpotDraft users** (List). Get all users in SpotDraft. Returns fields id, first_name, last_name, email, and designation for each user.
- **Create a SpotDraft user** (Create). Create and invite a user with email, first_name, last_name, designation, and role_ids in SpotDraft. Returns user creation confirmation.
- **List all SpotDraft organization entities** (List). Get all entities associated with the organization in SpotDraft. Returns id, name, reference_id, jurisdiction, organization_type, primary_address, and is_primary fields for each entity.
- **Create a SpotDraft organization entity** (Create). Create an entity with name, reference_id, jurisdiction_iso_code, organization_type_id, primary_address (city_name, state_name, zipcode, line_one, country_iso_code), and is_primary in SpotDraft. Returns created entity details.
- **List all SpotDraft organization types** (List). Get all organization types for a jurisdiction in SpotDraft. Requires jurisdiction_iso_code. Returns id, name, and jurisdiction details including id, name, and iso_code.
- **List all SpotDraft templates** (List). Get list of published templates in SpotDraft. Returns items array with id, name, and contract_type_id for each template.
- **Get single SpotDraft template by ID** (Get). Get details for a contract template by id in SpotDraft. Returns id, name, tags, and contract_type_id of the template.
- **Update a SpotDraft template by ID** (Update). Update template data for a contract template in SpotDraft using id. Returns id, name, contract_type_id, and updated tags.
- **List all SpotDraft contracts** (List). Get a list of contracts in SpotDraft filtered by client_email_address or client_name. Returns id, created, created_by, contract_link, contract_status, contract_name, counter_party_name, contract_type_name, reference_id, created_by_user_name, and created_by_user_email fields.
- **Create a SpotDraft contract** (Create). Create a contract in SpotDraft with contract_template_id and counter_party_details. Returns contract id, name, status, and created_at timestamp.
- **List all SpotDraft template metadata** (List). Get the list of fields required to create a contract with a given template in SpotDraft. Returns attributes defining the contract_data payload and counter_party_kind indicating if the counter party is Individual, Organisation, or Both.
- **Get single SpotDraft webhook secret by ID** (Get). Get the Base64 encoded webhook secret key in SpotDraft. Returns the hmac_key field which is the Base64 of the secret for webhook.
- **Create a SpotDraft webhook secret** (Create). Create a webhook in SpotDraft with title, url, and only_for_activities parameters. Returns webhook id, title, url, description, and subscribed activities.
- **Delete a SpotDraft webhook secret by ID** (Delete). Delete a webhook secret by id in SpotDraft. Requires id.
- **List all SpotDraft contract types** (List). Get list of contract types in SpotDraft. Returns id and name of each contract type.
- **List all SpotDraft contract type entities** (List). Get the list of contract type entities for contract_type_id in SpotDraft. Returns entity_id, entity_name, entity_type, jurisdiction_of_incorporation, address, and is_primary fields for each entity.
- **Get single SpotDraft clickwrap by ID** (Get). Get clickwrap details by clickwrap_public_id in SpotDraft. Returns id, name, description, created_by_org_user info, updated timestamp, agreements with current_version details, public_id, contract_type_id, and settings.
- **Create a SpotDraft clickwrap** (Create). Create a clickwrap contract in SpotDraft using clickwrap_public_id, user_identifier, and clickwrap_id. Returns agreements with id, version_id, and has_clicked status.
- **Get single SpotDraft clickwrap consent status by ID** (Get). Get consent status for a user identified by user_identifier for a specific clickwrap in SpotDraft. Returns status values NOT_ACCEPTED, ACCEPTED_OLDER_VERSION, or ACCEPTED_LATEST_VERSION.
- **Get single SpotDraft contract approval by ID** (Get). Get contract approvals for contract_id in SpotDraft. Returns approval details including id, approval_name, approval_type, approver info, sent_for_approval status, last_sent_at, notes, created_by info, current_status, and approval_actions with status, action_notes, created date, and latest flag.
- **Create a SpotDraft contract approval** (Create). Create and send adhoc approvals for a contract in SpotDraft using contract_id and approvals array. Returns created approvals with fields id, contract_id, is_sent, name, approver_user_id, approver_role_id, notes, and order.
- **List all SpotDraft contract key pointers** (List). Get list of key pointers for a given contract in SpotDraft. Requires contract_id of the form T-123 or H-123. Returns id, value, label, filed_name, data_type, and format_option fields for each key pointer.
- **Update a SpotDraft contract key pointer by ID** (Update). Update the specified key pointer value for a contract in SpotDraft. Requires contract_id and id. Returns the updated key pointer object including its new value.
- **List all SpotDraft contract recipients** (List). Get list of all recipients for a contract in SpotDraft using composite_id. Returns recipient details including id, recipient_type, user info (id, name, designation, email), title, recipient_order, note, is_sent_for_signature, created, last_sent_for_signature_at, recipient_action (is_success, action_notes, timestamp), and status.
- **List all SpotDraft contract recipient links** (List). Get recipient link for contract with contract_id and recipient_email in SpotDraft. Returns link details including URL and expiration.
- **List all SpotDraft contract activity log comments** (List). Get comments for a contract in SpotDraft using contract_id. Returns id, contract_id, comment text, and replies array with reply id and comment.
- **Create a SpotDraft contract activity log comment** (Create). Add comment to contract activity log with contract_id. Returns comment content, contract_id, comment id, and associated replies in SpotDraft.
- **Create a SpotDraft contract version** (Create). Upload a new contract version for contract_id in SpotDraft. Returns the uploaded contract_version details including document_name and execution status.
- **List all SpotDraft contract notes** (List). Get all notes associated with the contract in SpotDraft. Requires contract_id of the form T-123 or H-123. Returns id, text, and note_tag fields for each note.
- **Update a SpotDraft contract note by ID** (Update). Update a contract note with contract_id and id in SpotDraft. Returns updated note fields: id, text, and note_tag.
- **List all SpotDraft counterparties** (List). Get the list of counterparties in SpotDraft. Returns id, name, is_individual, contacts (id, name, email), primary_address (city_name, state_name, country_name, zipcode, line_one), status, and custom_fields (vendor_id, gst_number).
- **Get single SpotDraft counterparty by ID** (Get). Get details of a counterparty by id in SpotDraft. Returns id (unique identifier), name (unique within workspace), is_individual (individual or organization), status (ACTIVE or ARCHIVED), contacts (associated contacts), primary_address (address details), and custom_fields.
- **Create a SpotDraft counterparty** (Create). Create a counterparty in SpotDraft with required details including is_individual, contact_email, contact_name, and primary_address with city_name, country_name, and line_one. Returns the counterparty workspace id and status in response.
- **Update a SpotDraft counterparty by ID** (Update). Update counterparty details with id in SpotDraft. Requires name, brand_name, and custom_fields. Returns updated counterparty information including name, brand_name, and custom_fields.
- **List all SpotDraft counter party addresses** (List). Get list of counterparty addresses for counterparty_id in SpotDraft. Returns id, line_one, city_name, state_name, zipcode, country_name, email, and phone for each address.
- **Create a SpotDraft counter party address** (Create). Create a counterparty address in SpotDraft with required parameters city_name, country_name, and line_one. Returns the created address including city_name, country_name, line_one, and optional fields like email and phone.
- **Update a SpotDraft counter party address by ID** (Update). Update counterparty address with counterparty_id and id in SpotDraft. Returns updated address fields including city_name, country_iso_code, is_primary, line_one, state_name, and zipcode.
- **List all SpotDraft counter party contacts** (List). Get list of counterparty contacts for counterparty_id in SpotDraft. Returns id, name, email, and is_primary fields for each contact.
- **Create a SpotDraft counter party contact** (Create). Create a counterparty contact with email, name, and is_primary for counterparty_id in SpotDraft. Returns the created contact details including email, name, and primary status.
- **Update a SpotDraft counter party contact by ID** (Update). Update counterparty contact with counterparty_id and id in SpotDraft. Returns updated contact fields including email, is_primary, and name.
- **Delete a SpotDraft counter party contact by ID** (Delete). Delete a counterparty contact by counterparty_id and id in SpotDraft. Returns no content on success.
- **List all SpotDraft key pointers** (List). Get all key pointers for the Organization in SpotDraft. Requires contract_type_id. Returns id, descriptors with details like display_label, variable, type, help_text, required flags, and section info including id, section_type, and name.
- **Create a SpotDraft user tasks list** (Create). Create a user task list in SpotDraft with assignees, title, contract_id, due_date, due_date_key_pointer_id, notes, and reminders. Returns the created task details.
- **Create a SpotDraft role member** (Create). Add members to a role in SpotDraft using role_id and user_ids_to_add. Returns the added members with id, email, name, and designation.
- **Delete a SpotDraft role member by ID** (Delete). Delete role members by removing user_ids_to_remove from the role identified by role_id in SpotDraft. The response confirms the removal of specified user IDs.
