Issue #2104: Deterministic default+custom toolset resolution ordering · github/github-mcp-server · Discussion #2106 · GitHub
Heading
Bold
Italic
Quote
Code
Link
Numbered list
Unordered list
Task list
Attach files
Mention
Reference
Menu
-
Heading
-
Bold
-
Italic
-
Quote
-
Code
-
Link
-
Numbered list
-
Unordered list
-
Task list
-
Attach files
-
Mention
-
Reference
👍
1
reacted with thumbs up emoji
👎
1
reacted with thumbs down emoji
😄
1
reacted with laugh emoji
🎉
1
reacted with hooray emoji
😕
1
reacted with confused emoji
❤️
1
reacted with heart emoji
🚀
1
reacted with rocket emoji
👀
1
reacted with eyes emoji
Footer
You can’t perform that action at this time.
Uh oh!
There was an error while loading. Please reload this page.
{{title}}
Uh oh!
There was an error while loading. Please reload this page.
-
Problem observed
Toolset selection logic supports both default and explicit toolset names, but overlap scenarios need a hard contract for deterministic resolution and ordering. Without explicit regression coverage, subtle future changes could alter enabled toolset ordering or emitted tool order, causing behavior churn for clients that depend on stable capability composition.
Why it matters operationally
Deterministic toolset resolution is critical for predictable capability exposure and auditability. Order instability can produce noisy diffs, inconsistent host behavior, and harder policy verification when tool availability changes unexpectedly between equivalent configurations. A focused test strengthens confidence without changing runtime code paths.
Minimal repro
Beta Was this translation helpful? Give feedback.