---
title: "MCP server — JSON-RPC 2.0 endpoint"
method: POST
path: "/api/mcp"
---

# MCP server — JSON-RPC 2.0 endpoint

`POST /api/mcp`

## Request

- Base URL: `https://app.atisbo.dev`
- URL: `https://app.atisbo.dev/api/mcp`
- Auth: HTTP bearer

The Model Context Protocol server: tools/list, tools/call, tools/call_batch and resources/read over JSON-RPC 2.0. Requires a workspace API key as a Bearer token. The available tools and their own typed schemas are discovered at runtime via tools/list, not enumerated here — see the MCP manifest for how a client finds this endpoint and what auth it needs before making its first call. Every key carries a scope (see the apiKey security scheme's x-scopes): `workspace` keys reach the full tool surface for one workspace; `provisioning` keys are operator-only and can call nothing except internal demo provisioning. Batching: `tools/call_batch` executes several tool calls in one HTTP round trip and returns their results as one JSON-RPC response — the batch/bulk pattern for this API, in JSON-RPC rather than a separate REST endpoint.

Pagination: list-shaped tools page with an opaque cursor — pass a previous result's `next_cursor` back as the `cursor` argument while `has_more` is true (see the CursorPage schema). The cursor is server-owned: its bytes mean nothing to the caller and may change shape between versions of the contract without notice.

## Request body

- object: A JSON-RPC 2.0 request envelope.
  - `jsonrpc` '2.0', required
  - `id` union
    - string
    - number
  - `method` 'tools/list' | 'tools/call' | 'tools/call_batch' | 'resources/read', required
  - `params` object

## Response `200`

A JSON-RPC 2.0 response (result or error).

- JsonRpcResponse: JSON-RPC 2.0 envelope: exactly one of result or error.
  - `jsonrpc` '2.0', required
  - `id` union
    - string
    - number
  - `result` object
  - `error` object
    - `code` integer, required
    - `message` string, required

## Other responses

- `401`: Missing or invalid API key.

---

[API](https://skmtc.dev/atisbo/apis/atisbo-api.md) · [All operations](https://skmtc.dev/atisbo/apis/atisbo-api/llms.txt) · [OpenAPI document](https://skmtc.dev/atisbo/apis/atisbo-api/revisions/708d199a2378?raw)
