VyOS路由器管理服务器

一个用于通过VyOS HTTP API管理VyOS路由器的MCP服务器,允许AI助手全面控制路由器配置、接口设置、防火墙规则和VPN等。

  • by alch3mistdev
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 alch3mistdev/vyos-mcp

使用说明

VyOS MCP服务器

一种MCP(模型上下文协议)服务器,用于通过VyOS HTTP API管理VyOS路由器。让任何兼容MCP的AI助手完全控制您的VyOS路由器——从读取配置到设置接口、防火墙规则、VPN等。

需求

  • Python 3.10+
  • 启用了HTTP API的VyOS路由器(1.4+或滚动)

启用VyOS HTTP API

在您的VyOS路由器上:

configure
set service https api keys id my-app key 'YOUR_API_KEY'
set service https api rest
commit
save

安装

git clone https://github.com/openclaw/vyos-mcp.git
cd vyos-mcp
python -m venv .venv
source .venv/bin/activate
pip install -e .

配置

克劳德代码

添加到您的 ~/.claude.json (或项目 .mcp.json):

{
  "mcpServers": {
    "vyos": {
      "command": "/path/to/vyos-mcp/.venv/bin/python",
      "args": ["-m", "vyos_mcp.server"],
      "env": {
        "VYOS_URL": "https://10.0.0.1",
        "VYOS_API_KEY": "YOUR_API_KEY",
        "VYOS_VERIFY_SSL": "false"
      }
    }
  }
}

克劳德桌面

添加到您的Claude桌面配置(~/Library/Application Support/Claude/claude_desktop_config.json 在macOS上):

{
  "mcpServers": {
    "vyos": {
      "command": "/path/to/vyos-mcp/.venv/bin/python",
      "args": ["-m", "vyos_mcp.server"],
      "env": {
        "VYOS_URL": "https://10.0.0.1",
        "VYOS_API_KEY": "YOUR_API_KEY",
        "VYOS_VERIFY_SSL": "false"
      }
    }
  }
}

环境变量

变量 必填 描述
VYOS_URL 是 您的VyOS路由器的基本URL(例如。 https://10.0.0.1)
VYOS_API_KEY 是 在路由器上配置了API密钥
VYOS_VERIFY_SSL 否 设置为 false 跳过TLS验证(默认: true)

工具

只读

工具 说明
vyos_info 获取系统版本、主机名和横幅(无需身份验证)
vyos_show 运行操作模式 show 命令(接口、路由、BGP等)
vyos_show_config 检索运行配置(完整或部分子树)
vyos_exists 检查配置路径是否存在
vyos_return_values 多值配置节点(如DNS服务器)的返回值

配置

工具 说明
vyos_set 设置单个配置路径
vyos_delete 删除配置路径及其子路径
vyos_comment 向配置节点添加注释
vyos_configure_batch 在单个原子提交中应用多个set/delete/comment操作

所有配置工具自动保存到 /config/config.boot 成功提交后,更改会在重新启动后持续存在。

使用 confirm_time (1-60分钟)在任何配置工具上进行安全回滚——除非用确认,否则更改会自动恢复 vyos_confirm_commit.

配置文件管理

工具 说明
vyos_save_config 将运行配置保存到磁盘(默认或自定义路径)
vyos_load_config 加载配置文件,替换正在运行的配置
vyos_merge_config 将文件或内联字符串中的配置合并到正在运行的配置中
vyos_confirm_commit 确认待处理的提交确认计时器

系统

工具 说明
vyos_generate 运行生成命令(WireGuard密钥、证书等)
vyos_reset 重置协议会话、计数器或运行时状态
vyos_image 添加(下载)或删除系统映像
vyos_system_control 重新启动或关闭路由器(需要明确确认)

例子

配置后,您可以向AI助手询问以下问题:

  • “显示当前界面状态”
  • “将eth0设置为带DHCP的广域网,将eth1设置为带192.168.1.0/24上的DHCP服务器的局域网”
  • “添加防火墙规则以阻止来自WAN的端口22上的传入流量”
  • “设置到203.0.113.1的WireGuard VPN隧道”
  • “显示路由表”
  • “哪些DHCP租约处于活动状态?”
  • “生成新的WireGuard密钥对”

许可证

麻省理工学院