---
title: "MCP JSON-RPC"
method: POST
path: "/api/mcp"
tags: ["mcp"]
---

# MCP JSON-RPC

`POST /api/mcp`

## Request

- Base URL: `https://koskamo.com`
- URL: `https://koskamo.com/api/mcp`
- Auth: one of:
  - none
  - HTTP bearer

JSON-RPC 2.0 endpoint exposing: koskamo_retrieve, koskamo_list_datasets, koskamo_propose_revision, koskamo_get_history, koskamo_list_revisions, koskamo_decide_revision, koskamo_find_mcp_server, koskamo_register_mcp_server. Accepted notifications return 202. Send Accept: application/json, text/event-stream and the negotiated MCP-Protocol-Version header. Supported protocol revisions: 2025-11-25, 2025-06-18, 2025-03-26. Rate limit: 40 requests per minute per IP. Optional ksk_live_ bearer key unlocks proposing revisions and private datasets you own.

## Request body

- object
  - `jsonrpc` '2.0', required
  - `id` union
    - string
    - number
  - `method` string, required: For example initialize, tools/list, or tools/call
  - `params` object

## Response `200`

JSON-RPC response envelope

- object

## Other responses

- `202`: Notification accepted; no body
- `400`: Invalid JSON or unsupported protocol version
- `401`: Invalid bearer key
- `403`: Origin not allowed
- `406`: Accept must include application/json and text/event-stream
- `415`: Content-Type must be application/json
- `429`: Rate limited (40 requests per minute per IP); wait for Retry-After
- `503`: Knowledge service unavailable

---

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