MikroCLAW
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MIKROTIK_HOST | Yes | IP/hostname router, required. | |
| MIKROTIK_PORT | No | Port REST. Default mengikuti USE_TLS. | |
| MIKROTIK_USER | No | User RouterOS (disarankan user khusus least-privilege). | admin |
| MIKROTIK_TIMEOUT | No | Timeout request (detik). | 10 |
| MIKROTIK_USE_TLS | No | true → HTTPS (www-ssl), false → HTTP. | true |
| MIKROTIK_PASSWORD | No | Password user tersebut. | |
| MIKROTIK_VERIFY_TLS | No | Verifikasi sertifikat TLS. false cocok untuk self-signed. | false |
| MIKROCLAW_ALLOW_WRITE | No | Gerbang keamanan. true mengaktifkan tool yang mengubah konfigurasi. | false |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| system_resourceA | Info sistem: versi RouterOS, CPU, memori, uptime, board, arsitektur. |
| system_identityA | Nama/identitas perangkat RouterOS. |
| list_interfacesA | Daftar semua interface beserta status running/disabled dan statistik. |
| list_ip_addressesA | Daftar alamat IP yang terpasang di tiap interface. |
| dhcp_leasesB | Daftar DHCP lease (klien yang dapat IP dari router). |
| arp_tableB | Tabel ARP (pemetaan IP <-> MAC yang terlihat router). |
| firewall_filter_rulesB | Aturan firewall filter (chain input/forward/output). |
| firewall_nat_rulesB | Aturan NAT (srcnat/dstnat), mis. masquerade & port forward. |
| routing_tableC | Tabel routing IP (route aktif & statis). |
| simple_queuesB | Daftar simple queue — pembatasan bandwidth per IP/target. |
| address_listsB | Isi semua firewall address-list (grup IP yang dirujuk aturan firewall). |
| dns_settingsC | Konfigurasi DNS router: server upstream, cache, allow-remote-requests. |
| dhcp_serversB | Daftar DHCP server beserta interface & address-pool-nya. |
| ppp_activeA | Sesi PPP aktif (PPPoE/L2TP/PPTP/SSTP) — siapa yang sedang dial-in. |
| bridge_hostsA | Tabel host bridge (MAC yang dipelajari tiap port bridge). |
| neighborsB | Perangkat tetangga terdeteksi (MNDP/CDP/LLDP) — router/switch di sekitar. |
| system_healthA | Sensor perangkat keras: suhu, tegangan, kipas (jika didukung board). |
| netwatchA | Daftar host yang dipantau Netwatch beserta status up/down. |
| router_usersB | Daftar user RouterOS beserta grup/hak aksesnya. |
| wifi_interfacesB | Daftar interface WiFi. Auto-deteksi wifiwave2 (/interface/wifi) atau legacy (/interface/wireless). |
| wifi_registrationsA | Klien WiFi yang sedang terhubung (registration table). Auto wifiwave2/legacy. |
| wireguard_interfacesA | Daftar interface WireGuard (VPN) beserta public key & listen-port. |
| wireguard_peersA | Daftar peer WireGuard beserta allowed-address & handshake terakhir. |
| ppp_secretsA | Daftar akun PPP (PPPoE/VPN): name, service, profile. Catatan: berisi kredensial. |
| ip_poolsA | Daftar IP pool (rentang IP untuk DHCP/PPP). |
| dns_staticA | Entri DNS statis (A/CNAME/dll yang dilayani router). |
| ntp_clientB | Status & konfigurasi NTP client (sinkronisasi waktu). |
| schedulersA | Daftar scheduler (tugas terjadwal RouterOS). |
| scriptsA | Daftar script tersimpan di RouterOS. |
| vlansA | Daftar interface VLAN beserta vlan-id & interface induk. |
| ip_servicesA | Daftar service IP (api, ssh, www, telnet, winbox) + status & port. |
| dhcp_clientB | Status DHCP client (mis. IP WAN yang didapat dari ISP) per interface. |
| ip_cloudC | IP publik & DDNS MikroTik (/ip/cloud) — penting untuk remote access. |
| system_packagesC | Paket RouterOS terpasang (nama, versi, enabled/disabled). |
| routerboard_infoA | Info RouterBOARD: model, serial, firmware terpasang vs tersedia. |
| active_sessionsA | User yang sedang login ke router (via, alamat, kapan) — audit keamanan. |
| list_filesA | Daftar file di penyimpanan router (backup, export, dll) + ukuran & waktu. |
| firewall_connectionsB | Connection tracking aktif (src/dst, protokol, state) — untuk troubleshooting. |
| bridge_portsB | Pemetaan port ke bridge (interface mana ikut bridge mana). |
| certificatesA | Daftar sertifikat di router beserta masa berlaku (audit kedaluwarsa). |
| dns_cacheA | Isi cache DNS resolver router (entri yang sedang di-cache). |
| dhcp_networksB | Konfigurasi network DHCP: gateway, DNS, netmask yang ditawarkan ke klien. |
| firewall_mangleB | Aturan firewall mangle (marking koneksi/paket untuk QoS/policy routing). |
| queue_treeC | Queue tree (pembatasan bandwidth hierarkis berbasis mark). |
| ppp_profilesC | Profil PPP (rate-limit, address pool, DNS untuk akun PPPoE/VPN). |
| user_groupsB | Grup hak akses RouterOS beserta policy-nya (audit keamanan). |
| ethernet_portsB | Detail port ethernet: link speed, auto-negotiation, status fisik. |
| ipsec_peersC | Konfigurasi peer IPsec (alamat, exchange-mode, profil). |
| ipsec_active_peersA | Peer IPsec yang sedang aktif (tunnel yang sedang berjalan). |
| ipv6_addressesB | Daftar alamat IPv6 yang terpasang per interface. |
| ipv6_routesB | Tabel routing IPv6 (route aktif & statis). |
| ipv6_firewall_filterB | Aturan firewall filter IPv6. |
| ipv6_neighborsB | Tabel neighbor IPv6 (NDP) — pemetaan IPv6 <-> MAC. |
| hotspot_serversA | Daftar server hotspot beserta interface & profilnya. |
| hotspot_activeA | User hotspot yang sedang login (aktif). |
| hotspot_usersA | Daftar akun user hotspot (name, profil, kuota). |
| capsman_remote_capsA | Daftar CAP (AP) yang dikelola CAPsMAN. Auto legacy (/caps-man) atau wifiwave2. |
| capsman_registrationsB | Klien yang terhubung lewat CAPsMAN. Auto legacy atau wifiwave2. |
| wifi_radiosA | Daftar radio WiFi fisik (wifiwave2). |
| bgp_sessionsC | Sesi BGP (status/peer) — RouterOS v7. |
| ospf_neighborsB | Neighbor OSPF beserta state adjacency — RouterOS v7. |
| radius_serversA | Daftar server RADIUS yang dikonfigurasi (untuk AAA). |
| system_historyA | Riwayat perubahan konfigurasi yang dapat di-undo (/system/history). |
| system_licenseA | Info lisensi (level/CHR) perangkat. |
| recent_logsB | Ambil log terbaru dari RouterOS. Args: limit: jumlah baris terakhir yang dikembalikan (default 50). |
| rest_getA | Generic GET read-only ke path REST apa pun untuk hal yang belum punya tool khusus. Contoh path: 'interface/wireless', 'ip/dns', 'system/clock', 'ppp/active'. Hanya membaca; tidak mengubah konfigurasi. Args: path: path REST tanpa awalan /rest, mis. 'ip/dns'. |
| pingB | Jalankan ping dari router ke sebuah alamat (diagnostik konektivitas). Args: address: host/IP tujuan, mis. '8.8.8.8'. count: jumlah paket (default 3). |
| tracerouteB | Traceroute dari router ke sebuah alamat (jejak hop). Bisa makan beberapa detik. Args: address: host/IP tujuan, mis. '1.1.1.1'. count: jumlah probe per putaran sebelum berhenti (default 3). |
| interface_traffic_liveB | Ambil satu sampel throughput real-time interface (rx/tx bit-per-detik). Args: interface: nama interface, mis. 'ether1'. |
| check_for_updatesA | Cek ketersediaan update RouterOS dari channel saat ini (menghubungi server MikroTik). Tidak mengubah konfigurasi; mengembalikan versi terpasang & versi terbaru bila ada. |
| set_interface_enabledA | Aktif/nonaktifkan sebuah interface. BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: interface_id: id internal RouterOS (".id", mis. '*1') atau nama interface. enabled: True untuk mengaktifkan, False untuk menonaktifkan. |
| add_firewall_dropA | Tambah aturan firewall untuk DROP trafik dari src_address. BUTUH ALLOW_WRITE. Args: src_address: IP/subnet sumber yang akan diblok, mis. '10.0.0.5'. chain: chain firewall (default 'forward'). comment: catatan pada aturan. |
| add_address_list_entryA | Tambah IP/subnet ke sebuah firewall address-list. BUTUH MIKROCLAW_ALLOW_WRITE=true. Cocok untuk blokir/izin massal: satu aturan firewall cukup merujuk ke list ini. Args: address: IP/subnet, mis. '10.0.0.5' atau '192.168.10.0/24'. address_list: nama list tujuan, mis. 'blocked'. comment: catatan pada entri. timeout: durasi auto-hapus (mis. '1h', '30m'); kosong = permanen. |
| delete_firewall_ruleA | Hapus satu aturan firewall filter berdasarkan id. BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: rule_id: nilai '.id' aturan (mis. '*5'); ambil dulu dari firewall_filter_rules. |
| set_firewall_rule_enabledA | Aktif/nonaktifkan satu aturan firewall filter. BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: rule_id: nilai '.id' aturan (mis. '*5'). enabled: True mengaktifkan, False menonaktifkan. |
| add_simple_queueB | Tambah simple queue untuk membatasi bandwidth target. BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: name: nama queue, mis. 'limit-tamu'. target: IP/subnet/interface target, mis. '192.168.88.50/32'. max_limit: batas upload/download 'tx/rx', mis. '5M/10M'. |
| create_backupA | Buat file backup konfigurasi (.backup) di penyimpanan router. BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: name: nama file backup (tanpa ekstensi). |
| reboot_routerA | Reboot router SEKARANG. Operasi mengganggu — BUTUH MIKROCLAW_ALLOW_WRITE=true. Koneksi ke router akan terputus sementara saat proses restart berlangsung. |
| add_dns_staticB | Tambah entri DNS statis (A record: name -> address). BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: name: nama host, mis. 'nas.lan'. address: IP tujuan, mis. '192.168.88.10'. ttl: time-to-live, mis. '1d', '1h'. |
| add_ppp_secretB | Tambah akun PPP (PPPoE/VPN). BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: name: username akun. password: password akun. service: jenis service ('any','pppoe','l2tp','pptp','sstp','ovpn'). profile: nama PPP profile (default 'default'). |
| add_wireguard_peerA | Tambah peer WireGuard ke sebuah interface. BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: interface: nama interface WireGuard, mis. 'wg0'. public_key: public key milik peer. allowed_address: subnet yang diizinkan, mis. '10.10.0.2/32'. endpoint_address: (opsional) alamat endpoint peer. endpoint_port: (opsional) port endpoint peer. |
| set_ip_service_enabledA | Aktif/nonaktifkan sebuah IP service (mis. matikan telnet/ftp). BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: service_id: '.id' atau nama service (mis. 'telnet'); lihat ip_services. enabled: True mengaktifkan, False menonaktifkan. |
| add_nat_ruleA | Tambah aturan NAT (port-forward / masquerade). BUTUH MIKROCLAW_ALLOW_WRITE=true. Contoh port-forward (TCP 8080 publik -> 192.168.88.10:80): chain='dstnat', action='dst-nat', protocol='tcp', dst_port='8080', to_addresses='192.168.88.10', to_ports='80' Contoh masquerade WAN: chain='srcnat', action='masquerade', out_interface='ether1' Args: chain: 'dstnat' atau 'srcnat'. action: mis. 'dst-nat', 'src-nat', 'masquerade'. protocol/dst_port/to_addresses/to_ports/src_address/dst_address/ in_interface/out_interface: opsional, isi sesuai kebutuhan. comment: catatan pada aturan. |
| add_static_routeA | Tambah route statis. BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: dst_address: subnet tujuan, mis. '10.20.0.0/24' atau '0.0.0.0/0' (default route). gateway: gateway/next-hop, mis. '192.168.88.1' atau nama interface. distance: (opsional) administrative distance, mis. '1'. comment: catatan pada route. |
| add_static_dhcp_leaseA | Pin IP statis ke sebuah MAC (static DHCP lease). BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: address: IP yang dipatok, mis. '192.168.88.50'. mac_address: MAC klien, mis. 'AA:BB:CC:DD:EE:FF'. server: (opsional) nama DHCP server; lihat dhcp_servers. comment: catatan pada lease. |
| assign_ip_addressA | Pasang IP address (CIDR) ke sebuah interface. BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: address: IP dengan prefix, mis. '192.168.50.1/24'. interface: nama interface, mis. 'bridge1' atau 'ether2'. comment: catatan. |
| set_identityA | Ganti nama/identitas router. BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: name: nama baru perangkat. |
| set_dns_serversB | Set server DNS upstream router. BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: servers: daftar IP dipisah koma, mis. '1.1.1.1,8.8.8.8'. allow_remote_requests: (opsional) jadikan router sebagai DNS resolver LAN. |
| remove_address_list_entryA | Hapus entri firewall address-list berdasarkan id. BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: entry_id: nilai '.id' entri; ambil dulu dari address_lists. |
| add_hotspot_userB | Tambah akun user hotspot. BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: name: username hotspot. password: password (opsional; kosong = tanpa password). profile: nama user-profile hotspot. comment: catatan. |
| add_ipv6_addressA | Pasang alamat IPv6 ke sebuah interface. BUTUH MIKROCLAW_ALLOW_WRITE=true. Args: address: IPv6 dengan prefix, mis. '2001:db8::1/64'. interface: nama interface, mis. 'bridge1'. comment: catatan. |
| rest_writeA | Operasi write generic (PUT/PATCH/DELETE/POST). BUTUH MIKROCLAW_ALLOW_WRITE=true. Untuk operasi lanjutan yang belum punya tool khusus. Gunakan hati-hati. Args: method: 'PUT' (tambah), 'PATCH' (ubah by id), 'DELETE' (hapus by id), 'POST' (command). path: path REST tanpa /rest, mis. 'ip/firewall/filter' atau 'ip/firewall/filter/*5'. body: payload JSON (opsional, untuk PUT/PATCH/POST). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Syamsuddin/MikroCLAW'
If you have feedback or need assistance with the MCP directory API, please join our Discord server