Token导航 LogoToken导航TokenDH.com
MCP Server Newrelic logo
开发工具stdio官方级别未说明来源级核验

MCP Server Newrelic

MCP Server

The Unofficial MCP Server for New Relic (Alpha)

工具数

0

提示词数

0

GitHub Stars

3

资源数

0
性能监控PythonClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

ulucaydin

提供方

ulucaydin

最后核验

2026/5/18 03:27

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -r requirements.txt

详细介绍

](https://mseep.ai/app/ulucaydin-mcp-server-newrelic)

New Relic NerdGraph MCP服务器

![License: MIT](https://opensource.org/licenses/MIT)

此存储库提供 模型上下文协议(MCP) 用于与交互的服务器 新Relic NerdGraph API它允许MCP客户端(如Claude Desktop)使用自然语言或特定命令查询您的New Relic帐户数据和功能并与之交互。

使用 fastmcp 框架。

特性

此MCP服务器将各种New Relic功能作为工具和资源公开,包括:

  • 帐户详细信息: 获取已配置帐户的基本信息。
  • 通用NerdGraph查询: 执行任意NerdGraph查询。
  • NRQL查询: 对您的帐户数据运行特定的NRQL查询。
  • 实体管理: 搜索实体(应用程序、主机、监视器等)并按GUID检索详细信息。
  • APM: 列出应用程序性能监控(APM)应用程序。
  • 合成药物: 列出合成监视器并创建简单的浏览器监视器。
  • 警报: 列出警报策略、查看未结事件和确认事件。

先决条件

  • python Python 3.10+推荐(根据需要 fastmcp).
  • pip: Python包安装程序。
  • 新文物帐户: 访问New Relic帐户。
  • 新Relic用户API密钥: 身份验证需要用户API密钥。您可以生成一个 这里. 保管好这把钥匙!
  • 新文物帐户ID: 大多数操作都需要您的New Relic帐户ID。您可以在New Relic UI中找到它(通常在URL或帐户设置中)。

设置和安装

  1. 克隆存储库:
   git clone  # Replace  with the actual URL
   cd mcp-server-newrelic
  1. 安装依赖关系:
   pip install -r requirements.txt

这将安装 fastmcp, requests,以及它们的依赖关系。

配置

服务器需要您的New Relic API密钥和帐户ID才能正常工作。使用环境变量配置这些 之前 运行服务器:

# Replace YOUR_API_KEY and YOUR_ACCOUNT_ID with your actual credentials
export NEW_RELIC_API_KEY="YOUR_API_KEY"
export NEW_RELIC_ACCOUNT_ID="YOUR_ACCOUNT_ID"

安全说明: 不要在源代码中硬编码API密钥。建议使用环境变量。您还可以使用以下工具 direnv 或放置这些 export shell配置文件中的命令(.zshrc, .bashrc等)以实现持久性,但要注意安全影响。

运行服务器

配置后,使用启动服务器 fastmcp 命令行工具:

fastmcp run server.py:mcp
  • server.py:主要入口点脚本。
  • mcp:名称 FastMCP 在内部创建的实例 server.py.

服务器将启动、打印注册消息并监听传入的MCP连接(默认情况下通常在端口8000上,由管理 fastmcp).您应该看到类似于以下内容的输出:

Using New Relic Account ID: YOUR_ACCOUNT_ID
Registering common features...
Registering entity features...
Registering APM features...
Registering Synthetics features...
Registering Alerts features...
Feature registration complete.
INFO:     Started server process [XXXXX]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)

让此终端窗口保持运行。

与MCP客户端一起使用

  1. 启动MCP服务器 (如上所述)。
  1. 重新启动MCP客户端 (例如克劳德桌面)。
  1. 客户端应自动检测正在运行的服务器并连接到它。您可能会看到一个指示器(如🔨 Claude Desktop中的图标)显示外部工具可用。
  1. 现在,您可以使用自然语言或直接调用下面列出的工具与您的New Relic帐户进行交互。

- 自然语言示例: “显示我的APM应用程序”或“列出帐户1234567中未解决的关键事件” - 直接调用(如果支持): list_apm_applications()list_open_incidents(priority='CRITICAL', target_account_id=1234567)

可用工具和资源

服务器提供可通过模型上下文协议访问的以下功能:

______________________________________________________________________

常见(features/common.py)

  • 工具: query_nerdgraph

- 说明: 执行任意NerdGraph查询。用于特定工具未涵盖的操作。 - 论据: - nerdgraph_query (str):GraphQL查询字符串。 - variables (可选\[Dict\]):查询的JSON变量字典。 - 退货: 查询结果的JSON字符串。

  • 工具: run_nrql_query

- 说明: 执行NRQL查询。 - 论据: - nrql (str):NRQL查询字符串(例如。, "SELECT count(*) FROM Transaction TIMESERIES"). - target_account_id (可选\[int\]):要查询的帐户ID(如果省略,则使用env中的默认值)。 - 退货: NRQL结果的JSON字符串。

  • 资源: get_account_details

- 说明: 提供配置的New Relic帐户的基本详细信息(ID、名称)。 - URI: newrelic://account_details - 退货: 包含帐户详细信息的JSON字符串({"data": {"id": ..., "name": ...}})或者错误。

______________________________________________________________________

实体(features/entities.py)

  • 工具: search_entities

- 说明: 根据条件搜索New Relic实体。 - 论据: - name (可选\[str\]):按名称过滤(模糊匹配)。 - entity_type (可选\[str\]):按类型过滤(例如。, 'APPLICATION', 'HOST'). - domain (可选\[str\]):按域过滤(例如。, 'APM', 'INFRA'). - tags (可选\[List\[Dict\]\]):按标签过滤(例如。, [{"key": "env", "value": "prod"}]). - target_account_id (可选\[int\]):要在其中搜索的显式帐户ID。 - limit (int):最大结果(默认值50)。 - 退货: 搜索结果的JSON字符串。

  • 资源: get_entity_details

- 说明: 检索特定实体的详细信息。包括APM、浏览器、Infra、Synthetics、仪表板等的常见字段和特定类型的详细信息。 - URI: newrelic://entity/{guid} (替换 {guid} 具有实体GUID) - 退货: 实体详细信息的JSON字符串。

  • 提示: generate_entity_search_query

- 说明: 生成 query 字符串条件部分 entitySearch NerdGraph字段,可用于构建搜索查询。 - 论据: - entity_name (str):要搜索的名称(在提示生成中使用的完全匹配)。 - entity_domain (可选\[str\]):要包含在查询条件中的域。 - entity_type (可选\[str\]):键入要包含在查询条件中的内容。 - target_account_id (可选\[int\]):要包含在查询条件中的帐户ID。 - 退货: 表示搜索条件的字符串(例如。, "accountId = 123 AND name = 'My App' AND domain = 'APM'").

______________________________________________________________________

APM(features/apm.py)

  • 工具: list_apm_applications

- 说明: 列出APM应用程序。 - 论据: - target_account_id (可选\[int\]):要查询的帐户ID(如果省略,则使用默认值)。 - 退货: 包含APM应用程序列表的JSON字符串。

______________________________________________________________________

合成药物(features/synthetics.py)

  • 工具: list_synthetics_monitors

- 说明: 列出合成监视器。 - 论据: - target_account_id (可选\[int\]):要查询的帐户ID(如果省略,则使用默认值)。 - 退货: 包含合成监视器列表的JSON字符串。

  • 工具: create_simple_browser_monitor

- 说明: 创建基本的Synthetics简单浏览器监视器。 - 论据: - monitor_name (str):新监视器的名称。 - url (str):要监视的URL。 - locations (List\[str\]):公共位置标签列表(例如。, ["AWS_US_EAST_1"]). - period (str):检查频率(例如。, "EVERY_15_MINUTES").违约: "EVERY_15_MINUTES". - status (str):初始状态("ENABLED""DISABLED").违约: "ENABLED". - target_account_id (可选\[int\]):用于创建的帐户ID(如果省略,则使用默认值)。 - tags (可选\[List\[Dict\]\]):可选标签(例如。, [{"key": "team", "value": "ops"}]). - 退货: 包含结果的JSON字符串,包括新监视器的GUID。

  • 资源: 可以使用以下命令检索合成监视器详细信息 get_entity_details 具有监视器GUID的资源(newrelic://entity/{monitor_guid}).

______________________________________________________________________

警报(features/alerts.py)

  • 工具: list_alert_policies

- 说明: 列出警报策略,可选择按名称进行筛选。 - 论据: - target_account_id (可选\[int\]):要查询的帐户ID(如果省略,则使用默认值)。 - policy_name_filter (可选\[str\]):筛选name包含此字符串的策略。 - 退货: 包含警报策略列表的JSON字符串。

  • 工具: list_open_incidents

- 说明: 列出当前打开的警报事件。 - 论据: - target_account_id (可选\[int\]):要查询的帐户ID(如果省略,则使用默认值)。 - priority (可选\[str\]):按优先级筛选('CRITICAL', 'WARNING'). - 退货: 包含打开事件列表的JSON字符串。

  • 工具: acknowledge_alert_incident

- 说明: 确认开放警报事件。 - 论据: - incident_id (int):要确认的事件的ID。 - target_account_id (可选\[int\]):发生事件的帐户ID(如果省略,则使用默认值)。 - message (可选\[str\]):用于确认的可选消息。 - 退货: 带有确认结果的JSON字符串。

______________________________________________________________________

贡献

欢迎投稿!请随时提交问题或拉取请求。

  1. 分叉存储库。
  2. 创建新分支(git checkout -b feature/your-feature).
  3. 进行更改。
  4. 提交您的更改(git commit -am 'Add some feature').
  5. 推到分支(git push origin feature/your-feature).
  6. 打开拉取请求。

许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息(如果存在LICENSE文件)。

目录标签

目录标签

性能监控PythonClaudedeveloper-toolsmcp-servernewrelicapi-server本地部署NerdGraphMCP服务器API交互

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP