Azure / Azure/data-api-builder

[Bug]: No MCP tool invocation trace spans

Abierto
#3,563 0 comentarios 0 reacciones 0 asignados Ver en GitHub
2.x telemetry
Lenguaje dominante
C#
Estrellas
1.5k
Forks
370
Merge medio
3 d 22 h
PR fusionados (30 d)
9

Descripción

MCP tool calls (describe_entities, read_records, create_record, update_record, delete_record, aggregate_records) produce log records but no trace spans. You cannot see MCP tool execution in a trace waterfall or measure individual tool latency via traces.

## Expected

Each MCP tool invocation should produce a span with the tool name and result:

```
Span: MCP tool/call describe_entities
Kind: Server
Duration: 37ms
Attributes:
mcp.tool.name = describe_entities
mcp.session.id = oHJsLuTRTyN3En34uxhxmg
rpc.method = tools/call
```

The code paths already exist — DAB has log instrumentation scopes `Azure.DataApiBuilder.Mcp.BuiltInTools.CreateRecordTool` and `Azure.DataApiBuilder.Mcp.BuiltInTools.ReadRecordsTool`, proving these tool boundaries are identified in code.

## Actual

MCP tool calls appear only as logs, not trace spans. The `ModelContextProtocol.Server.McpServer` scope emits log records for tool execution, but there is no corresponding `Activity` or span created:

```
InstrumentationScope Azure.DataApiBuilder.Mcp.BuiltInTools.ReadRecordsTool
LogRecord #0 (log only, no span)
```

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Comienza localizando los límites de las herramientas MCP identificados por los ámbitos de instrumentación de Azure.DataApiBuilder.Mcp.BuiltInTools.CreateRecordTool y ReadRecordsTool; después, inspecciona cómo ModelContextProtocol.Server.McpServer emite los registros de ejecución de herramientas. Añade spans de traza para las herramientas MCP indicadas con el nombre de la herramienta, el ID de sesión, el método RPC, el tipo de servidor y el resultado, y verifica que la latencia de cada herramienta aparezca en las cascadas de trazas.

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

Evaluación

Stack tecnológico
csharp
Área
backend-api-design, observability
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Tranquilo
Claridad
Bastante claro
Aptitud para principiantes
52/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.