使用说明

项目简介

本项目是一个基于 Model Context Protocol (MCP) 的服务器,旨在让大型语言模型 (LLM) 如 Claude 能够访问和查询 New Relic 的日志和指标数据。通过提供 NRQL 查询工具,LLM 可以利用 New Relic 的监控数据进行更深入的分析和应用。

主要功能点

  • NRQL 查询: 允许 LLM 使用 New Relic Query Language (NRQL) 查询日志和指标数据。
  • 错误日志: 提供详细的错误日志记录,方便开发者进行问题排查和调试。
  • Claude 集成: 特别为与 Claude Desktop 等 LLM 客户端集成而设计。
  • 结果格式化: 将查询结果格式化为易于阅读的文本,方便 LLM 理解和使用。
  • 账号配置: 支持配置 New Relic 账号 ID,以访问特定账号的数据。

安装步骤

  1. 安装 'uv' 包管理器: 按照仓库 README.md 中的 "Setup Instructions" -> "1. Install 'uv' package manager" 步骤进行安装。
  2. 创建并设置项目: 按照 README.md 中的 "Setup Instructions" -> "2. Create and setup project" 步骤,创建项目目录,初始化虚拟环境并进入虚拟环境。
  3. 安装依赖: 在虚拟环境中,运行命令 'uv pip install "mcp[cli]" httpx' 安装项目所需的 Python 依赖包。
  4. 创建服务器文件: 将仓库提供的 'app.py' 代码复制到项目目录下,并将文件名更改为 'newrelic_logs_server.py'。
  5. 配置环境变量: 根据 README.md 中的 "Setup Instructions" -> "4. Configure your environment variables" 步骤,设置 'NEW_RELIC_API_KEY' 和 'NEW_RELIC_ACCOUNT_ID' 环境变量。请替换为您的 New Relic API 密钥和账号 ID。

服务器配置

为了让 MCP 客户端(例如 Claude Desktop)连接到此 MCP 服务器,您需要在客户端的配置文件中添加服务器配置信息。以下是 Claude Desktop 的配置示例,请根据您的 MCP 客户端进行相应配置:

{
    "mcpServers": {
        "newrelic": {
            "command": "uv",
            "args": [
                "--directory",
                "/absolute/path/to/newrelic-mcp",  // 请替换为你的项目绝对路径
                "run",
                "newrelic_logs_server.py"
            ]
        }
    }
}

配置参数说明:

  • 'server name': 'newrelic' (服务器名称,可以自定义)
  • 'command': 'uv' (启动服务器的命令,这里使用 'uv run' 运行 Python 脚本)
  • 'args': 启动命令的参数列表:
    • '--directory': '/absolute/path/to/newrelic-mcp' (指向服务器代码所在目录的绝对路径,请务必替换为实际路径)
    • 'run': 运行 Python 脚本的 'uv' 子命令
    • 'newrelic_logs_server.py': 服务器脚本文件名

基本使用方法

配置完成后,在 MCP 客户端中,你可以通过调用 'query_logs' 工具并提供 NRQL 查询语句来查询 New Relic 日志。例如,在 Claude 中,你可以提问类似 “使用 'query_logs' 工具查询过去一小时的所有交易日志” 的问题。服务器会将 NRQL 查询发送到 New Relic,并将返回的日志结果提供给 Claude。

信息

分类

开发者工具