ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

Jaeger MCP

โดย mshegolevรุ่น 0.1.1i★ –iรันบนเครื่อง
ชื่อใน registryio.github.mshegolev/jaeger-mcp

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

Jaeger MCP — search traces, inspect spans, map service dependencies (read-only).

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: ค้นข้อมูลและความจำของ AI
  • ต้องใส่ค่าเหล่านี้: JAEGER_URL, JAEGER_TOKEN, JAEGER_PASSWORD

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต

ต้องเตรียมก่อน

  • PyPIติดตั้ง uv ของ Python (มีคำสั่ง uvx) ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "jaeger": {
      "command": "uvx",
      "args": [
        "jaeger-mcp"
      ],
      "env": {
        "JAEGER_URL": "ใส่ค่าของคุณ",
        "JAEGER_TOKEN": "ใส่ค่าของคุณ",
        "JAEGER_USERNAME": "ใส่ค่าของคุณ",
        "JAEGER_PASSWORD": "ใส่ค่าของคุณ",
        "JAEGER_SSL_VERIFY": "ใส่ค่าของคุณ"
      }
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add jaeger --env JAEGER_URL='ใส่ค่าของคุณ' --env JAEGER_TOKEN='ใส่ค่าของคุณ' --env JAEGER_USERNAME='ใส่ค่าของคุณ' --env JAEGER_PASSWORD='ใส่ค่าของคุณ' --env JAEGER_SSL_VERIFY='ใส่ค่าของคุณ' -- uvx jaeger-mcp

เติมค่าที่เว้นว่างไว้ก่อนรัน

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "jaeger": {
      "command": "uvx",
      "args": [
        "jaeger-mcp"
      ],
      "env": {
        "JAEGER_URL": "ใส่ค่าของคุณ",
        "JAEGER_TOKEN": "ใส่ค่าของคุณ",
        "JAEGER_USERNAME": "ใส่ค่าของคุณ",
        "JAEGER_PASSWORD": "ใส่ค่าของคุณ",
        "JAEGER_SSL_VERIFY": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "jaeger": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "jaeger-mcp"
      ],
      "env": {
        "JAEGER_URL": "ใส่ค่าของคุณ",
        "JAEGER_TOKEN": "ใส่ค่าของคุณ",
        "JAEGER_USERNAME": "ใส่ค่าของคุณ",
        "JAEGER_PASSWORD": "ใส่ค่าของคุณ",
        "JAEGER_SSL_VERIFY": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าที่ต้องใส่เอง

  • JAEGER_URL จำเป็น env
    Jaeger query service URL, e.g. https://jaeger.example.com
  • JAEGER_TOKEN ความลับ env
    Bearer token for authentication. Takes priority over Basic auth.
  • JAEGER_USERNAME env
    HTTP Basic auth username. Used only when JAEGER_TOKEN is not set.
  • JAEGER_PASSWORD ความลับ env
    HTTP Basic auth password.
  • JAEGER_SSL_VERIFY env
    Verify SSL certificates (true/false). Set to 'false' for self-signed certs.

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub mshegolev ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด ค้นข้อมูลและความจำของ AIi

  • ดาวมากกว่า 0% ของอีก 7258 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 9% ของอีก 7258 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 7258 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

Jaeger MCP ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: JAEGER_URL, JAEGER_TOKEN, JAEGER_PASSWORD

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.1) เข้า registry 7 เดือนที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Context7, Codebase Memory, Exa

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Context7

โดย upstash

ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว

บนเครื่องหรือคลาวด์★ 64,224MITอัปเดต วันนี้
ติดตั้ง

Codebase Memory

โดย DeusData

Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.

รันบนเครื่อง★ 48,148MITอัปเดต 20 วันที่ผ่านมา
ติดตั้ง

Exa

โดย exa-labs

Connect AI agents to Exa for web search, content fetching, and multi-step research.

รันบนคลาวด์★ 5,213MITอัปเดต เดือนที่แล้ว
ติดตั้ง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

jaeger-mcp

MCP server for [Jaeger](https://www.jaegertracing.io/) distributed tracing. Give Claude (or any MCP-capable agent) read access to your trace data — search traces, inspect spans, compare traces, compute span statistics, map service dependencies, predict performance issues, and forecast capacity needs — without leaving the conversation.

Why another Jaeger MCP?

The existing Jaeger integrations require a running UI or custom scripts. This server:

  • Speaks the standard Model Context Protocol over stdio — works with Claude Desktop, Claude Code, Cursor, and any MCP client.
  • Is read-only: all 15 tools carry readOnlyHint: true — zero risk of modifying trace data.
  • Returns dual-channel output: structured JSON (structuredContent) for programmatic use + Markdown (content) for human-readable display.
  • Has actionable error messages that name the exact env var to fix and suggest a next step.
  • Supports Bearer token, HTTP Basic auth, or no auth (common for internal deployments).
  • Includes OpenAPI specification documenting the underlying Jaeger Query API (openapi.yaml).

Tools

ToolEndpointDescription
jaeger_list_servicesGET /api/servicesList all instrumented services
jaeger_list_operationsGET /api/services/{service}/operationsList operation names for a service
jaeger_search_tracesGET /api/tracesSearch traces with rich filters
jaeger_get_traceGET /api/traces/{traceID}Full trace detail with span tree
jaeger_get_dependenciesGET /api/dependenciesService-to-service call graph
jaeger_compare_tracesGET /api/traces/{traceID} ×2Structural diff between two traces
jaeger_span_statisticsGET /api/tracesPer-operation latency and error stats
jaeger_critical_pathGET /api/traces/{traceID}Longest-duration span chain and bottleneck ranking
jaeger_compare_windowsGET /api/traces ×2Aggregate trace behavior diff between two time periods
jaeger_detect_anomaliesGET /api/traces ×2Statistical latency/error-rate spike detection per operation
jaeger_predict_degradationGET /api/tracesPredict performance degradation 2-24 hours in advance
jaeger_forecast_capacityGET /api/tracesForecast throughput demands and resource requirements
jaeger_find_test_tracesGET /api/tracesCorrelate a test run to its traces by tag query (Allure/pytest/custom)
jaeger_regression_diffGET /api/traces ×2Classify per-operation regressions between two time windows
jaeger_test_profileGET /api/tracesPer-operation latency hotspots for a tagged test run

Compatibility

Tested against live Jaeger v1.76 (classic /api/* query API) and v2.22 (OTLP-based). Jaeger v2.22 no longer serves /api/services, /api/services/{service}/operations and the /api/traces search; this server automatically falls back to /api/v3/* when the v1 endpoint returns 404 and converts the result back, so all tools work on both. /api/dependencies and /api/traces/{id} are still used where available. The mcp dependency is pinned <2 (the 2.x SDK renamed FastMCP to MCPServer).

Installation

pip install jaeger-mcp

Or run directly without installing:

uvx jaeger-mcp

Configuration

All configuration is via environment variables:

VariableRequiredDefaultDescription
JAEGER_URLYes—Jaeger query service URL, e.g. https://jaeger.example.com
JAEGER_TOKENNo—Bearer token (takes precedence over Basic auth)
JAEGER_USERNAMENo—HTTP Basic auth username
JAEGER_PASSWORDNo—HTTP Basic auth password
JAEGER_SSL_VERIFYNotrueSet false for self-signed certificates
JAEGER_TIMEOUTNo30HTTP request timeout in seconds
JAEGER_RETRY_ATTEMPTSNo3Retry count for transient failures (0 to disable)
JAEGER_CACHE_TTLNo120TTL in seconds for discovery endpoint cache (0 to disable)
JAEGER_CONCURRENCY_LIMITNo10Max parallel requests when fetching many traces

Copy .env.example to .env and fill in your values.

Claude Desktop / Claude Code setup

Add to your MCP config (claude_desktop_config.json or .claude/mcp.json):

{

"mcpServers": { "jaeger": { "command": "jaeger-mcp", "env": { "JAEGER_URL": "https://jaeger.example.com", "JAEGER_TOKEN": "your-token-here" } } } }

Or with uvx (no install required):

{

"mcpServers": { "jaeger": { "command": "uvx", "args": ["jaeger-mcp"], "env": { "JAEGER_URL": "https://jaeger.example.com" } } } }

Docker

docker run --rm -e JAEGER_URL=https://jaeger.example.com jaeger-mcp

Example queries

Once configured, ask Claude:

  • "What services does Jaeger know about?"
  • "Find traces with HTTP 500 errors in order-service from the last hour"
  • "Show me the slowest traces (over 2 seconds) for GET /checkout"
  • "What caused the error in trace abcdef1234567890?"
  • "Map the service dependency graph for the last 7 days"
  • "Which services call postgres most frequently?"
  • "Compare trace abc123 against trace def456 — what spans changed?"
  • "What are the p95 latencies per operation in order-service?"

Tool usage guide

jaeger_list_services

Returns all service names Jaeger has seen. Start here when you don't know which services are instrumented. Output is capped at 500 services with a truncation hint.

jaeger_list_operations

Returns all operation names for a given service (e.g. HTTP route names, gRPC method names). Use to discover valid operation names before filtering jaeger_search_traces.

jaeger_search_traces

The main search tool. Filters:

  • service (required) — service name from jaeger_list_services
  • operation — narrow to a specific endpoint
  • tags — JSON string of tag filters, e.g. {"http.status_code":"500"} or {"error":"true"}
  • start / end — time range in microseconds UTC
  • min_duration / max_duration — duration strings like "100ms", "1.5s", "2m"
  • limit — default 20, max 1500

Returns trace summaries with trace_id, duration_us, span_count, service_count, root_operation, errors_count.

jaeger_get_trace

Full trace detail. Accepts a trace_id (hex string, 16-32 chars) and returns:

  • All spans with tags, service names, parent/child relationships
  • Per-service statistics (span count, total duration, error count)
  • Execution tree (each node lists its child span IDs)

Error spans are identified by tags["error"] = "true".

jaeger_get_dependencies

Service topology graph. Returns directed edges (parent → child) with call_count. Use lookback_hours (default 24, max 720) to control the window.

jaeger_compare_traces

Structural diff between two traces. Accepts two trace_id hex strings and matches spans by (operationName, serviceName, parentOperation) — not span ID. Reports:

  • Added spans — present in trace B but not trace A
  • Removed spans — present in trace A but not trace B
  • Changed spans — matched but differ in duration or tags (shows deltas)
  • Unchanged count — number of identical spans

Use to compare a slow trace against a fast one, or to see what changed between deployments.

jaeger_span_statistics

Per-operation latency percentiles and error rates. Fetches up to limit traces (default 20, max 100) for a service and aggregates all spans by operation name. Reports per operation:

  • count — total spans observed
  • p50_duration_us, p95_duration_us, p99_duration_us — latency percentiles
  • error_count, error_rate — errors (identified by tags["error"] = "true")

Use to find the slowest or most error-prone operations in a service.

jaeger_critical_path

Identifies the longest-duration span chain from root to leaf in a trace (the critical path) and ranks spans by self-time to find performance bottlenecks.

Reports:

  • Critical path spans with operation, service, duration, and percentage-of-total
  • Bottleneck spans ranked by exclusive duration (self-time)

Use to answer "Why is this trace so slow?" and "Which operations consume the most CPU/self-time?"

jaeger_compare_windows

Compares aggregate trace behavior between two time periods for a service to detect performance regressions or improvements across deployments.

Reports:

  • Per-operation diff summary showing added, removed, faster, slower operations
  • Deviation scoring with numeric scores per operation and overall
  • Latency percentile changes (p50, p95) and error rate deltas

Use to answer "Did our latest deployment affect performance?" and "Which operations got slower after the database upgrade?"

jaeger_detect_anomalies

Scans for statistically significant latency spikes or error-rate increases in a service's recent traces compared to historical baselines.

Reports:

  • Flagged operations with anomaly type (latency or error_rate)
  • Severity classification (low to critical) with z-scores
  • Current vs baseline values for affected metrics

Use to proactively identify performance degradations and reliability issues before they impact users.

Library facade (in-process use)

jaeger-mcp can also be used as a Python library without an MCP server:

from jaeger_mcp import JaegerClient

client = JaegerClient.from_env() # reads JAEGER_URL from env trace = client.get_trace("abcdef1234567890abcdef1234567890")

for span in trace.spans: if span.error: print(f"{span.service_name}: {span.operation} at {span.start_utc}") print(f" tags: {span.tags}")

Available methods: get_trace(), search_traces(), list_services(), get_dependencies(), compare_traces(), span_statistics(), critical_path(), compare_windows(), detect_anomalies(), predict_degradation(), forecast_capacity(), find_test_traces(), regression_diff(), test_profile().

Domain objects: Span, Trace, TraceSummary, ServiceDep, TraceComparison, SpanIdentity, SpanChange, SpanStatisticsResult, OperationStatResult, CriticalPathOutput, CriticalPathSpan, BottleneckSpan, WindowComparisonOutput, OperationDiff, AnomalyDetectionOutput, OperationAnomaly — all with typed fields.

API Documentation

This project includes comprehensive OpenAPI specifications in the docs/ directory:

  1. Jaeger Query Service API (openapi.yaml) - Documents the actual Jaeger API endpoints
  2. MCP Tools API (docs/mcp-tools-openapi.yaml) - Documents the MCP tools as conceptual HTTP endpoints

These specifications are useful for:

  • Understanding the underlying API calls made by each tool
  • Developing alternative integrations
  • Debugging API interactions
  • Generating client libraries or documentation

See docs/README.md for more details on both specifications.

Performance characteristics

  • All tools use a single persistent requests.Session with connection pooling.
  • The session has trust_env = False to bypass environment proxies (Jaeger is typically an internal service).
  • Requests time out after 30 seconds (configurable via JAEGER_TIMEOUT).
  • Transient HTTP errors (429/5xx) are retried with exponential backof

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx