Skip to main content

MCP server for Keenetic routers — manage interfaces, clients, routes and system via Claude

Project description

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

keenetic_mcp-0.3.0.tar.gz (14.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

keenetic_mcp-0.3.0-py3-none-any.whl (10.5 kB view details)

Uploaded Python 3

File details

Details for the file keenetic_mcp-0.3.0.tar.gz.

File metadata

  • Download URL: keenetic_mcp-0.3.0.tar.gz
  • Upload date:
  • Size: 14.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for keenetic_mcp-0.3.0.tar.gz
Algorithm Hash digest
SHA256 cbb9768886e08dd174025deea7549b1c7c96266507221067ed14de7e7e6b9824
MD5 07c89c8a58c373ad38f08073c2f42f5e
BLAKE2b-256 7aa064fa55cc1311218ed6dc25ca34d291ca170b67a215241f8d4850e0e5de03

See more details on using hashes here.

Provenance

The following attestation bundles were made for keenetic_mcp-0.3.0.tar.gz:

Publisher: publish.yml on Patr56/keenetic-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file keenetic_mcp-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: keenetic_mcp-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 10.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for keenetic_mcp-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d659ce27dbac6073631016d4aba802fc45187518d5f56c1a3a3af71714615a4a
MD5 13c1c4c3cb404e232e394de2e4a6ddfa
BLAKE2b-256 487599e213267797522eac35e62cd28bafd8a33e9d67fa29b1533c1415439ece

See more details on using hashes here.

Provenance

The following attestation bundles were made for keenetic_mcp-0.3.0-py3-none-any.whl:

Publisher: publish.yml on Patr56/keenetic-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page