用途
pmcp 是一个 Prometheus Model Context Protocol Server,用 Go 语言编写,目的是把 Prometheus 的查询能力通过 Model Context Protocol(MCP)暴露出来,供 MCP 客户端调用。
主要能力
服务器提供以下类别的工具:
- Expression:instant_query、range_query
- Metadata:find_series_by_labels、list_label_names、list_label_values、target_metadata_query、metric_metadata_query
- Discovery:target_discovery、alert_query、rule_query、alertmanager_discovery
- TSDB Admin:tsdb_snapshot、delete_series、clean_tombstones
- Management:health_check、readiness_check、reload、quit 此外,服务器将 Prometheus 数据以 URI 可寻址资源的形式暴露在 prom:/// 方案下,并提供用于动态数据访问的 URI 模板(Resource Templates)。
使用方式
安装:
- 通过 go install github.com/yshngg/prometheus-mcp-server@latest 安装二进制
- 或拉取 Docker 镜像:docker pull ghcr.io/yshngg/prometheus-mcp-server:latest
配置:所有标志均可通过环境变量设置:PROM_ADDR、MCP_ADDR、TRANSPORT、AUTH_TOKEN。
客户端配置:将相应配置加入 MCP 客户端,例如 claude_desktop_config.json 或 opencode.json。若未安装二进制,可使用 Docker。
HTTP 传输:以 HTTP 传输方式运行服务器后,将客户端配置为使用 http://localhost:8080/mcp。若需认证访问,设置 AUTH_TOKEN,客户端请求 /mcp 时须包含 Authorization: Bearer my-token。
适用场景
适合需要让 AI 客户端或 MCP 客户端访问 Prometheus 指标、执行查询、获取标签与元数据、发现目标与告警、执行 TSDB 管理操作的场景。
限制
资料中未提供具体版本要求、性能指标、支持的 Prometheus 版本范围、安全注意事项等细节,暂未提供。
许可证:Apache License 2.0。