返回 MCP 目录
public公开dns本地运行

CaesarYangs_prometheus_mcp_server

一个为Prometheus设计的MCP服务器,支持LLM通过工具函数检索和分析指标数据。

article

README

🚀 MCP 为 Prometheus 的服务器

MCP(模型上下文协议)服务器用于从 Prometheus 数据库检索数据。它让大型语言模型(LLMs)能调用预定义路由中的可执行工具函数,实现检索和分析大量指标数据、搜索指标使用情况、执行复杂查询等任务,还增强了使用控制。

✨ 主要特性

  • 数据检索:可从 Prometheus 获取特定指标或时间段内的数据。
  • 指标分析:能对检索到的指标进行统计分析。
  • 使用情况搜索:可查找和探索指标使用模式。
  • 复杂查询:支持执行高级 PromQL 查询以深入探索数据。

具体功能展示

✅ 可从 Prometheus 检索全面的指标信息,包括名称和描述。 ✅ 能使用指标名称获取并分析特定指标数据。 ✅ 可在自定义时间段内分析指标数据。 🚧 根据特定标签筛选和匹配数据(开发中)。 ⏳ 计划中的其他功能...

🚀 快速开始

📦 安装指南

运行 MCP 需要一个 Python 虚拟环境(venv),所有包都应安装到此 venv 中,以便 MCP 服务器能够自动启动。

准备 Python 环境

cd ./src/prometheus_mcp_server
python3 -m venv .venv
# Linux/macOS:
source .venv/bin/activate

# Windows:
.venv\Scripts\activate

然后准备好用于特定用途的 Python 环境。

安装所需的软件包

确保 pip 正确安装。如果您的 venv 没有带 pip 安装,则手动安装它:

wget https://bootstrap.pypa.io/get-pip.py
python3 get-pip.py

然后安装所有必需的软件包:

pip install -r requirements.txt

💻 使用示例

带 MCP 客户端(包括 Claude Desktop)

配置您的 Claude Desktop 应用程序配置文件~/Library/Application Support/Claude/claude_desktop_config.json(macOS)

{
    "mcpServers": {
        "prometheus": {
            "command": "uv",
            "args": [
                "--directory",
                "/path/to/prometheus_mcp_server",
                "run",
                "server.py"
            ],
            "env": {
                "PROMETHEUS_HOST": "http://localhost:9090"
            }
        }
    }
}

单独运行 MCP 服务器

uv 方法
uv --directory /path/to/prometheus_mcp_server run server.py

这也是确保此 MCP 服务器可以自动启动的一种方式,因为 Claude Desktop 使用这种 ux 脚本方法在应用程序启动时启动。

常规 Python 方法
python3 server.py

🤝 为项目做贡献

欢迎贡献!以下是一些快速指南:

  1. 叉取仓库
  2. 创建功能分支(git checkout -b feature/AmazingFeature
  3. 提交更改(git commit -m 'Add some AmazingFeature'
  4. 推送到分支(git push origin feature/AmazingFeature
  5. 打开拉取请求

对于重大变更,请先打开问题讨论您希望更改的内容。

感谢您的贡献!

📄 许可证

MIT License

📚 详细文档

该项目灵感来源于或使用以下开源项目的代码:

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端