OTel client span sets ERROR status for -32602 and other caller-error codes
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 76/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- python
- Área
- observability
Línea de trabajo
Empieza leyendo el código del dispatcher que establece el estado del span del cliente y error.type; después, compara su comportamiento con la clasificación del lado del servidor y la nota sobre las convenciones semánticas de MCP en docs/gen-ai/mcp.md. Reprodúcelo con los comandos del issue si es práctico. Se considera terminado cuando los cinco códigos de error del llamador enumerados siguen rellenando rpc.response.status_code, pero dejan el estado en Unset y omiten error.type, con pruebas que cubran ese comportamiento.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Since 2.3.0 (#3174) every JSON-RPC error response marks the client span ERROR with error.type set to the code. The OTel GenAI semantic conventions for MCP (docs/gen-ai/mcp.md, footnote on error.type) say the codes -32700, -32600, -32601, -32602 and -32002 "indicate that the caller sent a request the receiver could not serve and SHOULD NOT be considered errors"; only other codes should be. rpc.response.status_code should still carry the code.
The most common case is calling an unknown tool: the Go SDK server (and the TypeScript SDK) answer -32602, and the Python client span becomes ERROR with error.type=-32602.
Reproduction (Python 2.3.0 client against a Go SDK server):
git clone https://github.com/mkwitko/mcp-reliability && cd mcp-reliability
examples/python-sdk-streamable-http/run.sh
go run ./cmd/mcp-reliability doctor testdata/cross-python-client-go-server.jsonl
[WARN] MCP-ERR-005: span "tools/call missing" is marked failed (status=Error, error.type present=true) for a JSON-RPC code the semconv says SHOULD NOT be considered an error
Write-up: https://github.com/mkwitko/mcp-reliability/blob/v0.1.0/docs/research/python-sdk-v2-validation.md
Suggested change: in the dispatcher, when the error code is one of the five caller-error codes, set rpc.response.status_code but leave the span status Unset and skip error.type. The server side already has the equivalent classification. I can send a PR.
- Lenguaje dominante
- Python
- Estrellas
- 24.7k
- Forks
- 4.1k
- Merge medio
- 18 h 27 min
- PR fusionados (30 d)
- 15
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la 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.
Más de modelcontextprotocol/python-sdk
-
bug v2
Dificultad 2/5 1-3 horas Aptitud para principiantes 79/100
modelcontextprotocol/python-sdk#3810 ·
Los mantenedores suelen responder en 1 día
-
bug v1 v2
Dificultad 2/5 1-3 horas Aptitud para principiantes 79/100
modelcontextprotocol/python-sdk#3781 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
[Bug]: Inconsistent structured output wrapping and opt-out for typing.Dict and typing sequence generics in func_metadataQuizá libre de nuevo Un pull request para esta issue se cerró sin fusionarse. Abiertobug v1 v2
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
modelcontextprotocol/python-sdk#3771 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
-
bug v2
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
modelcontextprotocol/python-sdk#3769 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
2026 Streamable HTTP rejects whitespace-padded Mcp-Name valuesQuizá libre de nuevo Un pull request para esta issue se cerró sin fusionarse. Abiertobug spec-2026-07-28 v2
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
modelcontextprotocol/python-sdk#3763 · 4 comentarios ·
Los mantenedores suelen responder en 1 día
Todos los issues de modelcontextprotocol/python-sdk
Issues similares
-
New InternshipAbiertonew_internship
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
-
get_graph warns that the oneway column is missing when no way has a oneway tagPosiblemente ocupada @HTenkanen la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
cython/cython#8110 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
fix: security 🔐 style: article/section 📝 system: data-mgmt 🗃️ system: security 🔐 system: software 💻
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
uabrc/uabrc.github.io#1267 ·
-
Link Checker ReportAbiertoBot Type: Bug Type: Documentation
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
Los mantenedores suelen responder en 1 día