Skip to content

Shorten manage_browsers and manage_vault_wallets descriptions - #275

Closed
masnwilliams wants to merge 2 commits into
mcp-coverage-updatefrom
hypeship/trim-tool-descriptions
Closed

masnwilliams wants to merge 2 commits into
mcp-coverage-updatefrom
hypeship/trim-tool-descriptions

Conversation

@masnwilliams

@masnwilliams masnwilliams commented Nov 13, 2026 •

Copy link
Copy Markdown
Collaborator

Stacked on #262 (base mcp-coverage-update). It will be retargeted to main once #262 merges. No commits are pushed to the updater branch.

Summary

The 0.148.0 coverage update grew two tool descriptions to several times their earlier size. This PR moves per-action detail to where the model reads it: parameter descriptions for anything needed before a call, and the response or error for anything needed after one. Each tool description keeps only what is needed to choose an action.

main #262 this PR
manage_browsers description (chars) 786 2,943 1,196
manage_browsers full tool entry 20,448 24,546 22,915
manage_vault_wallets description (chars) 2,326 5,138 2,466
manage_vault_wallets full tool entry 6,403 11,115 8,987
tools/list payload (all toolsets, vaults and search on) 199,395 233,800 230,041

No other tool description changed.

manage_browsers

  • The description names create_live_view and save_profile, says live-view URLs are bearer credentials that cannot be revoked before they expire, and says save_profile restarts the browser and should be called at a stable point.
  • Fixes "read-only or control-only" wording. A control URL also shows the browser, so the description now says "a read or control live-view url".
  • save_profile success responses now include a note with post-save behaviour: reconnecting clients, what is omitted from the profile, timeout_seconds restarting, how other browsers and pools pick up the snapshot, and how overlapping saves are ordered. This follows the existing create_live_view note pattern. save_profile is new in MCP: Update Node SDK to 0.148.0 #262, so no existing client depends on the old response shape.
  • save_profile errors append retry guidance: browser_busy can be retried; browser_lease_changed and browser_not_active cannot be retried against that browser; after a timeout, check the profile before calling again.
  • The profile_id/profile_name descriptions say saving does not attach the profile or change save_profile_changes.
  • Dropped from the description: the leased_at sentence (the field is returned as-is on browser records and is described on manage_browser_pools and manage_apps), and "(optionally with start_replay)", which the start_replay parameter already covers.

manage_vault_wallets

  • Shop Pay and link token_refresh detail was repeated in the spec description and in the wallet response guidance. It is removed from the tool description. spec now also says token_refresh is fixed at creation and that a failed AgentCard import creates nothing and can be retried.
  • Add/remove detail moved to the enrollment and payment_method_id descriptions: single-use links, how long they last, purchase_unresolved, and removal_pending. The post-call guidance from paymentMethodOperationResponse and the KERNEL wallet guidance is unchanged.

destructiveHint on manage_vault_wallets: kept at true

#262 changed it from false to true. I kept it:

  • The MCP spec: destructiveHint: false means "the tool performs only additive updates" (the default is true). Before MCP: Update Node SDK to 0.148.0 #262, the tool had only create (create or retrieve by immutable key) and payment_methods (a read), so false was accurate. MCP: Update Node SDK to 0.148.0 #262 added remove_payment_method, which removes a payment method, so false would now be incorrect.
  • Repo convention: every other manage_* tool sets destructiveHint: true. The tools set to false (get_connection_context, search_docs, web_search, the auth login apps) never delete anything.
  • Trade-off: clients that confirm destructive tools will now prompt for wallet create and payment_methods calls too. Avoiding that while staying accurate would mean moving add_payment_method/remove_payment_method into their own tool. That is a separate design change and is not made here.

Formatting

Ran prettier on the 8 files from #262 that failed format:check. That is a separate commit with no content changes.

Testing

  • bunx tsc --noEmit: passes
  • bun test: all 1,285 tests pass. The save_profile tests now check the note in the success response and a new test checks the error guidance.
  • prettier --check "src/**/*.ts": passes

Note

Low Risk
Mostly MCP-facing documentation and response shape enrichment (note on save_profile); no changes to core auth, payment execution, or browser control logic.

Overview
Trims oversized manage_browsers and manage_vault_wallets tool descriptions by keeping only action-selection context in tools/list, and moving operational detail into parameter docs and call-time responses.

For save_profile, success payloads now include a note (browser restart, reconnect steps, omitted profile data, overlapping saves, timeout_seconds) matching the existing live-view pattern; failures append saveProfileErrorNote retry guidance via throwToolError. profile_id / profile_name descriptions clarify that saving does not attach the profile or change save_profile_changes. Tests assert the new note content and add a browser_busy error-case test.

manage_vault_wallets shortens its top-level description and shifts Shop Pay / Link token_refresh and add/remove payment-method behavior into spec, enrollment, and payment_method_id field descriptions. Several test files receive Prettier-only formatting with no behavior change.

Reviewed by Cursor Bugbot for commit 35ecb0b. Bugbot is set up for automated code reviews on this repo. Configure here.

Move save_profile result and retry semantics into its response note and
error note, and wallet add/remove and token-refresh detail into the
relevant parameter descriptions, keeping only what is needed to choose an
action in each tool description.
@vercel

vercel Bot commented Nov 13, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
mcp Ready Ready Preview Nov 13, 2026 5:08pm UTC

@masnwilliams

Copy link
Copy Markdown
Collaborator Author

Folded into #262 (commits 9746ee5 and 15ed638 on mcp-coverage-update).

This branch was successfully deployed

1 active deployment
Preview — 35ecb0bd Deployed Nov 13, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant