rift
DeveloperProtocol

Protocol

Since v0.0.35

Rift publishes one generated contract through these definitions:

  • Core model - source discovery, identities, and provider facts shared by protocol surfaces
  • MCP reference - tool arguments, resource responses, and failure behavior

For an introduction through an agent's workflow, start with the MCP guide.

The Rust models in crates/rift-protocol are the source of truth. The served tool surface is exported as JSON Schema at mcp.json, and the reference explains it.

How a request finds its target

An agent's rift mcp reads the workspace's ServerLock - or starts the server that writes it - and forwards MCP requests to the endpoint it names. Each request carries its own arguments. Search and exact reads return an immutable view with an expiry. A later request can name that view; expiry refuses the read instead of selecting latest implicitly. Search uses page_index; get_symbol uses declaration_cursor for remaining declarations of one logical symbol in the same view.

Versioning

Rift uses MCP's protocol versioning without adding another version field. The MCP client carries standard MCP version metadata; Rift tool arguments contain only arguments declared by each tool's input schema.

The server advertises its current tool and resource schemas through MCP. A release freezes its exported contract for implementers and generated clients; callers do not select a snapshot on each request.

On this page