# Send a mutual NDA with an AI assistant

Ask an AI assistant to prepare a mutual NDA draft. You sign in, review the terms, sign as Party 1, and send the agreement.

## You ask an assistant to send a mutual NDA.

Use this page when you ask an AI assistant to prepare a mutual NDA for you.

You keep control of the agreement. You sign the mutual NDA, and you send it to the recipient.

## The assistant prepares the draft and returns one link.

The assistant sends the party details and the terms to MNDAtoday. MNDAtoday returns one link.

The application calls this prepared draft a handoff.

Complete these four steps after you receive the link.

1. Step 1
    
    ## Open the link from the assistant.
    
    The assistant gives one link to you. Open the link in your browser.
    
    The link expires 7 days after MNDAtoday creates it.
    
2. Step 2
    
    ## Sign in with your email address.
    
    A new email address creates your account. MNDAtoday then creates the draft under your account.
    
    The link opens the draft only for the account with the owner email address in the draft.
    
3. Step 3
    
    ## Review the terms and lock the document.
    
    Check both parties, the purpose, both terms, the governing law, and the jurisdiction.
    
    MNDAtoday locks the document before the first signature.
    
4. Step 4
    
    ## Sign as Party 1 and send the mutual NDA.
    
    Type your legal name and sign the locked document. Then send the mutual NDA to Party 2.
    
    The recipient reviews the locked agreement and signs without an account.
    

## The assistant never signs and never sends.

- The assistant never signs the mutual NDA.
- The assistant never sends the mutual NDA to the recipient.
- The assistant never locks the document.
- The assistant never pays for the plan.
- MNDAtoday sends no email for a prepared draft.

## The account owner pays for the plan.

The early adopter plan costs $5 USD each month. The plan includes 20 MNDAs. Each additional MNDA costs $1 USD.

The recipient pays nothing. The assistant pays nothing.

 [Read the pricing details](https://mndatoday.com/pricing/)

## Add MNDAtoday to your assistant.

MNDAtoday has a remote MCP server. An assistant that accepts a remote MCP server URL can use it to prepare a mutual NDA draft for you.

### Server URL

https://app.mndatoday.com/mcp

The server uses the Streamable HTTP transport. The server needs no account, no key, and no authentication.

Use the MCP server when your client accepts MCP. Use the HTTP endpoint when your client does not accept MCP.

### Setup

1. Add a custom connector or remote MCP server with this URL.
2. Ask the assistant to prepare a mutual NDA for you.
3. Open the link that the assistant gives to you.

Some clients use a JSON configuration file. Add the server with this shape:

```
{
  "mcpServers": {
    "mndatoday": {
      "url": "https://app.mndatoday.com/mcp"
    }
  }
}
```

### Tools

- **prepare_mnda**: Prepares a mutual NDA draft. The fields and the default values are the same as the fields and the default values of the HTTP endpoint. The tool returns the link, the expiry time, and the next step.
- **check_prepared_mnda**: Reads a prepared draft. The input is the link. The tool returns the title, the owner email address, the recipient name, the expiry time, and the claim status of the owner.
- **describe_mndatoday**: Returns the product facts about MNDAtoday.

The assistant never signs, never sends, never locks the document, and never pays. The account owner does these steps.

## Prepare a draft with one request.

Send one POST request with a JSON body. MNDAtoday returns one link for the account owner. The request needs no account.

### Endpoint

POST https://app.mndatoday.com/api/handoffs

The endpoint accepts a JSON body and needs no key.

The endpoint answers with the header Access-Control-Allow-Origin: \* and accepts an OPTIONS preflight request. A browser-based agent can call it.

### Minimal request

```
POST https://app.mndatoday.com/api/handoffs
Content-Type: application/json

{
  "ownerEmail": "alex@example.com",
  "owner": { "legalName": "Northstar Labs, Inc." },
  "recipient": {
    "legalName": "Daybreak Systems, Inc.",
    "signerEmail": "sam@example.net"
  }
}
```

### Required fields

- **ownerEmail**: The email address of the account owner. The claim succeeds only for the account with this email address.
- **owner.legalName**: The legal name of Party 1.
- **recipient.legalName**: The legal name of Party 2.
- **recipient.signerEmail**: The email address of the Party 2 signer.

### Optional fields and default values

- **title**: Text. The default value is "Mutual NDA".
- **purpose**: Text. The default value is "Evaluating whether to enter into a business relationship with the other party."
- **mndaTermType**: "fixed" or "until-terminated". The default value is "fixed".
- **mndaTermMonths**: 12, 24, 36, or 60. The default value is 12.
- **confidentialityTermType**: "fixed" or "perpetual". The default value is "fixed".
- **confidentialityTermMonths**: 12, 24, 36, or 60. The default value is 24.
- **governingLaw**: A United States state name or "District of Columbia". The default value is "Delaware".
- **jurisdiction**: The venue: a county or a city with a state. The default value is "New Castle County, Delaware".
- **owner.signerName and owner.signerTitle**: The name and the title of the Party 1 signer. Each default value is empty.
- **recipient.signerName and recipient.signerTitle**: The name and the title of the Party 2 signer. Each default value is empty.
- **returnUrl**: An absolute https address. MNDAtoday shows this address to the owner after the owner sends the mutual NDA. MNDAtoday starts no automatic redirect.
- **source**: The name of your assistant, up to 120 characters.

### Response

```
201 Created

{
  "handoffId": "h_8f2c41d9",
  "url": "https://app.mndatoday.com/start#handoff=…",
  "expiresAt": "2026-09-28T17:04:11Z",
  "nextStep": "Give the link to the account owner. The owner signs in, reviews the terms, locks the document, signs as Party 1, and sends."
}
```

- **handoffId**: The identifier of the prepared draft.
- **url**: The one link for the account owner.
- **expiresAt**: The expiry time of the link. A prepared draft expires 7 days after MNDAtoday creates it.
- **nextStep**: The instruction text for the account owner.

### Errors

- **400 invalid_input**: One field is missing or invalid. The details name each field.
- **413 request_too_large**: The body is larger than 8 KB.
- **429 too_many_requests**: The address sent more than 5 requests in one minute.

Each error body uses the shape { "error": { "code", "message", "details" } }.

### Limits

- The request body limit is 8 KB.
- The rate limit is 5 requests each minute for one address.
- A prepared draft expires 7 days after MNDAtoday creates it.
- MNDAtoday sends no email for a prepared draft.
- The claim succeeds only for the account with the owner email address in the prepared draft.
- Each agreement uses two parties and United States governing law.

### Preview endpoint

GET https://app.mndatoday.com/api/handoffs/preview?token=…

The response contains title, ownerEmail, recipientName, expiresAt, and claimed.

### Machine-readable description

Read the OpenAPI document for the complete request schema.

 [Read the OpenAPI document](https://app.mndatoday.com/api/openapi.json)

## Start your mutual NDA.

Create the agreement and sign first.

 [Start a mutual NDA](https://app.mndatoday.com/start)

Canonical URL: https://mndatoday.com/agents/
