> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rallied.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# ConnectWise RMM

> Connect ConnectWise RMM (formerly Command/Continuum) so the agent can monitor endpoints, run automation scripts, and manage tickets.

Connect ConnectWise RMM so the agent can look up devices, run automation scripts on managed endpoints, view patch status, and create or read service tickets across every client in your Asio tenant.

<Note>
  ConnectWise RMM is configured in **MSP Settings → Integrations**.
</Note>

## How to connect

ConnectWise RMM uses API credentials issued from the Asio platform. You'll generate them in the ConnectWise admin UI before starting.

<Steps>
  <Step title="Generate API credentials in ConnectWise">
    In the Asio platform UI (`auplatform.connectwise.com`, `itsupport247.net`, or `euplatform.connectwise.com` depending on your region), go to **Integrations → API Access → Generate API Access**.

    Select the following scopes at minimum:

    * **Devices** — Read
    * **Automation** — Read + Create
    * **Companies** — Read
    * **Agent** — Read
    * **Assets** — Read

    The more write scopes you grant, the wider the range of actions the agent can take. Copy the **Client ID** and **API Key** shown after generation — the API key is only displayed once.
  </Step>

  <Step title="Open MSP Integrations">
    In the Rallied.ai dashboard, navigate to **MSP Settings → Integrations**.
  </Step>

  <Step title="Connect ConnectWise RMM">
    Find the ConnectWise RMM card and click **Connect**. A credentials form appears.
  </Step>

  <Step title="Enter your credentials">
    Fill in:

    * **Client ID** — the Client ID from the Asio API Access page
    * **Client Secret** — the API key generated alongside the Client ID
    * **Region** — `au` (default), `na`, or `eu`, matching your ConnectWise instance
  </Step>

  <Step title="Save and confirm">
    Click **Save**. Rallied.ai authenticates against the Asio OAuth2 endpoint, stores the access token, and the card shows **Connected** when complete.
  </Step>
</Steps>

<Info>
  After connecting, Rallied.ai automatically discovers every **active shell script** in your ConnectWise RMM tenant and registers each one as a per-script tool. Each script gets its own policy you can tune (auto, approval-needed, never) from the integration detail page.
</Info>

## How the agent uses it

When a user asks about a server, workstation, or company managed in ConnectWise RMM — for example *"is DC01 healthy?"* or *"run the disk cleanup script on Maria's laptop"* — the agent:

1. Resolves the device by name using `cw-rmm-list-devices` (optionally scoped to the company).
2. Pulls health, patch status, or system state with `cw-rmm-get-device`, `cw-rmm-get-device-state`, or `cw-rmm-get-device-patches`.
3. If remediation is needed, picks the right shell script and schedules it on the next agent check-in via the per-script tool (e.g. `cw-rmm-script-disk-cleanup`).

The agent also reads and creates tickets in the same RMM tenant so it can leave a paper trail alongside automation runs.

## Tools

### Static tools

| Tool                                        | Default policy  | Description                                                    |
| ------------------------------------------- | --------------- | -------------------------------------------------------------- |
| `connectwise_rmm:cw-rmm-list-companies`     | Auto            | List all companies (clients) in ConnectWise RMM                |
| `connectwise_rmm:cw-rmm-get-company`        | Auto            | Get details for a specific company                             |
| `connectwise_rmm:cw-rmm-list-sites`         | Auto            | List sites across the partner or for one company               |
| `connectwise_rmm:cw-rmm-list-devices`       | Auto            | List managed endpoints, optionally filtered by company or site |
| `connectwise_rmm:cw-rmm-get-device`         | Auto            | Get hardware, OS, and network details for an endpoint          |
| `connectwise_rmm:cw-rmm-get-device-state`   | Auto            | Get live CPU, memory, disk, and process state for an endpoint  |
| `connectwise_rmm:cw-rmm-get-device-patches` | Auto            | List pending, installed, and failed patches for an endpoint    |
| `connectwise_rmm:cw-rmm-list-device-groups` | Auto            | List configured device groups                                  |
| `connectwise_rmm:cw-rmm-list-scripts`       | Auto            | List all automation scripts available in the tenant            |
| `connectwise_rmm:cw-rmm-list-shell-scripts` | Auto            | List shell scripts (PowerShell, Bash, etc.)                    |
| `connectwise_rmm:cw-rmm-list-tasks`         | Auto            | List automation tasks                                          |
| `connectwise_rmm:cw-rmm-get-tasks-summary`  | Auto            | Get a summary of tasks across the tenant or for one endpoint   |
| `connectwise_rmm:cw-rmm-run-task`           | Approval needed | Schedule a script on one or more endpoints (generic runner)    |
| `connectwise_rmm:cw-rmm-get-task-results`   | Auto            | Get execution results for a task instance                      |
| `connectwise_rmm:cw-rmm-list-tickets`       | Auto            | List service tickets                                           |
| `connectwise_rmm:cw-rmm-get-ticket`         | Auto            | Get full details of a specific ticket                          |
| `connectwise_rmm:cw-rmm-create-ticket`      | Approval needed | Create a new service ticket                                    |

### Dynamic script tools

Every active shell script in your ConnectWise RMM tenant is also registered as its own tool named `cw-rmm-script-<slug>`. Each one accepts the script's published parameters plus a list of target endpoint UUIDs (or a company ID if you set `targetType: COMPANY`).

The agent's policy classifier picks a default policy per script based on its name and description, and you can override it from the **ConnectWise RMM** integration detail page in the dashboard.

## Policies

ConnectWise RMM is an integration. Per-tool and per-script policies are configured on the **ConnectWise RMM** integration detail page (open it from **MSP Settings → Integrations**).

See [Policies](/dashboard/policies) for an overview of policy modes.
