发现 AI 代理的未来arrow_forward

prometheus-mcp-server

calendar_today收录于 2026年4月23日
category智能体与应用工具
code开源
MCPGoAI代理CLI智能体与应用工具模型与推理框架开发者工具/代码协议/API/集成数据分析/BI/可视化

允许 LLM 通过 MCP 协议与 Prometheus 交互,执行 PromQL 查询、发现指标并获取内置文档支持的 Go 语言服务器。

本项目是一个基于 Go 语言实现的 MCP(Model Context Protocol)服务器,旨在打通大语言模型与 Prometheus 可观测性平台之间的交互链路。通过封装完整的 Prometheus HTTP API,它支持 LLM 执行即时与范围 PromQL 查询、发现标签与序列、读取告警与规则状态。为提升 LLM 交互质量,项目内置了 prometheus/docs 离线文档子模块,并提供 TOON 编码与响应截断机制以大幅优化 Token 消耗。

核心能力#

  • 查询与发现:即时查询(query)、范围查询(range_query)、标签名/值获取(label_names/label_values)、序列查询(series)、元数据获取(metric_metadata/targets_metadata
  • 告警与规则:获取告警列表(list_alerts)、规则列表(list_rules)、Alertmanager 集群信息(alertmanagers
  • 系统与配置:读取运行配置(config)、启动参数(flags)、构建信息(build_info)、运行时信息(runtime_info)、就绪与健康检查(ready/healthy
  • TSDB 管理(需显式启用):热重载(reload)、优雅退出(quit)、清理 Tombstones、删除序列、创建快照、TSDB 统计、WAL 回放状态
  • 知识库与文档:通过 docs_listdocs_readdocs_search 工具让 LLM 查阅 Prometheus 官方文档
  • Token 效率优化:TOON 编码将 JSON 输出转为 Token-Oriented Object Notation 格式;响应截断支持全局默认及工具级行数/条目上限
  • 安全与管控:工具白名单(--mcp.tools);HTTP 配置文件连接带 Basic Auth/TLS 的 Prometheus;Web 配置文件保护自身端点

架构设计#

项目采用标准 Go 布局,cmd/prometheus-mcp-server/ 为主入口,internal/ 存放内部实现,pkg/ 存放可复用包,独立维护 charts/(Helm OCI)、packaging/systemd/(系统包)及 grafana/(预置 Dashboard)。

支持 Stdio(本地 CLI 直连)与 Streamable HTTP(含 SSE,容器化/远程部署)双传输协议。通过 --prometheus.backend 注入不同后端实现,各后端可动态增删工具集——例如 Thanos 后端移除 config/quit 并增加 list_stores。通过 .gitmodules 引入上游 prometheus/docs 仓库实现离线文档集成。自身暴露 Prometheus 指标并附带预构建 Grafana Dashboard,实现运行状态自观测。

部署方式#

二进制安装

prometheus-mcp-server --prometheus.url "https://your-prometheus:9090"

Docker

# Stdio
docker run --rm -i ghcr.io/tjhop/prometheus-mcp-server:latest \
  --prometheus.url "https://your-prometheus:9090"

# HTTP
docker run --rm -p 8080:8080 ghcr.io/tjhop/prometheus-mcp-server:latest \
  --prometheus.url "https://your-prometheus:9090" \
  --mcp.transport "http" --web.listen-address ":8080"

Helm Chart (Kubernetes)

helm install prometheus-mcp-server oci://ghcr.io/tjhop/charts/prometheus-mcp-server \
  --version <version> --set prometheus.url=http://prometheus:9090

systemd:提供系统级安装包,支持 apt installsystemctl enable --now 启动。

关键配置#

所有 CLI 参数均支持环境变量配置,前缀为 PROMETHEUS_MCP_SERVER_

配置项CLI Flag说明
目标实例--prometheus.url指向 Prometheus 的地址
传输协议--mcp.transportstdio(默认)或 http
监听地址--web.listen-addressHTTP 模式监听端口
工具白名单--mcp.tools限制暴露给 LLM 的工具子集
后端类型--prometheus.backendprometheus(默认)、thanos
危险操作--dangerous.enable-tsdb-admin-tools启用 TSDB 管理类工具
客户端认证--http.config连接后端 Prometheus 的 TLS/Auth 配置
服务端认证--web.config.fileMCP Server 自身 HTTP 端点安全配置

适用场景#

  1. LLM 辅助运维排障:让 Claude/Gemini/Ollama 等直接查询指标,诊断慢查询、分析实例健康状态
  2. SLO/Recording Rule 建议:LLM 分析指标后自动建议 Prometheus 记录规则
  3. Prometheus 最佳实践咨询:LLM 内置文档知识,可回答 metric/label 命名规范
  4. 多后端查询:在 Thanos 等兼容系统上执行 PromQL
  5. CI/CD 与 GitOps:通过 MCP 协议将可观测性集成到 AI 编码助手和自动化流程中

项目采用 Apache-2.0 许可证,由 tjhop 开发维护。

保持更新

获取最新的 AI 工具和趋势,直接发送到您的收件箱。没有垃圾邮件,只有智能。

rocket_launch