Repeated MCP discovery reports "Found 0 tools" for an already-loaded namespace
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Shell
- Sterne
- 11.2k
- Forks
- 1.9k
- Ø Merge
- 14 Std. 16 Min.
- Gemergte PRs (30 T.)
- 6
Beschreibung
Summary
Repeated model-side MCP tool discovery reports "Found 0 tools" for a namespace whose tool definitions were already loaded. This misleading result caused the agent to declare a working integration unavailable and skip a required workflow step.
Environment
- Copilot CLI 1.0.84-2
- Windows
- Local stdio MCP server exposing four tools
Reproduction
- In a fresh session, discover the configured MCP namespace. In this case, the call was
api_tool.list_resources({"paths":["pr-copilot"]}). - Observe "Found 4 tools" and all four tool definitions being loaded.
- Repeat the identical discovery call without changing MCP configuration.
- Observe "Found 0 tools", despite the previously loaded definitions remaining in context.
This was reproduced in a separate session after investigating the original failure.
Actual behavior and impact
The affected session already had all four schemas in its request history. Two later discovery responses completed with tools: []. The agent then reported: "The PR-monitor integration currently exposes no tools, so I can't start it."
The empty responses were real; the incorrect inference was that no tools were available. This report concerns model-side discovery, not a claim that the MCP server's raw tools/list returned an empty list. No stateful monitor invocation was needed to reproduce the discovery behavior.
Expected behavior
A repeated lookup should either return the existing tool definitions or explicitly report that the tools are already loaded, including their names/count. "No additional definitions to load" must be distinguishable from "no matching or available tools", so the agent does not abandon an available integration.
🤖 m-nash-copilot
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, die modellseitige Verarbeitung wiederholter Aufrufe von api_tool.list_resources für einen MCP-Namespace nachzuverfolgen, und vergleiche die erste Antwort mit den späteren Antworten. Als erledigt gilt die Aufgabe, wenn die wiederholte Ermittlung klar zwischen bereits geladenen Tools und keinen verfügbaren oder passenden Tools unterscheidet und die vorhandenen Namen oder die Anzahl enthält.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- shell
- Bereich
- cli
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Aktiv
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 52/100