Skip to main content
Glama
iKuai MCP Server
by gxxHuang

iKuai MCP Server

License: MIT MCP Python

Позвольте ИИ напрямую управлять вашим роутером iKuai. Построен на базе FastMCP, превращает 229 функций веб-интерфейса iKuai в диалог на естественном языке.

"查看在线设备"          → 终端 IP/MAC/流量一览
"给某个设备限速"        → 一键添加 IP 限速
"添加端口映射"          → 公网端口 → 内网设备
"开启 SSH"              → 调用 API 开启隐藏服务
"看下今天谁掉线了"      → 终端上下线记录

Возможности

  • Полное покрытие функций: 229 инструментов MCP · 149 API-эндпоинтов, охватывающих 9 основных модулей веб-интерфейса

  • Функции, недоступные в веб-интерфейсе: скрытые сервисы, такие как SSH / Telnet, не имеют переключателя в браузере и включаются только через API — этот проект открывает к ним прямой доступ, всё решается одной фразой

  • Умный API-клиент: автоматический вход (обработка протокола шифрования iKuai), автоматический повтор при истечении сессии, совместимость с форматами ответов API двух поколений

  • Двойной режим чтения/записи: инструменты запроса помечены как read-only, инструменты изменения (ACL/ограничение скорости/проброс портов и т.д.) разделены на чтение и запись

  • Защита от опасных операций: перезагрузка, обновление прошивки, смена пароля администратора и другие операции требуют явного подтверждения confirm=True

  • Два режима передачи: stdio (подключение к Claude Desktop/Cursor) или HTTP (вызов из скриптов/удалённая интеграция)

  • Развёртывание Docker одной командой: docker-compose up -d — и всё работает

Related MCP server: Device MCP Server

Быстрый старт

1. Установка

Установка из исходного кода GitHub (требуются Git и Python 3.10+):

pip install git+https://github.com/gxxHuang/ikuai-mcp-server.git

2. Настройка

cp .env.example .env

Отредактируйте .env, укажите информацию вашего собственного роутера:

IKUAI_URL=http://<你的路由器IP>
IKUAI_USERNAME=<你的登录账号>
IKUAI_PASSWORD=<你的登录密码>

Корпоративная версия 4.x поддерживает все функции; в бесплатной версии/3.x часть API недоступна, см. Совместимость.

3. Подключение к AI-клиенту

Claude Desktop — отредактируйте claude_desktop_config.json:

{
  "mcpServers": {
    "ikuai": {
      "command": "ikuai-mcp",
      "args": [],
      "env": {
        "IKUAI_URL": "http://<你的路由器IP>",
        "IKUAI_USERNAME": "<你的登录账号>",
        "IKUAI_PASSWORD": "<你的登录密码>"
      }
    }
  }
}

Замените <ваш IP-роутера>, <ваш логин>, <ваш пароль> на ваши реальные значения и уберите угловые скобки.

Cursor — та же конфигурация записывается в .cursor/mcp.json.

Режим HTTP (вызов из скриптов / интеграция без AI-клиента):

python -m ikuai_mcp.server --transport http --port 8000

4. Начало работы

После настройки просто общайтесь:

  • «Просмотр текущего состояния роутера» — CPU / память / трафик / версия

  • «Список всех онлайн-устройств» — IP / MAC / трафик терминалов

  • «Ограничить скорость устройства до 10 Мбит/с» — добавление ограничения скорости по IP

  • «Включить SSH» — вызов API для включения службы SSH, у которой нет переключателя в веб-интерфейсе

  • «Просмотр журнала входов за сегодня» — обзор журнала аутентификации

  • «Перезагрузить AP в гостиной» — перезагрузка указанной беспроводной точки AP

Покрытие функций

229 инструментов · 149 API-эндпоинтов, 9 основных модулей:

Модуль

Кол-во инструментов

Что умеет

Мониторинг системы

17

Обзор системы, мониторинг линий/терминалов/нагрузки, аналитика поведения, подключённые устройства

Сетевая конфигурация

58

WAN/LAN, IPv6, VLAN, DHCP, DNS, проброс портов, NAT, DDNS, VPN-клиенты

Безопасность и контроль

39

ACL, ограничение числа соединений, ARP, контроль MAC, контроль URL/протоколов приложений, аудит трафика

Контроль трафика и балансировка

21

Умный контроль трафика, ограничение скорости по IP/MAC, многолинейная балансировка, разделение по портам/протоколам/доменам

Аутентификация и биллинг

28

PPPoE, веб-аутентификация, VPN-серверы, тарифные планы, управление учётными записями

Беспроводные сервисы

16

Управление/обновление AP, настройка Wi-Fi, Mesh, сканирование каналов

Расширенные сервисы

21

SNMP, туннелирование во внутреннюю сеть, захват пакетов, проверка скорости, Ping/Traceroute, WOL

Центр журналов

11

11 типов журналов: аутентификация/ARP/DHCP/DDNS/операции и др., оповещения

Настройки устройства

18

Переключатели SSH/Telnet/FTP, учётные записи администратора, обновление прошивки, горячее резервирование

Полный список инструментов по модулям см. в docs/COVERAGE.md.

Безопасность

Роутер — ключевое сетевое устройство, поэтому в проект встроена трёхуровневая защита:

  1. Пометка read-only: все инструменты запроса помечены readOnlyHint, клиент может на этом основании отклонять ошибочные операции

  2. Повторное подтверждение: опасные операции, такие как change_admin_password, upgrade_ap_firmware, требуют явной передачи confirm=True

  3. Изоляция учётных данных: пароль вводится только через .env / переменные окружения и не появляется в коде и журналах; доступ только из локальной сети, без публикации в интернете

Docker

cp .env.example .env   # 必做,否则容器内密码为空
docker-compose up -d

Совместимость

Роутер

Прошивка

Статус

Серия IK-Q

4.x Корпоративная

✅ Все функции

Серия IK-G

3.x+

⚠️ Частичная совместимость

Бесплатная версия

3.x

⚠️ Ограниченный API

