Observability quickstart (Jaeger + OTel collector)
1. Start Jaeger
docker run -d --rm --name mcp-jaeger \
-p 16686:16686 -p 4317:4317 -p 4318:4318 \
jaegertracing/jaeger:latestuntil curl -fsS http://127.0.0.1:16686/api/services >/dev/null; do sleep 1; done
echo READY2. Start mcp serve with OTel enabled
mcp serve with OTel enabledOTEL_EXPORTER_OTLP_ENDPOINT=http://127.0.0.1:4318 \
OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf \
OTEL_SERVICE_NAME=mcp-local \
mcp serve --http 127.0.0.1:73313. Fire some requests
4. Inspect the spans in Jaeger
Sanity check via API (no clicking)
5. Test parent context (inbound traceparent)
traceparent)6. Inspect the metrics
7. Regression test — no OTel = 0.5.2 behavior
8. Cleanup
Next steps
Troubleshooting
Last updated
Was this helpful?