Ironclad MCP server for AI agents and assistants

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with Ironclad MCP or direct API to launch workflows, track approvals, manage contract records, and review obligations through natural language.

Ironclad logoIronclad
Oauth2

Ironclad is a contract lifecycle management platform for workflows, approvals, signatures, and contract records. It helps legal and business teams manage agreements, entities, and obligations in one place.

80 Tools

Try Ironclad now

Type what you want done — sign in and watch it run live in the Tool Router playground.

TOOL ROUTER PLAYGROUND
Ironclad
Try asking
TOOLS

Supported Tools

Every Ironclad action and event your agent gets out of the box.

Activate Record

Activate a record and set its effective date, term, termination notice, expiration, and renewal behavior.

Cancel Record Auto-Renewal

Cancel auto-renewal for a record.

Cancel Workflow

Cancel a workflow, recording a comment that explains why.

Cancel Workflow Signature Request

Cancel the signature request (the signature packet sent to the signers) that is out for signature on a workflow, with a reason.

Create Data Export

Start a data export job for workflow activity or the audit log, optionally limited to a date range; it does not wait for the file and returns a pollable job_id.

Create Embedded Workflow Signature Recipient URL

Create a signing link for one signer that is allowed to load inside a frame on the given parent site.

Create Entity

Create an entity (a counterparty or other party that contracts refer to) with a name and, optionally, a relationship type, status, parent and properties.

Create Obligation

Create a standalone obligation on a contract record.

Create Obligation Occurrence

Record a new triggered occurrence of an existing source obligation.

Create Record

Create a contract record in the repository with a record type, a name and metadata properties.

Create Smart Import Record

Upload a contract file and use Smart Import to create a record and predict its properties.

Create Workflow Comment

Post a comment to a workflow's activity feed as the connected user, optionally as a reply to another comment and with @-mentions.

Create Workflow Signature Recipient URL

Create a link that a signer, or a view-only recipient, can open to reach the workflow's signature request.

Delete Entity

Delete an entity.

Delete Obligation

Delete an obligation.

Delete Record

Delete a contract record from the repository.

Delete Record Attachment

Remove one file from a contract record by its attachment key; the record itself stays.

Delete Scheduled Workflow Signature Request

Remove the scheduled send from a workflow, so its signature request (the signature packet for the signers) is no longer sent at the scheduled time.

Delete Workflow Signer

Remove a signer from a workflow's signature packet.

Download Data Export

Download the file of a finished data export job: CSV, or JSON Lines if the job was created with export_format JSON.

Download Record Attachment

Download one file attached to a record by its attachment key; signedCopy is the key of the signed copy.

Download Workflow Document

Download one document of a workflow by its document key: a draft (usually DOCX) or the signed PDF.

Download Workflow Email Attachment

Download one file attached to an email thread of a workflow.

Edit Record Renewal

Edit a record's renewal type, term, opt-out timing, remaining renewal count, initial term, and expiration settings.

Export Data

Create an Ironclad workflow-activity or audit-log data export job, poll its status with a bounded configurable wait, then download and return the completed CSV or JSON Lines file.

Export Records XLSX

Download an XLSX spreadsheet of records for the record types and property columns you name.

Extend Record

Extend a record, optionally setting the renewal term length.

Get Data Export Status

Check a data export job started with IRONCLAD_CREATE_DATA_EXPORT.

Get Entity

Get one entity by id or Ironclad id: its name, status, relationship type ids, parent and properties (each as {type, value}).

Get Obligation

Get one obligation by id or Ironclad id: its name, parent contract, status, due date, assignee and properties (each as {type, value}), and whether it is a source obligation or an occurrence; a source obligation's occurrences are listed by IRONCLAD_LIST_OBLIGATION_INSTANCES.

Get Record

Get one contract record by id or Ironclad id: its type, name, properties (each as {type, value}), attachments, links, parent and children, and contract status.

Get Records Schema

Get the record schema of the company's repository: the record type keys, every property id with its display name and type, and the attachment keys.

Get Smart Import Predictions

Check whether Smart Import has finished predicting properties, for one record (record_id) or for every record of an import (import_id); one of the two is required.

Get Workflow

Get one workflow by id or Ironclad id: its step, status, roles, approvals, signatures, attribute values and the schema that types each attribute.

Get Workflow Comment

Get one comment of a workflow by its comment id, with author, time, mentions, the comment it replies to and reactions.

Get Workflow Email Thread

Get one email thread of a workflow by its email thread id.

Get Workflow Launch Status

Check a workflow launch started with IRONCLAD_LAUNCH_WORKFLOW using execution_mode async.

Get Workflow Schema

Get the launch-form schema of one workflow template: every attribute id with its type, display name, whether it is required (always, never or conditional) and its dropdown options.

Get Workflow Sign Status

Get the signing state of a workflow that is in the Sign step: signers and their status, routing order, the signature provider, whether a signed upload is required and any scheduled send.

Launch Workflow

Launch a workflow from a template.

Launch Workflow From Attribute Source

Launch from an existing Coupa or Salesforce workflow sync mapping.

List Entities

List the entities (counterparties and other parties) of the company, one page per call, optionally narrowed by free-text search or a formula and sorted.

List Entity Relationship Types

List the entity relationship types the company has defined, such as customer or vendor, all in one call.

List Obligation Instances

List the instances (occurrences) of one source obligation, by id or Ironclad id, one page per call, ordered by due date with undated instances last; every item has obligation_type OCCURRENCE.

List Obligations

List the source obligations of the company, one page per call, optionally narrowed by free-text search or a formula and sorted.

List Records

List the contract records in the repository, one page per call, optionally filtered by record type, update time, free-text search or a property formula, and sorted.

List Workflow Approval Requests

List the approval requests that have taken place on a workflow, one page per call: who was asked, when, the outcome and how long it took.

List Workflow Approvals

Get the current approvals of a workflow in one call (not paged): its approval groups with their order and each reviewer's status, and the workflow's roles with their ids, display names and assignees.

List Workflow Comments

List the comments in a workflow's activity feed, one page per call, with author, time, mentions, replies and reactions.

List Workflow Documents

List a workflow's documents in two groups, those in the signature packet and those left out of it, each with its document key, filename and version.

List Workflow Email Threads

List the email threads of a workflow, one page per call.

List Workflow Participants

List the users who participate in a workflow (user id and email), one page per call, optionally narrowed to one email.

List Workflow Role Eligible Assignees

List the users who may be assigned to one role of a workflow, one page per call, plus the role's default assignee where Ironclad returns one.

List Workflows

List the workflows the connected user can see, one page per call, optionally filtered by status, template, update time, free-text search or an attribute formula.

List Workflow Schemas

List the workflow templates that can be launched, with their launch-form schemas: each entry has the template id, name, the same launch-form schema IRONCLAD_GET_WORKFLOW_SCHEMA returns for one template (attribute ids, types, required, options) and what the connected user may do with it (permissions).

List Workflow Signers

List the signers of a workflow with name, email, role name, signature status and delegates.

List Workflow Turn History

List the turn history of a workflow, one page per call: each turn names the party that held the workflow, the user, the location and the start and end times.

Pause Workflow

Pause an active workflow that is in the Review step, recording a comment that explains why; Ironclad documents that only active workflows in the Review step can be paused.

Refresh Workflow From Attribute Source

Only for an existing attribute source configuration, such as a Coupa or Salesforce workflow sync mapping: refresh a workflow from it.

Remind Workflow Signer

Email a signer a reminder that their signature is needed.

Replace Record

Replace a record with a new type, name and complete set of properties.

Resume Workflow

Resume a workflow that was paused with IRONCLAD_PAUSE_WORKFLOW, recording a comment.

Revert Workflow To Review

Move a workflow from the Sign step back to the Review step.

Schedule Workflow Signature Request

Schedule a workflow's signature request (the signature packet sent to the signers) to go out at a set time, optionally with a reminder email to the signature coordinator beforehand.

Send Workflow Signature Request

Send a workflow's signature request (the signature packet sent to the signers) out for signature now.

Supersede Record

Mark a record as superseded on specified recorded and effective dates, optionally linking its replacement record.

Terminate Record

Terminate a record on specified recorded and effective dates, optionally linking the record that caused termination.

Undo Record Lifecycle Action

Reverse a specified lifecycle action previously applied to a record.

Update Entity

Change selected parts of an entity: its name, relationship type, status, parent, and properties to add or remove.

Update Obligation

Change an obligation's name, type or properties; send at least one field to change.

Update Record

Change selected parts of a record and leave the rest as it is: add or overwrite properties, remove properties, rename it, change its type, and edit its links, parent and children.

Update Scheduled Workflow Signature Request

Change the send time or the reminder of the signature request already scheduled on a workflow with IRONCLAD_SCHEDULE_WORKFLOW_SIGNATURE_REQUEST.

Update Workflow Approval

Approve a workflow on behalf of one approver role, or set that approval back to pending, as the user the connection acts as.

Update Workflow Attributes

Set or clear attribute (form field) values on a workflow that is in the Review step, and return the updated workflow.

Update Workflow Role Assignment

Assign a workflow role such as Archiver or Signature Coordinator to a different user.

Update Workflow Signature Packet

Replace the ordered list of documents in a workflow's signature packet, the documents a signature request sends to the signers.

Update Workflow Signer

Reassign a signer role of a workflow to another signer, or change an external signer's name or email.

Upload Record Attachment

Attach a file to a contract record under an attachment key.

Upload Signed Workflow Document

Upload a signed PDF to a workflow that is in the Sign step.

Upload Workflow Document

Upload a PDF or Word file into a document attribute of a workflow, with a required comment.

SETUP GUIDE

Connect Ironclad MCP Tool with your Agent

1

Install Composio

typescript
npm install @composio/core ai @ai-sdk/mcp @ai-sdk/openai
Install the Composio SDK and your agent framework
2

Create a session with MCP enabled

typescript
import { Composio } from "@composio/core";

const composio = new Composio();
const { mcp } = await composio.create("your-user-id", {
  toolkits: ["ironclad"],
  mcp: true,
});
Create a session scoped to Ironclad and read its MCP URL and headers
3

Connect your agent to the MCP server

typescript
import { createMCPClient } from "@ai-sdk/mcp";
import { openai } from "@ai-sdk/openai";
import { generateText, stepCountIs } from "ai";

const client = await createMCPClient({
  transport: { type: "http", url: mcp.url, headers: mcp.headers },
});

const { text } = await generateText({
  model: openai("gpt-5.6-sol"),
  tools: await client.tools(),
  prompt: "List all active contract workflows in Ironclad that are awaiting approval",
  stopWhen: stepCountIs(10),
});

console.log(text);
await client.close();
Pass the session's MCP URL and headers to your agent and run a Ironclad request
SETUP GUIDE

Connect Ironclad API Tool with your Agent

1

Install Composio

typescript
npm install @composio/core @composio/openai openai
Install the Composio SDK, the OpenAI provider, and the OpenAI SDK
2

Create a Composio session

typescript
import OpenAI from "openai";
import { Composio } from "@composio/core";
import { OpenAIResponsesProvider } from "@composio/openai";

const composio = new Composio({ provider: new OpenAIResponsesProvider() });
const client = new OpenAI();

const session = await composio.create("your-user-id", { toolkits: ["ironclad"] });
const tools = await session.tools();
Initialize Composio with the OpenAI Responses provider and create a session scoped to Ironclad
3

Run Ironclad tools with your agent

typescript
let response = await client.responses.create({
  model: "gpt-5.6-sol",
  tools,
  input: [{ role: "user", content: "List all active contract workflows in Ironclad that are awaiting approval" }],
});