Разработка

pip install -e ".[dev]"
make test    # pytest + 覆盖率
make lint    # ruff 检查

Структура проекта:

src/ikuai_mcp/
├── server.py        # FastMCP 入口,注册 9 个模块
├── client.py        # API 客户端:自动登录/会话重试/兼容双格式
└── tools/           # 9 个工具模块(每个约 100-350 行)

Часто задаваемые вопросы

Проблема

Решение

Не удаётся подключиться к роутеру

Проверьте IKUAI_URL; убедитесь, что компьютер и роутер в одной подсети

Ошибка аутентификации

Войдите в браузере один раз для проверки пароля; проверьте IKUAI_PASSWORD в .env

.env не работает

Убедитесь, что .env находится в корне проекта, или укажите его в поле env клиента

Некоторые функции выдают ошибку

В бесплатной версии/старой прошивке API ограничен, обновитесь до корпоративной версии 4.x

Инструменты MCP не отображаются

Перезапустите AI-клиент и попробуйте снова

Вклад и лицензия

Приветствуются PR, см. CONTRIBUTING.md. Лицензия MIT, см. LICENSE.

Available Tools

248 tools
abort_taskAbort TaskD

中止任务

Inputs: task_id (required). Returns: object

add_acl_ruleAdd Acl RuleD

添加 ACL 规则

Inputs: action (required), comment, enabled, dst_addr, +7 more. Returns: object

add_admin_accountAdd Admin AccountC

添加管理员账号

Inputs: password (required), username (required), allowed_ip, permission. Returns: object

add_app_protocol_ruleAdd App Protocol RuleD

添加应用协议控制规则

Inputs: action (required), prio, week, comment, +4 more. Returns: object

add_arp_bindingAdd Arp BindingD

添加 ARP 绑定

Inputs: ip (required), mac (required), comment. Returns: object

add_connection_limitAdd Connection LimitD

添加连接数限制

Inputs: mac, comment, enabled, ip_addr, +2 more. Returns: object

add_custom_url_libraryAdd Custom Url LibraryD

添加自定义网址库

Inputs: name (required), domains (required), comment. Returns: object

add_ddnsAdd DdnsD

添加 DDNS

Inputs: domain (required), password (required), provider (required), username (required), +2 more. Returns: object

add_dhcp_static_bindingAdd Dhcp Static BindingC

添加 DHCP 静态分配(IP-MAC 绑定)

Inputs: ip (required), mac (required), comment. Returns: object

add_domain_blacklistAdd Domain BlacklistD

添加禁止娱乐网站

Inputs: domain_groups (required), comment, enabled, weekdays, +1 more. Returns: object

add_domain_forwarding_ruleAdd Domain Forwarding RuleD

添加域名分流规则

Inputs: domain (required), comment, enabled, src_addr, +1 more. Returns: object

add_ip_groupAdd Ip GroupC

添加 IP 地址分组

Inputs: name (required), comment, ip_list, ip_type. Returns: object

add_ip_speed_limitAdd Ip Speed LimitD

添加 IP 限速

Inputs: ip_addr (required), upload_kbps (required), download_kbps (required), comment, +1 more. Returns: object

add_mac_access_controlAdd Mac Access ControlD

添加 MAC 访问控制

Inputs: mac (required), action, comment, enabled, +1 more. Returns: object

add_mac_groupAdd Mac GroupC

添加 MAC 地址分组

Inputs: name (required), comment, mac_list. Returns: object

add_mac_speed_limitAdd Mac Speed LimitD

添加 MAC 限速

Inputs: mac (required), upload_kbps (required), download_kbps (required), comment, +2 more. Returns: object

add_port_forwarding_ruleAdd Port Forwarding RuleD

添加端口分流规则

Inputs: comment, enabled, dst_addr, dst_port, +4 more. Returns: object

add_port_mappingAdd Port MappingD

添加端口映射

Inputs: name (required), internal_ip (required), external_port (required), internal_port (required), +4 more. Returns: object

add_pppoe_accountAdd Pppoe AccountD

添加 PPPoE 账号

Inputs: password (required), username (required), comment, ip_type, +2 more. Returns: object

add_static_routeAdd Static RouteD

添加静态路由

Inputs: gateway (required), netmask (required), destination (required), metric, +2 more. Returns: object

add_url_blacklistAdd Url BlacklistD

添加网址黑白名单

Inputs: url (required), mode, week, comment, +2 more. Returns: object

add_vlanAdd VlanD

添加 VLAN

Inputs: name (required), vlan_id (required), interface (required), ip, +1 more. Returns: object

add_vpn_accountAdd Vpn AccountC

添加 VPN 客户端配置

Inputs: password (required), username (required), vpn_type (required), comment, +1 more. Returns: object

change_admin_passwordChange Admin PasswordC

修改管理员密码

Inputs: new_password (required), old_password (required), confirm. Returns: object

check_firmware_updateCheck Firmware UpdateA
Read-only

检查是否有新固件(只读,不触发下载与安装)

Inputs: no named parameters. Returns: object

clean_firmware_filesClean Firmware FilesC

清理已下载的固件文件

Inputs: confirm. Returns: object

delete_acl_ruleDelete Acl RuleC

删除 ACL 规则

Inputs: rule_id (required). Returns: object

delete_app_protocol_ruleDelete App Protocol RuleD

删除应用协议控制

Inputs: rule_id (required). Returns: object

delete_arp_bindingDelete Arp BindingD

删除 ARP 绑定

Inputs: binding_id (required). Returns: object

delete_connection_limitDelete Connection LimitC

删除连接数限制

Inputs: rule_id (required). Returns: object

delete_custom_url_libraryDelete Custom Url LibraryC

删除自定义网址库

Inputs: group_id (required). Returns: object

delete_ddnsDelete DdnsC

删除 DDNS

Inputs: record_id (required). Returns: object

delete_dhcp_static_bindingDelete Dhcp Static BindingC

删除 DHCP 静态分配

Inputs: record_id (required). Returns: object

delete_domain_blacklistDelete Domain BlacklistD

删除禁止娱乐网站

Inputs: rule_id (required). Returns: object

delete_domain_forwarding_ruleDelete Domain Forwarding RuleC

删除域名分流

Inputs: rule_id (required). Returns: object

delete_ip_groupDelete Ip GroupC

删除 IP 地址分组

Inputs: group_id (required), ip_type. Returns: object

delete_ip_speed_limitDelete Ip Speed LimitC

删除 IP 限速

Inputs: rule_id (required). Returns: object

delete_mac_access_controlDelete Mac Access ControlC

删除 MAC 访问控制

Inputs: rule_id (required). Returns: object

delete_mac_groupDelete Mac GroupC

删除 MAC 地址分组

Inputs: group_id (required). Returns: object

delete_mac_speed_limitDelete Mac Speed LimitC

删除 MAC 限速

Inputs: rule_id (required). Returns: object

delete_port_forwarding_ruleDelete Port Forwarding RuleD

删除端口分流

Inputs: rule_id (required). Returns: object

delete_port_mappingDelete Port MappingC

删除端口映射

Inputs: rule_id (required). Returns: object

delete_pppoe_accountDelete Pppoe AccountC

删除 PPPoE 账号

Inputs: user_id (required). Returns: object

delete_static_routeDelete Static RouteD

删除静态路由

Inputs: route_id (required). Returns: object

delete_url_blacklistDelete Url BlacklistD

删除网址黑白名单

Inputs: rule_id (required). Returns: object

delete_vlanDelete VlanD

删除 VLAN

Inputs: vlan_id (required). Returns: object

delete_vpn_accountDelete Vpn AccountC

删除 VPN 客户端配置

Inputs: user_id (required), vpn_type (required). Returns: object

enable_ftpEnable FtpC

启用/禁用 FTP 服务

Inputs: enabled (required), port. Returns: object

enable_sshEnable SshC

启用/禁用 SSH 服务

Inputs: enabled (required), port. Returns: object

enable_telnetEnable TelnetC

启用/禁用 Telnet 服务

Inputs: enabled (required). Returns: object

get_ac_statusGet Ac StatusA
Read-only

获取 AC 控制器状态(AP 数量/在线数)

Inputs: no named parameters. Returns: object

get_admin_operation_logGet Admin Operation LogC
Read-only

获取管理员操作日志

Inputs: no named parameters. Returns: object

get_alg_configGet Alg ConfigB
Read-only

获取 ALG 设置(FTP/TFTP/SIP/H323 协议穿透)

Inputs: no named parameters. Returns: object

get_ap_firmware_versionsGet Ap Firmware VersionsB
Read-only

获取 AP 固件版本列表

Inputs: no named parameters. Returns: object

get_ap_group_configGet Ap Group ConfigB
Read-only

获取 AP 分组配置

Inputs: no named parameters. Returns: object

get_ap_optimizationGet Ap OptimizationC
Read-only

获取无线网优状态

实测:设备用 ac_net_optimize 而非 ap_optimization。

Inputs: no named parameters. Returns: object

get_arp_logGet Arp LogC
Read-only

获取 ARP 日志

Inputs: no named parameters. Returns: object

get_auth_logGet Auth LogA
Read-only

获取认证日志(PPPoE/VPN 认证记录)

Inputs: no named parameters. Returns: object

get_auto_upgrade_statusGet Auto Upgrade StatusC
Read-only

获取自动升级状态

Inputs: no named parameters. Returns: object

get_backup_snapshotsGet Backup SnapshotsC
Read-only

获取版本快照列表

Inputs: no named parameters. Returns: object

get_basic_settingsGet Basic SettingsA
Read-only

获取设备基础设置(主机名/时区/NTP 等)

Inputs: no named parameters. Returns: object

get_behavior_insightGet Behavior InsightB
Read-only

获取行为洞察:应用协议流量历史数据

Inputs: no named parameters. Returns: object

get_billing_summaryGet Billing SummaryC
Read-only

获取总账管理

Inputs: no named parameters. Returns: object

get_camera_devicesGet Camera DevicesB
Read-only

获取下联摄像头设备列表

Inputs: no named parameters. Returns: object

get_capture_interfacesGet Capture InterfacesB
Read-only

获取可抓包的网络接口列表

Inputs: no named parameters. Returns: object

get_channel_scan_statusGet Channel Scan StatusB
Read-only

查询信道扫描进度

Inputs: no named parameters. Returns: object

get_cloud_binding_statusGet Cloud Binding StatusC
Read-only

获取云服务绑定状态

Inputs: no named parameters. Returns: object

get_cloud_sync_statusGet Cloud Sync StatusB
Read-only

获取固件云同步开关状态

Inputs: no named parameters. Returns: object

get_connection_tableGet Connection TableB
Read-only

获取流表/连接查看(当前实时连接)

Inputs: no named parameters. Returns: object

get_cpu_temperature_supportGet Cpu Temperature SupportB
Read-only

查询 CPU 温度检测是否支持

Inputs: no named parameters. Returns: object

get_cross_layer3_configGet Cross Layer3 ConfigC
Read-only

获取跨三层服务配置

Inputs: no named parameters. Returns: object

get_ddns_configGet Ddns ConfigC
Read-only

获取动态域名 (DDNS) 配置

Inputs: no named parameters. Returns: object

get_ddns_logGet Ddns LogC
Read-only

获取动态域名日志

Inputs: no named parameters. Returns: object

get_dhcp_logGet Dhcp LogC
Read-only

获取 DHCP 日志

Inputs: no named parameters. Returns: object

get_diversion_monitoringGet Diversion MonitoringC
Read-only

获取分流监控状态

Inputs: no named parameters. Returns: object

get_dmz_configGet Dmz ConfigB
Read-only

获取 DMZ 主机配置

Inputs: no named parameters. Returns: object

get_dns_configGet Dns ConfigB
Read-only

获取 DNS 服务配置(含 DNS 缓存/多线路 DNS)

实测:dns 只认 TYPE=all。

Inputs: no named parameters. Returns: object

get_dynamic_dns_configGet Dynamic Dns ConfigC
Read-only

获取动态域名 (DDNS) 配置

Inputs: no named parameters. Returns: object

get_firmware_versionGet Firmware VersionB
Read-only

获取固件版本与可用升级信息

返回 system_ver(当前版本)、new_system_ver(可用新版本)、 update_content(更新说明)、firmware_channel 等字段。

Inputs: no named parameters. Returns: object

get_flow_control_linesGet Flow Control LinesB
Read-only

获取流控线路配置(智能流控 → 流控线路)

Inputs: no named parameters. Returns: object

get_flow_control_strategiesGet Flow Control StrategiesB
Read-only

获取流控策略设置(智能流控 → 流控策略设置)

Inputs: no named parameters. Returns: object

get_health_check_configGet Health Check ConfigC
Read-only

获取健康检测配置

Inputs: no named parameters. Returns: object

get_igmp_proxy_configGet Igmp Proxy ConfigB
Read-only

获取 IGMP 代理配置

Inputs: no named parameters. Returns: object

get_ike_server_configGet Ike Server ConfigB
Read-only

获取 IKEv2/IPSec 服务端配置

Inputs: no named parameters. Returns: object

get_ikev2_client_configGet Ikev2 Client ConfigB
Read-only

获取 IKEv2/IPSec 客户端配置

Inputs: no named parameters. Returns: object

get_im_logGet Im LogB
Read-only

获取 IM 上下线记录

Inputs: no named parameters. Returns: object

get_intranet_penetration_configGet Intranet Penetration ConfigC
Read-only

获取内网穿透配置

Inputs: no named parameters. Returns: object

get_ipsec_client_configGet Ipsec Client ConfigC
Read-only

获取 IPSec VPN 客户端配置

Inputs: no named parameters. Returns: object

get_iptv_configGet Iptv ConfigB
Read-only

获取 IPTV 透传配置

Inputs: no named parameters. Returns: object

get_ipv6_configGet Ipv6 ConfigC
Read-only

获取 IPv6 总配置

Inputs: no named parameters. Returns: object

get_ipv6_lan_configGet Ipv6 Lan ConfigA
Read-only

获取 IPv6 内网设置(前缀下发/RA/DHCPv6)

Inputs: no named parameters. Returns: object

get_ipv6_line_detailGet Ipv6 Line DetailC
Read-only

获取 IPv6 线路详情

Inputs: no named parameters. Returns: object

get_ipv6_wan_configGet Ipv6 Wan ConfigA
Read-only

获取 IPv6 外网设置

实测:设备没有 ipv6_extranet_setting(返回 1003), IPv6 内外网配置统一走 ipv6,外网条目在返回列表中。

Inputs: no named parameters. Returns: object

get_kernel_settingsGet Kernel SettingsB
Read-only

获取内核参数设置

Inputs: no named parameters. Returns: object

get_l2tp_client_configGet L2Tp Client ConfigC
Read-only

获取 L2TP 客户端配置

Inputs: no named parameters. Returns: object

get_l2tp_server_configGet L2Tp Server ConfigB
Read-only

获取 L2TP 服务端配置

Inputs: no named parameters. Returns: object

get_line_monitoringGet Line MonitoringA
Read-only

获取线路监控:所有 WAN/LAN 接口实时速率/连接数/丢包率

Inputs: no named parameters. Returns: object

get_load_monitoringGet Load MonitoringA
Read-only

获取负载监控:CPU/内存/实时流量

Inputs: no named parameters. Returns: object

get_managed_switchesGet Managed SwitchesB
Read-only

获取下联交换机设备列表

Inputs: no named parameters. Returns: object

get_memory_historyGet Memory HistoryC
Read-only

获取内存历史使用数据

Inputs: datetype. Returns: object

get_mesh_configGet Mesh ConfigC
Read-only

获取 Mesh 快连配置

Inputs: no named parameters. Returns: object

get_messagesGet MessagesC
Read-only

获取消息通知

Inputs: no named parameters. Returns: object

get_multi_line_dnsGet Multi Line DnsC
Read-only

获取多线路 DNS 配置

Inputs: no named parameters. Returns: object

get_notification_logGet Notification LogC
Read-only

获取推送通知日志

Inputs: no named parameters. Returns: object

get_notificationsGet NotificationsC
Read-only

获取消息通知列表

Inputs: no named parameters. Returns: object

get_openvpn_client_configGet Openvpn Client ConfigC
Read-only

获取 OpenVPN 客户端配置

Inputs: no named parameters. Returns: object

get_openvpn_server_configGet Openvpn Server ConfigB
Read-only

获取 OpenVPN 服务端配置

Inputs: no named parameters. Returns: object

get_optimization_recordsGet Optimization RecordsC
Read-only

获取网优记录

Inputs: no named parameters. Returns: object

get_ota_infoGet Ota InfoB
Read-only

获取完整 OTA 信息(版本 + 本地固件文件状态)

Inputs: no named parameters. Returns: object

get_password_self_serviceGet Password Self ServiceA
Read-only

获取自助密码管理配置

Inputs: no named parameters. Returns: object

get_peripheral_devicesGet Peripheral DevicesC
Read-only

获取周边设备列表

Inputs: no named parameters. Returns: object

get_ping_interfacesGet Ping InterfacesB
Read-only

获取 Ping 可用出口接口

Inputs: no named parameters. Returns: object

get_policy_monitoringGet Policy MonitoringB
Read-only

获取策略监控:L7 QoS 流控策略执行状态

Inputs: no named parameters. Returns: object

get_port_mirror_configGet Port Mirror ConfigC
Read-only

获取端口镜像配置

Inputs: no named parameters. Returns: object

get_pppoe_server_configGet Pppoe Server ConfigC
Read-only

获取 PPPoE 服务端配置

Inputs: no named parameters. Returns: object

get_pptp_client_configGet Pptp Client ConfigC
Read-only

获取 PPTP 客户端配置

