ConnectWise Automate
OCI · GHCR.IO/WYRE-AI/CONNECTWISE-AUTOMATE-MCP
MCP server for ConnectWise Automate RMM — computers, clients, alerts, and scripts.
Available components
Last scanned (18 hours ago)
Scores higher than 58% of OCI servers
Category Monitoring and Observability
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security0
- No malware scan is available for this kind of package: the supply-chain vendors we use do not cover it. This is a permanent gap in our coverage, not a finding about the package.Unverified
- Known CVEs could not be checked: this artifact ships no SBOM or dependency manifest, so there is no dependency list to read.Unverified
- Install-script risk not yet assessed.Unverified
- Dependency health could not be checked: this artifact ships no SBOM or dependency manifest, so there is no dependency list to read.Unverified
Provenance & Transparency45
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (Apache-2.0).Pass
- Actively maintained (last published 3 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability85
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (good).Pass
- Tool/resource definitions use about 1813 tokens (~86/item across 21 items; 20 tools + 1 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management10
- Stability observed for 3 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety75
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 0 of 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "cwautomate_scripts_execute" implies "execute" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
- An AI judge read all 21 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
- Supports UI / widget rendering.Pass
Unverified: 1 category
A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 17 Oct 26 +1
- Stability: unverified → 0.07 ▲ functional
- 15 Oct 26 +32
- Injection markers: unverified → pass ▲ security
- First check of Judged manipulation: pass security
- Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
- Tool coverage: unverified → 100 ▲ functional
- Schema quality: unverified → 100 ▲ functional
- MCP protocol: unverified → pass ▲ functional
- First check of Schema quality: fail functional
- First check of Capabilities: pass functional
- First check of Destructive annotations: 0 functional
- First check of Schema quality: pass functional
- First check of Schema quality: good functional
- First check of Tool coverage: 100 functional
- 14 Oct 26 0
- Package version: v2.0.3 → v2.0.4 functional
- 12 Oct 26 0
- Security disclosure: unverified → fail ▼ functional
- 11 Oct 26 9
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 18 Oct 2026 · Analysed oci/ghcr.io/wyre-ai/connectwise-automate-mcp@v2.0.4
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | oci |
| Reason | No attestation published |
Background: How many MCP packages publish verified provenance →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
cwautomate_alerts_get ~43
Get details for a specific alert by ID. Alerts are read-only in the Automate API.
| Name | Type | Req | Description |
|---|---|---|---|
| alert_id | number | yes | The alert ID |
No output schema declared.
No examples provided.
cwautomate_alerts_list ~129
List alerts in ConnectWise Automate with optional filtering by computer, client or severity. Alerts are read-only in the Automate API: they carry no status and cannot be acknowledged or closed through it.
| Name | Type | Req | Description |
|---|---|---|---|
| client_id | number | – | Filter alerts by client ID |
| computer_id | number | – | Filter alerts by computer ID |
| limit | number | – | Maximum number of results per page (default: 50) |
| severity | number | – | Filter by severity ID (matches the alert's Severity.Id) |
| skip | number | – | Number of results to skip for pagination |
No output schema declared.
No examples provided.
cwautomate_clients_create ~77
Create a new client in ConnectWise Automate
| Name | Type | Req | Description |
|---|---|---|---|
| city | string | – | City |
| country | string | – | Country |
| name | string | yes | Client name |
| phone | string | – | Phone number |
| state | string | – | State/Province |
| zip | string | – | ZIP/Postal code |
No output schema declared.
No examples provided.
cwautomate_clients_get ~46
Get details for a specific client by ID
| Name | Type | Req | Description |
|---|---|---|---|
| client_id | number | yes | The client ID |
| include_locations | boolean | – | Include location details in the response |
No output schema declared.
No examples provided.
cwautomate_clients_list ~56
List all clients in ConnectWise Automate with optional filtering.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | – | Maximum number of results per page (default: 50) |
| skip | number | – | Number of results to skip for pagination |
No output schema declared.
No examples provided.
cwautomate_clients_update ~96
Update an existing client in ConnectWise Automate
| Name | Type | Req | Description |
|---|---|---|---|
| city | string | – | New city |
| client_id | number | yes | The client ID to update |
| country | string | – | New country |
| name | string | – | New client name |
| phone | string | – | New phone number |
| state | string | – | New state/province |
| zip | string | – | New ZIP/postal code |
No output schema declared.
No examples provided.
cwautomate_commands_list ~50
List the Automate command catalog. Commands are a fixed, server-defined set addressed by ID — call this to find the command ID before using cwautomate_computers_run_command.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
cwautomate_computers_get ~35
Get details for a specific computer by its ID
| Name | Type | Req | Description |
|---|---|---|---|
| computer_id | number | yes | The computer ID |
No output schema declared.
No examples provided.
cwautomate_computers_list ~106
List computers in ConnectWise Automate. Can filter by client, location, or online status.
| Name | Type | Req | Description |
|---|---|---|---|
| client_id | number | – | Filter computers by client ID |
| limit | number | – | Maximum number of results per page (default: 50) |
| location_id | number | – | Filter computers by location ID |
| skip | number | – | Number of results to skip for pagination |
| status | string | – | Filter by online status (default: all) |
No output schema declared.
No examples provided.
cwautomate_computers_reboot ~170
Reboot a computer and wait for the command's result. Automate has no dedicated restart route: the reboot is issued as a catalog command (POST /Computers/{id}/CommandExecute). By default the first catalog entry named like 'Reboot' or 'Restart' is used; pass command_id (from cwautomate_commands_list) to choose a specific one. The API user's command level caps which commands may be issued. A result with completed: false includes execution_id and poll_errors so the queued reboot can be re-read instead of issued again.
| Name | Type | Req | Description |
|---|---|---|---|
| command_id | string | – | Catalog command ID to issue instead of auto-selecting the reboot command, from cwautomate_commands_list |
| computer_id | number | yes | The computer ID to reboot |
No output schema declared.
No examples provided.
cwautomate_computers_run_command ~183
Issue a catalog command to a computer and wait for its result. The command_id must come from cwautomate_commands_list; free-text commands are not accepted by Automate. Note that the API user's command level and the group-level 'Send Commands' grant silently cap which commands may be issued. A result with completed: false includes execution_id and poll_errors so that execution can be re-read instead of issued again.
| Name | Type | Req | Description |
|---|---|---|---|
| command_id | string | yes | The catalog command ID, from cwautomate_commands_list |
| computer_id | number | yes | The computer ID to send the command to |
| parameters | array | – | Positional parameters for the command, in the order the command expects them |
| timeout_seconds | number | – | How long to wait for the command to finish before returning a partial result (default: 90) |
No output schema declared.
No examples provided.
cwautomate_computers_run_script ~65
Run a script on a specific computer
| Name | Type | Req | Description |
|---|---|---|---|
| computer_id | number | yes | The computer ID to run the script on |
| parameters | object | – | Script parameters as key-value pairs |
| script_id | number | yes | The script ID to execute |
No output schema declared.
No examples provided.
cwautomate_computers_search ~72
Search for computers by name (matches any part of the computer name)
| Name | Type | Req | Description |
|---|---|---|---|
| client_id | number | – | Limit search to a specific client |
| limit | number | – | Maximum number of results (default: 50) |
| query | string | yes | Search query matched against the computer name |
No output schema declared.
No examples provided.
cwautomate_navigate ~139
Discover available ConnectWise Automate tools by domain. Returns tool names and descriptions for the selected domain. All tools are callable at any time — this is a help/discovery aid, not a prerequisite.
| Name | Type | Req | Description |
|---|---|---|---|
| domain | string | yes | The domain to explore: - computers: Endpoint management - list, get, manage computers and devices in ConnectWise Automate - clients: Company management - list and get client/company information and r… |
No output schema declared.
No examples provided.
cwautomate_scripts_execute ~226
Run a script on one or more computers and wait for the result. Automate has no synchronous run, so this schedules the script and polls its history until it finishes, returning the per-computer outcome and any diagnostic message. Use the computers domain to find computer IDs first.
| Name | Type | Req | Description |
|---|---|---|---|
| computer_ids | array | yes | Array of computer IDs to run the script on |
| parameters | object | – | Script parameters as key-value pairs |
| priority | string | – | Execution priority (default: normal) |
| script_id | number | yes | The script ID to execute |
| skip_offline | boolean | – | Skip the run entirely if the agent is offline at fire time |
| timeout_seconds | number | – | How long to wait for completion before returning a partial result (default: 90). The script keeps running server-side either way. |
| wait | boolean | – | Wait for the run to finish (default: true). Set false to schedule and return immediately without an outcome. |
| wake_offline | boolean | – | Send a Wake-on-LAN first if the agent is offline |
No output schema declared.
No examples provided.
cwautomate_scripts_get ~76
Get a script's catalog metadata by ID: its Name, Folder, Comments, the Is*Script kind flags, and the list of Parameters it accepts (useful before cwautomate_scripts_execute). Note the script's Id is a string in this response.
| Name | Type | Req | Description |
|---|---|---|---|
| script_id | number | yes | The script ID |
No output schema declared.
No examples provided.
cwautomate_scripts_history ~91
Get completed script-run history for a computer, including the pass/fail state and Automate's diagnostic message. Use this to pick up the result of a run that was scheduled without waiting, or that outlasted its wait timeout.
| Name | Type | Req | Description |
|---|---|---|---|
| computer_id | number | yes | The computer ID to read script history for |
| limit | number | – | Maximum number of results (default: 50) |
No output schema declared.
No examples provided.
cwautomate_scripts_list ~80
List available scripts in ConnectWise Automate with optional filtering.
| Name | Type | Req | Description |
|---|---|---|---|
| folder_id | number | – | Filter scripts by folder ID |
| limit | number | – | Maximum number of results per page (default: 50) |
| search | string | – | Search scripts by name |
| skip | number | – | Number of results to skip for pagination |
No output schema declared.
No examples provided.
cwautomate_scripts_running ~33
List scripts currently running on a computer
| Name | Type | Req | Description |
|---|---|---|---|
| computer_id | number | yes | The computer ID to check |
No output schema declared.
No examples provided.
cwautomate_status ~18
Show credentials status and available domains
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
How do I install the ConnectWise Automate MCP server?
ConnectWise Automate runs locally as a container image, launched with docker run --rm -i -e CW_AUTOMATE_SERVER_URL -e CW_AUTOMATE_CLIENT_ID -e CW_AUTOMATE_USERNAME -e CW_AUTOMATE_PASSWORD -e CW_AUTOMATE_2FA_CODE -e MCP_TRANSPORT -e AUTH_MODE -e LOG_LEVEL ghcr.io/wyre-ai/connectwise-automate-mcp:v2.0.4. Ready-made configuration for Claude, Cursor, VS Code, Codex and 3 more is on this page, copied from each client's own documentation.
oci · ghcr.io/wyre-ai/connectwise-automate-mcp
claude mcp add wyre-ai-connectwise-automate-mcp -- docker run --rm -i -e CW_AUTOMATE_SERVER_URL -e CW_AUTOMATE_CLIENT_ID -e CW_AUTOMATE_USERNAME -e CW_AUTOMATE_PASSWORD -e CW_AUTOMATE_2FA_CODE -e MCP_TRANSPORT -e AUTH_MODE -e LOG_LEVEL ghcr.io/wyre-ai/connectwise-automate-mcp:v2.0.4
This image reads CW_AUTOMATE_SERVER_URL, CW_AUTOMATE_CLIENT_ID, CW_AUTOMATE_USERNAME, CW_AUTOMATE_PASSWORD, CW_AUTOMATE_2FA_CODE, MCP_TRANSPORT, AUTH_MODE and LOG_LEVEL. Set them in your client's env block for this server; docker run -e passes each one through to the container.
What is the ConnectWise Automate MCP server?
ConnectWise Automate is an MCP server listed in the public MCP registry as io.github.WYRE-AI/connectwise-automate-mcp. MCP server for ConnectWise Automate RMM, computers, clients, alerts, and scripts. This page covers its container image (ghcr.io/wyre-ai/connectwise-automate-mcp).
Is the ConnectWise Automate MCP server safe to use?
ConnectWise Automate scores 42 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the ConnectWise Automate MCP server expose?
ConnectWise Automate exposes 20 tools: cwautomate_navigate, cwautomate_status, cwautomate_computers_list, cwautomate_computers_get, cwautomate_computers_search, and 15 more. Their descriptions and schemas cost roughly 1,791 tokens of context every time the server is loaded.
Is the ConnectWise Automate MCP server still maintained?
ConnectWise Automate is still listed as active in the MCP registry. We last reached this channel on 18 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the ConnectWise Automate MCP server under?
ConnectWise Automate declares the Apache-2.0 licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.