config/mcp.json lists the MCP servers a session can turn on, in pi’s format.
Servers authenticate with headers. In a header, ${GITHUB_TOKEN} is the
session’s GitHub token, the one it uses
for git, limited to its repository and renewed on every dispatch, so GitHub’s
MCP server needs no token of its own:
mcp lists the servers to turn on, from mcp.json or registered by an
extension with pi.registerMcpServer(). The session keeps the list until a
turn sends another, and subagents use it:
mcp__<server>__<tool> and run as recorded steps
under policy. A server’s tool list is recorded too, so a replay
builds the same prompt without connecting.