Inputs: no named parameters. Returns: object

get_pptp_server_configGet Pptp Server ConfigB
Read-only

获取 PPTP 服务端配置

Inputs: no named parameters. Returns: object

get_priority_domain_settingsGet Priority Domain SettingsB
Read-only

获取优先域名设置(智能流控 → 优先域名)

Inputs: no named parameters. Returns: object

get_protocol_controlGet Protocol ControlC
Read-only

获取协议控制配置

Inputs: no named parameters. Returns: object

get_reboot_scheduleGet Reboot ScheduleB
Read-only

获取重启计划

Inputs: no named parameters. Returns: object

get_registration_statusGet Registration StatusB
Read-only

获取云服务注册/绑定状态

实测:faststart 只认 TYPE=all。

Inputs: no named parameters. Returns: object

get_remote_access_configGet Remote Access ConfigB
Read-only

获取远程访问配置(SSH/Telnet/FTP/Web 端口状态)

返回字段:

  • open_sshd: SSH 服务状态 (0=关闭, 1=开启)

  • sshd_port: SSH 端口 (默认 22)

  • open_telnetd: Telnet 服务状态

  • open_ftp: FTP 服务状态

  • ftp_port: FTP 端口 (默认 21)

  • http_port: HTTP 端口 (默认 80)

  • https_port: HTTPS 端口 (默认 443)

  • force_https: 强制 HTTPS (0=否/1=是)

  • open_wanweb: 外网 Web 访问 (0=关闭/1=开启)

Inputs: no named parameters. Returns: object

get_routing_tableGet Routing TableA
Read-only

查看当前路由表

实测:设备没有 static_rt_table_ipv4/ipv6(返回 1003)。 查询已有静态路由请用 list_static_routes;实时路由表在 static_rt 的 TYPE=data 里。

Inputs: ip_type. Returns: object

get_sdwan_statusGet Sdwan StatusB
Read-only

获取 SD-WAN 智能组网状态

Inputs: no named parameters. Returns: object

get_security_advanced_settingsGet Security Advanced SettingsC
Read-only

获取安全中心高级设置

Inputs: no named parameters. Returns: object

get_snmp_configGet Snmp ConfigB
Read-only

获取 SNMP 服务配置

Inputs: no named parameters. Returns: object

get_system_event_logGet System Event LogB
Read-only

获取系统事件日志(重启/升级等)

Inputs: no named parameters. Returns: object

get_system_overviewGet System OverviewB
Read-only

获取系统概览:CPU/内存/流量/版本/运行时间/在线用户

实测:sysstat 用 TYPE=all 返回最完整数据。

Inputs: no named parameters. Returns: object

get_tcpdump_configGet Tcpdump ConfigA
Read-only

获取抓包工具配置

注意:实测 4.0.313 免费版的 tcpdump 模块是裁剪版—— show TYPE=data,total 与 TYPE=interface 可用,但 add/start/TYPE=detail 均不可用(返回 3001/2014/2007)。

Inputs: no named parameters. Returns: object

get_terminal_independent_speed_limitsGet Terminal Independent Speed LimitsB
Read-only

获取终端独立限速(智能流控 → 终端独立限速)

Inputs: no named parameters. Returns: object

get_terminal_listGet Terminal ListB
Read-only

获取终端监控列表:所有在线设备 IP/MAC/主机名/流量/连接数

Inputs: limit, offset, ip_type. Returns: object

get_terminal_logGet Terminal LogB
Read-only

获取终端上下线记录

Inputs: no named parameters. Returns: object

get_traffic_audit_by_macGet Traffic Audit By MacC
Read-only

按 MAC 审计终端流量

实测:设备没有 audit_terminal_stat_mac(返回 1003), 统一入口是 audit_terminal_stat。

Inputs: no named parameters. Returns: object

get_traffic_audit_by_userGet Traffic Audit By UserC
Read-only

按账号审计终端流量(同上,走 audit_terminal_stat)

Inputs: no named parameters. Returns: object

get_udp_proxy_configGet Udp Proxy ConfigA
Read-only

获取 UDPXY 配置(组播转 HTTP)

Inputs: no named parameters. Returns: object

get_upnp_settingsGet Upnp SettingsC
Read-only

获取 UPnP 设置

Inputs: no named parameters. Returns: object

get_upnp_statusGet Upnp StatusB
Read-only

获取 UPnP 当前状态和映射表

Inputs: no named parameters. Returns: object

get_url_browsing_logGet Url Browsing LogC
Read-only

获取网址浏览记录

Inputs: no named parameters. Returns: object

get_version_infoGet Version InfoA
Read-only

获取设备版本信息(型号/固件版本/架构/SN/是否企业版)

Inputs: no named parameters. Returns: object

get_vrrp_configGet Vrrp ConfigA
Read-only

获取双机热备 (VRRP) 配置

Inputs: no named parameters. Returns: object

get_wan_pppoe_logGet Wan Pppoe LogB
Read-only

获取外网拨号日志

Inputs: no named parameters. Returns: object

get_wan_statusGet Wan StatusB
Read-only

获取 WAN 口实时状态:IP/速率/连接数/AC 状态

实测:homepage 只认 TYPE=all。

Inputs: no named parameters. Returns: object

get_warningsGet WarningsC
Read-only

获取告警信息

Inputs: no named parameters. Returns: object

get_web_auth_configGet Web Auth ConfigC
Read-only

获取 Web 认证服务配置

Inputs: no named parameters. Returns: object

get_wifi_advanced_settingsGet Wifi Advanced SettingsA
Read-only

获取 Wi-Fi 高级设置(信道/频宽/工作模式)

Inputs: no named parameters. Returns: object

get_wifi_all_settingsGet Wifi All SettingsA
Read-only

获取 Wi-Fi 全部设置(基础 + 高级 + 信道列表)

Inputs: no named parameters. Returns: object

get_wifi_basic_settingsGet Wifi Basic SettingsA
Read-only

获取 Wi-Fi 基本设置(SSID/加密/信道)

实测:设备用的是 wifi 而不是 wifiSettings(后者返回 1003)。

Inputs: no named parameters. Returns: object

get_wireguard_client_configGet Wireguard Client ConfigB
Read-only

获取 WireGuard 客户端配置

Inputs: no named parameters. Returns: object

get_wireless_monitoringGet Wireless MonitoringB
Read-only

获取无线监控:AP 数量/在线状态

Inputs: no named parameters. Returns: object

get_wireless_terminal_logGet Wireless Terminal LogC
Read-only

获取无线终端日志

Inputs: no named parameters. Returns: object

iperf_testIperf TestC

执行 iPerf 吞吐测试

Inputs: server (required), port, duration, interface. Returns: object

kick_pppoe_userKick Pppoe UserC

踢下线指定用户

Inputs: username (required). Returns: object

list_acl_rulesList Acl RulesB
Read-only

列出 ACL 访问控制规则

Inputs: no named parameters. Returns: object

list_admin_accountsList Admin AccountsB
Read-only

列出管理员账号

Inputs: no named parameters. Returns: object

list_advanced_custom_protocolsList Advanced Custom ProtocolsB
Read-only

列出高级自定义协议 (L7)

Inputs: no named parameters. Returns: object

list_ap_devicesList Ap DevicesA
Read-only

列出 AP 设备列表(状态/型号/客户端数)

Inputs: no named parameters. Returns: object

list_api_tokensList Api TokensB
Read-only

列出个人 API 令牌

Inputs: no named parameters. Returns: object

list_app_protocol_rulesList App Protocol RulesB
Read-only

列出应用协议控制规则 (L7 ACL)

Inputs: no named parameters. Returns: object

list_arp_bindingsList Arp BindingsC
Read-only

列出 ARP 绑定列表

Inputs: no named parameters. Returns: object

list_connection_limitsList Connection LimitsB
Read-only

列出连接数限制规则

Inputs: no named parameters. Returns: object

list_couponsList CouponsC
Read-only

列出上网码/优惠券

Inputs: no named parameters. Returns: object

list_custom_isp_rulesList Custom Isp RulesB
Read-only

列出自定义运营商规则

Inputs: no named parameters. Returns: object

list_custom_protocolsList Custom ProtocolsB
Read-only

列出自定义协议

Inputs: no named parameters. Returns: object

list_custom_url_libraryList Custom Url LibraryB
Read-only

列出自定义网址库(tab: 自定义网址库)

Inputs: no named parameters. Returns: object

list_device_namesList Device NamesB
Read-only

列出终端名称/备注

Inputs: no named parameters. Returns: object

list_dhcp_blackwhite_listList Dhcp Blackwhite ListC
Read-only

列出 DHCP 黑白名单

Inputs: ip_type. Returns: object

list_dhcp_leasesList Dhcp LeasesB
Read-only

列出 DHCP 租约列表(当前分配 IP)

Inputs: ip_type. Returns: object

list_dhcp_serversList Dhcp ServersB
Read-only

列出 DHCP 服务端配置

Inputs: no named parameters. Returns: object

list_dhcp_static_bindingsList Dhcp Static BindingsB
Read-only

列出 DHCP 静态分配(IP-MAC 绑定)

Inputs: no named parameters. Returns: object

list_dial_user_expiry_noticesList Dial User Expiry NoticesB
Read-only

列出拨号用户过期通知

Inputs: no named parameters. Returns: object

list_domain_blacklistList Domain BlacklistC
Read-only

列出禁止娱乐网站(tab: 禁止娱乐网站)

Inputs: no named parameters. Returns: object

list_domain_forwarding_rulesList Domain Forwarding RulesC
Read-only

列出域名分流规则

Inputs: no named parameters. Returns: object

list_domain_groupsList Domain GroupsC
Read-only

列出域名分组

Inputs: no named parameters. Returns: object

list_expiry_noticesList Expiry NoticesC
Read-only

列出到期通知

Inputs: no named parameters. Returns: object

list_ip_groupsList Ip GroupsB
Read-only

列出 IP 地址分组(IPv4/IPv6)

Inputs: ip_type. Returns: object

list_ip_speed_limitsList Ip Speed LimitsB
Read-only

列出 IP 限速规则

Inputs: no named parameters. Returns: object

list_ipv6_neighborsList Ipv6 NeighborsB
Read-only

列出 IPv6 邻居列表

Inputs: no named parameters. Returns: object

list_ipv6_static_bindingsList Ipv6 Static BindingsB
Read-only

列出 IPv6 前缀静态分配

Inputs: no named parameters. Returns: object

list_lan_configsList Lan ConfigsC
Read-only

列出所有 LAN 口配置

Inputs: no named parameters. Returns: object

list_load_balance_rulesList Load Balance RulesB
Read-only

列出多线负载规则

Inputs: no named parameters. Returns: object

list_local_servicesList Local ServicesA
Read-only

列出本地服务状态(Samba/FTP/HTTP)

注意:免费版固件(实测 4.0.313)未编译这些服务端模块,会返回 code=1003 Access denied。企业版可用。

Inputs: no named parameters. Returns: object

list_mac_access_controlList Mac Access ControlB
Read-only

列出 MAC 访问控制规则

Inputs: no named parameters. Returns: object

list_mac_groupsList Mac GroupsB
Read-only

列出 MAC 地址分组

Inputs: no named parameters. Returns: object

list_mac_speed_limitsList Mac Speed LimitsB
Read-only

列出 MAC 限速规则

Inputs: no named parameters. Returns: object

list_nat_rulesList Nat RulesB
Read-only

列出 NAT 规则

Inputs: no named parameters. Returns: object

list_network_sharing_controlsList Network Sharing ControlsB
Read-only

列出网络分享控制(二级路由/热点控制)

Inputs: no named parameters. Returns: object

list_packagesList PackagesC
Read-only

列出套餐

Inputs: no named parameters. Returns: object

list_periodic_noticesList Periodic NoticesC
Read-only

列出定期通知

Inputs: no named parameters. Returns: object

