connectwise-command-mcp
connectwise-command-mcp
ConnectWise Command MCP 服务器 — 将 ConnectWise Command (Continuum) ITSupport247 Reporting API 暴露为 MCP 工具。
命名说明: app.mspbots.ai 将此集成称为 "ConnectWise Command (continuum)" (
sys_integration.subject_code = CONTINUUM)。ConnectWise 收购了 Continuum,并将其 RMM 产品更名为 "ConnectWise Command";底层 API 仍托管在旧版 ITSupport247 域名(itsupport247.net)上,文档中称为 "Reporting API"。本服务器仅封装该 Reporting API — 与 ConnectWise Manage (PSA) 或 ConnectWise Automate 无关。
概述
本服务器实现了 Model Context Protocol(Streamable HTTP/SSE 传输),并封装了 ConnectWise Command / Continuum 官方 "Reporting API REST Resources" 参考文档中的每个资源。它遵循 MSPbots Vendor MCP Service SOP:无状态、不存储凭据、按请求通过请求头进行认证。
底层 API 通过 HTTP Basic Auth(用户名为空,API key 作为密码)进行认证,并返回 JSON。本服务器从不存储该 key — 调用方在每次请求时通过请求头传入。下文所有请求/响应字段名均逐字转录自官方参考文档,而非猜测。
Related MCP server: nable-rmm-mcp
快速开始
Docker(推荐)
docker compose up --build本地 (uv)
uv sync
python -m connectwise_command_mcp健康检查
curl http://localhost:8080/health
# {"status": "ok"}健康检查端点无需 token。
授权参数说明 (Authentication)
对 /mcp 的每个请求都必须包含以下 HTTP 请求头:
请求头 | 类型 | 是否必填 | 默认值 | 枚举值 | 字段描述 | 示例 |
| string | 必填 | 无 | 无(自由文本) | ConnectWise Command (Continuum) Reporting API key,在 ITSupport247 门户 Admin > Integration > Reporting API > Regenerate Key 生成。服务端收到后转换为 HTTP Basic Auth(用户名留空,该 key 作为密码)发往上游 API,不做任何存储。 |
|
在内部,本服务器将该 key 编码为:
Authorization: Basic base64(":" + api_key)与其他一些 RMM 厂商(如 N-able)不同,ConnectWise Command 的 Reporting API 主机是 固定公共端点,而非每租户独立 — 没有可配置的 "URL" 字段/请求头,这与 app.mspbots.ai 集成表单上的单一 "API Key" 字段一致。缺少 X-ConnectWise-Command-Api-Key 将返回 401 Unauthorized。
环境变量
Variable | Default | Description |
|
| 监听端口 |
|
| 监听主机 |
|
| 旧版报告端点 (POST) |
|
| Sites/Devices 端点 (GET) |
MCP 端点
POST http://localhost:8080/mcp使用以下方式连接 MCP 客户端:
传输:
http(Streamable HTTP / SSE)请求头:
X-ConnectWise-Command-Api-Key: <api_key>
工具列表
21 个工具,由最初 41 个工具的完整 API 构建(2026-08-04)精简而来。MSPbots 为该厂商存储的集成配置实际调用 19 个端点(已通过集成 id 1424565871921713153 的 web/int/sys/integration/api/list 确认),涵盖 Antivirus(7/7 保留 — 每个防病毒工具都被实际使用)、Patches(4/4 保留 — 同样)、Warranty(3/3 保留 — 同样)、Sites/Devices(3 个中实际使用 2 个,因该类别较小而全部保留)、Agent/System/Software(3/3 保留 — 同样),外加一个 Misc 工具(get_score_summary,实际使用的唯一 Misc 端点)。原始 41 个工具版本中的其余部分 — Performance(7)、Availability(3)、Recover for Continuity/Backup(4),以及其他 6 个 Misc 工具(不合规移动设备、OS 汇总、按月份/周的服务请求、SNMP 设备、工作汇总)— 均因 MSPbots 未使用而被移除。如果之后需要某个被移除的工具,官方 "Reporting API REST Resources" 文档(下方链接)中仍有说明,可以按照保留工具的相同方式重新添加。
大多数保留的工具接受 site_code(先从 connectwise_command_get_sites 获取一个)以及 month/year(整数);部分工具还接受 resource_type("desktop" 或 "server";文档将其固定为单一值之处已按资源注明限制)。
站点、设备与汇总
工具 | 功能 | 参数 |
| 列出该 API key 可见的所有活跃站点 | 无参数 |
| 列出站点下的设备,可选定位到单设备 |
|
| 站点资产与工单概况 |
|
代理 / 系统 / 软件
工具 | 功能 | 参数 |
| 站点内所有设备的监控代理详情(也用于获取 Machine ID) |
|
| 系统硬件/OS/BIOS 信息,可选定位到单设备 |
|
| 已安装软件列表,可选定位到单设备 |
|
防病毒
工具 | 功能 | 参数 |
| 桌面机防病毒库更新时长(天),仅支持 desktop |
|
| 防病毒防护状态计数汇总 |
|
| 防病毒产品/版本,可选定位到单设备 |
|
| 每日防病毒状态 |
|
| 缺失防病毒防护的设备列表 |
|
| 病毒库过期的设备列表 |
|
| 使用不受支持防病毒产品的设备列表 |
|
补丁
工具 | 功能 | 参数 |
| 桌面机缺失补丁汇总 |
|
| 按设备维度的补丁状态计数 |
|
| 按严重程度的补丁计数 |
|
| 按状态(已装/缺失/黑名单等)的补丁总数 |
|
保修
工具 | 功能 | 参数 |
| 已过期或即将过期保修的设备列表 |
|
| 设备保修详情(不需要 month/year) |
|
| 保修状态(有效/过期/无数据)计数 |
|
杂项
工具 | 功能 | 参数 |
| 站点整体健康/风险评分(多项指标,-1 表示该站点不适用) |
|
测试示例 (Test Example)
列出所有站点,然后获取其中一个站点的设备:
{
"method": "tools/call",
"params": { "name": "connectwise_command_get_sites", "arguments": {} }
}针对运行中的服务器(streamable HTTP MCP 端点)执行等效 curl:
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": {} }
}'一个基于 month/year 的资源:
{
"method": "tools/call",
"params": {
"name": "connectwise_command_get_cpu_utilization",
"arguments": { "site_code": "AGTSolutions", "month": 4, "year": 2015 }
}
}API 参考
官方文档(ITSupport247 门户,Admin > Integration > Reporting API):
"Getting Started with the Reporting API"
"Reporting API REST Resources"(每个资源的完整请求/响应模式 — 本服务器中所有字段名的来源)
实现说明
2026-08-04 从 41 个工具精简为 21 个工具。 原始构建覆盖了官方 Reporting API 文档中的每个资源。后续的范围决策将其削减为 MSPbots 实际配置的 19 个端点,外加始终保留的小型 Sites/Devices/Agent/System 类别 — 确切理由和已移除工具的完整列表见上文"工具列表"部分(Performance、Availability、Recover for Continuity/Backup,以及 7 个 Misc 工具中的 6 个 — 共 17 个工具)。如果之后需要某个被移除的工具,官方 Reporting API 文档(下方链接)中仍有说明,可以按照保留工具的相同方式重新添加。
错误结构因资源而异 — 某些响应使用
"Error"(大写,例如 Agent Details),大多数使用"error"(小写,例如 Antivirus Summary),且在响应中的位置也各不相同(顶部、底部或逐项嵌套)。ContinuumClient._parse会同时检查两种大小写。GET 资源(
Sites、Devices)返回裸 JSON 数组,而不是带有error键的对象。请求字段名
MachineID(用于 Antivirus Version Summary、Installed Software、System Information 的请求体)与响应字段MachineId的大小写不同 — 两者均已从官方文档逐字确认。该 API 不存在与
get_site_installation_package等效的功能;此处不适用(不同于 N-able RMM)。
This server cannot be deployed
Maintenance
Related MCP Connectors
Manage screenRIG screens, playlists, media, schedules, webhooks, and reports through MCP.
GunBroker MCP Pack — wraps the GunBroker firearms-marketplace API.
Authenticated MCP server for ClearPolicy policy and compliance workflows.
Read-only MCP access to a documented IT fleet: state, changes, posture. 15 tools.
Related MCP Servers
- AlicenseAqualityAmaintenanceExposes 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.125MIT
- AlicenseNot gradedqualityBmaintenanceEnables interaction with N-able RMM (N-sight) API to manage clients, sites, devices, and retrieve monitoring data such as checks, patches, and performance history.Apache 2.0
- AlicenseNot gradedqualityBmaintenanceExposes ConnectWise Platform APIs as MCP tools, enabling management of companies, contacts, devices, policies, patches, and tickets through natural language.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.1-