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

Junos Eol MCP

MCP Server

一个用于库存管理的简单模型上下文协议(MCP)服务器,提供硬件库存检索、EOL组件分析和物料清单创建功能,适用于Juniper路由器硬件管理。

工具数

4

提示词数

0

GitHub Stars

0

资源数

0
库存管理PythonClaudeClaude DesktopClaude

安装说明

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

作者 / 组织

jomih

提供方

jomih

最后核验

2026/5/17 20:22

快速接入

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

命令预览

pip install -r requirements.txt

详细介绍

库存MCP服务器

一个简单的模型上下文协议(MCP)服务器,用于库存管理,有三个工具。

特性

此MCP服务器提供四种工具:

  1. get_show_chassis -连接到Juniper路由器,检索硬件清单,并自动分析EOL组件
  2. get_investory -使用可选的类别筛选检索当前库存数据
  3. 分析_库存 -分析路由器硬件清单,并与Juniper的在线EOL数据库进行核对
  4. create_bom -为具有可用性检查的产品创建物料清单

安装

  1. 安装Python 3.10或更高版本
  1. 安装依赖项:
pip install -r requirements.txt
  1. 创建一个 devices.json 包含路由器连接详细信息的文件:
{
  "router1": {
    "ip": "192.168.1.10",
    "port": 22,
    "username": "admin",
    "ssh_config": null,
    "auth": {
      "type": "password",
      "password": "password123"
    }
  },
  "router2": {
    "ip": "10.0.0.20",
    "port": 22,
    "username": "netadmin",
    "ssh_config": "~/.ssh/config",
    "auth": {
      "type": "password",
      "password": "secure_pass"
    }
  },
  "router3": {
    "ip": "10.0.0.30",
    "port": 22,
    "username": "admin",
    "ssh_config": null,
    "auth": {
      "type": "ssh_key",
      "ssh_key_file": "~/.ssh/id_rsa"
    }
  }
}

支持的身份验证类型:

  • password:使用密码身份验证
  • ssh_key:使用SSH密钥身份验证

重要提示: 保持你的 devices.json 文件安全,因为它包含凭据!

运行服务器

您可以直接运行服务器:

python inventory_mcp_server.py

或者使其可执行:

chmod +x inventory_mcp_server.py
./inventory_mcp_server.py

或者把它做成一个容器,放在远程服务器上。然后,配置Claude使用远程Docker容器

docker build -t junos-eol-mcp:1.0 .

使用Claude Desktop进行配置

要将此MCP服务器与Claude Desktop一起使用,请将其添加到您的Claude配置文件中:

在MacOS上

编辑 ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "inventory": {
      "command": "python",
      "args": ["/absolute/path/to/inventory_mcp_server.py"]
    }
  }
}

在Windows上

编辑 %APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "inventory": {
      "command": "python",
      "args": ["C:\\absolute\\path\\to\\inventory_mcp_server.py"]
    }
  }
}

替换 /absolute/path/to/inventory_mcp_server.py 使用服务器文件的实际路径。

更新配置后,重新启动Claude Desktop。

基于Docker容器的远程服务器

将所有文件上传到远程服务器并在那里创建容器:

docker build -t junos-eol-mcp:1.0 .

编辑 %APPDATA%\Claude\claude_desktop_config.json 在您的本地计算机中:

{
  "mcpServers": {
    "mcp-eol-junos-remote": {
      "type": "stdio",
      "command": "ssh",
      "args": [
        "",
        "/usr/bin/docker",
        "run",
        "--rm",
        "-i",
        "-v",
        "/absolute/path/to/junos-eol-mcp/:/app/config/",
        "junos-eol-mcp:1.0"]
    }
}

替换 /absolute/path/to/junos-eol-mcp 远程服务器中服务器文件的实际路径。

更新配置后,重新启动Claude Desktop。

工具使用示例

get_show_chassis

连接到路由器并分析其硬件中的EOL组件:

{
  "router_name": "ROUTERREC2",
  "eol_url": "https://support.juniper.net/support/eol/product/m_series/"
}

它的作用:

  1. 从加载路由器连接详细信息 devices.json
  2. 使用jnpr.junos(PyEZ)通过SSH连接到路由器
  3. 执行 show chassis hardware clei-models 命令
  4. 提取所有FRU型号
  5. 下载Juniper的EOL数据库
  6. 根据EOL数据库分析FRU
  7. 返回综合报告

输出:

{
  "router_name": "ROUTERREC2",
  "router_ip": "172.16.50.100",
  "command_executed": "show chassis hardware clei-models",
  "eol_list": {
    "CHAS-MX104-S": 1,
    "MIC-3D-2XGE-XFP": 2
  },
  "total_eol_components": 3,
  "eol_parts_found": ["CHAS-MX104-S", "MIC-3D-2XGE-XFP"],
  "fru_list": ["CHAS-MX104-S", "PWR-MX104-DC-S", "..."],
  "eol_url": "https://support.juniper.net/support/eol/product/m_series/"
}

get_investory

{
  "category": "components"
}

分析_库存

分析路由器硬件清单,并与Juniper的EOL数据库进行核对:

{
  "hw_inventory": "username@ROUTERREC2-re0> show chassis hardware clei-models\nHardware inventory:\nItem             Version  Part number  CLEI code         FRU model number\nMidplane         REV 57   750-044219   IPMVM10FRA        CHAS-MX104-S\nPEM 0            REV 06   740-045932   IPUPAMJKAB        PWR-MX104-DC-S\n...",
  "eol_url": "https://support.juniper.net/support/eol/product/m_series/"
}

它是如何工作的:

  1. 从硬件清单中提取所有FRU型号
  2. 从Juniper网站下载EOL页面
  3. 对照EOL数据库检查每个FRU模型
  4. 返回与计数匹配的EOL组件

输出:

{
  "eol_list": {
    "CHAS-MX104-S": 1,
    "MIC-3D-2XGE-XFP": 2
  },
  "total_eol_components": 3,
  "eol_parts_found": ["CHAS-MX104-S", "MIC-3D-2XGE-XFP"],
  "fru_list": ["CHAS-MX104-S", "PWR-MX104-DC-S", "..."],
  "eol_url": "https://support.juniper.net/support/eol/product/m_series/"
}

create_bom

{
  "product_name": "Product X",
  "components": [
    {"item_id": "001", "quantity_needed": 2},
    {"item_id": "003", "quantity_needed": 10}
  ],
  "units_to_produce": 5
}

样品数据

服务器包括示例库存数据:

  • 小部件A(150件)
  • 小部件B(75件)
  • M5螺钉(1000个)
  • 蓝色油漆(25升)

定制

要使用您自己的库存数据,请修改 SAMPLE_INVENTORY 服务器代码中的字典,或扩展它以连接到真实的数据库。

测试

您可以使用MCP检查器测试服务器:

npx @modelcontextprotocol/inspector python inventory_mcp_server.py

这将打开一个web界面,您可以在其中测试每个工具。

许可证

MIT许可证-可根据需要自由使用和修改!

目录标签

目录标签

库存管理PythonClaude本地部署硬件分析Juniper路由器EOL检测物料清单

支持客户端

Claude DesktopClaude

接入字段

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

stdio

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

none

工具数量(toolCount,工具数)

4

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP