/mcp search fails with 400 Bad Request in every repo with a non-GitHub (Azure DevOps) git remote
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Shell
- Estrellas
- 11.2k
- Forks
- 1.9k
- Merge medio
- 14 h 16 min
- PR fusionados (30 d)
- 6
Descripción
Describe the bug
/mcp search (interactive MCP registry browser) consistently fails with:
Failed to load registry: Error: Failed to fetch MCP registry policy: 400 Bad Request
whenever Copilot CLI is started inside a trusted folder whose git remote points to Azure DevOps (dev.azure.com) instead of a GitHub-hosted remote. This affects our entire engineering org, since 100% of our repositories are hosted on Azure DevOps.
Environment
- Enterprise: GitHub Enterprise Cloud with data residency / EMU tenant
- OS: Windows
- Enterprise MCP Registry: configured and verified working (Azure API Center-backed registry, "Registry only" policy) — confirmed via direct
curlcalls that the registry itself returns HTTP 200 with the expected servers.
Workaround: Run /mcp search from a non-git folder to add servers once; they then work from any repo afterward via the persisted ~/.copilot/mcp-config.json.
Affected version
GitHub Copilot CLI 1.0.78
Steps to reproduce the behavior
- Configure an enterprise MCP Registry URL + "Registry only" policy (per GitHub docs).
cdinto any local git repository whoseoriginremote is an Azure DevOps URL (e.g.https://org@dev.azure.com/org/project/_git/repo).- Start
copilot. - Run
/mcp search. - Observe:
Failed to load registry: Error: Failed to fetch MCP registry policy: 400 Bad Request. cdoutside any git repository (e.g. home directory) and start a freshcopilotprocess.- Run
/mcp searchagain → succeeds, returns all registry servers.
Expected behavior
/mcp search should successfully fetch the registry policy regardless of the git remote host of the current working directory, or at minimum should not derive repo/org context from non-GitHub git remotes in a way that breaks the request.
Additional context
- The failure is tied to process startup cwd/git-remote context, not conversation state:
/newinside the same running process does not recover it — only a full process relaunch outside a git-remote folder works. - Once servers are added via the workaround below (outside a repo), they persist in
~/.copilot/mcp-config.jsonand connect fine from inside our Azure DevOps repos afterward — so the registry policy fetch specifically is what's broken, not general MCP connectivity. - Reproduces consistently; not a timing/cache issue; not related to our enterprise's registry configuration (independently verified correct).
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Empieza reproduciendo /mcp search desde un repositorio con un remoto de Azure DevOps y desde una carpeta que no sea un repositorio git; después, sigue el contexto de inicio utilizado para obtener la política del registro MCP. El issue estará terminado cuando la búsqueda en el registro funcione independientemente del remoto git actual, sin romper la configuración persistida existente en ~/.copilot/mcp-config.json.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- github, shell
- Área
- api, cli
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 55/100