The ClutchCall platform has an MCP (Model Context Protocol) server on the control plane. An agent that connects to it can operate your workspace. The agent can list calls, start calls, manage agents, and read analytics. Your role and your grants set the limit of what the agent can do. The endpoint is:
The transport is Streamable HTTP. The agent sends JSON-RPC 2.0 messages with POST. The server is different from the docs MCP server. The docs server gives read-only reference pages. This server operates the platform. See Coding agents for the docs server.

Authentication

The server accepts two credentials:
  1. A console session JWT. A session has the read scope and the write scope. A session can reach all organizations that the user belongs to.
  2. An MCP access key. A key is a token with the prefix mpk_. Send it as a Bearer token in the Authorization header.
A key acts as the user who made it. On each call, the server loads that user’s live memberships again. The server confines the key to one organization. If the user leaves the organization, the key stops working. After you revoke a key, the server rejects it in 30 seconds or less. A key has one or two scopes:
  • The read scope permits queries.
  • The write scope permits mutations.

Make an MCP access key

Only owners and admins can make keys.
  1. Open the console.
  2. Go to Admin → API keys → MCP access keys.
  3. Make a new key. Give the key a name that identifies the agent that will hold it.
  4. Select the read scope. Add the write scope only if the agent must change data.
  5. Set an expiry date.
  6. Copy the mpk_ token. The console shows the token one time.
An MCP access key is a durable credential. The key has the full reach of your role. Give a key the read scope only, unless the agent must change data. Set an expiry. Name the key after the agent that holds it. A clear name makes the correct key easy to revoke later.

Connect an agent

Add the server to your MCP client configuration:

The four meta-tools

The platform API has more than 540 operations. The server does not expose one MCP tool for each operation. That count is too large for MCP clients. The server exposes four meta-tools. The meta-tools reach the full catalog. An agent follows this sequence:
  1. Call whoami. The result shows the identity and the scopes of the credential.
  2. Call list_operations. With no arguments, the result is one summary line per group. Pass group to list the operations of one group. Pass filter to search all operation paths for a substring.
  3. Call describe_operation with the operation path. Do this before the first call of an operation that the agent does not know.
  4. Call call_operation with the path and the input object.

What call_operation enforces

  • A query needs the read scope. A mutation needs the write scope.
  • All role checks and grant checks of the platform apply. The server does not add a second permission system. Each call runs as the acting user.
  • For an org-scoped operation, the server pins the organization id. For a key, the server overwrites input.orgId with the key’s organization. An agent cannot reach a different tenant. For a session, pass orgId in the input. If the user belongs to exactly one organization, the server fills orgId in.
  • The server truncates a result at 200,000 characters. A truncated result contains an explicit truncation marker.

Rate limits

The server accepts a maximum of 240 requests per minute from one client IP address. This limit applies before authentication. Each platform operation also has its own rate limit. A call_operation call inherits that limit. When you exceed a limit, the server returns HTTP status 429.

Audit

The server writes each mutation to the organization audit log as an mcp.call entry. The entry names the key that made the call. The server redacts secret values (tokens, passwords, headers) from the entry before it writes the entry.

Smoke test

Send one whoami call with curl:
The result shows the acting user, the organization, the roles, and the scopes. If the server returns HTTP status 401, the key is not valid, is expired, or is revoked.