opentelemetry-mcp-server
Unified MCP server for querying OpenTelemetry traces across multiple backends (Jaeger, Tempo, Traceloop, etc.), enabling AI agents to analyze distributed traces for automated debugging and observability.
File Explorer
Download Latest Version (.zip)- ci.yml
- release.yml
- security.yml
- dependabot.yml
- __init__.py
- base.py
- filter_engine.py
- jaeger.py
- tempo.py
- traceloop.py
- __init__.py
- errors.py
- expensive_traces.py
- list_llm_tools.py
- list_models.py
- model_stats.py
- search.py
- search_spans.py
- services.py
- slow_traces.py
- trace.py
- usage.py
- __init__.py
- attributes.py
- config.py
- constants.py
- models.py
- server.py
- utils.py
- TestJaegerBackendHealth.test_health_check_healthy.yaml
- TestJaegerGetTrace.test_get_trace_by_id.yaml
- TestJaegerGetTrace.test_get_trace_invalid_id.yaml
- TestJaegerListServices.test_list_services.yaml
- TestJaegerLLMSpans.test_search_llm_spans.yaml
- TestJaegerLLMSpans.test_search_traces_with_llm_model_filter.yaml
- TestJaegerSearchSpans.test_search_spans_basic.yaml
- TestJaegerSearchSpans.test_search_spans_with_generic_filter.yaml
- TestJaegerSearchSpans.test_search_spans_with_limit.yaml
- TestJaegerSearchSpans.test_search_spans_with_operation.yaml
- TestJaegerSearchTraces.test_search_traces_basic.yaml
- TestJaegerSearchTraces.test_search_traces_with_duration_filter.yaml
- TestJaegerSearchTraces.test_search_traces_with_error_filter.yaml
- TestJaegerSearchTraces.test_search_traces_with_generic_filter.yaml
- TestJaegerSearchTraces.test_search_traces_with_limit.yaml
- TestJaegerSearchTraces.test_search_traces_with_operation.yaml
- TestJaegerServiceOperations.test_get_service_operations.yaml
- TestTempoBackendHealth.test_health_check_healthy.yaml
- TestTempoGetTrace.test_get_trace_by_id.yaml
- TestTempoGetTrace.test_get_trace_invalid_id.yaml
- TestTempoListServices.test_list_services.yaml
- TestTempoLLMSpans.test_search_llm_spans.yaml
- TestTempoLLMSpans.test_search_traces_with_llm_model_filter.yaml
- TestTempoSearchSpans.test_search_spans_basic.yaml
- TestTempoSearchSpans.test_search_spans_with_generic_filter.yaml
- TestTempoSearchSpans.test_search_spans_with_limit.yaml
- TestTempoSearchSpans.test_search_spans_with_operation.yaml
- TestTempoSearchSpans.test_search_spans_with_service_filter.yaml
- TestTempoSearchTraces.test_search_traces_basic.yaml
- TestTempoSearchTraces.test_search_traces_with_attribute_filter.yaml
- TestTempoSearchTraces.test_search_traces_with_duration_filter.yaml
- TestTempoSearchTraces.test_search_traces_with_error_filter.yaml
- TestTempoSearchTraces.test_search_traces_with_generic_filter.yaml
- TestTempoSearchTraces.test_search_traces_with_limit.yaml
- TestTempoSearchTraces.test_search_traces_with_operation.yaml
- TestTempoSearchTraces.test_search_traces_with_service_filter.yaml
- TestTempoServiceOperations.test_get_service_operations.yaml
- TestTempoTraceQL.test_search_with_contains_filter.yaml
- TestTempoTraceQL.test_search_with_in_filter.yaml
- TestTempoTraceQL.test_search_with_multiple_filters.yaml
- TestTraceloopBackendHealth.test_health_check_healthy.yaml
- TestTraceloopFilters.test_search_with_comparison_operators.yaml
- TestTraceloopFilters.test_search_with_multiple_filters.yaml
- TestTraceloopGetTrace.test_get_trace_by_id.yaml
- TestTraceloopGetTrace.test_get_trace_invalid_id.yaml
- TestTraceloopListServices.test_list_services.yaml
- TestTraceloopLLMSpans.test_search_llm_spans.yaml
- TestTraceloopLLMSpans.test_search_spans_by_llm_system.yaml
- TestTraceloopSearchSpans.test_search_spans_basic.yaml
- TestTraceloopSearchSpans.test_search_spans_with_generic_filter.yaml
- TestTraceloopSearchSpans.test_search_spans_with_limit.yaml
- TestTraceloopSearchSpans.test_search_spans_with_operation.yaml
- TestTraceloopSearchSpans.test_search_spans_with_service_filter.yaml
- TestTraceloopSearchTraces.test_search_spans_with_llm_model_filter.yaml
- TestTraceloopSearchTraces.test_search_traces_basic.yaml
- TestTraceloopSearchTraces.test_search_traces_with_duration_filter.yaml
- TestTraceloopSearchTraces.test_search_traces_with_error_filter.yaml
- TestTraceloopSearchTraces.test_search_traces_with_generic_filter.yaml
- TestTraceloopSearchTraces.test_search_traces_with_limit.yaml
- TestTraceloopSearchTraces.test_search_traces_with_service_filter.yaml
- TestTraceloopServiceOperations.test_get_service_operations.yaml
- __init__.py
- conftest.py
- test_jaeger_integration.py
- test_tempo_integration.py
- test_traceloop_integration.py
- __init__.py
- conftest.py
- test_models.py
- test_traceloop.py
- .cz.toml
- .dockerignore
- .env.example
- .gitignore
- .python-version
- CHANGELOG.md
- CLAUDE.md
- Dockerfile
- LICENSE
- pyproject.toml
- README.md
- start_locally.sh
- uv.lock
# Installation Guide
git clone https://github.com/traceloop/opentelemetry-mcp-server
Downloads the entire project code from GitHub to your computer.
cd opentelemetry-mcp-server
Moves into the project folder you just downloaded.
2. Official Install Script
Easy Recommendedpipx install opentelemetry-mcp
Installs the CLI tool into an isolated environment via pipx.
pip install opentelemetry-mcp
Installs the package published on PyPI directly β no need to clone the source.
Pulled directly from this repo's README.
3. Docker
Easy- Git Needed to download the project code from GitHub.
- Docker Desktop Needed to build and run containers. Install it and keep it running in the background.
docker build -t opentelemetry-mcp-server .
Builds a runnable image based on the Dockerfile.
docker run -p 8080:80 opentelemetry-mcp-server
Runs the built image as an actual container.
4. Python
Easypip install opentelemetry-mcp
Installs the package published on PyPI directly β no need to clone the source.
uv pip install -e ".[dev]"
Installs the Python libraries listed in requirements.txt (or similar).
Pulled directly from this repo's README.
