Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Connectwise Command

БесплатноНе проверен

Exposes the ConnectWise Command (Continuum) ITSupport247 Reporting API as MCP tools, enabling querying of sites, devices, patches, antivirus, performance, and m

GitHubEmbed

Описание

Exposes the ConnectWise Command (Continuum) ITSupport247 Reporting API as MCP tools, enabling querying of sites, devices, patches, antivirus, performance, and more.

README

ConnectWise Command MCP server — exposes the ConnectWise Command (Continuum) ITSupport247 Reporting API as MCP tools.

Naming note: app.mspbots.ai calls this integration "ConnectWise Command (continuum)" (sys_integration.subject_code = CONTINUUM). ConnectWise acquired Continuum and rebranded its RMM product as "ConnectWise Command"; the underlying API is still hosted on the legacy ITSupport247 domain (itsupport247.net) and documented as the "Reporting API". This server wraps that Reporting API only — it is unrelated to ConnectWise Manage (PSA) or ConnectWise Automate.

Overview

This server implements the Model Context Protocol (Streamable HTTP/SSE transport) and wraps every resource in the official "Reporting API REST Resources" reference for ConnectWise Command / Continuum. It follows the MSPbots Vendor MCP Service SOP: stateless, no stored credentials, per-request header authentication.

The underlying API authenticates via HTTP Basic Auth (blank username, API key as password) and returns JSON. This server never stores the key — the caller passes it per-request via a header. All request/response field names below are transcribed verbatim from the official reference doc, not guessed.

Quick Start

Docker (recommended)

docker compose up --build

The server starts on http://localhost:8080.

Local (uv)

uv sync
python -m connectwise_command_mcp

Health Check

curl http://localhost:8080/health
# {"status": "ok", "service": "connectwise-command-mcp", "transport": "http"}

No token is required for the health endpoint.

授权参数说明 (Authentication)

Every request to /mcp must include the following HTTP header:

Header 类型 是否必填 默认值 枚举值 字段描述 Example
X-ConnectWise-Command-Api-Key string 必填 无(自由文本) ConnectWise Command (Continuum) Reporting API key,在 ITSupport247 门户 Admin > Integration > Reporting API > Regenerate Key 生成。服务端收到后转换为 HTTP Basic Auth(用户名留空,该 key 作为密码)发往上游 API,不做任何存储。 X-ConnectWise-Command-Api-Key: <your_reporting_api_key>

Internally, this server encodes the key as:

Authorization: Basic base64(":" + api_key)

Unlike some other RMM vendors (e.g. N-able), ConnectWise Command's Reporting API hosts are fixed public endpoints, not per-tenant — there is no "URL" field/header to configure, matching the single "API Key" field on the app.mspbots.ai integration form. Missing X-ConnectWise-Command-Api-Key returns 401 Unauthorized.

Environment Variables

Variable Default Description
MCP_HTTP_PORT 8080 Listening port
MCP_HTTP_HOST 0.0.0.0 Listening host
CONNECTWISE_COMMAND_LEGACY_BASE_URL https://itsapi.itsupport247.net/reportingapi/ReportingAPIService.svc/json Legacy report endpoints (POST)
CONNECTWISE_COMMAND_SITES_BASE_URL https://api.itsupport247.net Sites/Devices endpoints (GET)

MCP Endpoint

POST http://localhost:8080/mcp

Connect your MCP client with:

  • Transport: http (Streamable HTTP / SSE)
  • Header: X-ConnectWise-Command-Api-Key: <api_key>

Tool List

41 tools — full coverage of every resource in the official "Reporting API REST Resources" doc. Most take site_code (get one from connectwise_command_get_sites first) plus month/year (int); several also take resource_type ("desktop" or "server", per-resource restrictions noted where the doc fixes it to one value).

Sites, Devices & Summary

Tool 功能 参数
connectwise_command_get_sites 列出该 API key 可见的所有活跃站点 无参数
connectwise_command_get_devices 列出站点下的设备,可选定位到单设备 site_code (必填), machine_id?
connectwise_command_get_site_summary 站点资产与工单概况 site_code, month, year (均必填)

Agent / System / Software

Tool 功能 参数
connectwise_command_get_agent_details 站点内所有设备的监控代理详情(也用于获取 Machine ID) site_code (必填)
connectwise_command_get_system_information 系统硬件/OS/BIOS 信息,可选定位到单设备 site_code (必填), machine_id?
connectwise_command_get_installed_software 已安装软件列表,可选定位到单设备 site_code (必填), machine_id?

Antivirus

Tool 功能 参数
connectwise_command_get_antivirus_ages 桌面机防病毒库更新时长(天),仅支持 desktop site_code, month, year (均必填)
connectwise_command_get_antivirus_summary 防病毒防护状态计数汇总 site_code, month, year, resource_type (均必填,"Desktop"/"server")
connectwise_command_get_antivirus_version_summary 防病毒产品/版本,可选定位到单设备 site_code (必填), machine_id?
connectwise_command_get_daily_antivirus_status 每日防病毒状态 site_code, month, year, resource_type (均必填)
connectwise_command_get_missing_antivirus 缺失防病毒防护的设备列表 site_code, month, year, resource_type (均必填)
connectwise_command_get_outdated_antivirus 病毒库过期的设备列表 site_code, month, year, resource_type (均必填)
connectwise_command_get_unsupported_antivirus 使用不受支持防病毒产品的设备列表 site_code, month, year, resource_type (均必填)

Patches

