connectwise-asio-mcp
connectwise-asio-mcp
ConnectWise Asio MCP-сервер — предоставляет API-интерфейсы платформы ConnectWise (текущий API на базе ConnectWise Asio, ранее SolarWinds MSP/N-central-совместимого RMM) в виде инструментов MCP.
Примечание о названии: приложение app.mspbots.ai называет эту интеграцию «ConnectWise Asio» (
sys_integration.subject_code = CWASIO). Это отдельный продукт от ConnectWise Command (Continuum), ConnectWise Manage (PSA) и ConnectWise Automate — у каждого из них есть свой MCP-сервер в этой группе. Базовый API официально называется «ConnectWise Platform APIs» в его спецификации OpenAPI (developer.connectwise.com— документация «REST API» в разделе Products > ConnectWise Platform > Platform Vendors > APIs and Callbacks).
Обзор
Этот сервер реализует Model Context Protocol (транспорт Streamable HTTP/SSE) и оборачивает API-интерфейсы платформы ConnectWise — 25 инструментов в 5 категориях (devices, companies_contacts, custom_fields, patching, automation), сокращённых до фактически настроенных 23 конечных точек MSPbots плюс базовые операции CRUD (см. список инструментов ниже; изначально это была сборка полного API из 107 операций в 24 категориях тегов). Он следует стандарту Vendor MCP Service SOP MSPbots: без сохранения состояния, без хранения учётных данных, аутентификация по заголовкам для каждого запроса.
Базовый API аутентифицируется через OAuth2 Client Credentials. Этот сервер не выполняет обмен токенами сам — он получает уже полученный bearer-токен доступа для каждого запроса (как и другие интеграции с OAuth-потоком, например Microsoft Graph, обрабатываются в этой группе MCP MSPbots: шлюз создаёт/обновляет токен из client_id/client_secret/scope, и до этого сервера доходит только итоговый токен).
Related MCP server: mcp-connectwise-psa
Быстрый старт
Docker (рекомендуется)
docker compose up --buildСервер запускается на http://localhost:8080.
Локально (uv)
uv sync
python -m connectwise_asio_mcpПроверка работоспособности
curl http://localhost:8080/health
# {"status": "ok"}Для конечной точки проверки работоспособности токен не требуется.
Параметры аутентификации
Каждый запрос к /mcp должен содержать следующие HTTP-заголовки:
Заголовок | Тип | Обязательность | Значение по умолчанию | Допустимые значения | Описание поля | Пример |
| string | обязательно | отсутствует | нет (произвольный текст) | Bearer-токен доступа OAuth2, заранее полученный вызывающей стороной (Agent Platform / вышестоящий шлюз) через |
|
| string | необязательный | Переменная окружения |
| ConnectWise Asio имеет 3 независимых сервера в зависимости от региона аккаунта (префикс Client ID 0e30=NA/0e31=EU/0e32=AU позволяет определить регион); если заголовок не указан, используется значение по умолчанию из переменной окружения, а шлюз, обслуживающий арендаторов из нескольких регионов, переопределяет его для каждого запроса. |
|
Если заголовок X-ConnectWise-Asio-Token отсутствует, возвращается 401 Unauthorized.
Переменные окружения
Переменная | Значение по умолчанию | Описание |
|
| Порт прослушивания |
|
| Хост прослушивания |
|
| Региональный сервер по умолчанию; для каждого запроса можно указать свой с помощью |
Конечная точка MCP
POST http://localhost:8080/mcpПодключите ваш MCP-клиент следующим образом:
Транспорт:
http(Streamable HTTP / SSE)Заголовки:
X-ConnectWise-Asio-Token: <access_token>(обязательно),X-ConnectWise-Asio-Base-Url: <base_url>(необязательно)
Список инструментов
25 инструментов, сокращённых из первоначальной сборки полного API на 104 инструмента (2026-08-04). Конфигурация интеграции этого поставщика, хранящаяся в MSPbots, вызывает 23 конечные точки в 6 базовых категориях ресурсов (устройства/конечные точки, компании, сайты, настраиваемые поля, патчинг, автоматизация) — каждая из этих 23 настроенных конечных точек (включая отдельные варианты путей v1/v2, которые сводятся к одному инструменту) соответствует инструменту, сохранённому ниже, и помечается именем соответствующей конечной точки. Всё остальное из первоначальной сборки на 104 инструмента (Tickets — самая крупная категория из 24 инструментов, Policy/Policy Group/Package, Mapping, Alerting & Incidents, Backup Dashboard, Misc — 6 категорий, ~79 инструментов) было удалено как неиспользуемое MSPbots. Если позже понадобится удалённая категория, точные операции по-прежнему описаны в спецификации OpenAPI поставщика (ссылка ниже), и их можно добавить тем же способом, которым были созданы сохранённые инструменты.
Известный пробел, перенесённый из первоначальной сборки: MSPbots настроил две конечные точки — «ConnectWise Asio Suspension» (GET /v2/alerting/suspensions) и «ConnectWise Asio Suspension Details» (GET /v2/alerting/suspensions/{ruleid}) — для которых нет соответствующего инструмента в этом сервере (в первоначальной сборке на 104 инструмента категория alerting реализовывала только операции create/update/delete/post-incident, но никогда не read-запрос GET-suspension). Этот пробел существовал до сокращения и не был им вызван; он отмечен здесь, поскольку теперь более заметен при меньшем количестве инструментов. См. раздел «Известные пробелы» ниже.
Компании и контакты (6)
Инструмент | Описание | Параметры |
| Создать новую компанию (клиента). | body |
| Получить список всех компаний (клиентов) партнёра. | none |
| Получить компанию по идентификатору. | company_id |
| Получить список всех сайтов компании. | company_id |
| Получить сайт по идентификатору (в рамках партнёра, не ограничено компанией). | site_id |
| Получить список всех сайтов партнёра (по всем компаниям). | none |
Настраиваемые поля (6)
Инструмент | Описание | Параметры |
| Получить значения настраиваемых полей для компании. | company_id, attribute_ids?, with_defaults?, origin_type?, owner_id? |
| Получить схему определения настраиваемого поля по идентификатору. | definition_id |
| Получить список определений настраиваемых полей для партнёра (предоставленных поставщиком и определённых партнёром). | entity_type?, origin_type? |
| Получить значения настраиваемых полей для устройства (конечной точки). | endpoint_id, attribute_ids?, with_defaults?, origin_type?, owner_id? |
| Получить значения настраиваемых полей для сайта. | site_id, attribute_ids?, with_defaults?, origin_type?, owner_id? |
| Обновить несколько значений настраиваемых полей для компании. | company_id, body |
Устройства и конечные точки (9)
Инструмент | Описание | Параметры |
| Получить полные сведения о конкретной конечной точке (устройстве). | company_id, site_id, endpoint_id, field? |
| Получить сведения об установленных приложениях для набора конечных точек. | resource_type, resources, limit, cursor, field?, name?, version? |
| Получить последние данные об использовании CPU для конечной точки. | endpoint_id |
| Получить последние данные об использовании диска для конечной точки. | endpoint_id |
| Получить информацию о доступности устройств (онлайн/офлайн). | resource_type, resources, offline_lookback?, availability? |
| Получить последние данные об использовании памяти для конечной точки. | endpoint_id, minute? |
| Получить сведения о службах (Windows service / демон) для конечной точки. | company_id, site_id, endpoint_id, service_name?, field? |
| Получить информацию о состоянии системы конечной точки (запущенные процессы, службы и т. д.). | endpoint_id |
| Список устройств (конечных точек) для заданной категории с ограничением по конкретным ресурсам. | category, resource_type, resources, limit, cursor, sort_by?, field?, filter? |
Патчи (3)
Инструмент | Описание | Параметры |
| Получить список обновлений ОС для конечной точки. | endpoint_id |
| Получить пакетную сводку по соответствию обновлениям ОС для набора ресурсов. | resource_type, resources, limit, cursor, field? |
| Получить пакетные сведения об обновлениях ОС для набора конечных точек. | resource_type, resources, field? |
Автоматизация (1)
Инструмент | Описание | Параметры |
| Получить все задачи автоматизации для партнёра. | нет |
Тестовый пример (Test Example)
Получите список компаний, а затем их площадки:
{
"method": "tools/call",
"params": { "name": "connectwise_asio_get_companies", "arguments": {} }
}Эквивалентная команда curl к запущенному серверу (потоковая конечная точка HTTP MCP):
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": {} }
}'Параметризованный вызов:
{
"method": "tools/call",
"params": {
"name": "connectwise_asio_get_endpoint_cpu_usage",
"arguments": { "endpoint_id": "abc-123" }
}
}Справочник по API
Официальная документация (ConnectWise Developer Network — требуется вход в систему): Products > ConnectWise Platform > Platform Vendors > APIs and Callbacks > REST API
Базовые URL: NA
https://openapi.service.itsupport247.net, EUhttps://openapi.service.euplatform.connectwise.com, AUhttps://openapi.service.auplatform.connectwise.com
Известные пробелы / Пока не проверено
Сокращено со 104 до 25 инструментов 2026-08-04. Первоначальная сборка охватывала полную спецификацию ConnectWise Platform APIs в соответствии с ранее принятым решением об объёме. Более позднее решение об объёме сократило её до категорий, которые фактически использует MSPbots, — см. раздел «Список инструментов» выше: там точное сопоставление endpoint→tool и полный список 6 удалённых категорий (~79 инструментов, включая категорию
ticketsиз 24 инструментов — самую крупную в исходной сборке). Если удалённая категория понадобится позже, OpenAPI-спецификация вендора (ссылка ниже) по-прежнему описывает её точные операции, и их можно добавить повторно тем же способом, которым были сгенерированы сохранённые инструменты.У настроенных в MSPbots конечных точек «Suspension»/«Suspension Details» нет соответствующего инструмента — этот пробел существовал ещё до сокращения (в исходной сборке из 104 инструментов категория
alertingникогда не реализовывала операцию чтения GET-suspension, только create/update/delete/post-incident) и не был вызван этим сокращением. Если данные о приостановках действительно нужны, это потребуется добавить из OpenAPI-спецификации вендора.Пока не проверено на реальном аккаунте ConnectWise Asio — выполнена только проверка на уровне протокола (health check, 401 при отсутствии токена,
tools/listвозвращает все 25 инструментов).connectwise_asio_update_company_custom_fieldsиconnectwise_asio_create_companyпринимают обобщённый параметрbody: dictвместо полностью развёрнутых именованных аргументов — в docstring перечислены обязательные поля верхнего уровня, но структуру вложенных объектов следует сверять с реальным API при первом использовании.
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