Skip to main content
Glama

OpenWrt MCP Server

This is a Model Context Protocol (MCP) server that allows you to interact with an OpenWrt router via SSH.

Prerequisites

  • Node.js (v18 or higher)

  • SSH access to your OpenWrt router (hostname/IP, username, and password or private key)

Related MCP server: OpenWRT SSH MCP Server

Setup

  1. Configure: Copy .env.example to .env and fill in your router details.

    cp .env.example .env

    Edit .env:

    ROUTER_HOST=192.168.1.1
    ROUTER_USER=root
    ROUTER_PASSWORD=your_password
    # Or use SSH_PRIVATE_KEY
  2. Build:

    npm run build

Usage with MCP Client (e.g. Claude Desktop)

Add the following to your MCP client configuration (e.g., claude_desktop_config.json):

{
  "mcpServers": {
    "openwrt": {
      "command": "node",
      "args": ["/path/to/openwrt-mcp-server/dist/index.js"]
    }
  }
}

Make sure to replace /path/to/openwrt-mcp-server with the actual absolute path to this directory.

Available Tools

  • execute_command: Execute arbitrary shell commands on the router.

  • get_system_info: Get uptime, memory usage, and CPU info.

  • read_file: Read a text file from the router.

  • write_file: Write content to a file on the router.

  • list_interfaces: List network interfaces.

  • change_file_permissions: Change file permissions (chmod).

  • change_file_owner: Change file owner/group (chown).

Security Note

This server allows arbitrary command execution on your router. Ensure it is only used by trusted clients and stored securely.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    Related MCP Connectors

    Related MCP Servers