aipotheosis-labs / aipotheosis-labs/gate22

MCP bundle tool-name collision with multiple configurations of the same server

オープン
#163 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
backend bug bundles mcp needs-design
主要言語
TypeScript
スター
178
フォーク
24
PR マージ指標
30日以内にマージされた PR はありません

説明

## Problem
When bundling multiple configurations of the same MCP server, tools are named SERVER__TOOL without configuration scope. Calls then can’t target the intended configuration.

## Impact
Agents can’t pick the correct account (e.g., Shared Gmail vs Developer Gmail) in one bundle; calls may hit the wrong config.

## Repro
Create two GMAIL configs, bundle both, use SEARCH_TOOLS and EXECUTE_TOOL for GMAIL__THREADS_LIST → ambiguous routing.

## Code References
Tool name construction (no config in name): `mcp_tools_manager.py`

Execution assumes single config per server in bundle: `execute_tool.py`

Bundle model TODO acknowledging missing restriction:`sql_models.py`

Tools search returns names without config hint: `search_tools.py`

Global unique tool name: `execute_tool.py`

Schema enforces global unique MCPTool.name: `sql_models.py`

## Hypotheses
- Add config-qualified naming: SERVER__CONFIG_ALIAS__TOOL.
- Two-step execute: add config_id/config_name to EXECUTE_TOOL args; include config hints in SEARCH_TOOLS.
- Per-bundle aliasing at initialize; expose alias → config map via tools/list.
- Temporary mitigation: disallow bundling same-server configs until disambiguation lands.

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。