Prerequisites
What are you trying to do that currently feels hard or impossible?
Add observability to the toolbox-core Go SDK via OpenTelemetry, including tracing and metrics, and context propagation by client-server link following MCP Semantic Convention
Suggested Solution(s)
Spans: Introduce OpenTelemetry spans for SDK operations with proper naming and attributes.
Context Propogation: Ensure correct trace hierarchy (client spans as parents of server spans).
Metrics: Add usage and performance metrics (mcp.client.session.duration, mcp.client.operation.duration).
Alongside:
- Enable telemetry across Core, ADK and GenKit packages.
- Add tests and manage telemetry dependencies with backward compatibility.
Alternatives Considered
No response
Additional Details
This introduces observability from scratch, enabling:
- Consistent telemetry across Toolbox stack
- Enable toolbox users debugging and performance monitoring
- Compatibility with OTLP-compatible tracing and metrics backends
Prerequisites
What are you trying to do that currently feels hard or impossible?
Add observability to the toolbox-core Go SDK via OpenTelemetry, including tracing and metrics, and context propagation by client-server link following MCP Semantic Convention
Suggested Solution(s)
Spans: Introduce OpenTelemetry spans for SDK operations with proper naming and attributes.
Context Propogation: Ensure correct trace hierarchy (client spans as parents of server spans).
Metrics: Add usage and performance metrics (
mcp.client.session.duration,mcp.client.operation.duration).Alongside:
Alternatives Considered
No response
Additional Details
This introduces observability from scratch, enabling: