Skip to main content
Glama
macbeth76

mcp-router

by macbeth76

mcp-router

TypeScript MCP server for Linksys router control with a read-only-first tool surface.

Full operational reference (network path, credentials location, deployment status, open issues): docs/linksys-router.md in the BlahBlahBlah repo.

Features

  • router_get_details: core/GetDeviceInfo

  • router_list_devices: devicelist/GetDevices

  • router_jnap_read: generic read-only JNAP actions (Get* / Check* only)

  • router_reboot: optional write action gated by ROUTER_ENABLE_WRITES=true and confirm=true

Related MCP server: openwrt-mcp

Setup (Local)

  1. Copy env file:

    cp .env.example .env
  2. Fill .env:

    • ROUTER_URL (for example http://192.168.76.1)

    • ROUTER_USERNAME (usually admin)

    • ROUTER_PASSWORD

    • ROUTER_TIMEOUT_MS (optional, default 10000)

    • ROUTER_ENABLE_WRITES (false by default)

  3. Confirm the runtime is on the same trusted LAN as the router before calling JNAP. The Linksys device is reachable only from a host connected to the 192.168.76.0/24 segment (for example Dragon's USB Ethernet path), not from a generic off-LAN Windows host.

  4. Install and build:

    pnpm install
    pnpm build
  5. Run:

    pnpm dev

Deployment to Dragon

Option 1: Systemd Service

./deploy-dragon.sh

This will:

  1. Clone the repo to /opt/mcp-router

  2. Install dependencies with pnpm

  3. Build the TypeScript

  4. Install and start the systemd service

Check logs:

journalctl -u mcp-router -f

Option 2: Docker Compose

docker-compose up -d

The service will restart automatically on failure.

Set the ROUTER_PASSWORD environment variable before running:

export ROUTER_PASSWORD="<your-password>"
docker-compose up -d

Configuration

Environment Variables

  • ROUTER_URL: HTTP URL to the router (e.g., http://192.168.76.1)

  • ROUTER_USERNAME: JNAP username (default: admin)

  • ROUTER_PASSWORD: JNAP password (required)

  • ROUTER_TIMEOUT_MS: Request timeout in milliseconds (default: 10000, min: 1000)

  • ROUTER_ENABLE_WRITES: Enable write operations (default: false)

Security Notes

  • Keep write operations disabled by default

  • Use router_jnap_read for discovery and status checks before adding new mutating tools

  • Store credentials in .env (local) or environment variables (deployment)

  • Credentials are sent via Basic Auth over HTTP — ensure the router is on a trusted LAN only

Testing

Run the included test script:

pnpm tsx test-router.ts

This validates connectivity and runs sample read-only operations against the router.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables automation and management of TP-Link BE3600 routers through browser automation, supporting port forwarding configuration, network status monitoring, and device management without reverse-engineering the router's encryption.
    1
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Provides read-only (with limited address-list management) access to MikroTik RouterOS routers, enabling monitoring of system info, interfaces, DHCP leases, firewall rules, and more via natural language.
    1
    MIT
  • F
    license
    B
    quality
    A
    maintenance
    Enables AI agents to manage Keenetic routers through the same RCI API used by the router's web interface, working directly over the local network without cloud involvement. It supports reading device statuses and executing configuration changes, with confirm, dry-run, and destructive-action safeguards.
    23
    -

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/macbeth76/mcp-router'

If you have feedback or need assistance with the MCP directory API, please join our Discord server