Cerclen API

Use Cerclen from an AI assistant (MCP)

Connect Claude Code, an agent on the Claude API, or any MCP client to Cerclen with your API key.

Cerclen runs an MCP server, so an AI assistant can read a deal's request list and answer requests for you, in plain language: "What's assigned to me on Project Kestrel that's still open?", "Draft answers to the open tax requests from the data room index."

  • URL: https://app.cerclen.com/api/mcp (Streamable HTTP)
  • Authentication: Authorization: Bearer <key>, an API key from your organization's API Keys page (how). The assistant acts as you, within the key's limits: a read-only key reads, and a key limited to some deals sees only those.

What the assistant posts goes out at once under your name, marked via API, and the other side is notified. Give it a read-only key until you trust what it does, and keep it to the deals it needs.

Claude Code

Load your key as in Getting started, then:

claude mcp add --transport http cerclen https://app.cerclen.com/api/mcp \
  --header "Authorization: Bearer $CERCLEN_KEY"

Or share it with a project in .mcp.json, with the key left to each person's environment:

.mcp.json
{
  "mcpServers": {
    "cerclen": {
      "type": "http",
      "url": "https://app.cerclen.com/api/mcp",
      "headers": { "Authorization": "Bearer ${CERCLEN_KEY}" }
    }
  }
}

An agent on the Claude API

The Messages API connects to the server for you, with the key as its authorization_token:

import os
import anthropic

client = anthropic.Anthropic()
response = client.beta.messages.create(
    model="claude-opus-5-5",
    max_tokens=4000,
    messages=[{"role": "user", "content": "Which requests on Project Kestrel are open and assigned to me?"}],
    mcp_servers=[
        {
            "type": "url",
            "url": "https://app.cerclen.com/api/mcp",
            "name": "cerclen",
            "authorization_token": os.environ["CERCLEN_KEY"],
        }
    ],
    tools=[{"type": "mcp_toolset", "mcp_server_name": "cerclen"}],
    betas=["mcp-client-2025-11-20"],
)

Other clients

Any MCP client that connects to remote servers with a custom header works: give it the URL and the Authorization header above. Adding Cerclen as a connector in the Claude app, by signing in with your Cerclen account rather than pasting a key, is planned.

Tools

ToolWhat it doesWrites
whoamiWho the key acts as, its organization and limits
list_dealsThe deals the key reaches
get_dealA deal, and your person id on it
list_peopleEveryone on a deal
list_requestsA deal's list in short rows; filter by status, assigned to you, or a word
get_requestA request in full, with its conversation
create_requestRaise a request or a section (the side that runs the list)Yes
update_requestEdit, assign, or move the status; clear empties a fieldYes
post_messageAnswer, ask, refer, or note, with linksYes
get_download_linkA short-lived link to a file given in answer

Each tool does what the API does, with the same rules and the same errors: a refused call comes back as a tool error naming its status and reason, such as {"status": 403, "code": "forbidden", "reason": "read_only_key"}. Every tool call counts toward the key's rate limit.

On this page