Azure MCP learn=true calls time out after 180s in Copilot CLI 1.0.83-5
まだ誰も着手していません。
- 主要言語
- Shell
- スター
- 11.2k
- フォーク
- 1.9k
- 平均マージ
- 14時間 16分
- マージ済み PR(30日)
- 6
説明
Describe the bug
Azure MCP hierarchical tool discovery calls using learn=true consistently time out after 180 seconds in Copilot CLI 1.0.83-5. The same calls complete in about 0.2 seconds under CLI 1.0.80.
Direct Azure MCP child-command calls without learn=true still succeed, which isolates the regression to hierarchical tool discovery rather than MCP startup, authentication, or general Azure connectivity.
Affected version
GitHub Copilot CLI 1.0.83-5
Windows executable file/product version: 1.0.83-5
Steps to reproduce the behavior
- Configure the Microsoft Azure MCP server and confirm it connects.
- Start Copilot CLI
1.0.83-5. - Ask the agent to make exactly one Azure Kusto MCP call with:
{"intent":"Discover the Kusto command contract","learn":true} - Observe that the call remains pending for 180 seconds and fails with:
MCP server 'azure': McpError: MCP error -32001: Request timed out - Repeat with Azure
get_azure_bestpracticesandlearn=true; it fails the same way. - Run the same probes with CLI
1.0.80; both discovery calls succeed immediately.
Controlled A/B results:
| CLI | Azure MCP tool | Mode | Result | Duration |
|---|---|---|---|---|
| 1.0.80 | kusto | learn=true | success | 0.175s |
| 1.0.80 | kusto | learn=true | success | 0.197s |
| 1.0.80 | get_azure_bestpractices | learn=true | success | 0.212s |
| 1.0.83-5 | kusto | learn=true | timeout | 180.050s |
| 1.0.83-5 | kusto | learn=true | timeout | 180.079s |
| 1.0.83-5 | get_azure_bestpractices | learn=true | timeout | 180.060s |
| 1.0.83-5 | kusto | direct kusto_query | success | 7.103s |
The fresh Kusto and Best Practices A/B probes were launched simultaneously under both CLI versions with the same model, workspace, MCP configuration, and machine. All probe stderr logs were empty.
Expected behavior
learn=true should return the hierarchical tool command schema promptly, as it does under CLI 1.0.80, instead of reaching the client's 180-second timeout.
Additional context
- OS: Windows 11 Enterprise 23H2, build 22631
- Architecture: AMD64
- Shell: PowerShell 7.6.5
- Terminal: VS Code integrated terminal
- Azure MCP reached
connectedbefore each probe - Reproduced 3/3 times on
1.0.83-5 - Control succeeded 3/3 times on
1.0.80 - No exact duplicate found in the open or closed
github/copilot-cliissues
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
Copilot CLI の MCP 階層型ツールディスカバリーパスから開始し、報告された Azure 呼び出しをバージョン 1.0.83-5 と 1.0.80 で learn=true を付けて再現します。直接の子コマンド呼び出しが引き続き成功することを確認しながらディスカバリーの動作を比較します。完了条件は、両方の階層プローブが 180 秒後にタイムアウトするのではなく、スキーマを速やかに返すことです。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- azure
- 領域
- cli, cloud
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 活発
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 45/100