genieacs-mcp is an MCP server for GenieACS, the open-source TR-069 ACS that manages routers, ONTs and other CPE devices. Add it to Claude Desktop, Cursor or any other MCP client and ask in plain words: which devices stopped informing last night, what firmware serial 000003 runs, reboot the ones tagged pilot. The assistant reads and acts through your GenieACS NBI with 7 resources and 12 tools; one Go binary, no database of its own.
Features
- Find devices the way you would ask a colleague: by tag, model, firmware, last inform, or any TR-069 parameter (
search_devicestakes a MongoDB-style filter). - Read a device's full parameter tree, its tasks and its faults, plus the presets, provisions and files on the ACS, as resources (
genieacs://device/{id},genieacs://devices/list, ...). - Reboot a device, push firmware to it, refresh or set a parameter, or wake it with a connection request, from a chat.
- Tag devices, create or delete presets and provisions, and delete or retry tasks, so the assistant can fix what it finds.
- Every tool description says what it does, its limits and an example, so clients pick the right one without a prompt from you.
- Read versus act:
search_devices,get_parameterand the seven resources only read; the other ten tools queue a task on a device or change the ACS. - No read-only mode: point it at an ACS you are willing to let an assistant act on, and keep your client's tool-approval prompts on.
- Safe on a laptop: the HTTP transport listens on loopback only unless you set an address and a bearer token, and checks
HostandOriginagainst DNS rebinding. - One static Go binary for Linux, macOS and Windows on amd64 and arm64, also as an npm package (
npx genieacs-mcp) and a Docker image.






