Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

MikroTik Server

БесплатноНе проверен

Enables management of MikroTik routers running RouterOS 6 and 7 via SSH, Telnet, or API with automatic command adaptation. Provides over 46 MCP tools for device

GitHubEmbed

Описание

Enables management of MikroTik routers running RouterOS 6 and 7 via SSH, Telnet, or API with automatic command adaptation. Provides over 46 MCP tools for device management, firewall, DHCP, VPN, configuration profiles, and more.

README

A robust Model Context Protocol (MCP) server for managing MikroTik routers running RouterOS 6 and 7. Provides seamless connectivity via SSH, Telnet, or API with automatic command adaptation.

Python Version License MCP

🚀 Quick Start (Python - Recommended)

Python version is simpler and easier to deploy!

1. Install

pip install -e .

2. Configure

Copy and edit the example configuration:

cp devices.json.example devices.json
# Edit devices.json with your router details

3. Add to Claude Desktop

Add to your Claude Desktop config (%APPDATA%\Claude\claude_desktop_config.json):

{
  "mcpServers": {
    "mikrotik": {
      "command": "python",
      "args": ["-m", "mikrotik_mcp.server"]
    }
  }
}

4. Start Using

Restart Claude Desktop and try:

List my MikroTik devices
Connect to router-main and show system info

📖 Read Full Python Documentation →

✨ Features

  • 46+ MCP Tools: Complete router management suite
  • Multi-Protocol Support: SSH (recommended), API, Telnet
  • RouterOS 6 & 7 Compatible: Automatic command adaptation
  • Advanced Features:
    • Firewall management (filter, NAT, address lists)
    • DHCP server configuration
    • VPN setup (IPsec, L2TP, WireGuard)
    • Configuration profiles
    • Backup/restore
    • Audit logging
    • Fleet management

📦 Installation Options

Python (Recommended)

# Windows
install-python.bat

# Linux/macOS
chmod +x install-python.sh
./install-python.sh

TypeScript (Advanced)

npm install
npm run build

🔧 MCP Tools Available

Device Management (13 tools)

  • list_devices - List all configured routers
  • connect_device - Establish connection
  • execute_command - Run any RouterOS command
  • get_system_info - System resources
  • get_interfaces - Network interfaces
  • get_firewall_rules - Firewall configuration
  • backup_config - Export configuration
  • And more...

Firewall Management (5 tools)

  • firewall_add_filter_rule - Add filter rules
  • firewall_add_nat_rule - Configure NAT
  • firewall_add_address_list - Manage address lists
  • firewall_get_address_list - View address lists
  • firewall_remove_rule - Remove rules

DHCP Management (5 tools)

  • dhcp_create_server - Create DHCP server
  • dhcp_add_network - Configure network
  • dhcp_add_static_lease - Add static leases
  • dhcp_create_pool - Create IP pools
  • dhcp_get_servers - List DHCP servers

VPN Management (8 tools)

  • IPsec: vpn_add_ipsec_peer, vpn_get_ipsec_peers
  • L2TP: vpn_add_l2tp_user, vpn_configure_l2tp_server, vpn_get_l2tp_connections
  • WireGuard: vpn_add_wireguard_interface, vpn_add_wireguard_peer, vpn_get_wireguard_interfaces
  • Generic: vpn_get_ppp_secrets

Configuration Profiles (6 tools)

  • profile_list - List available profiles
  • profile_get - Get profile details
  • profile_preview - Preview commands
  • profile_apply - Apply profile to device
  • profile_validate - Validate profile
  • profile_save_current - Save device config as profile

Advanced Features (9 tools)

  • execute_batch_commands - Run multiple commands
  • get_fleet_status - Multi-device overview
  • execute_on_all_devices - Run command on all
  • compare_configs - Compare two devices
  • get_command_history - Audit log access
  • get_device_audit_stats - Device statistics
  • get_connection_stats - Connection metrics
  • export_config - Export without saving
  • restore_config - Restore from backup

📁 Project Structure

mikrotik_mcp/
├── server.py              # Main MCP server
├── device_manager.py      # Device lifecycle management
├── models.py              # Pydantic data models
├── connections/           # SSH, Telnet, API implementations
├── modules/               # Feature modules
│   ├── firewall.py       # Firewall management
│   ├── dhcp.py           # DHCP management
│   ├── vpn.py            # VPN management
│   └── profiles.py       # Configuration profiles
├── audit.py              # Audit logging
├── cache.py              # Response caching
├── retry.py              # Connection retry logic
└── logger.py             # Structured logging

🔒 Security

  • Never commit devices.json or .env (already in .gitignore)
  • Use SSH instead of Telnet (encrypted)
  • Store passwords in environment variables
  • Enable audit logging for compliance
  • Regularly update RouterOS firmware

📚 Documentation

🧪 Testing

# Run tests
pytest

# With coverage
pytest --cov=mikrotik_mcp --cov-report=html

# Specific test
pytest tests/test_device_manager.py

🤝 Contributing

Contributions welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests
  5. Submit a pull request

📝 License

MIT License - See LICENSE file for details

🙏 Credits

Built with:

🐛 Support

For issues:

  1. Check Troubleshooting Guide
  2. Review Documentation
  3. Check existing GitHub issues
  4. Create a new issue with details

🗺️ Roadmap

  • Basic device management
  • SSH/API/Telnet support
  • RouterOS 6/7 compatibility
  • Firewall management
  • DHCP management
  • VPN management (IPsec, L2TP, WireGuard)
  • Configuration profiles
  • Audit logging
  • Wireless management
  • Queue management
  • Hotspot management
  • User management
  • Backup scheduling
  • SSH key authentication
  • Web-based dashboard

Happy routing! 🚀

For detailed setup and usage, see the Python Documentation.

from github.com/stormbliss/Mikrotik-MCP-Server

Установить MikroTik Server в Claude Desktop, Claude Code, Cursor

Рекомендуется · одна команда, все IDE
unyly install mikrotik-mcp-server

Ставит в Claude Desktop, Claude Code, Cursor и VS Code — сам разбирается с npx, uvx и сборкой из исходников.

Впервые? Поставь CLI: curl -fsSL https://unyly.org/install | sh

Или настроить вручную

Выполни в терминале:

claude mcp add mikrotik-mcp-server -- uvx --from git+https://github.com/stormbliss/Mikrotik-MCP-Server mikrotik-mcp-server

FAQ

MikroTik Server MCP бесплатный?

Да, MikroTik Server MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для MikroTik Server?

Нет, MikroTik Server работает без API-ключей и переменных окружения.

MikroTik Server — hosted или self-hosted?

Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.

Как установить MikroTik Server в Claude Desktop, Claude Code или Cursor?

Открой MikroTik Server на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare MikroTik Server with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории development