Skip to content

Dealroom

by sergiomaldo · remote · no sign-in to list tools · v1.1.0 · published by GitHub user sergiomaldo

Make a contract in one call, or negotiate it clause by clause with a published compromise formula.

Deletes · 1Final · 1Changes · 6

18 tools: 1 can delete or cancel things, 1 do something that can't be undone, 6 change things and 10 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http dealroom https://dealroom.todo.law/api/v1/agent/mcp --header 'Authorization: <your-authorization>'

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

18 tools

Deletes or cancels 1Claude Code: deny
  • delete_dealDelete one of your single-party deals and its data: the parties, the other side's details, the clause choices, the inputs and the contract (documents are made on request and never …No findings

    Why it is in this group

    • The name "delete_deal" says "delete": a word for removing or ending something.
    • The description says "cannot be undone".
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Delete one of your single-party deals and its data: the parties, the other side's details, the clause choices, the inputs and the contract (documents are made on request and never stored). This cannot be undone. Only the account that made the deal can delete it; for any other account it does not exist (HTTP 404, also when it was already deleted). A deal another party takes part in, such as a two-party negotiation, is refused with HTTP 409 and nothing is deleted. The payment record is kept for billing (amount, date, account and deal id, no names or contract text), and a spent credit is not given back.

    Annotations the server declares

    • title: Delete a deal
    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: false
Can't be undone 1Claude Code: ask
  • share_with_attorneyInvite a lawyer of the user's choice, by e-mail, to review the contract in Dealroom's attorney review.No findings

    Why it is in this group

    • The description's first verb is "invite": a word for sending, and what is sent cannot be taken back.
    Description, as the server wrote it
    Invite a lawyer of the user's choice, by e-mail, to review the contract in Dealroom's attorney review. Available to any lawyer the user invites. The lawyer works for the user and bills the user directly; Dealroom takes no fee and makes no recommendation. Signing waits until the lawyer approves or the user cancels the review in Dealroom. Free (no credit).

    Annotations the server declares

    • title: Invite your own lawyer to review
    • readOnlyHint: false
    • openWorldHint: false
Changes things 6Claude Code: ask
  • buy_creditsOpen a hosted checkout for a pack of ten contract credits for this API key's customer (any of its keys can spend them).No findings

    Why it is in this group

    • The description's first verb is "open": a word for a change.
    Description, as the server wrote it
    Open a hosted checkout for a pack of ten contract credits for this API key's customer (any of its keys can spend them). Returns checkoutUrl for a person to open in a browser; the credits arrive when the payment succeeds. Answers 409 where payments are off.

    Annotations the server declares

    • title: Buy credits
    • readOnlyHint: false
    • openWorldHint: false
  • create_playbookCreate a negotiation playbook defining preferences for each clause: preferred option, priority (1-5), flexibility (1-5), red lines, and acceptable alternatives.No findings

    Why it is in this group

    • The name "create_playbook" says "create": a word for a change.
    Description, as the server wrote it
    Create a negotiation playbook defining preferences for each clause: preferred option, priority (1-5), flexibility (1-5), red lines, and acceptable alternatives.

    Annotations the server declares

    • title: Create a playbook
    • readOnlyHint: false
    • openWorldHint: false
  • download_contractDownload the agreed contract as Markdown, HTML, PDF, DOCX or TXT (Markdown by default: agents read it best).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Download the agreed contract as Markdown, HTML, PDF, DOCX or TXT (Markdown by default: agents read it best). Negotiation is free; the contract is paid when its document is first fetched: one prepaid credit of the customer is spent (any of its keys draws on the one balance). Later fetches of the same deal are free. With no credit left the answer is HTTP 402 with code PAYMENT_REQUIRED and the link to buy credits.

    Annotations the server declares

    • title: Download a contract
    • readOnlyHint: false
    • openWorldHint: false
  • generate_contractMake a finished contract in one call: give the contract type, your side's details and, if you know them, the other side's.No findings

    Why it is in this group

    • The name "generate_contract" says "generate": a word for a change.
    Description, as the server wrote it
    Make a finished contract in one call: give the contract type, your side's details and, if you know them, the other side's. Clauses you leave out take the template's middle-ground option (the most neutral one; for an optional clause such as non-solicitation, none), never simply the first option listed. One prepaid credit is spent (the same price as any contract); with no credit the answer is HTTP 402 with code PAYMENT_REQUIRED and nothing is created. Returns the contract as Markdown, then the deal id, the link where the person can read it in Dealroom and the Markdown, HTML, PDF, DOCX and TXT links (free to fetch again).

    Annotations the server declares

    • title: Make a contract in one call
    • readOnlyHint: false
    • openWorldHint: false
  • initiate_negotiationStart a new contract negotiation.No findings

    Why it is in this group

    • The description's first verb is "start": a word for a change.
    Description, as the server wrote it
    Start a new contract negotiation. Returns a negotiation token for the respondent to join.

    Annotations the server declares

    • title: Start a negotiation
    • readOnlyHint: false
    • openWorldHint: false
  • join_negotiationJoin an existing negotiation as the respondent.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Join an existing negotiation as the respondent. Triggers automatic compromise resolution and returns the result.

    Annotations the server declares

    • title: Join a negotiation
    • readOnlyHint: false
    • openWorldHint: false
Only reads 10Claude Code: allow
  • explain_optionsThe options of one clause, each with its description and its pros and cons for each party, plus the clause's trade-off text, exactly as the template holds them.No findings

    Why it is in this group

    • The name "explain_options" says "explain": a word for reading.
    Description, as the server wrote it
    The options of one clause, each with its description and its pros and cons for each party, plus the clause's trade-off text, exactly as the template holds them. Nothing is ranked or recommended; when the template has no such text, the answer says so. Free (no credit).

    Annotations the server declares

    • title: Explain a clause's options
    • readOnlyHint: true
    • openWorldHint: false
  • find_templateDescribe the matter in your own words; Dealroom answers with the contract types whose names or usual terms appear in the description (code, title, guide link), or "No template cove…No findings

    Why it is in this group

    • The name "find_template" says "find": a word for reading.
    Description, as the server wrote it
    Describe the matter in your own words; Dealroom answers with the contract types whose names or usual terms appear in the description (code, title, guide link), or "No template covers this. Such matters are usually handled by a lawyer." The matching is by words, with no AI model. A lawsuit or claim received, a subpoena, a data breach or a letter from a regulator is flagged as a time-sensitive matter outside the templates (outsideTemplates). It does not say what the user needs and names no lawyer. Free; no API key needed.

    Annotations the server declares

    • title: Find a template
    • readOnlyHint: true
    • openWorldHint: false
  • get_credit_balanceRemaining contract credits of this API key's customer (one balance shared by all of its keys) and the latest ledger entries.No findings

    Why it is in this group

    • The name "get_credit_balance" says "get": a word for reading.
    Description, as the server wrote it
    Remaining contract credits of this API key's customer (one balance shared by all of its keys) and the latest ledger entries.

    Annotations the server declares

    • title: Credit balance
    • readOnlyHint: true
    • openWorldHint: false
  • get_deadlinesA small public calendar of statutory dates: the Section 83(b) election (30 days after the stock is transferred), the SEC Form D notice (15 calendar days after the first sale) and t…No findings

    Why it is in this group

    • The name "get_deadlines" says "get": a word for reading.
    Description, as the server wrote it
    A small public calendar of statutory dates: the Section 83(b) election (30 days after the stock is transferred), the SEC Form D notice (15 calendar days after the first sale) and the Delaware annual report and franchise tax (1 March). Give grantDate or firstSaleDate to count the due date. Each item carries its official source and is marked "Verify with the official source." General public dates, not advice. Free; no API key needed.

    Annotations the server declares

    • title: Public statutory deadlines
    • readOnlyHint: true
    • openWorldHint: false
  • get_dealGet deal details including per-clause agreed options, satisfaction scores, and reasoning.No findings

    Why it is in this group

    • The name "get_deal" says "get": a word for reading.
    Description, as the server wrote it
    Get deal details including per-clause agreed options, satisfaction scores, and reasoning.

    Annotations the server declares

    • title: Get a deal
    • readOnlyHint: true
    • openWorldHint: false
  • get_subscriptionsList earlier per-skill subscriptions and their status.No findings

    Why it is in this group

    • The name "get_subscriptions" says "get": a word for reading.
    Description, as the server wrote it
    List earlier per-skill subscriptions and their status. Skills are no longer sold one by one; every template is included.

    Annotations the server declares

    • title: Earlier subscriptions
    • readOnlyHint: true
    • openWorldHint: false
  • get_templateGet full details for a specific contract template including all clauses and their options with bias values.No findings

    Why it is in this group

    • The name "get_template" says "get": a word for reading.
    Description, as the server wrote it
    Get full details for a specific contract template including all clauses and their options with bias values.

    Annotations the server declares

    • title: Get a template
    • readOnlyHint: true
    • openWorldHint: false
  • list_contract_typesEvery contract type Dealroom can make, with the code to use as contractType, the guide slug, the governing laws and languages it is offered in, the role the caller can take (DPA an…No findings

    Why it is in this group

    • The name "list_contract_types" says "list": a word for reading.
    Description, as the server wrote it
    Every contract type Dealroom can make, with the code to use as contractType, the guide slug, the governing laws and languages it is offered in, the role the caller can take (DPA and BAA only) and the inputs it asks for. Each input says whether it is required and, when it has one, its default; mustSend marks the required inputs without a default. Send every required input in terms. A required input with a default can be left out: the default is applied. Call this first to know what to ask the user. Send contractType to get one type with its inputs, or summary true to get every type without its inputs (a short list of codes). No API key needed.

    Annotations the server declares

    • title: List contract types
    • readOnlyHint: true
    • openWorldHint: false
  • list_obligationsWhat a contract commits its parties to and the dates it states: the obligations ledger (recurring and event-driven duties, for the DPA today) and, for every contract type, the date…No findings

    Why it is in this group

    • The name "list_obligations" says "list": a word for reading.
    Description, as the server wrote it
    What a contract commits its parties to and the dates it states: the obligations ledger (recurring and event-driven duties, for the DPA today) and, for every contract type, the date inputs, the term, notice and renewal inputs and the agreed option of each term, renewal, termination, notice or duration clause. Facts as the contract states them; the contract text governs. Free (no credit).

    Annotations the server declares

    • title: Obligations and dates of a contract
    • readOnlyHint: true
    • openWorldHint: false
  • list_templatesList available contract templates with clauses, options, and bias values.No findings

    Why it is in this group

    • The name "list_templates" says "list": a word for reading.
    Description, as the server wrote it
    List available contract templates with clauses, options, and bias values. Use this to understand which contract types are available and what options exist for each clause. Pass `query` to search by code, abbreviation or name in English or Spanish ("nda", "dpa", "hipaa", "confidencialidad"), best match first.

    Annotations the server declares

    • title: List templates
    • readOnlyHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.1.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http dealroom https://dealroom.todo.law/api/v1/agent/mcp --header 'Authorization: <your-authorization>'

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__dealroom__list_contract_types",
      "mcp__dealroom__list_templates",
      "mcp__dealroom__get_template",
      "mcp__dealroom__get_deal",
      "mcp__dealroom__get_credit_balance",
      "mcp__dealroom__get_subscriptions",
      "mcp__dealroom__find_template",
      "mcp__dealroom__explain_options",
      "mcp__dealroom__list_obligations",
      "mcp__dealroom__get_deadlines"
    ],
    "ask": [
      "mcp__dealroom__generate_contract",
      "mcp__dealroom__create_playbook",
      "mcp__dealroom__initiate_negotiation",
      "mcp__dealroom__join_negotiation",
      "mcp__dealroom__download_contract",
      "mcp__dealroom__buy_credits",
      "mcp__dealroom__share_with_attorney"
    ],
    "deny": [
      "mcp__dealroom__delete_deal"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as dealroom. Review it before you use it.