list_port_forwarding_rulesList Port Forwarding RulesC
Read-only

列出端口分流规则

Inputs: no named parameters. Returns: object

list_port_groupsList Port GroupsC
Read-only

列出端口分组

Inputs: no named parameters. Returns: object

list_port_mappingsList Port MappingsA
Read-only

列出端口映射 (DNAT) 规则

Inputs: no named parameters. Returns: object

list_pppoe_accountsList Pppoe AccountsC
Read-only

列出 PPPoE 账号

Inputs: no named parameters. Returns: object

list_pppoe_online_usersList Pppoe Online UsersC
Read-only

列出当前在线账号

Inputs: no named parameters. Returns: object

list_protocol_forwarding_rulesList Protocol Forwarding RulesC
Read-only

列出协议分流规则

Inputs: no named parameters. Returns: object

list_protocol_groupsList Protocol GroupsC
Read-only

列出协议分组

Inputs: no named parameters. Returns: object

list_proxy_dial_accountsList Proxy Dial AccountsB
Read-only

列出代拨账号

实测:设备没有 pppoe_proxy_user(返回 1003), 代拨账号入口是 pppoe_proxy。

Inputs: no named parameters. Returns: object

list_proxy_dial_onlineList Proxy Dial OnlineA
Read-only

列出代拨在线账号

注意:pppoe_proxy_online 在 4.0.313 免费版上返回 1003(企业版功能)。

Inputs: no named parameters. Returns: object

list_realtime_noticesList Realtime NoticesC
Read-only

列出实时通知

Inputs: no named parameters. Returns: object

list_static_routesList Static RoutesB
Read-only

列出所有静态路由规则

Inputs: no named parameters. Returns: object

list_tasksList TasksB
Read-only

列出任务管理中的任务

实测:设备用 task_queue 而非 task_management(后者返回 1003)。

Inputs: no named parameters. Returns: object

list_time_plansList Time PlansC
Read-only

列出时间计划

Inputs: no named parameters. Returns: object

list_updown_separation_rulesList Updown Separation RulesB
Read-only

列出上下行分离规则

Inputs: no named parameters. Returns: object

list_url_blacklistList Url BlacklistC
Read-only

列出网址黑白名单(tab: 网址黑白名单)

Inputs: no named parameters. Returns: object

list_url_keywordsList Url KeywordsB
Read-only

列出 URL 关键字替换(tab: 关键字替换)

Inputs: no named parameters. Returns: object

list_url_params_replaceList Url Params ReplaceB
Read-only

列出 URL 参数替换(tab: 参数替换)

Inputs: no named parameters. Returns: object

list_url_redirectsList Url RedirectsB
Read-only

列出 URL 跳转规则(tab: URL 跳转)

Inputs: no named parameters. Returns: object

list_vlan_configsList Vlan ConfigsB
Read-only

列出所有 VLAN 配置

Inputs: no named parameters. Returns: object

list_vpn_accountsList Vpn AccountsC
Read-only

列出 VPN 客户端配置

实测:设备没有 pptp_user/l2tp_user/openvpn_user/ike_user (均返回 1003)。这些 VPN 的客户端配置入口分别是 pptp_client/l2tp_client/openvpn-client/ike_client。

Inputs: vpn_type. Returns: object

list_vpn_clientsList Vpn ClientsA
Read-only

列出所有 VPN 客户端配置(PPTP/L2TP/OpenVPN/IPSec/IKEv2/WireGuard)

Inputs: no named parameters. Returns: object

list_vpn_serversList Vpn ServersA
Read-only

列出所有 VPN 服务端状态

Inputs: no named parameters. Returns: object

list_wan_configsList Wan ConfigsA
Read-only

列出所有 WAN 口配置(IP/接入方式/网卡/VLAN/速率)

Inputs: no named parameters. Returns: object

list_wireless_blackwhite_listList Wireless Blackwhite ListB
Read-only

列出无线黑白名单

Inputs: no named parameters. Returns: object

list_wireless_vlansList Wireless VlansB
Read-only

列出无线终端 VLAN 配置

Inputs: no named parameters. Returns: object

ping_resultPing ResultB
Read-only

读取 Ping 测试结果

Inputs: no named parameters. Returns: object

ping_testPing TestA
Read-only

执行 Ping 测试

实测(IK-Q3000 / 4.0.313):必须带全部字段,且 interface 不能为空, 否则返回 3001 请求参数不合法。结果通过 ping_result 读取。

Inputs: host (required), dns, port, count, +3 more. Returns: object

reboot_routerReboot RouterB

重启路由器 ⚠️ 断网 1-2 分钟

Inputs: confirm. Returns: object

restart_apRestart ApC

重启指定 AP

Inputs: ap_id (required). Returns: object

retry_taskRetry TaskD

重试任务

Inputs: task_id (required). Returns: object

run_router_health_reportRun Router Health ReportC
Read-only

运行路由体检

Inputs: no named parameters. Returns: object

scan_nearby_signalsScan Nearby SignalsB
Read-only

扫描周边无线信号详情(含 BSSID/信号强度)

Inputs: no named parameters. Returns: object

scan_surrounding_channelsScan Surrounding ChannelsA
Read-only

扫描周边 AP 信道(读取扫描结果)

实测:设备用 ac_scan_nearby_ap 而非 surroundingChannelScan。 本工具只读结果;启动扫描请用 start_channel_scan。

Inputs: no named parameters. Returns: object

set_device_nameSet Device NameD

设置终端名称

Inputs: mac (required), name (required). Returns: object

set_dmzSet DmzD

配置 DMZ 主机

Inputs: enabled (required), interface, internal_ip. Returns: object

set_dns_configSet Dns ConfigC

修改 DNS 配置

实测:dns 只接受 TYPE=all,用 TYPE=data 会得到 2007。

Inputs: primary_dns, enable_cache, secondary_dns. Returns: object

set_flow_control_lineSet Flow Control LineC

启用/禁用某条线路的智能流控

Inputs: enabled (required), interface. Returns: object