Tool 功能 参数
connectwise_command_get_missing_patches 桌面机缺失补丁汇总 site_code, month, year (均必填)
connectwise_command_get_patch_summary_by_resource 按设备维度的补丁状态计数 site_code, month, year, resource_type (均必填)
connectwise_command_get_patch_summary_by_severity 按严重程度的补丁计数 site_code, month, year, resource_type (均必填)
connectwise_command_get_patch_summary_by_state 按状态(已装/缺失/黑名单等)的补丁总数 site_code, month, year, resource_type (均必填)

Performance

Tool 功能 参数
connectwise_command_get_cpu_utilization 服务器 CPU 月度最小/最大/平均值及每日均值 site_code, month, year (均必填)
connectwise_command_get_disk_usage 服务器磁盘空间月度最小/最大/平均值及每日均值 site_code, month, year (均必填)
connectwise_command_get_disk_io_utilization 服务器磁盘 IO 月度最小/最大/平均值及每日均值 site_code, month, year (均必填)
connectwise_command_get_memory_utilization 服务器内存月度最小/最大/平均值及每日均值 site_code, month, year (均必填)
connectwise_command_get_pagefile_utilization 服务器 PageFile 月度最小/最大/平均值及每日均值 site_code, month, year (均必填)
connectwise_command_get_disk_space_utilization 按设备的磁盘空间使用百分比 site_code, month, year, resource_type (均必填)
connectwise_command_get_server_utilization 服务器月度平均 CPU/磁盘/内存使用率 site_code, month, year (均必填)

Availability

Tool 功能 参数
connectwise_command_get_daily_server_availability 站点全部服务器每日平均可用性 site_code, month, year (均必填)
connectwise_command_get_server_availability_monthly 服务器可用性月度平均值 site_code, month, year (均必填)
connectwise_command_get_daily_server_utilization 每日服务器综合利用率(CPU/内存/磁盘IO/磁盘空间/PageFile) site_code, month, year (均必填)

Warranty

Tool 功能 参数
connectwise_command_get_expiring_warranties 已过期或即将过期保修的设备列表 site_code, month, year, resource_type (均必填)
connectwise_command_get_warranty_details 设备保修详情(不需要 month/year) site_code (必填), include_warranty_history?(默认 false)
connectwise_command_get_warranty_summary 保修状态(有效/过期/无数据)计数 site_code, month, year, resource_type (均必填)

Recover for Continuity (Backup)

Tool 功能 参数
connectwise_command_get_continuity_appliances 站点已部署的 Recover for Continuity 备份设备列表 site_code, month, year (均必填)
connectwise_command_get_continuity_backup_summary 备份成功/失败百分比总览 site_code, month, year (均必填)
connectwise_command_get_continuity_backup_summary_by_resource 按受保护资源的备份结果 site_code, month, year (均必填)
connectwise_command_get_continuity_protected_resources 受 Recover for Continuity 保护的资源列表 site_code, month, year (均必填)

Misc

Tool 功能 参数
connectwise_command_get_noncompliant_mobile_devices 不符合企业策略的移动设备列表 site_code, month, year (均必填)
connectwise_command_get_operating_system_summary 操作系统分布与设备数 site_code, month, year, resource_type (均必填)
connectwise_command_get_score_summary 站点整体健康/风险评分(多项指标,-1 表示该站点不适用) site_code, month, year (均必填)
connectwise_command_get_service_requests_by_month 近6个月工单开关数量 site_code, month, year (均必填)
connectwise_command_get_service_requests_by_week 近6周工单开关数量 site_code, month, year (均必填)
connectwise_command_get_snmp_devices 站点下 SNMP 设备(路由器/交换机等)列表 site_code, month, year (均必填)
connectwise_command_get_work_summary 技术支持工作记录汇总 site_code, month, year (均必填)

测试示例 (Test Example)

List all sites, then get devices for one:

{
  "method": "tools/call",
  "params": { "name": "connectwise_command_get_sites", "arguments": {} }
}

Equivalent curl against the running server (streamable HTTP MCP endpoint):

curl -X POST http://localhost:8080/mcp \
  -H "Content-Type: application/json" \
  -H "X-ConnectWise-Command-Api-Key: <api_key>" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": { "name": "connectwise_command_get_sites", "arguments": {} }
  }'

A month/year-based resource:

{
  "method": "tools/call",
  "params": {
    "name": "connectwise_command_get_cpu_utilization",
    "arguments": { "site_code": "AGTSolutions", "month": 4, "year": 2015 }
  }
}

API Reference

  • Official docs (ITSupport247 portal, Admin > Integration > Reporting API):
    • "Getting Started with the Reporting API"
    • "Reporting API REST Resources" (full per-resource request/response schemas — source of every field name in this server)

Implementation Notes

  • Error shape varies by resource — some responses use "Error" (capital, e.g. Agent Details), most use "error" (lowercase, e.g. Antivirus Summary), and the position in the response varies (top, bottom, or nested per-item). ContinuumClient._parse checks both casings.
  • GET resources (Sites, Devices) return a bare JSON array, not an object with an error key.
  • Request field name MachineID (used in the request body for Antivirus Version Summary, Installed Software, System Information) differs in casing from the response field MachineId — both confirmed verbatim from the official doc.
  • get_site_installation_package-equivalent functionality does not exist for this API; not applicable here (unlike N-able RMM).

from github.com/MSPbotsAI/connectwise-command-mcp

Установка Connectwise Command

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/MSPbotsAI/connectwise-command-mcp

FAQ

Connectwise Command MCP бесплатный?

Да, Connectwise Command MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Connectwise Command?

Нет, Connectwise Command работает без API-ключей и переменных окружения.

Connectwise Command — hosted или self-hosted?

Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.

Как установить Connectwise Command в Claude Desktop, Claude Code или Cursor?

Открой Connectwise Command на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare Connectwise Command with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории development