Skip to main content
Glama

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 --build

El servidor se inicia en http://localhost:8080.

Local (uv)

uv sync
python -m connectwise_asio_mcp

Comprobació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

X-ConnectWise-Asio-Token

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 POST /v1/token (concesión client_credentials, requiere client_id + client_secret + scope). Este servicio nunca accede a client_id/client_secret; solo reenvía el token ya obtenido.

X-ConnectWise-Asio-Token: <access_token>

X-ConnectWise-Asio-Base-Url

string

Opcional

Variable de entorno CONNECTWISE_ASIO_BASE_URL (por defecto https://openapi.service.itsupport247.net)

https://openapi.service.itsupport247.net (NA), https://openapi.service.euplatform.connectwise.com (EU), https://openapi.service.auplatform.connectwise.com (AU)

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.

X-ConnectWise-Asio-Base-Url: https://openapi.service.euplatform.connectwise.com

La ausencia de X-ConnectWise-Asio-Token devuelve 401 Unauthorized.

Variables de entorno

Variable

Valor por defecto

Descripción

MCP_HTTP_PORT

8080

Puerto de escucha

MCP_HTTP_HOST

0.0.0.0

Host de escucha

CONNECTWISE_ASIO_BASE_URL

https://openapi.service.itsupport247.net

Servidor regional por defecto; se puede sobrescribir por solicitud con X-ConnectWise-Asio-Base-Url

Endpoint MCP

POST http://localhost:8080/mcp

Conecte 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

connectwise_asio_create_company

Crea una nueva empresa (cliente).

body

connectwise_asio_get_companies

Lista todas las empresas (clientes) del partner.

ninguno

connectwise_asio_get_company

Obtiene una empresa por ID.

company_id

connectwise_asio_get_company_sites

Lista todos los sitios de una empresa.

company_id

connectwise_asio_get_site

Obtiene un sitio por ID (de todo el partner, no limitado a una empresa).

site_id

connectwise_asio_get_sites

Lista todos los sitios del partner (en todas las empresas).

ninguno

Campos personalizados (6)

Herramienta

Descripción

Parámetros

connectwise_asio_get_company_custom_fields

Obtiene los valores de campos personalizados de una empresa.

company_id, attribute_ids?, with_defaults?, origin_type?, owner_id?

connectwise_asio_get_custom_field_definition

Obtiene el esquema de una definición de campo personalizado por ID.

definition_id

connectwise_asio_get_custom_field_definitions

Obtiene la lista de definiciones de campos personalizados del partner (proporcionadas por el proveedor y definidas por el partner).

entity_type?, origin_type?

connectwise_asio_get_device_custom_fields

Obtiene los valores de campos personalizados de un dispositivo (endpoint).

endpoint_id, attribute_ids?, with_defaults?, origin_type?, owner_id?

connectwise_asio_get_site_custom_fields

Obtiene los valores de campos personalizados de un sitio.

site_id, attribute_ids?, with_defaults?, origin_type?, owner_id?

connectwise_asio_update_company_custom_fields

Actualiza varios valores de campos personalizados de una empresa.

company_id, body

Dispositivos y endpoints (9)

Herramienta

Descripción

Parámetros

connectwise_asio_get_endpoint

Obtener los detalles completos de un endpoint (dispositivo) específico.

company_id, site_id, endpoint_id, field?

connectwise_asio_get_endpoint_applications

Obtener los detalles de las aplicaciones instaladas para un conjunto de endpoints.

resource_type, resources, limit, cursor, field?, name?, version?

connectwise_asio_get_endpoint_cpu_usage

Obtener el uso de CPU más reciente de un endpoint.

endpoint_id

connectwise_asio_get_endpoint_disk_usage

Obtener el uso de disco más reciente de un endpoint.

endpoint_id

connectwise_asio_get_endpoint_heartbeat

Obtener información de disponibilidad en línea/fuera de línea para dispositivos.

resource_type, resources, offline_lookback?, availability?

connectwise_asio_get_endpoint_memory_usage

Obtener el uso de memoria más reciente de un endpoint.

endpoint_id, minute?

connectwise_asio_get_endpoint_services

Obtener los detalles del servicio (servicio de Windows / demonio) de un endpoint.

company_id, site_id, endpoint_id, service_name?, field?

connectwise_asio_get_endpoint_system_state

Obtener información del estado del sistema (procesos en ejecución, servicios, etc.) de un endpoint.

endpoint_id

connectwise_asio_list_endpoints

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

connectwise_asio_get_endpoint_patches

Obtener la lista de parches del sistema operativo de un endpoint.

endpoint_id

connectwise_asio_get_os_patch_compliance_summary

Obtener un resumen de cumplimiento de parches del sistema operativo en bloque para un conjunto de recursos.

resource_type, resources, limit, cursor, field?

connectwise_asio_get_os_patch_details

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

connectwise_asio_get_automation_tasks

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, EU https://openapi.service.euplatform.connectwise.com, AU https://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 tickets de 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 alerting de 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/list que devuelve las 25 herramientas) hasta ahora.

  • connectwise_asio_update_company_custom_fields y connectwise_asio_create_company toman un parámetro genérico body: dict en 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.

Maintenance

ActivityMaintained
ResponsivenessNo issues

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

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    MCP 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.
    459
    5
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Exposes the ConnectWise Command (Continuum) ITSupport247 Reporting API as MCP tools, enabling querying of sites, devices, patches, antivirus, performance, and more.
    Apache 2.0
  • F
    license
    Not graded
    quality
    B
    maintenance
    Exposes 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

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