How stretto works

MCP host An IDE, a desktop app or an agent framework The agent: an LLM, calling tools
stretto-proxy Forwards every message, byte for byte, and records the session session logs
MCP server Any server Files, a database, your own API: its tools, as they are
→tools/call get_user_details {"user_id":"user_7"}
←result {"email":"c7@example.com","orders":["#W7a","#W7b"],…}

Where stretto sits

stretto-proxy wraps any MCP server. The MCP host runs it in place of the server's command, and it forwards every message both ways, unchanged. The agent keeps its prompt and its tools. Until you give the proxy a flow, it only forwards and records.

stretto init prints the host's configuration, for Claude Code, Claude Desktop, Cursor or VS Code. One proxy per server: the server's command after --, or a Streamable HTTP server with --upstream.

Arrow keys step through; space plays or pauses; M turns the narration on or off. On a touch screen, swipe.