关于 ConnectWise Manage MCP
ConnectWise Manage 的非官方 MCP 服务及 CLI,面向需要在终端处理 PSA 工作流的 MSP 团队。它结合本地 SQLite 镜像、跨实体视图和条件查询构建器,支持离线汇总与筛选。
主要功能
- 01同步数据至 SQLite 镜像
- 02跨工单、工时与客户汇总
- 03构建已验证的条件查询
- 04提供工单看板与未计费视图
- 05覆盖 ConnectWise PSA REST 操作
适用场景
- 01查找已关闭但未记录工时的工单
- 02识别长期未处理或未分配的工单
- 03汇总客户联系人、协议与工单
- 04检查协议工时消耗和团队负载
MCP 相关
将 ConnectWise Manage 的 REST 操作及跨实体视图作为 MCP 工具提供给客户端。README 说明完整的 ConnectWise PSA REST 操作均有对应工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
ConnectWise Manage + AI——适用于 ChatGPT、Claude、GitHub Copilot、Microsoft 365 Copilot、Gemini,以及任何支持 MCP 的 Agent
非官方项目。由社区构建的 Claude Code Skill 和 ConnectWise Manage API 的 MCP 服务。与 ConnectWise, LLC 无关联,也未获其认可或赞助。
▶ 观看 30 秒演示——演示数据为模拟数据;展示的每条命令都真实存在于 CLI 中。
在终端中完成所有 ConnectWise PSA 工作流——借助带类型的条件查询构建器、离线 SQLite 同步,以及 PSA 网页 UI 无法提供的跨实体视图(未开票工作、账户 360、看板分流)。可与您现有的 AI 配合使用——ChatGPT(Plus/Pro+,在此连接器重新发布前暂停;详见 mcp-install.md)、Claude Desktop、Codex、Claude Code、Claude Cowork 和 GitHub Copilot——还可通过远程方式使用 Microsoft 365 Copilot / Copilot Studio 和 Google Gemini。免费、开源,可在笔记本电脑上运行。专为 MSP 所有者打造。无需编写代码。
适用于您的 Agent
安全提示(在此连接器重新发布前)。 请勿运行 HTTP 模式 (
--transport http),即使是在 localhost 上也不行。此版本没有密码保护, 会监听所有网络接口,而且早于浏览器重绑定防护功能, 因此您打开的网页可以访问它。MCP 工具还可以使用您的凭据进行更改。 请使用默认的 stdio 传输方式。如果您为远程 Agent 设置了隧道, 请将其关闭。修复即将推出。
MSP 所有者实际使用的六种 Agent(可自行设置,现已可用):
| 您的 AI Agent | 如何安装 ConnectWise Manage 技能 |
|---|---|
| Claude Desktop | 运行安装程序,然后前往 Settings > Extensions 注册 connectwise-manage-mcp(无需编辑 JSON)。 |
| ChatGPT(付费方案) | 在此连接器重新发布前暂停:ChatGPT 需要 HTTP 模式,而此版本的该模式无需密码保护,会监听所有网络接口,并且您打开的网页可以访问它。请参阅 mcp-install.md 中的安全提示。 |
| Codex CLI | 粘贴下方的安装提示词。 |
| Claude Code | 粘贴下方的安装提示词。 |
| Claude Cowork | 粘贴下方的安装提示词。 |
| GitHub Copilot(VS Code) | 运行安装程序,在 mcp.json 的 servers 键下添加 connectwise-manage-mcp,然后选择 Agent 模式。 |
ChatGPT 需要远程 HTTPS 服务,也就是说需要使用此连接器的 HTTP 模式;在连接器重新发布前,该模式将暂停使用:此版本的该模式无需密码保护,会监听所有网络接口,并且您打开的网页可以访问它。请参阅 mcp-install.md 中的安全提示。
同样适用于 Microsoft 和 Google 技术栈
用户基数很大,但请注意:这些属于远程/企业路径,而不是你刚刚安装的本地二进制程序。
| Agent | 所需条件 |
|---|---|
| Microsoft 365 Copilot / Copilot Studio | 暂停支持,直到重新发布此连接器:Copilot Studio 需要使用 HTTP 模式,而在此版本中,该模式无需密码、会监听所有网络接口,而且可以通过你打开的网页访问。请参阅 mcp-install.md 中的安全说明。 |
| Google Gemini | Gemini CLI 是本地运行的,与 Claude Code 一样。Gemini 应用是远程的,需要使用与 ChatGPT 相同的暂停 HTTP 模式。请参阅 mcp-install.md。 |
原生支持 Skill 的 Agent(也已涵盖): Hermes 和 OpenClaw 可直接读取此 Skill 的
SKILL.md,也支持 MCP——请参阅下方的安装章节。通过 MCP 也适用于 Cursor、Windsurf、Cline、Continue.dev 和 Zed。各工具的完整接入说明:docs/which-agent.md。
需要运行多个 Agent? 使用一条命令即可在全部 51+ 个受支持的 Agent 中完成安装:
npx skills add Servosity/msp-skills@latest(需要 Node.js,之后运行各 Skill 的安装程序来安装 CLI/MCP 二进制程序)。请参阅 docs/which-agent.md。
60 秒内完成安装
Claude Desktop 最快安装方式——一键安装 .mcpb
Claude Desktop 安装包:
.mcpb可在 macOS(Intel 和 Apple Silicon)、Windows x64 和 Linux x64 上启动。每个工具都会调用配套的connectwise-manage-cli。从 2026-09-18 起发布的版本会将该 CLI 一并打包;较早版本仅包含 MCP 服务,因此如果你的安装包缺少配套 CLI,请先运行下方的路径 A 或路径 B 安装程序(或将CONNECTWISE_MANAGE_CLI_PATH设置为现有二进制程序的路径)。详情:#331。
下载 ConnectWise Manage MCP(.mcpb)——然后打开 Claude Desktop > Settings > Extensions 并选择该文件。一键完成,无需 JSON 或 Shell。(在 releases 页面查看所有 ConnectWise Manage 版本。)
更喜欢使用 Claude Code 插件?添加一次市场,然后安装即可——立即生效,无需列出目录:
/plugin marketplace add Servosity/msp-skills
/plugin install connectwise-manage@msp-skills
路径 A——向 AI Agent 粘贴一条提示词(推荐)
将以下内容复制到 Claude Code、Codex CLI 或 Claude Cowork 中:
在此 Agent 工作区中安装来自 Servosity/msp-skills 的 ConnectWise Manage Skill 和 MCP 服务。如果此工作区使用 POSIX Shell(macOS、Linux、WSL 或 Bash),请运行
bash <(curl -fsSL https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/connectwise-manage/install.sh)。如果使用 Windows PowerShell,请运行iwr -useb https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/connectwise-manage/install.ps1 | iex。然后按照 README 进行身份验证,并运行connectwise-manage-cli --help进行探索。
任何能够运行 Shell 的 Agent 都可以使用同一条提示词。
路径 B——自行运行安装程序
Windows(PowerShell):
iwr -useb https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/connectwise-manage/install.ps1 | iex
macOS / Linux:
bash <(curl -fsSL https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/connectwise-manage/install.sh)
安装程序会将 connectwise-manage-cli(CLI)和 connectwise-manage-mcp(MCP 服务)都安装到你的用户 bin 路径中。Claude Code、Codex 和 Cowork 会通过此目录中的 SKILL.md 发现 Skill。
验证:
connectwise-manage-cli --version
升级到最新版本
安装程序始终会获取当前版本——重新运行即可升级:
macOS / Linux:
bash <(curl -fsSL https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/connectwise-manage/install.sh)
Windows(PowerShell):
iwr -useb https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/connectwise-manage/install.ps1 | iex
Claude Desktop .mcpb 用户:下载最新的 .mcpb(位于本节顶部),并在 Settings > Extensions 中重新选择。Claude Code 插件用户:/plugin update connectwise-manage@msp-skills。
添加到 Claude Desktop、GitHub Copilot、Gemini CLI、Microsoft 365 Copilot 或其他 MCP 客户端
安装程序运行后,请参阅 mcp-install.md 和 docs/which-agent.md,了解各 Agent 的连接配置——每个 Agent 都有一个专属章节,其中包括 GitHub Copilot 的 servers 键,以及 Microsoft 365 Copilot / Copilot Studio 的远程接入路径。Claude Desktop 的 Settings > Extensions 面板是最简单的配置方式;偏好编辑 JSON 的用户可以在 mcp-install.md 中查看 MCP 配置块。
为 Hermes 安装
在 Hermes CLI 中:
hermes skills install servosity/msp-skills/skills/connectwise-manage --force
在 Hermes 聊天会话中:
/skills install servosity/msp-skills/skills/connectwise-manage --force
Hermes 原生支持 MCP,因此也可以直接使用 connectwise-manage-mcp 服务——安装路径和环境变量都相同。
为 OpenClaw 安装
告诉你的 OpenClaw Agent(复制以下内容):
从 https://github.com/servosity/msp-skills/tree/main/skills/connectwise-manage 安装 connectwise-manage 技能。该技能说明了如何通过
openclaw:frontmatter 块安装其必需的 CLI(connectwise-manage-cli)。
OpenClaw 目前尚未普遍开放;frontmatter 配置已预先提供,将在 OpenClaw 发布时立即启用。
身份验证
设置 CLI 所需的凭据——从你的 Manage 实例(System > Members > API Members)获取带有公钥和私钥的 API Member,并从 ConnectWise 开发者门户获取 clientId:
export CW_COMPANY_ID=<your company id>
export CW_PUBLIC_KEY=<api member public key>
export CW_PRIVATE_KEY=<api member private key>
export CW_CLIENT_ID=<clientid from developer.connectwise.com>
export CW_SITE=<region host, e.g. api-na.myconnectwise.net, or your on-prem host>
connectwise-manage-cli doctor
在运行任何会访问数据的操作之前,doctor 会确认凭据是否有效。即使凭据被拒绝,它也会以状态码 0 退出,因此脚本应添加 --fail-on error。API Member 的安全角色决定了权限边界——请将其范围限制在你希望 AI 访问的内容内。读取产品目录(procurement get-catalog、sync --resources procurement-catalog)需要该角色具有 Procurement > Product Catalog 的查询权限,否则 ConnectWise 会拒绝目录调用。
此技能的功能
| MSP 常问的问题 | 命令 |
|---|---|
| 本周处理过但没有记录任何工时的工单有哪些? | connectwise-manage-cli unbilled --since 7d |
| 哪些客户即将超出其包时协议的额度? | connectwise-manage-cli agreement-burn --period 30d |
| Help Desk 看板当前情况如何——工单时长、负责人、优先级分别是什么? | connectwise-manage-cli board "Help Desk" |
| 哪些未关闭工单已经五天无人处理? | connectwise-manage-cli stale --days 5 |
| 谁还有余力处理下一个工单? | connectwise-manage-cli workload |
| 哪些工单尚未分配? | connectwise-manage-cli board "Help Desk" --unassigned |
| 某个客户的所有信息——联系人、协议、配置、未关闭工单? | connectwise-manage-cli account AcmeCorp |
| 为 API 编写一个有效的 conditions 筛选条件 | connectwise-manage-cli condition build --field board/name --op = --value "Help Desk" |
除这些视图外,完整的 ConnectWise PSA REST 接口(service、time、company、finance、project、sales、procurement、system)也以类型化子命令的形式开放——例如 service get-tickets、time post-entries、company get-companies 等数百个命令,且每个命令也都可作为 MCP 工具使用。
完整命令参考:guide.md。有关 AI Agent 的操作约定(--agent、--dry-run、何时应在修改数据前确认),请参阅 AGENTS.md。
有何不同
大多数 ConnectWise Manage 集成和 MCP 服务都会把每个问题转发为实时 API 调用。查询单条记录时,这样没问题。但当你要问“这个月我们为所有客户关闭了哪些工单,却没有记录任何工时”时,规模一大就行不通了——每次实时调用都必须使用严格的条件语法,哪怕引号错一个,返回结果也会悄无声息地变成空结果。
这个技能会将 ConnectWise Manage 同步到一个带全文搜索的本地 SQLite 镜像中。聚合类问题只需执行一次本地 SQL 联接:响应迅速、可离线使用,而且 AI 看到的是答案,而不是原始数据。unbilled、account 和 agreement-burn 等复合命令会联接工单、工时记录、公司、联系人、协议和配置项——无状态 API 封装无法做到这一点。如果确实需要实时筛选查询,condition build 会组装经过验证的条件表达式,确保 API 调用一次成功。
解决的痛点
未记录的工时会直接造成收入流失。MSP 咨询公司 Bering McKinley 一针见血地指出其代价:“可计费工时流失、盈利能力下降、数据不完整导致决策失当,以及客户不满”;第三方评测也称,工时录入问题是 MSP 社区中最常被提及的 ConnectWise 痛点。技术人员关闭工单时没有录入工时,直到开票时才有人发现,因为 Manage 没有统一视图,能将已关闭的工单与其记录的工时联接起来。协议额度消耗情况和客户 360° 视图问题也常常引发同样的导出到 Excel 操作:数据明明在 PSA 中,但要跨实体组合数据,只能一页页地翻阅门户,或者付费购买 BI 插件。
这个技能可以帮你解决这些问题:
connectwise-manage-cli unbilled --since 7d- 本周由你处理或关闭、但记录工时为零(或低于阈值)的工单。每次账单截止前运行。connectwise-manage-cli agreement-burn --period 30d- 显示每份协议已消耗的工时与额度,并标记超限情况。在客户超出额度前,及时发现不盈利的客户。connectwise-manage-cli stale --days 5- 按最早更新时间排序,列出长期未更新、正在积压的未结工单。每天用于维护看板。connectwise-manage-cli workload- 显示每位技术人员的未结工单数量和最早工单的处理时长,方便将下一张工单分配给工作量最轻的人。connectwise-manage-cli account AcmeCorp- 在一张卡片中汇总过去需要查看五个屏幕才能了解的客户信息。
更多背景说明请参阅 pain-point.md。
常见问题
有 ConnectWise Manage 的 MCP 服务吗?
有。这是一个免费的 ConnectWise Manage(现名为 ConnectWise PSA)开源 MCP 服务。它在你自己的计算机上运行,支持云端和本地部署的 Manage,并可连接 Claude Desktop、Claude Code 及其他支持 MCP 的 Agent。所有安装方式均列于60 秒内完成安装,Agent 设置指南则介绍了如何将其接入其他 Agent。在首次提出需要跨表查询的问题前,先运行一次 connectwise-manage-cli sync(或让你的 Agent 同步 ConnectWise)。
其他社区开发的 ConnectWise Manage MCP 服务包括 WYRE 的 connectwise-manage-mcp 和 MSPStack 的 mcp-connectwise-psa。本服务会在本地保存 PSA 的 SQLite 副本,因此在云端或本地部署的 Manage 上,查询工单、工时和协议的联接信息时,无需再次调用 API,即可从本地副本中获得答案。MSPStack 的服务也能通过只读 SQL 查询 Manage 数据库来回答跨表问题,其 README 说明了本地部署时的用法;本服务只需 API 访问权限,无需数据库登录权限。本服务还提供 condition build 命令,可生成有效的条件筛选器。
这能与 ChatGPT 配合使用吗?
当前版本不支持。ChatGPT(Plus、Pro、Team、Business、Enterprise 和 Education 计划;Free 目前尚未开放 Developer Mode)只能通过 HTTPS 连接到远程 MCP 服务,这意味着必须以 HTTP 模式运行 ConnectWise Manage MCP 服务。在此版本中,HTTP 模式无需密码,会监听所有网络接口,而且你打开的网页也能访问它,因此在重新发布连接器之前,请勿运行它或将它置于隧道之后;mcp-install.md 中的安全说明解释了原因。在此之前,请使用 Claude Desktop、Claude Code 或 Codex。
这能与 Codex、Cursor、Windsurf、Cline、Copilot 或 Gemini 配合使用吗?
可以——它们都支持 MCP。跨工具安装命令见上方的对照表,深入介绍见 docs/which-agent.md。
我需要懂编程吗?
不需要。推荐的安装方式是将一句话粘贴到 Claude Code 或 Codex 中——你的 Agent 会读取 SKILL.md 并完成安装。备用方式是按操作系统使用一行安装命令(bash 或 PowerShell)。这两种方式都不需要编写代码。你只需输入一次 ConnectWise Manage 凭据。
我的 ConnectWise Manage 数据安全吗?
你的数据保留在自己的机器上。CLI 和 MCP 服务都是本地二进制文件。SQLite 镜像存放在你用户帐户下的目录中。AI Agent 只能看到 CLI 返回的内容——通常是查询结果,而不是原始批量数据。凭据从你的环境或 Agent 配置中读取;MSP Skills 绝不会将其打包进此仓库或传输到任何地方。
这会触及我的 ConnectWise API 速率限制吗?
本地镜像的作用是避免读取操作调用 API。首次同步后,跨实体视图(unbilled、account、agreement-burn、board、stale、workload)会在本地 SQLite 上运行,不会调用 API。实时调用会遵守 --rate-limit 限速设置。注意:ConnectWise 的列表端点没有“自某时起变更”参数,因此普通的 sync 会重新获取每项资源的全部数据,而不只是变更的部分(你会看到 resource_not_incremental 警告)——对于有多年历史数据的租户,请像下方所示使用条件筛选器限定同步范围。
我有多年的历史数据——如何让同步和读取保持快速?
ConnectWise 列表端点没有声明时间筛选参数,因此普通的 sync 会重新获取每项资源的全部数据,而 --since 对同步本身不起作用。以下两种方法可以让数据量大的租户保持快速:
- 使用条件筛选器限定同步范围。
sync不接受资源位置参数:使用--resources指定资源,并通过--resource-param <resource>:<key>=<value>附加条件(每个要限定范围的资源重复指定一组参数)。先用condition build构造有效表达式:
这样只会获取你指定的数据范围,而不是全部历史数据。connectwise-manage-cli sync --resources service-tickets --resource-param "service-tickets:conditions=lastUpdated > [2025-01-01T00:00:00Z]" - 读取时使用本地数据。 跨实体视图会读取本地镜像。
search默认使用自动模式(会先尝试实时 API);添加--data-source local(并可选添加--type <resource>)即可完全离线运行,还可以通过--timeout 2m为耗时较长的命令增加超时时间。MCPsearch工具本身只使用本地数据,因此运行在 MCP 服务上的 Agent 不会触发实时搜索路径。
这是用于 ConnectWise PSA 还是 ConnectWise Manage?
两者是同一款产品——ConnectWise 已将 Manage 更名为 ConnectWise PSA。此技能面向 Manage REST API(v4_6_release/apis/3.0),这两个名称指的都是该 API。它不涵盖 ConnectWise Automate——那是另一款产品,有独立的 API。
它能用于本地部署的 ConnectWise Manage 吗?
可以。CW_SITE 接受你自己的服务器主机名以及云区域主机名;无论哪种情况,CLI 都会构建标准的 v4_6_release/apis/3.0 基础 URL。
这会取代我的 ConnectWise 门户吗?
不会,也无意取代它。门户仍然最适合在应用内执行拖放式派单和编辑发票等工作流。此技能可将 PSA 数据提供给你已在使用的 AI Agent,并回答无法通过单个门户页面汇总的跨实体问题。
需要付费吗?
免费,采用 Apache-2.0 许可。你只需为使用的 AI Agent(Claude、ChatGPT、Codex 等)付费,费用由你的 AI 提供商收取,而非由我们收取。
安全模型
| 层级 | 示例 | 推荐的 Agent 策略 |
|---|---|---|
| 读取 | unbilled、account、agreement-burn、board、stale、workload、search、任何 get-* | 允许 |
| 写入(常规) | time post-entries、service post-tickets、service patch-tickets-by-id、company patch-companies-by-id | 使用 --dry-run 预览(需主动启用,并非默认行为),然后经审核后执行写入 |
| 破坏性操作 | service delete-tickets-by-id、company delete-companies-by-id、company delete-configurations-bulk | 仅限人工参与 |
| 凭据/安全 | system post-members-by-member-identifier-tokens、company post-contacts-request-password | 仅限人工参与 |
默认情况下,二进制文件不会限制写入操作——--dry-run 会预览请求而不发送,但必须由你的 Agent 传入此标志。应在 Agent 的策略中设置关卡:预览、显示确切命令、征得批准,然后执行。
最强有力的控制措施是你授予 ConnectWise Manage 凭据的权限范围——CLI 只能执行凭据获准执行的操作。完整详情(包括如何限制权限)请参阅 governance.md。
状态
Beta 版。已针对 ConnectWise Manage API 功能范围进行验证,并在每周 Build Sessions 中与实际运行该工具、连接自有生产租户的 MSP 一起验证。请在 compoundingteams.com/build-sessions RSVP。
标准。 符合开放的 Agent Skills 规范(Anthropic,2025 年 12 月;支持 40 多个 Agent)。兼容 MCP,可与任何支持 MCP 的 Agent 配合使用,包括 Hermes。已为 OpenClaw 做好准备(frontmatter 已预先配置,等待 OpenClaw 发布)。
由 Servosity 维护。采用 Apache-2.0 许可。使用 CLI Printing Press 构建。最后更新:2026-06-05。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。