while (response.output.some((o) => o.type === "function_call")) {
  const outputs = await composio.provider.handleToolCalls(session, response.output);
  response = await client.responses.create({
    model: "gpt-5.6-sol",
    tools,
    previous_response_id: response.id,
    input: outputs,
  });
}

console.log(response.output_text);
Send a request, execute the Ironclad tool calls through the session, and print the final answer

Why Use Composio?

AI Native Ironclad Integration

  • Supports both Ironclad MCP and direct API based integrations
  • Structured, LLM-friendly schemas for reliable workflow and contract tool execution
  • Rich coverage for reading, writing, and querying your Ironclad data

Secure OAuth Auth

  • Connect Ironclad using your own OAuth credentials
  • Composio securely manages token storage, refresh, and lifecycle operations
  • Keep credentials scoped by user and environment instead of hard-coding them

Agent Optimized Design

  • Tools are tuned using real error and success rates to improve reliability over time
  • Clear schemas help agents identify workflows, contract records, approvals, and obligations
  • Comprehensive execution logs show what ran, when, and on whose behalf

Enterprise Grade Security

  • Fine-grained RBAC helps control which agents and users can access Ironclad
  • Scoped, least privilege access protects contract and approval data
  • Full audit trails support legal review, governance, and compliance

Rolling this out across your team?

Give your team centralized access control across every framework with Composio’s MCP Gateway.

EXPLORE MCP GATEWAY
FAQ

Frequently asked questions

Ironclad requires connections to go through your own OAuth app. You register it once with Ironclad, add its client ID and secret in the Composio dashboard, and from then on everyone connects by signing in to Ironclad as usual. Composio handles the rest of the flow and the token refresh.

Yes! Composio's Tool Router enables agents to use multiple toolkits. Learn more.

Yes. Composio is SOC 2 Type II compliant and is built to keep your Ironclad connection and credentials secure. OAuth tokens and API keys are encrypted, and sensitive customer data is protected at rest and in transit.

Composio also undergoes independent security testing and continuously monitors its systems for security threats. You can review the latest reports and policies in the Composio Trust Center.

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

When you connect a Ironclad account through Composio, every action runs under that account, so anything the agent creates, sends, or changes shows up in Ironclad as done by you. Keep an approval step in your prompt for actions with side effects, such as sending or deleting, and have the agent draft first.

Exactly the ones Ironclad lists on its consent screen when you connect. Review that screen before approving. If you connect a work account, your Ironclad administrator may need to approve the app first, and you can revoke the access inside Ironclad whenever you want.

Yes. Composio supports multiple connected accounts for the same app, and that works in Claude, ChatGPT, or any other assistant you connect through Composio. Give each Ironclad connection a name such as work or personal, and the assistant uses the one you mention in the request. Each account keeps its own credentials and nothing is merged.

Composio refreshes Ironclad tokens automatically, so day to day you do nothing. If you revoke access inside Ironclad, or Ironclad invalidates the session, the connection shows as expired in Composio and the agent stops acting on that account until you reconnect it, which is a single sign-in.

Composio's free Hobby plan includes 100,000 tool calls per month with no credit card, which covers most personal Ironclad use. Paid plans add higher limits and team features. Your Ironclad plan and its API limits still apply as usual.

Built-in connectors usually give one AI access to a limited set of apps. Many people use Composio because it lets their AI connect to more apps than it normally supports, or connect to multiple accounts for the same app (e.g. connect Claude to multiple Ironclad accounts).

With Composio, you connect Ironclad once and then use it across different AI assistants without setting it up separately in each one. Connect your apps to Composio once, then connect Composio to whichever AI you use, whether that's Claude, ChatGPT, Hermes, or your own custom assistant.

Start with Ironclad.It takes 30 seconds.

Managed auth, hosted MCP servers, and every Ironclad tool your agent needs.Free to start.

Start building