Skip to main content

keenetic-mcp

CI PyPI Python

MCP-сервер для роутеров Keenetic — управляй интерфейсами, смотри подключённых клиентов, маршруты и текущую скорость через Claude или любой MCP-совместимый клиент.

Протестировано на прошивке 5.01.B.0.0-2 (Keenetic Ultra KN-1811). Более ранние версии ветки 4.x и выше должны работать — API RCI стабилен начиная с KeeneticOS 3.x.

Инструменты

Система

Инструмент Описание
get_system_info Модель, версия прошивки, аптайм, использование памяти

Интерфейсы

Инструмент Описание
get_interfaces Все сетевые интерфейсы — состояние, IP, MTU
get_interface Детальная информация по одному интерфейсу

Клиенты и трафик

Инструмент Описание
get_connected_clients Все устройства в сети — MAC, IP, hostname, трафик
get_wifi_associations Wi-Fi клиенты с уровнем сигнала (RSSI/SNR)
get_speed Текущая скорость download/upload по всем клиентам

Маршрутизация и WAN

Инструмент Описание
get_routes Таблица маршрутов
get_wan_status Состояние интернет-подключения
get_wan_speed Текущая скорость по каждому WAN/VPN интерфейсу отдельно (Beeline, MTS, Wireguard и т.д.)

DNS-маршрутизация

Инструмент Описание
get_domain_lists Все списки доменных имён — название, ключ, количество записей
get_domain_list Все записи (домены/IP) в конкретном списке
create_domain_list Создать новый список доменных имён
delete_domain_list Удалить список доменных имён
set_domain_list Заменить все записи в списке (полная перезапись)
add_domains Добавить домены/IP в список (дубли игнорируются)
remove_domains Удалить конкретные домены/IP из списка
get_dns_routes Все правила DNS-маршрутизации (список → интерфейс)
add_dns_route Добавить правило DNS-маршрутизации
delete_dns_route Удалить правило по его index-хэшу

Управление (safe mode)

Инструмент Описание
set_interface_state Поднять или опустить интерфейс
reboot Перезагрузить роутер

Установка

pip install keenetic-mcp

Настройка

Переменные окружения

Переменная Описание По умолчанию
KEENETIC_HOST IP или hostname роутера обязательно
KEENETIC_USER Логин admin
KEENETIC_PASS Пароль обязательно
KEENETIC_SAFE_MODE Запретить write-операции (1/true/yes) false

Claude Code (CLI)

claude mcp add keenetic-mcp \
  -e KEENETIC_HOST=192.168.1.1 \
  -e KEENETIC_PASS=your_password \
  -- keenetic-mcp

Claude Desktop

В claude_desktop_config.json:

{
  "mcpServers": {
    "keenetic": {
      "command": "keenetic-mcp",
      "env": {
        "KEENETIC_HOST": "192.168.1.1",
        "KEENETIC_USER": "admin",
        "KEENETIC_PASS": "your_password"
      }
    }
  }
}

Безопасный режим (Safe Mode)

Запусти с --safe-mode чтобы запретить reboot и set_interface_state:

keenetic-mcp --safe-mode
# или
KEENETIC_SAFE_MODE=true keenetic-mcp

Три уровня приоритета (выше = важнее):

# Программно
from keenetic_mcp.server import configure, mcp
configure(safe_mode=True)
mcp.run()

Примеры

После настройки можно спрашивать Claude:

«Какие устройства сейчас подключены к роутеру?» «Какая скорость на роутере прямо сейчас?» «Покажи скорость по каждому провайдеру» «Покажи состояние всех интерфейсов» «Есть ли интернет? Через какой провайдер?» «Перезагрузи роутер»

Лицензия

MIT

Release files for keenetic-mcp 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for keenetic-mcp 0.3.0
File Size Uploaded
keenetic_mcp-0.3.0.tar.gz 14.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for keenetic-mcp 0.3.0
File Interpreter ABI Platform
keenetic_mcp-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 24.4 kB

Release files / keenetic_mcp-0.3.0.tar.gz

Download URL keenetic_mcp-0.3.0.tar.gz
Size 14.0 kB
Tags Source
SHA-256 checksum
How to use checksums
cbb9768886e08dd174025deea7549b1c7c96266507221067ed14de7e7e6b9824
BLAKE2b-256 checksum
How to use checksums
7aa064fa55cc1311218ed6dc25ca34d291ca170b67a215241f8d4850e0e5de03
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 10, 2026.

Transparency log

Release files / keenetic_mcp-0.3.0-py3-none-any.whl

Download URL keenetic_mcp-0.3.0-py3-none-any.whl
Size 10.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d659ce27dbac6073631016d4aba802fc45187518d5f56c1a3a3af71714615a4a
BLAKE2b-256 checksum
How to use checksums
487599e213267797522eac35e62cd28bafd8a33e9d67fa29b1533c1415439ece
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 10, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page