github / github/copilot-cli

MCP SEP-986 tool name format specification not followed

Abierto
#1,879 0 comentarios 2 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

When an MCP server is loaded with tool names that include `.` or `/`, the cli will respond to any prompt with something like:
```
✗ Execution failed: CAPIError: 400 tools.134.custom.name: String should match pattern '^[a-zA-Z0-9_-]{1,128}$'
```
[SEP-986](https://modelcontextprotocol.io/community/seps/986-specify-format-for-tool-names) states, however:
> Tool names SHOULD be between 1 and 64 characters in length (inclusive).
> Tool names are case-sensitive.
> Allowed characters: uppercase and lowercase ASCII letters (A-Z, a-z), digits (0-9), underscore (_), dash (-), dot (.), and forward slash (/).
> Tool names SHOULD NOT contain spaces, commas, or other special characters.
> Tool names SHOULD be unique within their namespace.
> Example valid tool names:
> - getUser
> - user-profile/update
> - DATA_EXPORT_v2
> - admin.tools.list

The error above incorrectly specifies the allowed characters, as well as the allowed length (128 v 64).

I tested this behavior by replacing all `.` with `-` the mcp server, and it works as expected after that.

### Affected version

GitHub Copilot CLI 0.0.423

### Steps to reproduce the behavior

1. Install an MCP server that has `.` in tool names (ex. https://github.com/mrphrazer/binary-ninja-headless-mcp)
2. Type any prompt, press enter

### Expected behavior

The prompt should be responded to by the model, without an error message

### Additional context

_No response_

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.