nable-rmm-mcp
nable-rmm-mcp
N-able RMM servidor MCP — expone la API de extracción de datos de N-able RMM como herramientas MCP.
Nota sobre la nomenclatura: esta integración se llama "N-able RMM" en app.mspbots.ai (
sys_integration.subject_code = SOLARWIND— originalmente era SolarWinds RMM). La documentación pública para desarrolladores de N-able llama al mismo producto "N-sight" (https://developer.n-able.com/n-sight/docs/...). Es un producto diferente de N-able N-Central, que es una integración separada en app.mspbots.ai con su propia API. Este servidor solo envuelve N-sight/N-able RMM.
Descripción general
Este servidor implementa el Model Context Protocol (transporte Streamable HTTP/SSE) y envuelve la API de N-sight (la API detrás de la integración "N-able RMM"). Sigue el Vendor MCP Service SOP de MSPbots: sin estado, sin credenciales almacenadas, autenticación por encabezado en cada solicitud.
La API subyacente se autentica mediante un parámetro de consulta apikey y devuelve XML. Este servidor nunca almacena esa clave: el llamador la pasa en cada solicitud mediante un encabezado, y cada respuesta de herramienta es el XML convertido a JSON para facilitar la lectura.
Related MCP server: N-central MCP Server
Inicio rápido
Docker (recomendado)
docker compose up --buildEl servidor se inicia en http://localhost:8080.
Local (uv)
uv sync
python -m nable_rmm_mcpComprobación de salud
curl http://localhost:8080/health
# {"status": "ok"}No se requiere token para el endpoint de salud.
Parámetros de autenticación
Cada solicitud a /mcp debe incluir los siguientes encabezados HTTP. Los nombres de los encabezados reflejan los campos del formulario de integración "N-able RMM" existente en app.mspbots.ai (API Token / URL).
Encabezado | Tipo | Obligatorio | Valor por defecto | Valores enumerados | Descripción del campo | Ejemplo |
| string | Obligatorio | Ninguno | Ninguno (texto libre) | Clave de API de N-able RMM, generada en Settings > General Settings > API > Generate. Si la clave está restringida a un grupo de clientes, la llamada solo devuelve los datos de los clientes de ese grupo. |
|
| string | Opcional | Variable de entorno | Ver la lista de 11 servidores regionales a continuación | N-able RMM se divide en 11 servidores independientes según la región de la cuenta; si no se envía este encabezado, se usa el valor por defecto de la variable de entorno; cuando la puerta de enlace atiende a inquilinos de varias regiones, se sobrescribe por solicitud. |
|
Los 11 valores enumerados de X-Nable-Server (región → URL base):
Región | URL base |
Américas (predeterminado) |
|
Asia |
|
Australia |
|
Europa |
|
Francia |
|
France1 |
|
Alemania |
|
Irlanda |
|
Polonia |
|
Reino Unido |
|
Estados Unidos |
|
La ausencia de X-Nable-Api-Token devuelve 401 Unauthorized. N-able RMM también limita las llamadas automatizadas a 60 solicitudes/minuto por clave; este servidor no aplica limitación por ti, así que espacia las llamadas masivas en consecuencia.
Variables de entorno
Variable | Valor por defecto | Descripción |
|
| Puerto de escucha |
|
| Host de escucha |
|
| Servidor regional predeterminado; se puede sobrescribir por solicitud con |
Endpoint MCP
POST http://localhost:8080/mcpConecta tu cliente MCP con:
Transporte:
http(Streamable HTTP / SSE)Encabezados:
X-Nable-Api-Token: <api_key>(obligatorio),X-Nable-Server: <base_url>(opcional)
Lista de herramientas
16 herramientas, que cubren la referencia completa de la API pública de N-sight más los 4 endpoints ya en uso en producción en la integración "N-able RMM" de app.mspbots.ai (Device Monitoring Details, Drive Space History, Patch, Performance History).
Clientes y sitios
Herramienta | Función | Parámetros |
| Lista todos los clientes visibles para esta clave de API |
|
| Lista todos los sitios de un cliente |
|
| Crea un cliente (operación de escritura) |
|
| Crea un sitio dentro de un cliente (operación de escritura) |
|
Dispositivos
Herramienta | Función | Parámetros |
| Lista los dispositivos de todos los sitios de un cliente por tipo de dispositivo |
|
| Lista los servidores de un sitio y su estado en línea/de comprobación |
|
| Lista las estaciones de trabajo de un sitio y su estado en línea/de comprobación |
|
| Lista los activos sin agente (descubiertos por escaneo) de un sitio (N-able ha marcado esta función como obsoleta) |
|
| Obtiene la información de monitoreo detallada de un solo dispositivo |
|
Comprobaciones, parches y rendimiento
Herramienta | Función | Parámetros |
| Lista las comprobaciones que fallan actualmente |
|
| Lista todas las comprobaciones configuradas en un dispositivo |
|
| Obtiene la configuración detallada de una sola comprobación (la estructura varía según el tipo de comprobación/SO) |
|
| Lista los registros de outage de un dispositivo (abiertos o cerrados en los últimos 61 días) |
|
| Historial de comprobación de espacio en disco (basado en list_checks filtrado por check_type 1003/1004; N-sight no tiene un servicio independiente) |
|
| Lista todos los parches de un dispositivo con su estado/gravedad |
|
| Métricas de rendimiento históricas del dispositivo (ancho de banda/disco/CPU/memoria/tarjeta de red) |
|
Ejemplo de prueba
Lista todos los servidores de un sitio:
{
"method": "tools/call",
"params": {
"name": "nable_rmm_get_servers",
"arguments": { "siteid": 12345 }
}
}Equivalente curl contra el servidor en ejecución (endpoint MCP HTTP streamable):
curl -X POST http://localhost:8080/mcp \
-H "Content-Type: application/json" \
-H "X-Nable-Api-Token: <api_key>" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "nable_rmm_get_servers",
"arguments": { "siteid": 12345 }
}
}'Forma esperada de un resultado correcto (la respuesta XML subyacente, convertida a JSON; campos abreviados):
{
"content": [
{
"type": "text",
"text": "{\n \"created\": \"2026-03-15T10:00:00+00:00\",\n \"host\": \"...\",\n \"status\": \"OK\",\n \"items\": {\n \"server\": [ { \"serverid\": \"9001\", \"name\": \"DC01\", \"online\": \"1\", \"status_247\": \"5\", \"os\": \"Windows Server 2022\" } ]\n }\n}"
}
]
}Referencia de la API
Verificado con una cuenta real
Las 14 herramientas de lectura se han probado de extremo a extremo contra una cuenta real de N-able RMM (región EE. UU.) y devolvieron datos reales, incluidos casos límite que la documentación pública de N-able dejaba ambiguos:
El parámetro
intervaldenable_rmm_get_performance_historyes obligatorio (no opcional como sugería el ejemplo de la documentación) y solo acepta15o60; confirmado mediante el error de validación de la propia API (`Invalid "interval": must
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables interaction with Ubiquiti UISP API for managing network devices, sites, and monitoring through dynamically generated read-only tools.1MIT
- AlicenseBqualityCmaintenanceExposes N-able N-central REST API as MCP tools for managing devices, organizations, users, and more, with support for read-only, write, and full write modes.825MIT
- AlicenseNot gradedqualityCmaintenanceEnables interaction with the SuperOps.ai PSA/RMM platform for managing clients, tickets, assets, and technicians via GraphQL API.Apache 2.0
- AlicenseBqualityCmaintenanceComprehensive read/write access to the Datto RMM API v2, enabling management of devices, sites, alerts, audits, jobs, variables, filters, and activity logs through 46 tools.46MIT
Related MCP Connectors
Access the Notra API for posts, brand identities, integrations, schedules, and GEO.
Search, document and execute authenticated API calls across 700+ apps via one MCP server
API Ninjas MCP — wraps the multi-endpoint API Ninjas data API (api-ninjas.com)
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/MSPbotsAI/nable-rmm-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server