API reference

API reference · API

The hosted MCP server (Streamable HTTP)

POST/mcpAPI key

A Model Context Protocol server over the Streamable HTTP transport, stateless: no Mcp-Session-Id is issued and every answer is application/json. Send the key as Authorization: Bearer, and Accept: application/json, text/event-stream. Tools: antimatter_models, antimatter_estimate, antimatter_cheapest, antimatter_chat (chat scope), antimatter_ensemble (chat scope), antimatter_credits (read scope), antimatter_agent_create (agents scope), antimatter_agents (agents scope), antimatter_agent_top_up (agents scope). While video and sound jobs are on, Nova Studio's tools too: antimatter_studio_models, antimatter_studio_quote (read scope), antimatter_studio_make (chat scope), antimatter_studio_job (read scope), antimatter_studio_projects (read scope), antimatter_studio_project (read scope), antimatter_studio_characters (read scope), antimatter_studio_character (read scope), antimatter_studio_character_make (chat scope), antimatter_studio_character_delete (chat scope), which an agent's key cannot use; antimatter_studio_make is billed as POST /v1/studio/jobs. The key is checked as at /v1: a frozen account, an expired or rotated out key and an address outside its allowlist are refused. Every POST spends the key's own per minute window, the one /v1/chat/completions spends, and a batch spends one per tool call. antimatter_chat is billed and metered as a chat completion.

Request body

application/json, required

Request body fields
FieldTypeWhat it is
jsonrpcrequired"2.0"
idstring or integer
methodstring
paramsobject

Example

{
  "jsonrpc": "2.0",
  "id": "string",
  "method": "string",
  "params": {}
}

Answer 200

The JSON-RPC response, or responses for a batch.

The answer's fields are not named in the document.

Answer 202

Notifications only: accepted, no body.

Errors

  • 400Not JSON-RPC, or not JSON.
  • 401No key, or a key that does not verify. Carries WWW-Authenticate.
  • 403A frozen account, or an address outside the key's allowlist.
  • 406The Accept header does not take both JSON and event streams.
  • 413The body is over the inference cap.
  • 429The key's per minute window is spent. Carries retry-after.

Every error answers in one shape, with its type, code and the field it names. The whole list is in the docs' Errors section.

Antimatter