Skip to main content
Glama
README.md
# MikroTik MCP

<!-- mcp-name: io.github.wiresage/mikrotik-mcp -->

[![MseeP.ai Security Assessment Badge](https://mseep.net/pr/jeff-nasseri-mikrotik-mcp-badge.png)](https://mseep.ai/app/jeff-nasseri-mikrotik-mcp)

[![MCP Toplist](https://mcptoplist.com/badge/io.github.wiresage%2Fmikrotik-mcp.svg)](https://mcptoplist.com/server/io.github.wiresage%2Fmikrotik-mcp)
[![Audited by AddonAudit](https://addonaudit.com/badges/audited.svg)](https://addonaudit.com/addon/io-github-wiresage-mikrotik-mcp/)
[![Website](https://img.shields.io/badge/website-mikrotik--mcp.com-007ACC?style=flat-square&logo=googlechrome&logoColor=white)](https://www.mikrotik-mcp.com/)
[![Build Status](https://img.shields.io/github/actions/workflow/status/wiresage/mikrotik-mcp/publish.yml?branch=master&label=build&style=flat-square&color=%23007ACC)](https://github.com/wiresage/mikrotik-mcp/actions/workflows/publish.yml)
[![Tests](https://img.shields.io/github/actions/workflow/status/wiresage/mikrotik-mcp/publish.yml?branch=master&label=tests&style=flat-square&color=%2300C853)](https://github.com/wiresage/mikrotik-mcp/actions/workflows/publish.yml)
[![MIT License](https://img.shields.io/github/license/wiresage/mikrotik-mcp?style=flat-square&color=%23FF6B35)](https://github.com/wiresage/mikrotik-mcp/blob/master/LICENSE)
[![Discord](https://img.shields.io/badge/Discord-Join%20us-5865F2?style=flat-square&logo=discord&logoColor=white)](https://discord.gg/kmVSpstbNU)

## Overview

MikroTik MCP provides a bridge between AI assistants and MikroTik RouterOS devices. It allows AI assistants to interact with MikroTik routers through natural language requests, executing commands like managing VLANs, configuring firewall rules, handling DNS settings, and more.

## Demo Videos

### Claude Desktop

https://github.com/user-attachments/assets/24fadcdc-c6a8-48ed-90ac-74baf8f94b59

### Inspector

https://github.com/user-attachments/assets/e0301ff2-8144-4503-83d0-48589d95027d

### Inventory
> [!NOTE]
> Since MikroTik MCP version `0.14.0`, the MikroTik MCP will allow you to manage multiple MikroTik devices within your fleet structure. The following video simply shows how to use the inventory of MikroTik devices to let LLMs talk with your MikroTik devices.

https://github.com/user-attachments/assets/185b2c39-8f55-4f26-a74c-2ac459ad38f5

## Documentation

šŸ“š **[Full Documentation](docs/README.md)** - Complete guides, API reference, and examples

> 🌐 **Prefer to read online?** The same documentation is also published at **[www.mikrotik-mcp.com](https://www.mikrotik-mcp.com/)** ([docs](https://www.mikrotik-mcp.com/docs/)) — an optional, web-friendly way to explore the project while reviewing the repo.

### Quick Links

- **[Installation Guide](docs/getting-started/installation.md)** - Get started with MikroTik MCP
- **[Testing Guide](docs/getting-started/testing.md)** - Run integration tests
- **[Claude Desktop Integration](docs/integrations/claude-desktop.md)** - Configure for Claude Desktop
- **[MCP Inspector](docs/integrations/inspector.md)** - Interactive testing tool
- **[Contributing Guide](docs/contributing.md)** - Help improve MikroTik MCP
- **[Articles](docs/articles/README.md)** - Learning resources and tutorials
- **[Diagrams](docs/diagrams/README.md)** - Architecture and design diagrams (draw.io)

## Contributors ā¤ļø

MikroTik MCP is built by the people below. Thank you for every commit, issue,
review and idea.

<!-- hassankhurram is listed by request: the commit carries an org email, so the
     API still reports hassan-khurram-hsol. Keep this override on regeneration.
     inistor is here for issue reports rather than merged commits, and
     lilianmoraru and Kn-ut99 for pull requests (#187, #188) that are still open,
     so the contributors API does not return them either. -->
<p>
<a href="https://github.com/jeff-nasseri" title="jeff-nasseri"><img src="https://avatars.githubusercontent.com/u/57312476?s=72" width="72" height="72" alt="jeff-nasseri" /></a>
<a href="https://github.com/goto1134" title="goto1134"><img src="https://avatars.githubusercontent.com/u/9569795?s=72" width="72" height="72" alt="goto1134" /></a>
<a href="https://github.com/vavan11" title="vavan11"><img src="https://avatars.githubusercontent.com/u/12846521?s=72" width="72" height="72" alt="vavan11" /></a>
<a href="https://github.com/shahabbahojb" title="shahabbahojb"><img src="https://avatars.githubusercontent.com/u/75182541?s=72" width="72" height="72" alt="shahabbahojb" /></a>
<a href="https://github.com/lwsinclair" title="lwsinclair"><img src="https://avatars.githubusercontent.com/u/2829939?s=72" width="72" height="72" alt="lwsinclair" /></a>
<a href="https://github.com/nieomylnieja" title="nieomylnieja"><img src="https://avatars.githubusercontent.com/u/48822818?s=72" width="72" height="72" alt="nieomylnieja" /></a>
<a href="https://github.com/hassankhurram" title="hassankhurram"><img src="https://avatars.githubusercontent.com/u/22665312?s=72" width="72" height="72" alt="hassankhurram" /></a>
<a href="https://github.com/OronF" title="OronF"><img src="https://avatars.githubusercontent.com/u/133911424?s=72" width="72" height="72" alt="OronF" /></a>
<a href="https://github.com/pdostal" title="pdostal"><img src="https://avatars.githubusercontent.com/u/1254493?s=72" width="72" height="72" alt="pdostal" /></a>
<a href="https://github.com/inistor" title="inistor"><img src="https://avatars.githubusercontent.com/u/13348711?s=72" width="72" height="72" alt="inistor" /></a>
<a href="https://github.com/paoValle" title="paoValle"><img src="https://avatars.githubusercontent.com/u/11146190?s=72" width="72" height="72" alt="paoValle" /></a>
<a href="https://github.com/lucasholman" title="lucasholman"><img src="https://avatars.githubusercontent.com/u/339287918?s=72" width="72" height="72" alt="lucasholman" /></a>
<a href="https://github.com/lilianmoraru" title="lilianmoraru"><img src="https://avatars.githubusercontent.com/u/621738?s=72" width="72" height="72" alt="lilianmoraru" /></a>
<a href="https://github.com/Kn-ut99" title="Kn-ut99"><img src="https://avatars.githubusercontent.com/u/73541663?s=72" width="72" height="72" alt="Kn-ut99" /></a>
<a href="https://github.com/vanelin" title="vanelin"><img src="https://avatars.githubusercontent.com/u/18135591?s=72" width="72" height="72" alt="vanelin" /></a>
</p>

Contributions of every kind are welcome: code, bug reports, documentation and
reviews all move the project forward. Start with the
[Contributing Guide](docs/contributing.md).

## Community

Got a question, an idea, or something you'd like to talk through? Join us on
[Discord](https://discord.gg/kmVSpstbNU). Users and contributors are both
welcome, whether you're connecting your first router or working on a PR.

## License

This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.

TDQS

C2.4/5.0

Scored across 212 tools

Disambiguation2/5

Several tools have unclear boundaries: create_ip_pool and create_dhcp_pool have nearly identical descriptions, and many log tools overlap (get_logs, search_logs, get_logs_by_topic, get_logs_by_severity, get_system_events, get_security_logs). The presence of multiple legacy wireless tools explicitly marked 'not supported in RouterOS v7.x' makes selection harder, and route/IP pool tools have overlapping variants.

Naming Consistency4/5

Almost all tools use snake_case with a verb_noun pattern, which is predictable across the huge surface. Minor deviations exist: create vs add, update vs set, and a few non-verb names such as safe_mode_status and backup_info, but these do not prevent understanding.

Tool Count1/5

212 tools is far beyond a manageable set for an agent, even for a broad platform like RouterOS. The count is inflated by many legacy or unsupported wireless tools and many narrowly scoped operations that could have been consolidated.

Completeness3/5

The surface covers many important RouterOS areas (interfaces, addressing, routes, firewall/NAT, DHCP/DNS, queues, WireGuard, logs, backups), but significant gaps remain: IPsec configuration is read-only, and netwatch, schedulers, and scripts have list-only surfaces. Entire common areas such as bridging, PPP, routing protocols (BGP/OSPF), hotspot, and certificates are absent, while some wireless tools are dead legacy stubs.

Maintenance

ActivityActive
ResponsivenessSlow