Repository navigation
agent: a bundle's saved tool list opens a sandbox MCP connector without dialing it - #479
Merged
Merged
Conversation
…ut dialing it A bundled session with a sandbox-routed MCP server (a browser in the sandbox) had to run tools/list at open to build its prompt, which woke or created the sandbox before the model asked for anything. A bundle may now carry .mcp-tools.json, a saved tools/list per connector. Those tools are advertised at open with no exec or MCP request; the first call dials the server, and a live list that differs replaces the saved one. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JimHGjsfk2Ktm5GxyZJKKk
jaredLunde
enabled auto-merge
October 23, 2026 22:22
…w argument Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JimHGjsfk2Ktm5GxyZJKKk
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A bundled session whose browser MCP server lives in the sandbox had to run `tools/list` at open to build its prompt, so the VM was created before the model asked for anything.
A bundle may now carry `.mcp-tools.json` (`{"": [CachedTool]}`) at its root. For a `sandbox: true` grant connector with a saved list, the tools are advertised through the cached-manifest path with no exec or MCP request at open. The first call dials the server (creating the VM), and the existing `Relist` replaces the saved list if the live one differs. No file, or a non-sandbox connector: unchanged. Bounds: the file is read through the bundle with a 1 MiB cap, a server listing over 256 tools is ignored, and the lists live in the session's dial and are freed with it; nothing is written to disk.
Tests (failed before): `serve_service_bundle_mcp_tools.rs` proves 0 MCP and 0 exec requests at open with the saved tool advertised and that the first call dials once; and that a differing live list replaces the saved one (the saved `ghost` goes, the live `fail` arrives).
🤖 Generated with Claude Code
https://claude.ai/code/session_01JimHGjsfk2Ktm5GxyZJKKk