MikroMCP
NPM · MIKROMCP · SCANNED SEP 20
MCP server for MikroTik RouterOS: typed tools, dry-run, RBAC, audit logs, and rollback.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security99
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- 42 of 147 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency100
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to AliKarami/MikroMCP). View diagnostics → Pass
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 14 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability75
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 15241 tokens (~124/item across 122 items; 122 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management93
- Stability observed for 28 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety97
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 7 of 8 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "ping" implies "send" and declares readOnlyHint instead, contradicting what its own name says it does. See how to fix → Partial
- An AI judge read all 123 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the MikroMCP MCP server?
MikroMCP runs locally as an npm package, launched with npx -y mikromcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · mikromcp
claude mcp add alikarami-mikromcp -- npx -y mikromcp
{
"mcpServers": {
"alikarami-mikromcp": {
"command": "npx",
"args": [
"-y",
"mikromcp"
]
}
}
} {
"servers": {
"alikarami-mikromcp": {
"command": "npx",
"args": [
"-y",
"mikromcp"
]
}
}
} codex mcp add alikarami-mikromcp -- npx -y mikromcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"alikarami-mikromcp": {
"type": "local",
"command": [
"npx",
"-y",
"mikromcp"
],
"enabled": true
}
}
} openclaw mcp add alikarami-mikromcp --command npx --arg -y --arg mikromcp
mcp_servers:
alikarami-mikromcp:
command: "npx"
args: ["-y", "mikromcp"] {
"McpServers": {
"alikarami-mikromcp": {
"Transport": "stdio",
"Command": "npx",
"Arguments": [
"-y",
"mikromcp"
]
}
}
} assistant mcp add alikarami-mikromcp -t stdio -c npx -a -y mikromcp
{
"mcpServers": {
"alikarami-mikromcp": {
"command": "npx",
"args": [
"-y",
"mikromcp"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 20 Sept 26 +1
- Security disclosure: unverified → pass ▲ functional
- 19 Sept 26 0
- Security disclosure: pass → unverified ▼ functional
- 17 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes. Other categories moved too: Supply Chain Security rose 1.
- 16 Sept 26 −3
- Stability: pass → 0.80 functional
- 15 Sept 26 +1
- Stability: 0.97 → pass security
- 13 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.
- 11 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.
- 9 Sept 26 −3
- Stability: pass → 0.80 functional
- Package version: 1.8.0 → 1.11.0 functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 20 Sept 2026 · Analysed npm/mikromcp@1.11.0
Provenance Verified
A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.
| Result | Verified |
|---|---|
| Ecosystem | npm |
| Reason | Verified |
| Discovered via | Registry attestation endpoint |
| Source repo | AliKarami/MikroMCP |
| Certificate issuer | https://token.actions.githubusercontent.com |
| Certificate SAN | https://github.com/AliKarami/MikroMCP/.github/workflows/release.yml@refs/tags/v1.11.0 |
| Rekor log index | 2723383711 |
| Predicate type | https://slsa.dev/provenance/v1 |
| Subject digest | sha512:c76356c9095f2707cba9c4964ff7e3de0ca3b1cc7ad92d991a8f6057c2f218d3031b4b3d614c616555078fd89b31a938a38e8a79d6173ac72cf6aa84b |
Background: How many MCP packages publish verified provenance →
Dependencies 147 packages
| Packages resolved | 147 |
|---|---|
| Stale | 42 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
apply_plan Apply Plan ~122
Execute write operations in order, stopping on first failure. Each step is snapshotted and journaled individually. Non-admin identities need a confirmationToken (same two-step flow as other destructive tools). Undo individual steps via rollback_change with the returned journal IDs.
| Name | Type | Req | Description |
|---|---|---|---|
| confirmationToken | string | – | Token from a prior APPROVAL_REQUIRED response. Re-submit the identical call with this token to confirm the destructive action. |
| routerId | string | – | Router ID; omit to use the default router. |
| steps | array | yes | Ordered list of write operations to apply in sequence |
No output schema declared.
No examples provided.
bandwidth_test Bandwidth Test ~120
Run a RouterOS bandwidth test from the router to a remote host running a RouterOS btest server. Returns TX and RX throughput in Mbps. Duration capped at 20 seconds. Saturates the link — not auto-retried.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Remote host running RouterOS btest server |
| direction | string | – | Test direction |
| duration | integer | – | Test duration in seconds (max 20) |
| protocol | string | – | Test protocol |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
bulk_execute Bulk Execute ~205
Fan out a single-router tool to many routers in parallel (up to `concurrency`), targeted by routerIds or tag. Destructive tools need two-step confirmation: call without `confirmationToken` to get a fleet token (needs MIKROMCP_CONFIRMATION_SECRET), then re-call with it. Writes snapshot+journal each router for rollback. Returns per-router results with succeeded/failed counts.
| Name | Type | Req | Description |
|---|---|---|---|
| concurrency | integer | – | Max simultaneous router calls |
| confirmationToken | string | – | Fleet confirmation token from a prior APPROVAL_REQUIRED response. Required to fan out a destructive tool. |
| params | object | yes | Params to pass to the tool (omit routerId — injected per router) |
| routerIds | array | – | Explicit list of router IDs to target |
| tags | array | – | Target all routers with ALL of these tags (mutually exclusive with routerIds) |
| toolName | string | yes | Name of the tool to fan out (must be a single-router tool) |
No output schema declared.
No examples provided.
check_router_health Check Router Health ~81
Probe a device: RouterOS routers via system/resource, SwOS switches via sys.b. Returns health status, firmware version, uptime, and (RouterOS only) CPU load and memory info. Unlike other tools, this never throws — unreachable devices are reported as healthy=false.
| Name | Type | Req | Description |
|---|---|---|---|
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
create_backup Create Backup ~101
Create a binary configuration backup on a MikroTik router. The backup is saved as <name>.backup on the router's filesystem. Supports optional encryption via password and dry-run mode.
| Name | Type | Req | Description |
|---|---|---|---|
| dryRun | boolean | – | Preview the backup without creating it |
| name | string | – | Backup file name (without extension) |
| password | string | – | Password to encrypt the backup file |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
delete_file Delete File ~116
Delete a file from the router filesystem by name. Idempotent: returns not_found gracefully if the file does not exist.
| Name | Type | Req | Description |
|---|---|---|---|
| confirmationToken | string | – | Token from a prior APPROVAL_REQUIRED response. Re-submit the identical call with this token to confirm the destructive action. |
| dryRun | boolean | – | Preview deletion without removing the file |
| name | string | yes | Exact file name on the router (e.g. flash/backup.backup) |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
export_config Export Config ~116
Export the router configuration as a RouterOS script. When no file is specified, returns the script text inline. When a file is specified, saves it as <file>.rsc on the router's filesystem. Supports compact mode to show only non-default values.
| Name | Type | Req | Description |
|---|---|---|---|
| compact | boolean | – | Export only non-default settings (compact format) |
| file | string | – | Save the export to a file on the router (without extension); omit to return inline |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
fetch_url Fetch URL ~141
Send an HTTP/HTTPS request from the router using /tool/fetch. Response body is returned inline (capped at 64 KB with [TRUNCATED] marker). Use outputFile to save to router filesystem instead. Not read-only: POSTs have side effects and outputFile writes to the router.
| Name | Type | Req | Description |
|---|---|---|---|
| httpData | string | – | Request body for POST |
| method | string | – | HTTP method |
| outputFile | string | – | Save response body to this router file path instead of returning inline |
| routerId | string | – | Router ID; omit to use the default router. |
| url | string | yes | URL to fetch from the router |
No output schema declared.
No examples provided.
get_container_config Get Container Config ~44
Read global container configuration: registry URL, RAM high-water mark, and veth interface.
| Name | Type | Req | Description |
|---|---|---|---|
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
get_dns_settings Get DNS Settings ~48
Read DNS resolver configuration: upstream servers, cache size, cache TTL, and whether remote DNS requests are allowed.
| Name | Type | Req | Description |
|---|---|---|---|
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
get_file_content Get File Content ~73
Read a text file's contents from a MikroTik router. Only suitable for text files — binary files will return garbled content.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Exact file name on the router (e.g. flash/script.rsc) |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
get_log Get Log ~164
Read and filter the system log from a MikroTik router. Supports filtering by topic, message prefix, and a time window (last N minutes) measured against the router's own clock. Entries with unparseable timestamps are included conservatively.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max results to return. |
| offset | integer | – | Pagination offset. |
| prefix | string | – | Substring to match against the log message |
| routerId | string | – | Router ID; omit to use the default router. |
| sinceMinutes | integer | – | Only return entries from the last N minutes (1–1440), measured against the router's clock |
| topics | array | – | Filter entries whose topics field contains any of these strings (e.g. ["firewall", "dhcp"]) |
No output schema declared.
No examples provided.
get_ntp_settings Get NTP Settings ~38
Retrieve NTP client settings from a MikroTik router.
| Name | Type | Req | Description |
|---|---|---|---|
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
get_ovpn_server Get OpenVPN Server ~52
Get the OpenVPN server configuration on a MikroTik router. Throws NOT_FOUND if the OpenVPN package is not installed.
| Name | Type | Req | Description |
|---|---|---|---|
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
get_snmp_settings Get SNMP Settings ~37
Retrieve SNMP settings from a MikroTik router.
| Name | Type | Req | Description |
|---|---|---|---|
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
get_swos_endpoint Get SwOS Endpoint ~113
Fetch and decode a single SwOS '.b' endpoint (link.b, sys.b, poe.b, lacp.b, rstp.b, snmp.b, fwd.b, vlan.b, stats.b, sfp.b, host.b, acl.b, ...) as structured data. Unknown keys are preserved under '_raw'.
| Name | Type | Req | Description |
|---|---|---|---|
| endpoint | string | yes | '.b' endpoint to fetch (see list_swos_endpoints) |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
get_swos_status Get SwOS Status ~86
Retrieve status from a MikroTik SwOS switch (SwOS or SwOS Lite): identity, model, firmware, uptime, per-port link state/speed/duplex, PoE mode/state/power, and SFP modules.
| Name | Type | Req | Description |
|---|---|---|---|
| include | array | – | Which status endpoints to fetch |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
get_system_clock Get System Clock ~55
Read the current date, time, and timezone from a MikroTik router. Focused single-purpose alternative to the clock section in get_system_status.
| Name | Type | Req | Description |
|---|---|---|---|
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
get_system_status Get System Status ~66
Retrieve system status information from a MikroTik router including resource usage, identity, license, routerboard details, health sensors, and clock.
| Name | Type | Req | Description |
|---|---|---|---|
| routerId | string | – | Router ID; omit to use the default router. |
| sections | array | – | Which system information sections to include |
No output schema declared.
No examples provided.
get_upgrade_status Get Upgrade Status ~56
Read the current RouterOS package upgrade status and routerboard firmware versions. Shows installed version, latest available version, update channel, and firmware upgrade availability.
| Name | Type | Req | Description |
|---|---|---|---|
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_address_list_entries List Address List Entries ~73
List firewall address list entries on a MikroTik router. Supports filtering by list name and address.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | – | Filter by address (IP or CIDR) |
| list | string | – | Filter by address list name |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_arp_entries List ARP Entries ~91
List ARP table entries on a MikroTik router.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | – | Filter by IP address (substring match) |
| interface | string | – | Filter by interface (substring match) |
| limit | integer | – | Max results to return. |
| macAddress | string | – | Filter by MAC address (substring match) |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_bgp_peers List BGP Peers ~76
List BGP sessions on a MikroTik router (RouterOS 7+). Returns state, remote AS, prefix counts, and uptime.
| Name | Type | Req | Description |
|---|---|---|---|
| routerId | string | – | Router ID; omit to use the default router. |
| state | string | – | Filter by session state (e.g. established, active, idle) |
No output schema declared.
No examples provided.
list_bridges List Bridges ~59
List bridge interfaces and their port members on a MikroTik router.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max results to return. |
| offset | integer | – | Pagination offset. |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_certificates List Certificates ~75
List certificates on a MikroTik router.
| Name | Type | Req | Description |
|---|---|---|---|
| expired | boolean | – | Filter by expiry status; omit to return all |
| limit | integer | – | Max results to return. |
| name | string | – | Filter by certificate name (substring match) |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_connections List Connections ~114
List active connection tracking entries from the router firewall table. Filters are applied client-side. Useful for diagnosing NAT and firewall behavior.
| Name | Type | Req | Description |
|---|---|---|---|
| dstAddress | string | – | Filter by destination address (substring match) |
| limit | integer | – | Max results to return. |
| protocol | string | – | Filter by protocol (exact match, e.g. tcp, udp, icmp) |
| routerId | string | – | Router ID; omit to use the default router. |
| srcAddress | string | – | Filter by source address (substring match) |
No output schema declared.
No examples provided.
list_container_envs List Container Envs ~64
List container environment variable entries, optionally filtered by container name.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max results to return. |
| name | string | – | Filter by container name (exact match) |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_container_mounts List Container Mounts ~68
List container volume mount definitions with source path, destination path, and mount name.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max results to return. |
| name | string | – | Filter by mount name (exact match) |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_containers List Containers ~40
List RouterOS container instances with status, image, and network information.
| Name | Type | Req | Description |
|---|---|---|---|
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_dhcp_clients List DHCP Clients ~99
List DHCP client configurations on a MikroTik router. Shows which interfaces obtain their IP via DHCP, current status, and assigned address.
| Name | Type | Req | Description |
|---|---|---|---|
| interface | string | – | Filter by interface name (exact match) |
| limit | integer | – | Max results to return. |
| offset | integer | – | Pagination offset. |
| routerId | string | – | Router ID; omit to use the default router. |
| status | string | – | Filter by DHCP client status |
No output schema declared.
No examples provided.
list_dhcp_leases List DHCP Leases ~135
List DHCP leases on a MikroTik router with optional filtering by server, status, lease type (dynamic/static), and MAC address. Supports pagination.
| Name | Type | Req | Description |
|---|---|---|---|
| leaseType | string | – | Filter by lease type (dynamic or static) |
| limit | integer | – | Max results to return. |
| macAddress | string | – | Filter by MAC address (exact match, case-insensitive) |
| offset | integer | – | Pagination offset. |
| routerId | string | – | Router ID; omit to use the default router. |
| server | string | – | Filter by DHCP server name |
| status | string | – | Filter by lease status |
No output schema declared.
No examples provided.
list_dhcp_servers List DHCP Servers ~70
List DHCP servers on a MikroTik router.
| Name | Type | Req | Description |
|---|---|---|---|
| interface | string | – | Filter by interface name (exact match) |
| limit | integer | – | Max results to return. |
| offset | integer | – | Pagination offset. |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_dns_entries List DNS Entries ~87
List static DNS entries on a MikroTik router with optional filtering by name and type.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max results to return. |
| name | string | – | Filter by hostname (partial match) |
| offset | integer | – | Pagination offset. |
| routerId | string | – | Router ID; omit to use the default router. |
| type | string | – | Filter by record type |
No output schema declared.
No examples provided.
list_files List Files ~75
List files on a MikroTik router filesystem. Supports filtering by name and type.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | – | Filter by file name (substring match) |
| routerId | string | – | Router ID; omit to use the default router. |
| type | string | – | Filter by file type (e.g. script, backup, package) |
No output schema declared.
No examples provided.
list_firewall_rules List Firewall Rules ~128
List firewall rules from the filter or nat table on a MikroTik router. Supports filtering by chain and disabled state, with pagination.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | – | Filter rules by chain name (e.g. forward, input, srcnat) |
| disabled | string | – | Filter by disabled state: true, false, or all |
| limit | integer | – | Max results to return. |
| offset | integer | – | Pagination offset. |
| routerId | string | – | Router ID; omit to use the default router. |
| table | string | – | Firewall table to query: filter or nat |
No output schema declared.
No examples provided.
list_interface_lists List Interface Lists ~46
List all interface lists defined on the router.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max results to return. |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_interfaces List Interfaces ~131
List network interfaces on a MikroTik router with optional filtering by type and status. Supports pagination and optional traffic counters.
| Name | Type | Req | Description |
|---|---|---|---|
| includeCounters | boolean | – | Include traffic counters (tx-byte, rx-byte, etc.) |
| limit | integer | – | Max results to return. |
| macAddress | string | – | Filter by MAC address (case-insensitive exact match on mac-address field) |
| offset | integer | – | Pagination offset. |
| routerId | string | – | Router ID; omit to use the default router. |
| status | string | – | Filter by running status |
| type | string | – | Filter by interface type |
No output schema declared.
No examples provided.
list_ip_pools List IP Pools ~78
List IP address pools on a MikroTik router. Supports filtering by name and pagination.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max results to return. |
| name | string | – | Filter by pool name (substring match) |
| offset | integer | – | Pagination offset. |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_ip_services List IP Services ~121
List IP services on a MikroTik router (api, api-ssl, ssh, telnet, www, www-ssl, winbox, ftp) with their port numbers and enabled/disabled status.
| Name | Type | Req | Description |
|---|---|---|---|
| enabled | boolean | – | When true, return only enabled services; when false, only disabled services |
| name | string | – | Filter by service name (api, api-ssl, ssh, telnet, www, www-ssl, winbox, ftp) |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_ipsec_peers List IPSec Peers ~63
List IPSec peers on a MikroTik router.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | – | Filter by remote address (substring match) |
| limit | integer | – | Max results to return. |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_ipsec_policies List IPSec Policies ~79
List IPSec policies on a MikroTik router.
| Name | Type | Req | Description |
|---|---|---|---|
| dstAddress | string | – | Filter by destination address (substring match) |
| limit | integer | – | Max results to return. |
| routerId | string | – | Router ID; omit to use the default router. |
| srcAddress | string | – | Filter by source address (substring match) |
No output schema declared.
No examples provided.
list_log_actions List Log Actions ~78
List RouterOS logging action targets (system/logging/action) with optional type filter.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max results to return. |
| routerId | string | – | Router ID; omit to use the default router. |
| type | string | – | Filter by action type (exact match): memory, disk, remote, echo, email |
No output schema declared.
No examples provided.
list_log_rules List Log Rules ~89
List RouterOS logging rules (system/logging) with optional topic substring and action exact-match filtering.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max results to return. |
| logAction | string | – | Filter by log action target (exact match on action field) |
| routerId | string | – | Router ID; omit to use the default router. |
| topics | string | – | Filter by topics (substring match) |
No output schema declared.
No examples provided.
list_mangle_rules List Mangle Rules ~107
List firewall mangle rules on a MikroTik router in evaluation order. Supports filtering by chain, action, and disabled state.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | – | Filter by mangle action (e.g. mark-routing, mark-connection) |
| chain | string | – | Filter by chain name (e.g. prerouting, forward, postrouting) |
| disabled | boolean | – | Filter by disabled state |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_neighbors List Neighbors ~69
List discovered neighbors (CDP/LLDP/MNDP) on a MikroTik router.
| Name | Type | Req | Description |
|---|---|---|---|
| interface | string | – | Filter by interface name (substring match) |
| limit | integer | – | Max results to return. |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_netwatch_entries List Netwatch Entries ~73
List Netwatch monitoring entries on a MikroTik router.
| Name | Type | Req | Description |
|---|---|---|---|
| host | string | – | Filter by host (substring match) |
| limit | integer | – | Max results to return. |
| routerId | string | – | Router ID; omit to use the default router. |
| status | string | – | Filter by current status |
No output schema declared.
No examples provided.
list_ospf_neighbors List OSPF Neighbors ~81
List OSPF neighbors on a MikroTik router (RouterOS 7+). Returns neighbor state, interface, DR/BDR, and uptime.
| Name | Type | Req | Description |
|---|---|---|---|
| routerId | string | – | Router ID; omit to use the default router. |
| state | string | – | Filter by neighbor state (e.g. full, 2-way, init) |
No output schema declared.
No examples provided.
list_ovpn_clients List OpenVPN Clients ~69
List OpenVPN client interfaces on a MikroTik router. Shows name, remote server, and connection status.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max results to return. |
| offset | integer | – | Pagination offset. |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_packages List Packages ~50
List installed RouterOS packages with version and enabled status.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | – | Filter by package name (exact match) |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
list_ppp_profiles List PPP Profiles ~66
List PPP profiles including the built-in default and default-encryption profiles.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max results to return. |
| name | string | – | Filter by profile name (exact match) |
| routerId | string | – | Router ID; omit to use the default router. |
No output schema declared.
No examples provided.
What is the MikroMCP MCP server?
MikroMCP is an MCP server listed in the public MCP registry as io.github.AliKarami/mikromcp. MCP server for MikroTik RouterOS: typed tools, dry-run, RBAC, audit logs, and rollback. This page covers its npm package (mikromcp).
Is the MikroMCP MCP server safe to use?
MikroMCP scores 94 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the MikroMCP MCP server expose?
MikroMCP exposes 122 tools: get_system_status, list_interfaces, manage_ip_address, list_dhcp_leases, manage_dhcp_lease, and 117 more. Their descriptions and schemas cost roughly 15,117 tokens of context every time the server is loaded.
Is the MikroMCP MCP server still maintained?
MikroMCP is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the MikroMCP MCP server under?
MikroMCP declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.