genieacs-mcp
An MCP server that bridges GenieACS TR-069 ACS instances to LLMs, allowing agents to read device status and perform management actions like rebooting or updating firmware via 7 resources and 12 tools.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
What you can do with it
- Search for devices by tag, model, or firmware using MongoDB-style filters
- Read device parameter trees, tasks, and faults via resources
- Reboot devices, push firmware, or set parameters via tools
- Wake devices with connection requests to trigger tasks
Source and maintenance
Community listingRegistry 0.4.1
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
drumsergio/genieacs-mcp:v0.4.1
oci
drumsergio/genieacs-mcp:v0.4.1 package definition
{
"transport": "stdio",
"identifier": "drumsergio/genieacs-mcp:v0.4.1",
"registryType": "oci",
"environmentVariables": [
{
"name": "ACS_URL",
"format": "string",
"default": "http://genieacs:7557",
"description": "GenieACS NBI URL, without a trailing slash"
},
{
"name": "ACS_USER",
"format": "string",
"description": "GenieACS NBI basic-auth username"
},
{
"name": "ACS_PASS",
"format": "string",
"description": "GenieACS NBI basic-auth password"
},
{
"name": "DEVICE_LIMIT",
"format": "number",
"default": "500",
"description": "Max devices returned by genieacs://devices/list (default 500)"
},
{
"name": "GENIEACS_READ_ONLY",
"format": "boolean",
"default": "false",
"description": "Set to true to serve only the tools that never change a device or the ACS"
},
{
"name": "GENIEACS_TOOLS",
"format": "string",
"description": "Comma-separated tool names to serve; every other tool is left out"
},
{
"name": "ACS_TIMEOUT",
"format": "number",
"default": "30",
"description": "Seconds to wait for one GenieACS NBI request (default 30)"
},
{
"name": "ACS_MAX_RESPONSE_BYTES",
"format": "number",
"default": "4194304",
"description": "Largest GenieACS NBI response the server reads, in bytes (default 4194304)"
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
Cursor configuration
{
"mcpServers": {
"genieacs-mcp-v0-4-1": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ACS_URL=<YOUR_ACS_URL>",
"-e",
"ACS_USER=<YOUR_ACS_USER>",
"-e",
"ACS_PASS=<YOUR_ACS_PASS>",
"-e",
"DEVICE_LIMIT=<YOUR_DEVICE_LIMIT>",
"-e",
"GENIEACS_READ_ONLY=<YOUR_GENIEACS_READ_ONLY>",
"-e",
"GENIEACS_TOOLS=<YOUR_GENIEACS_TOOLS>",
"-e",
"ACS_TIMEOUT=<YOUR_ACS_TIMEOUT>",
"-e",
"ACS_MAX_RESPONSE_BYTES=<YOUR_ACS_MAX_RESPONSE_BYTES>",
"drumsergio/genieacs-mcp:v0.4.1"
],
"env": {
"ACS_URL": "<YOUR_ACS_URL>",
"ACS_USER": "<YOUR_ACS_USER>",
"ACS_PASS": "<YOUR_ACS_PASS>",
"DEVICE_LIMIT": "<YOUR_DEVICE_LIMIT>",
"GENIEACS_READ_ONLY": "<YOUR_GENIEACS_READ_ONLY>",
"GENIEACS_TOOLS": "<YOUR_GENIEACS_TOOLS>",
"ACS_TIMEOUT": "<YOUR_ACS_TIMEOUT>",
"ACS_MAX_RESPONSE_BYTES": "<YOUR_ACS_MAX_RESPONSE_BYTES>"
}
}
}
}Cline
Cline configuration
{
"mcpServers": {
"genieacs-mcp-v0-4-1": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ACS_URL=<YOUR_ACS_URL>",
"-e",
"ACS_USER=<YOUR_ACS_USER>",
"-e",
"ACS_PASS=<YOUR_ACS_PASS>",
"-e",
"DEVICE_LIMIT=<YOUR_DEVICE_LIMIT>",
"-e",
"GENIEACS_READ_ONLY=<YOUR_GENIEACS_READ_ONLY>",
"-e",
"GENIEACS_TOOLS=<YOUR_GENIEACS_TOOLS>",
"-e",
"ACS_TIMEOUT=<YOUR_ACS_TIMEOUT>",
"-e",
"ACS_MAX_RESPONSE_BYTES=<YOUR_ACS_MAX_RESPONSE_BYTES>",
"drumsergio/genieacs-mcp:v0.4.1"
],
"env": {
"ACS_URL": "<YOUR_ACS_URL>",
"ACS_USER": "<YOUR_ACS_USER>",
"ACS_PASS": "<YOUR_ACS_PASS>",
"DEVICE_LIMIT": "<YOUR_DEVICE_LIMIT>",
"GENIEACS_READ_ONLY": "<YOUR_GENIEACS_READ_ONLY>",
"GENIEACS_TOOLS": "<YOUR_GENIEACS_TOOLS>",
"ACS_TIMEOUT": "<YOUR_ACS_TIMEOUT>",
"ACS_MAX_RESPONSE_BYTES": "<YOUR_ACS_MAX_RESPONSE_BYTES>"
}
}
}
}VS Code
VS Code configuration
{
"servers": {
"genieacs-mcp-v0-4-1": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ACS_URL=<YOUR_ACS_URL>",
"-e",
"ACS_USER=<YOUR_ACS_USER>",
"-e",
"ACS_PASS=<YOUR_ACS_PASS>",
"-e",
"DEVICE_LIMIT=<YOUR_DEVICE_LIMIT>",
"-e",
"GENIEACS_READ_ONLY=<YOUR_GENIEACS_READ_ONLY>",
"-e",
"GENIEACS_TOOLS=<YOUR_GENIEACS_TOOLS>",
"-e",
"ACS_TIMEOUT=<YOUR_ACS_TIMEOUT>",
"-e",
"ACS_MAX_RESPONSE_BYTES=<YOUR_ACS_MAX_RESPONSE_BYTES>",
"drumsergio/genieacs-mcp:v0.4.1"
],
"env": {
"ACS_URL": "<YOUR_ACS_URL>",
"ACS_USER": "<YOUR_ACS_USER>",
"ACS_PASS": "<YOUR_ACS_PASS>",
"DEVICE_LIMIT": "<YOUR_DEVICE_LIMIT>",
"GENIEACS_READ_ONLY": "<YOUR_GENIEACS_READ_ONLY>",
"GENIEACS_TOOLS": "<YOUR_GENIEACS_TOOLS>",
"ACS_TIMEOUT": "<YOUR_ACS_TIMEOUT>",
"ACS_MAX_RESPONSE_BYTES": "<YOUR_ACS_MAX_RESPONSE_BYTES>"
}
}
}
}Claude Desktop
Claude Desktop configuration
{
"mcpServers": {
"genieacs-mcp-v0-4-1": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ACS_URL=<YOUR_ACS_URL>",
"-e",
"ACS_USER=<YOUR_ACS_USER>",
"-e",
"ACS_PASS=<YOUR_ACS_PASS>",
"-e",
"DEVICE_LIMIT=<YOUR_DEVICE_LIMIT>",
"-e",
"GENIEACS_READ_ONLY=<YOUR_GENIEACS_READ_ONLY>",
"-e",
"GENIEACS_TOOLS=<YOUR_GENIEACS_TOOLS>",
"-e",
"ACS_TIMEOUT=<YOUR_ACS_TIMEOUT>",
"-e",
"ACS_MAX_RESPONSE_BYTES=<YOUR_ACS_MAX_RESPONSE_BYTES>",
"drumsergio/genieacs-mcp:v0.4.1"
],
"env": {
"ACS_URL": "<YOUR_ACS_URL>",
"ACS_USER": "<YOUR_ACS_USER>",
"ACS_PASS": "<YOUR_ACS_PASS>",
"DEVICE_LIMIT": "<YOUR_DEVICE_LIMIT>",
"GENIEACS_READ_ONLY": "<YOUR_GENIEACS_READ_ONLY>",
"GENIEACS_TOOLS": "<YOUR_GENIEACS_TOOLS>",
"ACS_TIMEOUT": "<YOUR_ACS_TIMEOUT>",
"ACS_MAX_RESPONSE_BYTES": "<YOUR_ACS_MAX_RESPONSE_BYTES>"
}
}
}
}Let your agent find its tools
Find servers like genieacs-mcp from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.