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

Mikrotik Cursor MCP

MCP Server

MikroTik Cursor MCP是一个通过自然语言管理MikroTik路由器的协议服务器,集成在Cursor IDE中,支持440多种路由器操作。

工具数

0

提示词数

0

GitHub Stars

4

资源数

0
PythonCursor自然语言处理Cursor

安装说明

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

作者 / 组织

kevinpez

提供方

kevinpez

最后核验

2026/5/17 20:22

运行时

Python

快速接入

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

命令预览

python -m venv .venv

详细介绍

MikroTik Cursor MCP(可译为“MikroTik游标MCP”或根据具体语境简化为“MikroTik MCP游标”,但通常直接保留原名以体现其专业性)

一个使用Cursor IDE中的自然语言管理MikroTik路由器的模型上下文协议(MCP)服务器。

](https://github.com/kevinpez/mikrotik-cursor-mcp) ![License](LICENSE)

______________________________________________________________________

概述

这个MCP服务器通过Cursor IDE为MikroTik RouterOS设备提供了一个自然语言接口。它通过MikroTik API将自然语言请求翻译成RouterOS命令,并在API不可用时回退到SSH。

建筑学

  • API-First Design(API优先设计)使用MikroTik API进行快速、结构化的通信
  • SSH 回退(或SSH备用方案)当API不可用时,自动回退到SSH
  • 基于类别的工具将440多个动作组织成19个逻辑类别
  • 双运输(或双通道传输)API和SSH支持,自动选择

______________________________________________________________________

快速入门

安装

cd mikrotik-mcp
python -m venv .venv
.venv\Scripts\activate  # Windows
# or: source .venv/bin/activate  # Linux/Mac
pip install -r requirements.txt

配置光标MCP

更新您的Cursor MCP配置文件:

Windows: %APPDATA%\Cursor\User\globalStorage\cursor.mcp\mcp.json\ macOS(苹果电脑操作系统)~/Library/Application Support/Cursor/User/globalStorage/cursor.mcp/mcp.json\ Linux(发音类似“林克斯”,但通常直接音译为“林克斯”并不常见,因其是一个操作系统名称,通常直接使用原名): ~/.config/Cursor/User/globalStorage/cursor.mcp/mcp.json

{
  "mcpServers": {
    "mikrotik-cursor-mcp": {
      "command": "C:\\path\\to\\mikrotik-mcp\\.venv\\Scripts\\python.exe",
      "args": ["C:\\path\\to\\mikrotik-mcp\\src\\mcp_mikrotik\\server.py"],
      "env": {
        "MIKROTIK_HOST": "192.168.88.1",
        "MIKROTIK_USERNAME": "your_username", 
        "MIKROTIK_PASSWORD": "your_password"
      }
    }
  }
}

测试连接

重启光标并询问: *“显示我的路由器系统信息”*

如需详细的设置说明,请参阅: SETUP_COMPLETE_GUIDE.md 翻译为中文是:“安装完成指南.md”

______________________________________________________________________

这是什么?

一个可投入生产的MCP服务器,通过Cursor IDE实现对MikroTik路由器的自然语言管理。无需记忆RouterOS命令,只需用日常语言描述您的意图即可。

示例:

“在52.1.2.3创建一个WireGuard VPN隧道连接到我的AWS EC2实例”

服务器将此转换为必要的RouterOS API调用或SSH命令,以生成密钥、配置接口、设置路由和创建防火墙规则。

______________________________________________________________________

特点/功能

可用类别

类别动作覆盖范围
防火墙54过滤、NAT(网络地址转换)、Mangle(修改)、RAW、第7层、链、地址列表、连接
系统42资源、身份、包、调度器、看门狗、安全模式
IPv643地址、路由、防火墙、DHCPv6、邻居发现
接口53物理、虚拟、桥接、PPPoE、隧道、绑定、VRRP、VLAN
无线39接口、CAPsMAN(无线控制器和策略管理器)、安全配置文件、访问控制列表
路线33静态路由、BGP(边界网关协议)、OSPF(开放最短路径优先)、路由过滤器
队列20简单,队列树,流量整形
集装箱18Docker 容器、镜像、网络、环境
证书11公钥基础设施(PKI)、证书颁发机构(CA)、安全套接层/传输层安全(SSL/TLS)
WireGuard(中文可译为“线守护”或保持原英文名,根据上下文决定是否需要翻译)11接口、对等体、密钥
热点10服务器、用户、访客门户
DNS(Domain Name System,域名系统)15设置、静态条目、缓存
OpenVPN9客户端,服务器,证书
IP管理18地址、池、服务
DHCP(动态主机配置协议)7服务器、池、租约
用户18管理、组、权限
备份10创建、恢复、导出
日志10查看、搜索、清除
诊断9回显请求(Ping)、路由追踪(Traceroute)、域名解析(DNS Lookup)、地址解析协议(ARP)、邻居发现

总计:19个类别中的440+项行动

核心能力

  • 双栈网络全面支持IPv4和IPv6
  • VPN 套件WireGuard、OpenVPN、证书管理
  • 动态路由BGP,带认证的OSPF,路由过滤器
  • 集装箱支持在RouterOS v7.x上的Docker容器
  • 先进无线技术CAPsMAN集中管理
  • 第七层检查应用感知的防火墙规则
  • QoS(服务质量)队列树,流量整形
  • 高可用性VRRP冗余
  • 自动化脚本调度器,看门狗监控

______________________________________________________________________

安装

先决条件

  • Python 3.8及以上版本
  • Cursor 集成开发环境 (IDE)
  • 启用SSH或API的MikroTik RouterOS设备
  • 访问路由器的网络

设置步骤

# 1. Clone the repository
git clone https://github.com/kevinpez/mikrotik-cursor-mcp.git
cd mikrotik-cursor-mcp

# 2. Create virtual environment
python -m venv .venv

# On Windows:
.venv\Scripts\activate

# On Linux/Mac:
source .venv/bin/activate

# 3. Install dependencies
pip install -r requirements.txt

# 4. Install the package
pip install -e .

配置 Cursor IDE

将此添加到您的 Cursor MCP 配置文件中(%USERPROFILE%\.cursor\mcp.json 在Windows上或 ~/.cursor/mcp.json (在Linux/Mac上):

{
  "mcpServers": {
    "mikrotik-cursor-mcp": {
      "command": "python",
      "args": [
        "-m",
        "mcp_mikrotik.server"
      ],
      "cwd": "C:\\Users\\YourUsername\\mikrotik-cursor-mcp",
      "env": {
        "MIKROTIK_HOST": "192.168.88.1",
        "MIKROTIK_USERNAME": "admin",
        "MIKROTIK_PASSWORD": "your-password",
        "MIKROTIK_PORT": "22",
        "MIKROTIK_SSH_KEY": "C:\\Users\\YourUsername\\.ssh\\mikrotik_rsa", 
        "MIKROTIK_STRICT_HOST_KEY_CHECKING": "false",
        "MIKROTIK_KNOWN_HOSTS": "C:\\Users\\YourUsername\\.ssh\\known_hosts",
        "MIKROTIK_CONNECT_TIMEOUT": "10",
        "MIKROTIK_CMD_TIMEOUT": "30"
      }
    }
  }
}

重要提示: 请将路径和凭据替换为您实际的值。

验证安装

  1. 完全重启 Cursor IDE
  2. 开启一个新的Cursor聊天窗口
  3. 询问:“列出我MikroTik路由器上的所有备份”

______________________________________________________________________

使用示例

自然语言指令

基本管理

"Show me the system resources and uptime"
"List all network interfaces and their status"
"What's in my ARP table?"
"Create a backup called 'before-vpn-setup'"

防火墙与安全

"Create a firewall rule to allow SSH from 10.0.0.0/8"
"Block all traffic from 192.168.99.0/24"
"Show me active connections"
"Create a port forward: external 8080 to internal 192.168.1.100:80"

VPN设置

"Set up a WireGuard VPN to my AWS server at 52.1.2.3"
"Create an OpenVPN client connection to my office"
"List all WireGuard interfaces and their status"

IPv6网络

"Add IPv6 address 2001:db8::1/64 to bridge"
"Enable IPv6 forwarding"
"List IPv6 neighbors"
"Create a DHCPv6 server on bridge interface"

无线管理

"List all wireless interfaces"
"Scan for nearby WiFi networks"
"Show connected wireless clients"
"Enable CAPsMAN controller"

容器管理(RouterOS v7.x)

"List all containers"
"Create a container from nginx:latest"
"Show container configuration"
"Create a veth interface for containers"

动态路由

"List BGP peers"
"Show OSPF neighbors"
"Create a route filter"

______________________________________________________________________

建筑

基于类别的组织

MCP 使用基于类别的工具来组织功能:

Traditional Approach:          This MCP:
├─ mikrotik_list_firewall      ├─ mikrotik_firewall
├─ mikrotik_create_firewall        ├─ list_filter_rules
├─ mikrotik_update_firewall        ├─ create_filter_rule
├─ mikrotik_list_nat               ├─ list_nat_rules
├─ mikrotik_create_nat             └─ ... (54 actions)
├─ mikrotik_port_forward        
... (100+ separate tools)      └─ mikrotik_ipv6 (43 actions)

技术栈

  • Python 3.8及以上版本 - 核心语言
  • MCP SDK(MCP软件开发工具包) - 模型上下文协议实现
  • RouterOS API - 主要的沟通方式
  • Paramiko(注:这是一个专有名词,通常不直接翻译,保持原名,若需解释性翻译,可译为“Python的SSH客户端库”或根据具体语境调整) - SSH备用连接
  • RouterOS CLI(RouterOS 命令行界面) - 通过SSH执行命令

信息流/沟通流程

┌───────────────┐       ┌────────────────────┐       ┌───────────────┐
│  Cursor IDE   │       │   MikroTik MCP     │       │   RouterOS    │
│      + AI     │──────▶│       Server       │──API▶ │    Device     │
└───────────────┘       └────────────────────┘       └───────────────┘
        │                          │                          │
│ Natural language request          │                          │
        │─────────────────────────▶                          │
        │                          │ Parse & translate        │
        │                          │ Execute via API/SSH      │
        │                          ├─────────────────────────▶
        │                          │ Verify results           │
        │                          │◀─────────────────────────│
│ Structured response               │                          │
◀─────────────────────────────────│                          │

______________________________________________________________________

测试

硬件验证套件

该项目包含一个全面的硬件验证套件,用于在真实的MikroTik硬件上对所有处理程序进行测试。

# Test all handlers
python tests/hardware_validation.py

# Test specific category with verbose output
python tests/hardware_validation.py --category System -v

# Save test results to JSON
python tests/hardware_validation.py --report results.json

# List available categories
python tests/hardware_validation.py --list-categories

测试配置

创建一个 .env.test 项目根目录中的文件:

MIKROTIK_HOST=192.168.88.1
MIKROTIK_USERNAME=admin
MIKROTIK_PASSWORD=your_password
MIKROTIK_PORT=22
MIKROTIK_LOG_LEVEL=INFO

测试类别

测试套件涵盖了全部19个类别:

  • 系统,备份,证书,容器
  • DHCP,DNS,诊断工具
  • 防火墙(过滤、NAT、修改、原始处理)
  • 热点、IP服务、IPv6
  • 接口、日志、OpenVPN
  • 队列、路由、路由过滤器
  • 用户,无线,WireGuard(一种虚拟私有网络技术),CAPsMAN(无线控制器管理系统)

TESTING.md 翻译为中文是:“测试说明文件.md” 或者更简洁地 “测试文档.md”(具体翻译可能根据上下文有所调整,但“md”通常表示Markdown格式的文件,这里未直接翻译,以保持专业术语的一致性) 以获取完整的测试文档。

______________________________________________________________________

安全考量

凭证;资历

  • 永远不要将凭据提交到版本控制系统中
  • 使用环境变量来存储敏感数据
  • 考虑使用SSH密钥而非密码

网络访问

  • 确保路由器的安全SSH/API访问
  • 使用防火墙规则限制管理访问
  • 如果可用,请启用双因素认证

备份策略

  • 在进行重大更改前创建备份
  • 使用内置的备份命令
  • 在多个地点存储备份

测试

  • 首先在非生产路由器上进行测试
  • 为实验使用隔离的VLAN
  • 保持带外访问

______________________________________________________________________

故障排除

MCP 未加载

症状: Cursor 无法识别 MikroTik 命令

解决方案:

  1. 验证 mcp.json 路径和格式
  2. 检查配置中的Python路径
  3. 确保已激活虚拟环境
  4. 完全重启光标(或:重新启动光标功能)

连接问题

症状: “连接失败”错误

解决方案:

  1. 验证 MIKROTIK_HOST 是正确的
  2. 检查SSH/API是否已启用: /ip service print
  3. 手动测试SSH: ssh admin@192.168.88.1
  4. 验证防火墙规则是否允许SSH/API

命令失败

症状: 命令返回错误

解决方案:

  1. 检查RouterOS版本兼容性
  2. 验证所需的软件包是否已安装
  3. 检查用户权限
  4. 查看路由器日志: /log print

性能问题

症状: 反应迟钝

解决方案:

  1. 检查到路由器的网络延迟
  2. 减少并发操作
  3. 验证路由器是否具有足够的资源
  4. 更新到最新的RouterOS版本

______________________________________________________________________

贡献;做出贡献

欢迎投稿。

报告问题

  • 使用GitHub Issues
  • 包含 RouterOS 版本
  • 提供命令示例
  • 分享错误信息

功能请求

  • 检查现有请求
  • 描述用例
  • 解释RouterOS的功能

拉取请求(或合并请求)

  1. 为仓库创建分支(或“克隆仓库”)
  2. 创建特性分支
  3. 在实际路由器上进行测试
  4. 更新文档
  5. 提交包含清晰描述的拉取请求(PR)

______________________________________________________________________

许可证

MIT 许可证 - 详见 许可证 文件

______________________________________________________________________

致谢

  • @杰夫-纳塞里 - 原始的mikrotik-mcp项目
  • @kevinpez(注:这是一个用户名或特定标识,直接翻译为中文可能无实际意义,故保留原样) - 扩展实施
  • MikroTik(注:MikroTik是一个品牌名,通常翻译为“微波通信”或直接保留原名,具体翻译可能根据上下文有所调整,但在此处作为专有名词,直接保留“MikroTik”更为常见。) - RouterOS平台
  • “Anthropic”翻译成中文是“人类中心的”或“以人为本的”,具体含义可能根据上下文有所不同。在人工智能或哲学领域,它可能指的是以人类为中心或以人类利益为优先的观念或技术 - 克劳德和MCP协议
  • 光标团队 - 由人工智能驱动的集成开发环境(IDE)

______________________________________________________________________

支持

______________________________________________________________________

文档

入门指南

用户指南

发展

______________________________________________________________________

通过自然语言实现MikroTik RouterOS自动化

目录标签

目录标签

PythonCursor自然语言处理路由器管理本地部署网络自动化MikroTik工具SSH管理

支持客户端

Cursor

接入字段

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

stdio

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

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP