mcpField
P
Prometheus MCP Server

Prometheus MCP Server

本地服务
github.com/shaxiaozz开发工具377 周前更新

关于 Prometheus MCP Server

Prometheus MCP Server 是用 Go 编写的服务,供 MCP 客户端检查指标并运行 Prometheus 查询。支持 SSE 传输、身份验证和 Docker 部署。

主要功能

  1. 01列出可用指标
  2. 02发现 Prometheus 目标
  3. 03获取指标元数据
  4. 04运行即时与范围查询
  5. 05基本身份验证和 Bearer Token
  6. 06支持 Docker 容器

适用场景

  1. 01探索指标与目标
  2. 02检查指标元数据
  3. 03运行即时或范围查询
  4. 04连接需身份验证的 Prometheus

MCP 相关

它向 MCP 客户端提供 Prometheus 指标和查询工具。文档说明支持 SSE 传输,也提到可选的 stdio 设置。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"prometheus-mcp-server-shaxiaozz": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"PROMETHEUS_URL",
"shaxiaozz/prometheus-mcp-server:latest"
],
"env": {
"PROMETHEUS_URL": "<PROMETHEUS_URL>"
}
}
}
}
启动命令docker run -i --rm -e PROMETHEUS_URL shaxiaozz/prometheus-mcp-server:latest
需要配置的环境变量
PROMETHEUS_URL

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
ocishaxiaozz/prometheus-mcp-server:latest

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

来自项目 README

Prometheus MCP Server

Model Context Protocol 这是一个基于Golang开发的Prometheus-MCP-Server,目前只支持sse运行模式 img.png

功能

  • Prometheus MCP Tools
    • 列出可用指标 (prometheus_list_metrics)
    • 发现并探索指标 (prometheus_get_targets)
    • 获取特定指标的元数据 (prometheus_get_metric_metadata)
    • 查看即时查询结果 (prometheus_execute_query)
    • 查看不同步长间隔的范围查询结果 (prometheus_execute_range_query)
    • 查看最近时长查询结果 (prometheus_execute_last_query)
  • 支持身份验证
    • 通过环境变量进行基本身份验证
    • 通过环境变量进行 Bearer Token 身份验证
  • 支持 Docker 容器化

使用方法

  1. 确保你的prometheus-mcp-server容器可以与prometheus-server通信.

  2. 使用以下命令运行prometheus-mcp-server容器

# 默认以sse方式运行mcp-server (prometheus无认证)
# 如需stdio模式,请自行将 MCP_SERVER_TRANSPORT=sse 修改为 MCP_SERVER_TRANSPORT=stdio
docker run -d --name prometheus-mcp-server \
  -e PROMETHEUS_URL=http://your-prometheus-server:9090 \
  -e MCP_SERVER_TRANSPORT=sse \
  shaxiaozz/prometheus-mcp-server:latest
# 默认以sse方式运行mcp-server (prometheus basic auth)
# 如需stdio模式,请自行将 MCP_SERVER_TRANSPORT=sse 修改为 MCP_SERVER_TRANSPORT=stdio
docker run -d --name prometheus-mcp-server \
  -e PROMETHEUS_URL=http://your-prometheus-server:9090 \
  -e PROMETHEUS_USERNAME=your_username \
  -e PROMETHEUS_PASSWORD=your_password \
  -e MCP_SERVER_TRANSPORT=sse \
  shaxiaozz/prometheus-mcp-server:latest
# 默认以sse方式运行mcp-server (prometheus token auth)
# 如需stdio模式,请自行将 MCP_SERVER_TRANSPORT=sse 修改为 MCP_SERVER_TRANSPORT=stdio
docker run -d --name prometheus-mcp-server \
  -e PROMETHEUS_URL=http://your-prometheus-server:9090 \
  -e PROMETHEUS_TOKEN=your_token \
  -e MCP_SERVER_TRANSPORT=sse \
  shaxiaozz/prometheus-mcp-server:latest
  1. 将服务器配置添加到客户端配置文件中。例如,Cursor Desktop:

url可直接通过命令: docker logs prometheus-mcp-server 查看

{
  "mcpServers": {
    "prometheus-mcp-server": {
      "url": "http://10.0.0.1:8000/sse"
    }
  }
}

img.png

构建镜像

git clonse https://github.com/shaxiaozz/prometheus-mcp-server.git && cd prometheus-mcp-server
docker build -t prometheus-mcp-server .

致谢

License

GNU v3.0

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。