Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

ConnectWise Automate

OCI · GHCR.IO/WYRE-AI/CONNECTWISE-AUTOMATE-MCP

MCP server for ConnectWise Automate RMM — computers, clients, alerts, and scripts.

+33 this week 42 Trust /100

Last scanned (18 hours ago)

Scores higher than 58% of OCI servers

Category Monitoring and Observability

Trust breakdown (7 categories)

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
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.

Changelog

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.

Diagnostics

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 →

MCP tools · 20 exposed · ~1,791 tokens

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 →

Tool Tokens
cwautomate_alerts_get ~43

Get details for a specific alert by ID. Alerts are read-only in the Automate API.

NameTypeReqDescription
alert_idnumberyesThe 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.

NameTypeReqDescription
client_idnumber–Filter alerts by client ID
computer_idnumber–Filter alerts by computer ID
limitnumber–Maximum number of results per page (default: 50)
severitynumber–Filter by severity ID (matches the alert's Severity.Id)
skipnumber–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

NameTypeReqDescription
citystring–City
countrystring–Country
namestringyesClient name
phonestring–Phone number
statestring–State/Province
zipstring–ZIP/Postal code

No output schema declared.

No examples provided.

cwautomate_clients_get ~46

Get details for a specific client by ID

NameTypeReqDescription
client_idnumberyesThe client ID
include_locationsboolean–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.

NameTypeReqDescription
limitnumber–Maximum number of results per page (default: 50)
skipnumber–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

NameTypeReqDescription
citystring–New city
client_idnumberyesThe client ID to update
countrystring–New country
namestring–New client name
phonestring–New phone number
statestring–New state/province
zipstring–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

NameTypeReqDescription
computer_idnumberyesThe 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.

NameTypeReqDescription
client_idnumber–Filter computers by client ID
limitnumber–Maximum number of results per page (default: 50)
location_idnumber–Filter computers by location ID
skipnumber–Number of results to skip for pagination
statusstring–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.

NameTypeReqDescription
command_idstring–Catalog command ID to issue instead of auto-selecting the reboot command, from cwautomate_commands_list
computer_idnumberyesThe 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.

NameTypeReqDescription
command_idstringyesThe catalog command ID, from cwautomate_commands_list
computer_idnumberyesThe computer ID to send the command to
parametersarray–Positional parameters for the command, in the order the command expects them
timeout_secondsnumber–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

NameTypeReqDescription
computer_idnumberyesThe computer ID to run the script on
parametersobject–Script parameters as key-value pairs
script_idnumberyesThe 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)

NameTypeReqDescription
client_idnumber–Limit search to a specific client
limitnumber–Maximum number of results (default: 50)
querystringyesSearch 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.

NameTypeReqDescription
domainstringyesThe 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.

NameTypeReqDescription
computer_idsarrayyesArray of computer IDs to run the script on
parametersobject–Script parameters as key-value pairs
prioritystring–Execution priority (default: normal)
script_idnumberyesThe script ID to execute
skip_offlineboolean–Skip the run entirely if the agent is offline at fire time
timeout_secondsnumber–How long to wait for completion before returning a partial result (default: 90). The script keeps running server-side either way.
waitboolean–Wait for the run to finish (default: true). Set false to schedule and return immediately without an outcome.
wake_offlineboolean–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.

NameTypeReqDescription
script_idnumberyesThe 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.

NameTypeReqDescription
computer_idnumberyesThe computer ID to read script history for
limitnumber–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.

NameTypeReqDescription
folder_idnumber–Filter scripts by folder ID
limitnumber–Maximum number of results per page (default: 50)
searchstring–Search scripts by name
skipnumber–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

NameTypeReqDescription
computer_idnumberyesThe 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.

Install

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

# add to Claude Code
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.

Common questions

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.