Skip to main content
RCP is one open, versioned JSON-RPC protocol so any RAG engine — any language, any vendor — can expose embed, rerank, retrieve, graph, and index, and any client can consume it uniformly. It is the retrieval companion to MCP and ACP, small enough for a thin client to fully consume and expressive enough for a frontier engine to fully express.

Get started

What RCP is, the problem it solves, and a working engine in five minutes.

Read the protocol

The wire format, capabilities, methods, and errors — one concept per page.

Pick an SDK

Native C++, Python, Node.js, and Rust SDKs that interoperate byte-for-byte.

Why RCP

Every RAG stack reinvents the same wire: embed, rerank, retrieve, filter, cite. MCP standardised tools; ACP standardised agents; nothing standardised the retrieval layer that grounds them. RCP is that layer.

Frontier-native

Hybrid dense + sparse search, ColBERT/ColPali late interaction (MaxSim), rerankers, MMR diversification, GraphRAG, agentic multi-hop, citations, and metadata filtering are all first-class — not bolted on.

Transport-free

JSON-RPC 2.0 over newline-delimited stdio or HTTP. If it can read a line and parse JSON, it can speak RCP.

Capability-negotiated

A server advertises exactly what it can do; clients gate calls on capabilities and fail fast, client-side, before any I/O.

Composable

A registry (rcp.json) lets a client target one backend (Selector) or fuse many (Federation) with Reciprocal Rank Fusion.

The missing third protocol

An agent runtime speaks ACP to its client, calls tools over MCP, and fetches grounding context over RCP:
All three share JSON-RPC framing, an initialize/capabilities handshake, _meta extensibility, and cursor pagination — learn one, you know the shape of all three. RCP isn’t a competitor to MCP — it’s the retrieval sibling. (Why not just an MCP tool?)

The retrieval pipeline

Transform → recall → rerank → diversify → cite, each stage independently negotiable behind a single retrieve call.

Why not just an MCP tool?

Six axes where retrieval outgrows an opaque search tool — and how the two protocols compose.

Conformance levels

L0 Base, L1 Retrieval, L2 SOTA — with a transport-agnostic test suite that validates any server in any language.