Skip to main content
Glama

otel-mcp

MCP-сервер, который отправляет трассировки, метрики и логи OpenTelemetry на один или несколько OTLP-эндпоинтов одновременно, используя любой из трех форматов передачи OTLP:

  • grpc — OTLP/gRPC (protobuf поверх HTTP/2)

  • http/protobuf — OTLP/HTTP бинарный protobuf

  • http/json — OTLP/HTTP proto3-JSON (соответствует спецификации)

Он также поставляется с профилями имитации инструментов, которые создают реалистичные наборы сигналов, имитирующие известные инструменты (nginx, postgres, redis, kafka, aws-lambda, под kubernetes, универсальный gRPC-сервис), чтобы вы могли наполнить коллектор или бэкенд трафиком, похожим на реальную среду.

Установка

uv venv
uv pip install -e .

Related MCP server: Mock MCP Server

Запуск

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

Или через конфигурацию MCP-клиента (например, Claude Desktop, Claude Code):

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

Настройка окружения

Если при запуске установлена переменная OTEL_EXPORTER_OTLP_ENDPOINT, регистрируется эндпоинт с именем default, использующий стандартные переменные окружения OTEL:

  • OTEL_EXPORTER_OTLP_ENDPOINT

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

  • OTEL_EXPORTER_OTLP_HEADERS (пары k=v, разделенные запятыми)

  • OTEL_EXPORTER_OTLP_INSECURE (переключатель TLS для gRPC)

Инструменты

Управление эндпоинтами

Инструмент

Назначение

add_endpoint

Зарегистрировать именованный OTLP-адрес (url, протокол, сигналы, заголовки и т. д.).

remove_endpoint

Удалить один эндпоинт по имени.

clear_endpoints

Удалить все эндпоинты.

list_endpoints

Перечислить текущие эндпоинты.

status

Эндпоинты + доступные профили имитации.

Эндпоинты выбираются для каждого вызова: каждый инструмент, генерирующий сигналы, принимает аргумент endpoints: [names]. Если его опустить, сигнал будет отправлен на все эндпоинты, поддерживающие данный тип сигнала.

Отправка необработанных сигналов

Инструмент

Формат входных данных

send_trace

{service_name, spans[]} — каждый span имеет name, kind, attributes, duration_ms, status, events[], опционально parent_name для вложенности.

send_metric

{service_name, metrics[]} — каждая метрика имеет name, kind (counter/up_down_counter/gauge/histogram), unit, description, points[]. Гистограммы принимают список выборок для каждой точки.

send_log

{service_name, records[]} — каждая запись имеет body, severity, severity_text, attributes, timestamp_ns.

Имитация

Инструмент

Назначение

list_mimic_profiles

Показать все профили с их параметрами.

mimic_tool

Запустить один профиль и отправить его набор данных один раз.

generate_load

Запустить профиль в цикле для имитации постоянной нагрузки.

Встроенные профили:

Профиль

Как это выглядит

nginx / http-server

Спаны сервера с семантическими соглашениями HTTP, логами доступа, счетчиками запросов и гистограммами задержек.

postgres

Спаны клиента БД с db.system=postgresql + метрики пула соединений.

redis

Спаны клиента БД с db.system=redis.

kafka

Спаны производителя/потребителя с семантическими соглашениями обмена сообщениями.

aws-lambda

Спаны сервера с атрибутами ресурсов faas.* + cloud.*, логами доступа Lambda, метриками вызовов.

k8s-pod

Ресурс = полные атрибуты k8s.*, метрики CPU/памяти/сети контейнера, лог события Started.

grpc

Спаны сервера с rpc.system=grpc.

Пример сессии

> 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"}}
  ]

Добавление нового профиля имитации

  1. Напишите функцию, возвращающую MimicBundle в src/otel_mcp/mimics.py.

  2. Зарегистрируйте её в словаре PROFILES в конце этого файла.

  3. Вызовите list_mimic_profiles, чтобы убедиться, что параметры были подхвачены.

Профили остаются декларативными: каждый из них возвращает спецификации спанов/метрик/логов, которые проходят через тот же конвейер генерации, поэтому они автоматически наследуют корректное объединение ресурсов, поддержку форматов передачи и веерную рассылку.

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