github / github/copilot-cli

Copilot CLI 1.0.79-1 fails MCP initialization when `server/discover` returns `-32602`

Abierto
#4,370 3 comentarios 3 reacciones 0 asignados Ver en GitHub
area:mcp
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

Copilot CLI 1.0.79-1 cannot connect to an MCP server built with FastMCP.

Before MCP initialization completes, the CLI sends a `server/discover` request. FastMCP does not implement this method and returns `-32602 Invalid request parameters`. Copilot treats that response as a fatal lifecycle negotiation error and aborts initialization.

The same server and configuration work without issue in Copilot CLI 1.0.78.

### Affected version

1.0.79-1

### Steps to reproduce the behavior

1. Configure the MCP server as shown in "Additional Context".
2. Start Copilot CLI 1.0.79-1.
3. Observe the CLI sending `server/discover`.
4. FastMCP rejects the unsupported request.
5. Copilot aborts MCP lifecycle negotiation before `initialize` completes.

### Expected behavior

An unsupported optional `server/discover` request should not block normal MCP initialization.

If the server returns an error for the probe, Copilot should continue with the standard `initialize` lifecycle rather than treating the response as fatal.

In particular, this should not depend on the server returning exactly `-32601 Method not found`. FastMCP currently returns `-32602` because the request does not match any supported `ClientRequest` schema.

### Additional context

## MCP configuration

Values have been redacted:

```json
{
"mcpServers": {
"fabric-rti-mcp": {
"command": "uvx",
"args": ["microsoft-fabric-rti-mcp"],
"env": {
"KUSTO_SERVICE_URI": "",
"KUSTO_SERVICE_DEFAULT_DB": "",
"FABRIC_API_BASE": ""
}
}
}
}
```

## More Details

Another MCP implementation returns:

```text
Method 'server/discover' is not available.
```

Copilot tolerates that response and continues initialization.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Comienza siguiendo el flujo de inicialización de MCP que envía la solicitud server/discover y, a continuación, compara el tratamiento de la respuesta -32602 con la respuesta tolerada “Method not found” descrita aquí. Se considera terminado cuando una prueba no compatible ya no aborta la inicialización y la configuración de FastMCP puede completar el ciclo de vida estándar de initialize.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
shell
Área
cli
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Activo
Claridad
Bastante claro
Aptitud para principiantes
65/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.