Get the FREE Ultimate OpenClaw Setup Guide →

opentelemetry

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.

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio traceloop-opentelemetry-mcp-server pipx run opentelemetry-mcp \
  --env BACKEND_URL="http://localhost:16686" \
  --env BACKEND_TYPE="jaeger"

How to use

OpenTelemetry MCP Server provides an interface for AI assistants to connect to your OpenTelemetry backends (Jaeger, Tempo, Traceloop) and perform observability tasks. The server exposes capabilities to query traces, analyze token usage, identify expensive API calls, debug errors, and compare model performance across traces. With specialized support for OpenLLMetry semantic conventions, you can ask the assistant to interpret trace data in a structured, semantics-aware way, and then surface insights directly in your IDE or chat assistant. To get started, configure your MCP client to point at this server and instruct your AI assistant to run trace queries such as finding traces with errors in a given timeframe or summarizing latency hot spots across services. The server acts as a bridge between your tracing backend and the AI assistant, enabling natural-language queries to yield concrete trace results and visualizations.

How to install

Prerequisites:

  • Python 3.11 or higher
  • pipx (recommended) or an alternative like uvx

Install and run (recommended):

  1. Ensure you have Jaeger (or another supported backend) available at the URL you’ll query, e.g. http://localhost:16686
  2. Install the MCP server and run it via pipx:
# Install and run the MCP server in one step
pipx run opentelemetry-mcp --backend jaeger --url http://localhost:16686

This approach always uses the latest version, requires no global installation, runs in an isolated environment, and works on all platforms.

If you prefer uvx (alternative):

uvx opentelemetry-mcp --backend jaeger --url http://localhost:16686

Per-client integration (optional):

  • Claude Desktop: add an MCP server entry with command pipx or uvx and the appropriate environment variables (BACKEND_TYPE and BACKEND_URL).
  • Claude Code, Codeium (Windsurf), Cursor, Gemini CLI, and other clients: use the same pattern by embedding the MCP server configuration in their respective config files as shown in the repository readme.

Development or local repository usage:

  • If developing locally, you can point to the repository wrapper script or use uvx with the directory option to run the local copy of opentelemetry-mcp.

Additional notes

Tips and caveats:

  • Ensure the backend URL and type (jaeger, traceloop, etc.) match what you have deployed.
  • If you switch backends (e.g., from Jaeger to Traceloop), update BACKEND_TYPE and BACKEND_URL accordingly.
  • Some MCP clients may cache server availability; if the server doesn’t respond, verify network access and that the backend is reachable.
  • When debugging, run the server in a verbose mode if available or check the backend’s API health endpoints to confirm connectivity.
  • For local development, using the repository wrapper or uvx directory mode can simplify switching between backends during testing.

Related MCP Servers

Sponsor this space

Reach thousands of developers