Capabilities an agent can't misuse.

Function calling tells an agent what a tool does. It says nothing about what has to be true before or after it runs. Traverse exposes governed capabilities over the Model Context Protocol — an agent discovers them, reads their actual contract, and every call is validated and traced.

Shipped traverse-mcp stdio server

An agent that discovers a tool still doesn't know its rules.

A JSON schema for a function's arguments tells an agent the shape of a call. It doesn't say what has to be true beforehand, what's guaranteed afterward, or what the agent should do if a precondition fails. Traverse capabilities carry that as a real contract — preconditions, postconditions, and permissions — and the runtime enforces it on every call, not just the ones a well-behaved agent happens to check first.

Discover, inspect, execute, trace.

Every agent session follows the same shape, whether it's Claude, GPT, or anything else that speaks MCP.

01
Discover

List content groups and entrypoints. No credentials required — discovery is always open, even in bearer-token mode.

02
Inspect

Read the real contract for an entrypoint — input/output schema, preconditions, postconditions — before proposing a call.

03
Execute

Call it. The runtime validates the input against the contract first — bad calls are rejected before they run, not after.

04
Trace

Every execution returns a public trace summary — a redacted, structured record of what ran and what it returned.

Nine commands, one JSON envelope.

This is the actual command set exposed by traverse-mcp today — not an illustrative subset.

describe_serverServer identity and capabilities — the first call any agent makes.
list_content_groupsList the available content groups (the first one shipped is core-runtime-example).
describe_content_groupDetail on one content group — what capabilities, events, and workflows it holds.
list_entrypointsList the capabilities and workflows an agent can actually call.
describe_entrypointThe full contract for one entrypoint — schema, preconditions, postconditions.
validate_entrypointDry-run a proposed input against the contract without executing anything.
execute_entrypointRun it. Returns a public trace summary in the response.
render_execution_reportA human- or agent-readable report of a past execution.
shutdownTerminate the server session cleanly.

Run the server, connect an agent.

The only supported bootstrap mode today is stdio. Discovery runs in the open by default; set a bearer token to gate execution specifically, not discovery.

terminal
$cargo run -p traverse-mcp -- stdio
MCP server ready on stdio (local_trust mode)

For a real, end-to-end agent session — connect, discover, inspect a contract, execute the approved plan-expedition workflow — follow the full walkthrough.

Read the real-agent exercise →
Honest limits, today
Stdio only. traverse-mcp runs as a subprocess an agent host launches — it isn't a library an agent process can link and call in-process yet. A library API is planned but not built.
One content group shipped. The example domain exposed today is the expedition planning workflow. Broader multi-domain discovery is not yet built.
Trace is redacted by default. Execution responses carry a public trace summary, not the full internal runtime trace.

Connect an agent to Traverse.

The MCP setup guide walks through configuring Claude or any MCP-compatible client against a local server.

MCP setup guide → See the full system