set_hostnameSet HostnameC

修改路由器主机名

Inputs: hostname (required). Returns: object

set_ipv6Set Ipv6C

启用/禁用 IPv6

Inputs: enabled (required). Returns: object

set_snmpSet SnmpD

配置 SNMP

Inputs: enabled (required), community. Returns: object

set_wan_web_accessSet Wan Web AccessB

开启/关闭外网 Web 访问(从外网访问路由器后台)

Inputs: enabled (required). Returns: object

set_web_portsSet Web PortsC

设置 Web 管理端口

Inputs: http_port, https_port, force_https. Returns: object

set_wifi_passwordSet Wifi PasswordC

修改 Wi-Fi 密码 (至少8位)

Inputs: password (required), radio. Returns: object

set_wifi_ssidSet Wifi SsidD

修改 Wi-Fi SSID

Inputs: ssid (required), radio. Returns: object

speed_testSpeed TestC

执行线路测速

Inputs: interface. Returns: object

start_channel_scanStart Channel ScanB

启动周边信道扫描

Inputs: no named parameters. Returns: object

start_firmware_upgradeStart Firmware UpgradeA

安装已下载的固件包 ⚠️⚠️ 路由器会重启断网 1-2 分钟

前提:本地已有固件文件(get_ota_info 的 fileinfo 非空)。 未下载固件时设备返回 2022 升级未成功,系统保持当前版本。

Inputs: confirm. Returns: object

stop_pingStop PingC

停止 Ping 测试

Inputs: no named parameters. Returns: object

stop_tracerouteStop TracerouteC

停止 Traceroute

Inputs: no named parameters. Returns: object

subnet_calculatorSubnet CalculatorA
Read-only

子网换算工具(本地计算,不依赖设备)

设备侧没有 subnet func_name(实测 4.0.313 返回 1003), 因此该工具在本地完成换算。

Inputs: ip (required), mask. Returns: object

toggle_acl_ruleToggle Acl RuleC

启用/禁用 ACL 规则

Inputs: enable (required), rule_id (required). Returns: object

toggle_app_protocol_ruleToggle App Protocol RuleC

启用/禁用应用协议控制

Inputs: enable (required), rule_id (required). Returns: object

toggle_pppoe_serverToggle Pppoe ServerC

启用/禁用 PPPoE 服务端

Inputs: enabled (required). Returns: object

toggle_vpn_serverToggle Vpn ServerC

启用/禁用 VPN 服务端

Inputs: enabled (required), vpn_type (required). Returns: object

toggle_web_authToggle Web AuthC

启用/禁用 Web 认证

Inputs: enabled (required). Returns: object

toggle_wifiToggle WifiC

启用/禁用 Wi-Fi

Inputs: enabled (required), radio. Returns: object

tracerouteTracerouteA

执行 Traceroute 路由追踪

实测:max 为最大跳数(默认 5),wait 为超时秒数(默认 3)。 该调用为长任务,设备可能不立即返回,用 traceroute_result 读取结果。

Inputs: host (required), dns, wait, max_hops, +1 more. Returns: object

traceroute_resultTraceroute ResultC
Read-only

读取 Traceroute 结果

Inputs: no named parameters. Returns: object

upgrade_ap_firmwareUpgrade Ap FirmwareC

升级 AP 固件 ⚠️ AP 会重启

Inputs: ap_id (required), version (required), confirm. Returns: object

wake_on_lanWake On LanC

发送网络唤醒包 (Wake-on-LAN)

Inputs: mac (required), interface. Returns: object

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    C2.4/5.0

    Scored across 248 tools

    Disambiguation3/5

    Individual descriptions are unusually detailed and often steer the agent correctly, but real overlaps remain: get_ddns_config and get_dynamic_dns_config appear to be the same resource, get_notifications/get_messages/list_realtime_notices/list_periodic_notices all retrieve '消息通知', get_wifi_all_settings duplicates get_wifi_basic_settings + get_wifi_advanced_settings, and several channel-scan tools (scan_surrounding_channels/start_channel_scan/get_channel_scan_status/scan_nearby_signals) blur together. With 248 tools, some boundaries are genuinely hard to distinguish.

    Naming Consistency4/5

    The vast majority follow a predictable verb_noun snake_case pattern (get_*, list_*, add_*, delete_*, set_*, toggle_*, enable_*, start_*/stop_*). Minor deviations exist (traceroute, subnet_calculator, ping_result, wake_on_lan, reboot_router), but they are isolated and still readable.

    Tool Count1/5

    248 tools is an extreme mismatch in scale; navigating this surface is a serious burden even for a complex router domain. Many clusters (dozens of read-only list_* and get_*_config) suggest granularity could be collapsed, and the calibration marks 50+ as the extreme end.

    Completeness4/5

    Coverage is remarkably broad across WAN/LAN, VLAN, DHCP, VPN, firewall/ACL, wifi, firmware, logs, and monitoring, with full CRUD on many domains. However, a large number of list_* tools (load balance, protocol/port/domain forwarding, groups, time plans, NAT, wireless VLANs) have no corresponding add/update/delete, and update/edit operations are generally sparse, leaving notable gaps.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      An MCP server that enables AI assistants to manage network infrastructure through the Equinix Fabric API, including ports, connections, and service profiles. It provides 22 tools for tasks like creating virtual connections, managing service tokens, and querying metro locations.
      1
      MIT
    • A
      license
      A
      quality
      D
      maintenance
      A comprehensive MCP server for network device management via SSH/Telnet. Supports multiple vendors such as Cisco IOS and BDCOM, enabling AI assistants to execute commands and manage routers, switches, and firewalls.
      4
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      MCP server for interacting with iKuai routers, enabling Claude to query system status, manage devices, and configure router settings via natural language.
      MIT
    • A
      license
      A
      quality
      C
      maintenance
      MCP server for UnoRouter, an OpenAI-compatible gateway with 200+ models, providing search_models, get_pricing, and chat tools to interact with various AI models through natural language.
      3
      598 npm
      AGPL 3.0