Token导航 LogoToken导航TokenDH.com
Opennms MCP logo
运维云端未说明官方级别未说明来源级核验

Opennms MCP

MCP Server

一个连接Claude与OpenNMS的MCP服务器,支持通过自然语言管理警报、节点、事件、资产记录、类别和服务收集。

工具数

23

提示词数

0

GitHub Stars

0

资源数

0
网络管理TypeScriptClaude自然语言处理Claude

安装说明

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

作者 / 组织

c-perronnet

提供方

c-perronnet

最后核验

2026/5/17 20:21

快速接入

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

详细介绍

opennms-mcp

MCP(模型上下文协议) 将Claude连接到OpenNMS的服务器。让Claude列出警报、检查节点、发送事件、更新资产记录、管理类别和控制服务收集——所有这些都是用简单的语言完成的。

先决条件

  • Node.js 22+
  • 可通过HTTP/HTTPS访问的OpenNMS实例
  • 具有API访问权限的用户帐户(管理员或读/写角色)

安装

git clone https://github.com/c-perronnet/opennms-mcp.git
cd opennms-mcp
npm install
npm run build

配置

使用您的OpenNMS凭据创建一个JSON文件。支持两种身份验证格式:

基本认证 (opennms/myserver.json):

{
  "url": "https://opennms.example.com",
  "username": "admin",
  "password": "secret"
}

令牌身份验证 (opennms/myserver.json):

{
  "url": "https://opennms.example.com",
  "token": "your-api-token"
}

添加 "insecure": true 选择任一格式以跳过TLS证书验证(对自签名证书有用)。

将配置文件存储在 opennms/ directory——它被git忽略,因此永远不会提交凭据。

连接到克劳德桌面

将服务器添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "opennms": {
      "command": "node",
      "args": ["/absolute/path/to/opennms-mcp/dist/index.js"],
      "env": {
        "OPENNMS_CONFIG": "/absolute/path/to/opennms-mcp/opennms/myserver.json"
      }
    }
  }
}

或者,将配置路径作为位置参数传递:

{
  "mcpServers": {
    "opennms": {
      "command": "node",
      "args": [
        "/absolute/path/to/opennms-mcp/dist/index.js",
        "/absolute/path/to/opennms-mcp/opennms/myserver.json"
      ]
    }
  }
}

连接到克劳德代码

Claude Code从读取MCP服务器配置 ~/.claude/claude_mcp_settings.json。在那里添加服务器:

{
  "mcpServers": {
    "opennms": {
      "command": "node",
      "args": ["/absolute/path/to/opennms-mcp/dist/index.js"],
      "env": {
        "OPENNMS_CONFIG": "/absolute/path/to/opennms-mcp/opennms/myserver.json"
      }
    }
  }
}

或者通过CLI进行配置:

claude mcp add opennms \
  -e OPENNMS_CONFIG=/absolute/path/to/opennms-mcp/opennms/myserver.json \
  -- node /absolute/path/to/opennms-mcp/dist/index.js

验证服务器是否已加载 /mcp 在克劳德代码提示中。下面列出的工具将在任何对话中可用。

可用工具

连接性

工具说明
server_info验证连接并返回OpenNMS版本

警报

工具说明
list_alarms列出警报,可选择按FIQL表达式过滤
get_alarm按ID获取警报的完整详细信息
acknowledge_alarm确认警报
modify_alarm不确认、清除或升级警报

节点

工具说明
list_nodes列出节点,可选择按FIQL表达式过滤
get_node获取完整的节点详细信息(接受数字ID或 foreignSource:foreignId)
get_node_ip_interfaces列出节点的IP接口
get_node_snmp_interfaces列出节点的SNMP接口
get_node_outages列出节点的中断
rescan_node触发节点的功能重新扫描

事件

工具说明
list_events列出事件,可选择按FIQL表达式筛选
get_event按ID获取事件的完整详细信息
send_event向OpenNMS事件总线发送自定义事件

资产记录

工具说明
get_node_asset_record获取节点的资产记录
update_node_asset_record更新节点的一个或多个资产字段

类别

工具说明
list_categories列出OpenNMS中定义的所有类别
get_node_categories列出分配给节点的类别
add_category_to_node为节点分配类别
remove_category_from_node从节点中删除类别

收集/投票

工具说明
list_node_services列出节点IP接口上的受监视服务
enable_service_collection为服务启用收集(设置为“活动”)
disable_service_collection禁用服务的收集(设置为强制非托管)

FIQL过滤

几个列表工具接受 filter 参数使用 FIQL 语法:

运算符含义
==等于
!=不等于
=lt=小于
=gt=大于
;以及
,

示例:

  • severity==CRITICAL --仅限关键警报
  • node.label==web* --标签以“web”开头的节点
  • severity==MAJOR,severity==CRITICAL --重大或关键警报
  • category.name==Routers --路由器类别中的节点

发展

npm run dev    # watch mode — recompiles on file changes
npm run build  # one-shot compile to dist/
npm start      # run compiled server (requires OPENNMS_CONFIG)

许可证

麻省理工学院

目录标签

目录标签

网络管理TypeScriptClaude自然语言处理本地部署API集成运维自动化

支持客户端

Claude

接入字段

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

未说明

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

token

工具数量(toolCount,工具数)

23

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明token部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP