Skip to main content
Glama

otel-mcp

Un servidor MCP que emite trazas, métricas y registros de OpenTelemetry a uno o más endpoints OTLP al mismo tiempo, en cualquiera de los tres formatos de transmisión OTLP:

  • grpc — OTLP/gRPC (protobuf sobre HTTP/2)

  • http/protobuf — OTLP/HTTP protobuf binario

  • http/json — OTLP/HTTP proto3-JSON (compatible con la especificación)

También incluye perfiles de imitación de herramientas que producen paquetes de señales realistas con la forma de herramientas conocidas (nginx, postgres, redis, kafka, aws-lambda, pod de kubernetes, servicio gRPC genérico), para que pueda poblar un colector o backend con tráfico que parezca un entorno real.

Instalación

uv venv
uv pip install -e .

Related MCP server: Mock MCP Server

Ejecución

otel-mcp           # stdio transport — wire into any MCP client

O mediante una configuración de cliente MCP (por ejemplo, Claude Desktop, Claude Code):

{
  "mcpServers": {
    "otel": {
      "command": "otel-mcp"
    }
  }
}

Arranque de entorno

Si OTEL_EXPORTER_OTLP_ENDPOINT se establece al iniciar, se registra un endpoint llamado default utilizando las variables de entorno estándar de OTEL:

  • OTEL_EXPORTER_OTLP_ENDPOINT

  • OTEL_EXPORTER_OTLP_PROTOCOL (grpc | http/protobuf | http/json)

  • OTEL_EXPORTER_OTLP_HEADERS (pares k=v separados por comas)

  • OTEL_EXPORTER_OTLP_INSECURE (interruptor de TLS para gRPC)

Herramientas

Gestión de endpoints

Herramienta

Propósito

add_endpoint

Registrar un destino OTLP con nombre (url, protocolo, señales, cabeceras, …).

remove_endpoint

Eliminar un endpoint por nombre.

clear_endpoints

Eliminar todos los endpoints.

list_endpoints

Enumerar los endpoints actuales.

status

Endpoints + perfiles de imitación disponibles.

Los endpoints se seleccionan por llamada: cada herramienta que emite señales acepta un argumento endpoints: [nombres]. Omítalo para distribuir la señal a todos los endpoints que acepten ese tipo de señal.

Emisión de señales sin procesar

Herramienta

Forma de la entrada

send_trace

{service_name, spans[]} — cada span tiene name, kind, attributes, duration_ms, status, events[], parent_name opcional para anidamiento.

send_metric

{service_name, metrics[]} — cada métrica tiene name, kind (counter/up_down_counter/gauge/histogram), unit, description, points[]. Los histogramas aceptan una lista de muestras por punto.

send_log

{service_name, records[]} — cada registro tiene body, severity, severity_text, attributes, timestamp_ns.

Imitación

Herramienta

Propósito

list_mimic_profiles

Mostrar cada perfil con sus parámetros.

mimic_tool

Ejecutar un perfil y enviar su paquete una vez.

generate_load

Ejecutar un perfil en bucle para simular tráfico sostenido.

Perfiles integrados:

Perfil

Aspecto

nginx / http-server

Spans de servidor con semconv HTTP, registros de acceso, contadores de solicitudes e histogramas de latencia.

postgres

Spans de cliente de BD con db.system=postgresql + métricas de pool de conexiones.

redis

Spans de cliente de BD con db.system=redis.

kafka

Spans de productor/consumidor con semconv de mensajería.

aws-lambda

Spans de servidor con atributos de recurso faas.* + cloud.*, registros de acceso de Lambda, métricas de invocación.

k8s-pod

Recurso = atributos completos k8s.*, métricas de cpu/memoria/red del contenedor, registro de evento Started.

grpc

Spans de servidor con rpc.system=grpc.

Sesión de ejemplo

> add_endpoint name="otel-collector" url="http://localhost:4318" protocol="http/protobuf"
> add_endpoint name="jaeger-json"    url="http://localhost:4318" protocol="http/json" signals=["traces"]
> mimic_tool profile="nginx" options={"count": 50, "error_rate": 0.1}
> mimic_tool profile="postgres"
> generate_load profile="kafka" iterations=10 interval_seconds=2
> send_trace service_name="checkout" spans=[
    {"name": "POST /checkout", "kind": "server", "duration_ms": 42, "attributes": {"http.response.status_code": 200}},
    {"name": "charge_card",    "kind": "client", "parent_name": "POST /checkout", "duration_ms": 18,
     "attributes": {"peer.service": "stripe"}}
  ]

Añadir un nuevo perfil de imitación

  1. Escriba una función que devuelva un MimicBundle en src/otel_mcp/mimics.py.

  2. Regístrela en el diccionario PROFILES al final de ese archivo.

  3. Llame a list_mimic_profiles para confirmar que ha detectado los parámetros.

Los perfiles siguen siendo declarativos: cada uno devuelve especificaciones de span/métrica/registro que fluyen a través de la misma tubería de generación, por lo que heredan automáticamente la fusión de recursos correcta, el soporte de formato de transmisión y la distribución de señales.

Install Server
A
license - permissive license
A
quality
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    D
    maintenance
    An MCP server implementation that enables dynamic configuration of OpenTelemetry Collectors, allowing users to add, remove, and configure receivers, processors, and exporters through MCP tools.
    26
    52
    GPL 3.0
  • A
    license
    B
    quality
    C
    maintenance
    A mock MCP server for testing MCP client implementations and development workflows. Supports tools, prompts, and resources across multiple transport protocols (stdio, HTTP, SSE).
    1
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    MCP server for analyzing OpenTelemetry traces with performance and error diagnosis, supporting loading from files, AWS X-Ray, and CloudWatch.
    8
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    MCP server that gives AI agents access to your application's OpenTelemetry traces for querying, analysis, and debugging.
    5
    26
    2
    MIT

View all related MCP servers

Related MCP Connectors

  • An MCP server for Arcjet - the runtime security platform that ships with your AI code.

  • MEOK MCP Test MCP — golden-file + schema-drift + tool-failure tests for any MCP server. Drop-in

  • MCP server for managing Prisma Postgres.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/michigan-public-tech-org/otel_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server