Mikrotik MCP runs on your own machine — the client starts it, so there is no endpoint to ping. 1 465 installs a week from pypi. Last commit 16 Sep 2026.
MCP server for MikroTik routers: firewall, NAT, routing, DHCP, DNS, WireGuard and more via SSH.
We read the source, 21 h ago · rules 3dff92dd89df
What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.
in_container = os.path.exists("/.dockerenv") or os.environ.get("container") == "docker"
key_filename: /config/keys/id_ed25519 # SSH private key, preferred over a password
Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.
We found places where it runs commands, builds paths or queries from values it is given. None of that is a flaw by itself — it becomes one when the code changes, and code changes quietly between releases. We re-read it on every one.
This server runs on your own machine — install it with the package manager and the client starts it for you. Package name taken from the official registry entry.
claude mcp add mikrotik-mcp -- uvx mcp-server-mikrotik
{
"mcpServers": {
"mikrotik-mcp": {
"args": [
"mcp-server-mikrotik"
],
"command": "uvx"
}
}
}
[mcp_servers.mikrotik-mcp]
command = "uvx"
args = ["mcp-server-mikrotik"]
{
"mcpServers": {
"mikrotik-mcp": {
"args": [
"mcp-server-mikrotik"
],
"command": "uvx"
}
}
}
{
"mcpServers": {
"mikrotik-mcp": {
"args": [
"mcp-server-mikrotik"
],
"command": "uvx"
}
}
}
This one needs environment variables set before it will start:
MIKROTIK_HOST (IP address or hostname of the MikroTik router (single-device mode; default: 127.0.0.1). Not needed when an inventory is configured.), MIKROTIK_USERNAME (SSH username for the MikroTik router (single-device mode; default: admin)), MIKROTIK_PASSWORD (SSH password for the MikroTik router (single-device mode)), MIKROTIK_PORT (SSH port of the MikroTik router (single-device mode; default: 22)), MIKROTIK_KEY_FILENAME (Path to SSH private key file for key-based authentication (single-device mode)), MIKROTIK_INVENTORY_FILE (Path to a YAML file listing multiple MikroTik devices (title, host, port, username, password, key_filename, tags, region). See docs/reference/inventory.), MIKROTIK_INVENTORY (Inline multi-device inventory as a YAML (or JSON) list; takes precedence over MIKROTIK_INVENTORY_FILE and the single-device variables. Holds credentials.).
The author declared them in the registry entry; get the values from the project itself.
OPNsense MCP Server — 72 tools for DNS, Firewall, DHCP, ACME, Routing, VLANs & more
MCP server for MikroTik RouterOS API
MCP server for the Hetzner Cloud API — servers, networks, volumes, firewalls, and more.
MCP server for MikroTik RouterOS: typed tools, dry-run, RBAC, audit logs, and rollback.
One firewall and password manager for all your AI coding agents' MCP servers and secrets.
MCP server for Atera RMM — customers, tickets, and more.
MCP server for Atera RMM — customers, tickets, and more.
MCP server for executing shell commands on remote hosts via SSH.
Answers built from our own checks of this server.