router-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ROUTER_KEY | No | Path to SSH private key for key-based authentication. | |
| ROUTER_HOST | No | Router hostname or IP address (e.g., 192.168.1.1). | |
| ROUTER_PORT | No | SSH port (default 22). | |
| ROUTER_USER | No | SSH username (e.g., root). | |
| ROUTER_ADAPTER | No | Adapter type: openwrt or mock. Defaults to openwrt if ROUTER_HOST is set, else mock. | |
| ROUTER_PASSWORD | No | SSH password. Prefer using ROUTER_PASSWORD environment variable over --password for security. | |
| ROUTER_WAN_IFACE | No | WAN interface name (e.g., eth0.2, pppoe-wan). | |
| ROUTER_ALLOW_EXEC | No | Set to '1' or 'true' to enable the run_command tool. | |
| ROUTER_ALLOW_WRITE | No | Set to '1' or 'true' to enable write operations (set_wifi, reboot). |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| router_statusA | Get router identity and health: model, firmware, hostname, uptime, load average and memory. |
| list_devicesA | List clients known to the router (DHCP leases plus wireless associations): MAC, IP, hostname, signal (dBm) and interface. |
| list_wifi_networksA | List configured wireless networks (SSIDs) with their id, enabled state, channel, band and encryption. Use the id with set_wifi. |
| wan_infoA | Get the upstream/WAN connection: up state, protocol, public IP, gateway and uptime. |
| set_wifiA | Modify an existing wireless network identified by its id (from list_wifi_networks). Any subset of fields may be supplied. Changes are committed and the radios reloaded. |
| reboot_routerA | Reboot the router. The connection will drop and the router will be unreachable for ~1-2 minutes. |
| run_commandA | Run an arbitrary shell command on the router and return its output. Powerful and dangerous — only enabled when the operator started the server with exec permission. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 7 tools
Each tool has a clearly distinct purpose: listing clients, listing WiFi networks, rebooting, system status, arbitrary commands, modifying WiFi, and WAN info. No overlap or ambiguity.
Most tools use verb_noun (list_devices, reboot_router, run_command, set_wifi) while router_status and wan_info use noun_noun. This is a minor inconsistency, but the pattern is still predictable overall.
7 tools is well-scoped for a router management server. Each tool covers a fundamental operation, neither too few nor too many.
Covers core router operations (clients, WiFi, reboot, status, WAN), but lacks a create_wifi tool for adding new networks. The run_command provides a fallback, but its restriction and danger limit completeness.