关于 New Relic MCP Server
New Relic MCP Server 是可自托管的桥接服务,让 MCP 客户端查询 New Relic 可观测性数据及选定管理 API。它使用范围固定的 NerdGraph 操作集,默认只读,写入须经试运行和确认。
主要功能
- 01NRQL、日志、指标、追踪和错误
- 02警报、事件、仪表板与服务级别
- 03可选工具集和管理 API
- 04默认只读,写入受控
- 05Bearer 或 OIDC 身份验证及允许列表
- 06Prometheus 使用情况和上游指标
适用场景
- 01调查服务延迟和错误
- 02检查警报、事件与 SLO 状态
- 03分析日志和合成监控器故障
- 04在受控网络中访问 New Relic
MCP 相关
通过 stdio 或 Streamable HTTP 向 MCP 客户端提供类型化的 New Relic 工具、资源和静态提示词。服务连接 NerdGraph,HTTP 部署支持 Bearer 或 OIDC 身份验证。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @meet-bhalodiya/newrelic-mcpNEW_RELIC_API_KEY密钥New Relic user key. Create a dedicated least-privilege key.NEW_RELIC_REGIONNew Relic data region: US, EU, or JP.NEW_RELIC_DEFAULT_ACCOUNT_IDOptional default account ID used when a tool omits accountId.NEW_RELIC_ACCOUNT_ALLOWLISTOptional comma-separated account IDs this deployment may access.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
39收录的工具列表 · 更新于 2 周前
此工具无需参数。
详细介绍
New Relic MCP Server
安全地将 AI 助手连接到 New Relic。
一款面向生产环境、可自托管的 Model Context Protocol (MCP)服务,为 Claude、Cursor、Codex 和其他 MCP 客户端提供对 NRQL、日志、指标、追踪、错误、实体、告警、 事件、仪表板、合成监控、工作负载、服务级别和部分管理 API 的类型化访问,默认只读—— 全部通过 New Relic 的 NerdGraph 实现。
它不会暴露任意 GraphQL,不会将客户端凭据转发给 New Relic,也不会接受作为工具参数传入的 New Relic 密钥。除非明确启用相应的功能开关,否则不会提供任何变更操作;每次写入都必须经过试运行、 确认短语和写入后回读流程。
亮点
- 🔒 默认安全 — 开箱即用为只读;写入功能需主动启用并通过功能开关控制,执行流程为试运行 → 确认短语 → 写入后回读。
- 🧱 受限的 API 范围 — 固定且有文档说明的 NerdGraph 操作集;不支持任意 GraphQL,也不会将凭据作为工具参数传入。
- 🔌 适用于任何 MCP 客户端 — 支持 Claude Code、Claude Desktop、Cursor、Codex 等,可通过 stdio 或无状态 Streamable HTTP 连接。
- 📈 内置使用情况遥测 — 提供 Prometheus
/metrics端点,记录每个工具的调用次数、耗时和结果,以及上游 NerdGraph、队列深度、重试、速率限制和缓存指标。 - 🏢 满足企业需求 — 支持 bearer/OIDC 身份验证、Host/Origin 允许列表、账户允许列表、密钥和 PII 脱敏、Docker 和 Helm。
- 🧰 覆盖范围广 — 可独立选择用于 NRQL、实体、告警、仪表板、合成监控、工作负载、服务级别、日志和指标的工具集。
- 📚 文档完善,测试全面 — 提供架构文档、ADR,以及单元、集成、合约、安全和负载测试套件;CI 会在每次变更时运行这些测试。
可以询问什么
连接后,可以用自然语言向 MCP 客户端提问——客户端会为你选择并调用合适的只读工具:
- “过去一小时,结账服务中最慢的事务有哪些?”
- “总结支付团队尚未解决的事件及其可能原因。”
- “本周哪些服务级别有未达到目标的风险?”
- “检查我的告警策略,并指出覆盖缺口。”
- “登录合成监控为何在夜间失败?”
完整功能列表请参阅工具目录。
为什么选择此 MCP?
New Relic 提供官方的、托管于 New Relic 的 MCP 服务 (New Relic AI MCP,目前 处于预览阶段)。本项目是一个互补的、可自托管且开源的 替代方案。以下情况适合选择它:
- 自托管和控制权 — 在自己的网络内运行 MCP 桥接服务,并使用自己的 凭据;只有出站 NerdGraph 调用会离开你的网络边界。(New Relic 的预览版 不面向受 FedRAMP 监管的账户提供。)
- 默认只读,写入需通过门控 — 每项变更操作都需主动启用,并遵循 dry-run → 确认短语 → 回读流程。
- 固定且可审计的操作范围 — 一组有文档记录的 NerdGraph 操作, 不支持任意 GraphQL,也不会将 New Relic 密钥作为工具参数传递。
- 自定义控制措施 — bearer/OIDC 身份验证、Host/Origin 和账户允许列表、机密 信息脱敏,以及可独立选择的工具集。
- 一流的遥测能力 — 提供用于工具使用情况和上游调用的 Prometheus 指标, 可抓取到现有的可观测性技术栈中。
- Apache-2.0 许可且可分叉 — 检查、固定版本并扩展实际部署的内容。
如果你更需要零运维、由 New Relic 管理并集成 New Relic AI 的体验,官方服务 可能更适合你。本项目以自托管、控制权和可审计性换取便利性。
项目状态:1.0.0。请查看支持的操作矩阵,并在启用 写入功能前,使用非生产环境的 New Relic 账户验证权限。MCP Registry、npm、容器和 MCPB 元数据均已准备就绪,但本仓库不会在没有维护者凭据的情况下发布构件。
要求
- Node.js 22.7.5 或更高版本;生产环境推荐使用 Node 24 LTS。
- New Relic 用户密钥,且仅具备已启用工具集所需的权限。
- 使用 US 或 EU 端点的 New Relic 账户,或已验证的 JP 兼容端点部署(参见配置)。
- 支持 stdio 或 Streamable HTTP 的 MCP 客户端。
New Relic 对每位用户拥有的所有密钥施加限制:每位用户最多同时发起 25 个 NerdGraph 请求。本服务默认最多允许 20 个请求,其中复杂 NRQL 查询最多 5 个。添加副本前,请参阅 性能和扩展。普通 HTTP 调用不依赖会话;若要在多个副本间可靠取消提示词 SDK 请求,还需要负载均衡器提供确定性的会话亲和性。
快速开始:stdio
全局安装软件包:
npm install --global @meet-bhalodiya/newrelic-mcp
export NEW_RELIC_API_KEY='NRAK-...'
export NEW_RELIC_REGION='US'
newrelic-mcp doctor --json
newrelic-mcp
或者让 MCP 客户端通过 npx 调用固定版本的软件包:
NEW_RELIC_API_KEY='NRAK-...' \
npx -y @meet-bhalodiya/[email protected] doctor --json
stdio 将 stdout 保留给 MCP 帧。运行时诊断信息和日志会输出到 stderr。
快速开始:经过身份验证的 HTTP
创建两个仅服务账户可读的文件:
install -m 0700 -d ./secrets
printf '%s' "$NEW_RELIC_API_KEY" > ./secrets/new_relic_api_key
openssl rand -hex 32 > ./secrets/mcp_bearer_token
chmod 0400 ./secrets/*
启动仅监听回环地址的容器:
docker compose up --build
MCP 端点为 http://127.0.0.1:3000/mcp;健康检查端点为 /healthz
和 /readyz。Docker Compose 会刻意启用静态 bearer 身份验证。
从 ./secrets/mcp_bearer_token 读取令牌,并在
Authorization: Bearer <token> 中发送。
对于原生进程:
export NEW_RELIC_API_KEY_FILE="$PWD/secrets/new_relic_api_key"
export MCP_AUTH_MODE=bearer
export MCP_BEARER_TOKEN_FILE="$PWD/secrets/mcp_bearer_token"
newrelic-mcp http --host 127.0.0.1 --port 3000
非回环 HTTP 必须使用 bearer 或 OIDC 身份验证、明确的 Host 允许列表、在 反向代理处启用 TLS,并为浏览器客户端配置 Origin 允许列表。请参阅 部署和安全性。
客户端设置
以下简短示例使用只读 stdio 服务。完整指南还包含远程 bearer 和 OAuth 设置,以及 针对特定客户端的注意事项。
Claude Code
claude mcp add --transport stdio --scope user \
--env NEW_RELIC_API_KEY="$NEW_RELIC_API_KEY" \
--env NEW_RELIC_REGION=US \
newrelic -- npx -y @meet-bhalodiya/[email protected]
在 Claude Code 中使用 /mcp 验证连接。
Claude Desktop
为实现最安全的本地安装,请构建或下载 .mcpb 捆绑包,然后使用
Settings → Extensions → Advanced settings → Install Extension。Claude Desktop
会将标记为敏感的字段存储在操作系统的安全存储中。手动配置本地 stdio JSON 的示例见
客户端配置。远程服务
必须通过 Settings → Connectors 添加,而不能通过 claude_desktop_config.json 添加。
Cursor
将 examples/cursor.mcp.json 复制到 .cursor/mcp.json
以用于单个项目,或复制到全局路径 ~/.cursor/mcp.json。从可访问
NEW_RELIC_API_KEY 的环境中启动 Cursor,然后在 MCP 设置中启用服务。
Codex
codex mcp add newrelic \
--env NEW_RELIC_REGION=US \
--env NEW_RELIC_API_KEY="$NEW_RELIC_API_KEY" \
-- npx -y @meet-bhalodiya/[email protected]
codex mcp list
Codex CLI、Codex IDE 扩展和同一 Codex 主机上的 ChatGPT 桌面应用共用 config.toml。请参阅 Codex 示例
了解 Streamable HTTP bearer 和 OAuth 模式。
CLI
newrelic-mcp [stdio]
newrelic-mcp http [--host HOST] [--port PORT]
newrelic-mcp doctor [--json]
newrelic-mcp tools [--json]
stdio(或不带子命令)会启动本地传输。http会在/mcp提供无会话的 Streamable HTTP,并提供运行状况端点;其有界取消注册表仅限进程内使用。doctor会验证配置、凭据、区域、可访问的账户,以及每个实际启用工具集对应的一项有界固定查询模式选择;它不会执行变更操作或打印机密信息。tools会报告已启用的工具集和安全门控,不会联系 New Relic。
安全模型
| 功能 | 默认值 | 必需设置 |
|---|---|---|
| 读取工具 | 由所选工具集启用 | NEW_RELIC_TOOLSETS |
| 普通写入 | 关闭 | NEW_RELIC_ENABLE_WRITES=true |
| 删除、取消、撤销、替换更新、公开访问、抑制 | 关闭 | 写入功能加上 NEW_RELIC_ENABLE_DESTRUCTIVE=true |
| 组织管理 | 关闭 | NEW_RELIC_ENABLE_ADMIN=true 和相应的身份验证范围 |
| 预览版数据管理 API | 关闭 | NEW_RELIC_ENABLE_PREVIEW_APIS=true |
| 实验性 AI 问题操作 | 关闭 | NEW_RELIC_ENABLE_EXPERIMENTAL_AI_ISSUES=true |
启用某个门控会注册相应工具,但不会绕过 New Relic 权限或 HTTP 授权范围。写入仍默认采用试运行模式。使用试运行返回的确切确认短语,并保持其他参数不变。确认短语会绑定到规范化后的变更和预读取状态;如果状态再次发生变化,则必须重新进行试运行。
本项目有意排除 API 密钥创建、synthetic 安全凭据变更、实时仪表板密码及重置、历史导出 URL、Slack 目标创建、任意实体删除、遥测数据摄取和原始 GraphQL。
工具集和 MCP 功能
默认的读取界面分为可独立选择的工具集:
corenrqlentitiesalertsdashboardssyntheticsworkloadsservice-levelslogsmetricsadmin(不会隐式启用)
使用 newrelic-mcp tools --json 查看准确的运行时目录,并参阅
tool-catalog.md 了解说明。资源包括服务功能、账户以及类型化的实体/配置模板。
静态提示词涵盖事件分诊、服务健康状况、告警策略审查、SLO 审查、仪表板设计和合成监控故障分析。由于不同 MCP 客户端对提示词和资源的支持各不相同,工具仍是权威的通用接口。
配置
配置会在启动时验证。最重要的设置如下:
NEW_RELIC_API_KEY= # xor NEW_RELIC_API_KEY_FILE
NEW_RELIC_REGION=US # US, EU, or JP
NEW_RELIC_DEFAULT_ACCOUNT_ID=
NEW_RELIC_ACCOUNT_ALLOWLIST=
NEW_RELIC_TOOLSETS=core,nrql,entities
MCP_AUTH_MODE=none # none, bearer, oidc
对于服务,优先使用基于文件的密钥,其值与对应的环境变量相同。请勿同时设置这两种形式。请参阅 configuration.md,了解优先级、所有设置、验证规则和示例。
开发
npm ci
npm run build
npm run lint
npm run typecheck
npm test
npm run verify
npm pack --dry-run
使用工作区专用的 HTTP 端口在本地运行:
CONDUCTOR_PORT=3100 npm run dev:http
选择启用的实时测试需要明确指定账户;除非设置了单独的临时账户写入标志,否则测试均为只读。请参阅 development.md 和 CONTRIBUTING.md。
文档
贡献
欢迎提交贡献——包括错误报告、基于 New Relic 官方文档的功能、文档和测试。请从 CONTRIBUTING.md 和 适合新手的问题开始。 所有参与者均须遵守行为准则。
如果这个项目对你或你的团队有所帮助,点亮一颗 ⭐ 能让更多人发现它。
支持和安全
需要帮助?请参阅 SUPPORT.md。对于可复现的错误和功能请求,请使用 GitHub Issues,切勿包含 New Relic 密钥、Bearer 令牌、NRQL、 账户数据、实体详情、原始响应或预签名 URL。
请根据 SECURITY.md 私下报告漏洞。
许可证
Apache License 2.0。请参阅 LICENSE。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。