connectwise-asio-mcp
connectwise-asio-mcp
Servidor MCP de ConnectWise Asio — expone las ConnectWise Platform APIs (la "API actual" detrás de ConnectWise Asio, anteriormente SolarWinds MSP/RMM adyacente a N-central) como herramientas MCP.
Nota sobre el nombre: app.mspbots.ai llama a esta integración "ConnectWise Asio" (
sys_integration.subject_code = CWASIO). Es un producto distinto de ConnectWise Command (Continuum), ConnectWise Manage (PSA) y ConnectWise Automate; cada uno tiene su propio servidor MCP en esta flota. La API subyacente se denomina oficialmente "ConnectWise Platform APIs" en su especificación OpenAPI (developer.connectwise.com— documento "REST API" en Products > ConnectWise Platform > Platform Vendors > APIs and Callbacks).
Descripción general
Este servidor implementa el Model Context Protocol (transporte Streamable HTTP/SSE) y envuelve las ConnectWise Platform APIs — 25 herramientas en 5 categorías (devices, companies_contacts, custom_fields, patching, automation), reducida a los 23 endpoints que MSPbots tiene realmente configurados más un CRUD central mínimo (ver la Lista de herramientas más abajo; originalmente una compilación de API completa con 107 operaciones en 24 categorías de tags). Sigue el Vendor MCP Service SOP de MSPbots: sin estado, sin credenciales almacenadas, autenticación por cabecera en cada solicitud.
La API subyacente se autentica mediante OAuth2 Client Credentials. Este servidor no realiza el intercambio de tokens por sí mismo — recibe un token de acceso bearer ya obtenido por solicitud (igual que otras integraciones con flujo OAuth, p. ej. Microsoft Graph, se gestionan en esta flota de MCP de MSPbots: el gateway genera/renueva el token a partir de client_id/client_secret/scope, y solo el token resultante llega a este servidor).
Related MCP server: mcp-connectwise-psa
Inicio rápido
Docker (recomendado)
docker compose up --buildEl servidor se inicia en http://localhost:8080.
Local (uv)
uv sync
python -m connectwise_asio_mcpComprobación de salud
curl http://localhost:8080/health
# {"status": "ok"}No se requiere ningún token para el endpoint de salud.
Parámetros de autorización (Autenticación)
Toda solicitud a /mcp debe incluir las siguientes cabeceras HTTP:
Cabecera | Tipo | Obligatorio | Valor por defecto | Valores enumerados | Descripción del campo | Ejemplo |
| string | Obligatorio | Ninguno | Ninguno (texto libre) | Token de acceso OAuth2 de tipo bearer, obtenido previamente y renovado por el llamador (Agent Platform / gateway ascendente) mediante |
|
| string | Opcional | Variable de entorno |
| ConnectWise Asio utiliza 3 servidores independientes según la región de la cuenta (el prefijo del Client ID 0e30=NA/0e31=EU/0e32=AU permite determinar la región); sin esta cabecera se usa el valor por defecto de la variable de entorno, y el gateway lo sobrescribe por solicitud cuando atiende a inquilinos de varias regiones. |
|
La ausencia de X-ConnectWise-Asio-Token devuelve 401 Unauthorized.
Variables de entorno
Variable | Valor por defecto | Descripción |
|
| Puerto de escucha |
|
| Host de escucha |
|
| Servidor regional por defecto; se puede sobrescribir por solicitud con |
Endpoint MCP
POST http://localhost:8080/mcpConecte su cliente MCP con:
Transporte:
http(Streamable HTTP / SSE)Cabeceras:
X-ConnectWise-Asio-Token: <access_token>(obligatoria),X-ConnectWise-Asio-Base-Url: <base_url>(opcional)
Lista de herramientas
25 herramientas, reducidas de una compilación original de API completa con 104 herramientas (2026-08-04). La configuración de integración almacenada por MSPbots para este proveedor llama a 23 endpoints en 6 categorías de recursos subyacentes (dispositivos/endpoints, empresas, sitios, campos personalizados, parcheado, automatización) — cada uno de esos 23 endpoints configurados (incluidas las variantes de ruta v1/v2 separadas, que aquí convergen en la misma herramienta) corresponde a una herramienta conservada más abajo, marcada con el nombre del endpoint que le corresponde. Todo lo demás de la compilación original de 104 herramientas (Tickets — la categoría más grande, con 24 herramientas; Política/Grupo de políticas/Paquete; Mapeo; Alertas e incidentes; Panel de copias de seguridad; Varios — 6 categorías, ~79 herramientas) se eliminó por no ser utilizado por MSPbots. Si más adelante se necesita alguna categoría eliminada, la especificación OpenAPI del proveedor (enlazada más abajo) sigue documentando sus operaciones exactas y se pueden volver a añadir de la misma manera en que se generaron las herramientas conservadas.
Brecha conocida arrastrada de la compilación original: MSPbots configuró dos endpoints — "ConnectWise Asio Suspension" (GET /v2/alerting/suspensions) y "ConnectWise Asio Suspension Details" (GET /v2/alerting/suspensions/{ruleid}) — que no tienen ninguna herramienta correspondiente en este servidor (la categoría alerting de la compilación original de 104 herramientas solo implementó operaciones de crear, actualizar, eliminar y publicar incidentes, nunca una lectura GET de suspensiones). Esto es anterior al recorte y no fue introducido por él; se señala aquí porque ahora es más visible con el menor número de herramientas. Ver Brechas conocidas más abajo.
Empresas y contactos (6)
Herramienta | Descripción | Parámetros |
| Crea una nueva empresa (cliente). | body |
| Lista todas las empresas (clientes) del partner. | ninguno |
| Obtiene una empresa por ID. | company_id |
| Lista todos los sitios de una empresa. | company_id |
| Obtiene un sitio por ID (de todo el partner, no limitado a una empresa). | site_id |
| Lista todos los sitios del partner (en todas las empresas). | ninguno |
Campos personalizados (6)
Herramienta | Descripción | Parámetros |
| Obtiene los valores de campos personalizados de una empresa. | company_id, attribute_ids?, with_defaults?, origin_type?, owner_id? |
| Obtiene el esquema de una definición de campo personalizado por ID. | definition_id |
| Obtiene la lista de definiciones de campos personalizados del partner (proporcionadas por el proveedor y definidas por el partner). | entity_type?, origin_type? |
| Obtiene los valores de campos personalizados de un dispositivo (endpoint). | endpoint_id, attribute_ids?, with_defaults?, origin_type?, owner_id? |
| Obtiene los valores de campos personalizados de un sitio. | site_id, attribute_ids?, with_defaults?, origin_type?, owner_id? |
| Actualiza varios valores de campos personalizados de una empresa. | company_id, body |
Dispositivos y endpoints (9)
Herramienta | Descripción | Parámetros |
| Obtener los detalles completos de un endpoint (dispositivo) específico. | company_id, site_id, endpoint_id, field? |
| Obtener los detalles de las aplicaciones instaladas para un conjunto de endpoints. | resource_type, resources, limit, cursor, field?, name?, version? |
| Obtener el uso de CPU más reciente de un endpoint. | endpoint_id |
| Obtener el uso de disco más reciente de un endpoint. | endpoint_id |
| Obtener información de disponibilidad en línea/fuera de línea para dispositivos. | resource_type, resources, offline_lookback?, availability? |
| Obtener el uso de memoria más reciente de un endpoint. | endpoint_id, minute? |
| Obtener los detalles del servicio (servicio de Windows / demonio) de un endpoint. | company_id, site_id, endpoint_id, service_name?, field? |
| Obtener información del estado del sistema (procesos en ejecución, servicios, etc.) de un endpoint. | endpoint_id |
| Listar dispositivos (endpoints) para una categoría determinada, limitados a recursos específicos. | category, resource_type, resources, limit, cursor, sort_by?, field?, filter? |
Parcheo (3)
Tool | Descripción | Parámetros |
| Obtener la lista de parches del sistema operativo de un endpoint. | endpoint_id |
| Obtener un resumen de cumplimiento de parches del sistema operativo en bloque para un conjunto de recursos. | resource_type, resources, limit, cursor, field? |
| Obtener detalles de parches del sistema operativo en bloque para un conjunto de endpoints. | resource_type, resources, field? |
Automatización (1)
Tool | Descripción | Parámetros |
| Obtener todas las tareas de automatización para el socio. | none |
Ejemplo de prueba
Obtener una lista de empresas y luego sus sitios:
{
"method": "tools/call",
"params": { "name": "connectwise_asio_get_companies", "arguments": {} }
}Equivalente curl contra el servidor en ejecución (endpoint MCP HTTP transmisible):
curl -X POST http://localhost:8080/mcp \
-H "Content-Type: application/json" \
-H "X-ConnectWise-Asio-Token: <access_token>" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": { "name": "connectwise_asio_get_companies", "arguments": {} }
}'Una llamada parametrizada:
{
"method": "tools/call",
"params": {
"name": "connectwise_asio_get_endpoint_cpu_usage",
"arguments": { "endpoint_id": "abc-123" }
}
}Referencia de API
Documentación oficial (ConnectWise Developer Network — requiere inicio de sesión): Products > ConnectWise Platform > Platform Vendors > APIs and Callbacks > REST API
URLs base: NA
https://openapi.service.itsupport247.net, EUhttps://openapi.service.euplatform.connectwise.com, AUhttps://openapi.service.auplatform.connectwise.com
Brechas conocidas / No verificado aún
Reducido de 104 a 25 herramientas el 2026-08-04. La compilación original cubría la especificación completa de las APIs de ConnectWise Platform según una decisión de alcance anterior. Una decisión de alcance posterior la recortó a las categorías realmente utilizadas por MSPbots; consulte la sección Lista de herramientas anterior para ver el mapeo exacto de endpoint→herramienta y la lista completa de las 6 categorías eliminadas (~79 herramientas, incluida la categoría
ticketsde 24 herramientas, la más grande de la compilación original). Si se necesita una categoría eliminada más adelante, la especificación OpenAPI del proveedor (enlazada abajo) aún documenta sus operaciones exactas y se pueden volver a agregar de la misma manera que se generaron las herramientas conservadas.Los endpoints configurados por MSPbots "Suspension"/"Suspension Details" no tienen una herramienta correspondiente — esta brecha es anterior al recorte (la categoría
alertingde la compilación original de 104 herramientas nunca implementó una operación de lectura GET-suspension, solo crear/actualizar/eliminar/post-incidente) y no fue introducida por él. Si realmente se necesitan datos de suspensión, esto debería agregarse desde la especificación OpenAPI del proveedor.Aún no se ha probado contra una cuenta real de ConnectWise Asio — solo se ha realizado verificación a nivel de protocolo (comprobación de salud, 401 con token faltante,
tools/listque devuelve las 25 herramientas) hasta ahora.connectwise_asio_update_company_custom_fieldsyconnectwise_asio_create_companytoman un parámetro genéricobody: dicten lugar de argumentos con nombre completamente aplanados — el docstring enumera los campos de nivel superior requeridos, pero las formas de los objetos anidados deben verificarse contra la API en vivo en el primer uso.
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.
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 Connectors
Your org's AI agents, tasks, runs, search, and brain files as MCP tools and resources.
Automate 1,000+ services from any MCP-compatible AI agent: build Applets, run actions and queries.
Let AI agents query data and act across all your business apps via MCP.
Enrich, search, assess, and manage threat intelligence through 80+ typed MCP tools.
Related MCP Servers
- 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 gradedqualityAmaintenanceMCP server for ConnectWise PSA (Manage) enabling ticket management, time entry, and read-only lookups of companies, contacts, and configurations with role-based access control and bring-your-own-API-keys support.4595MIT
- AlicenseNot gradedqualityBmaintenanceExposes the ConnectWise Command (Continuum) ITSupport247 Reporting API as MCP tools, enabling querying of sites, devices, patches, antivirus, performance, and more.Apache 2.0
- FlicenseNot gradedqualityBmaintenanceExposes the CloudRadial REST API (client portal / PSA-adjacent MSP platform) as MCP tools, enabling operations on companies, articles, feedback, archives, flexible assets, and more via 34 tools with HTTP Basic Auth.-
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/connectwise-asio-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server