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

# MCP Tools

> Available tools exposed by the crcli MCP server.

All tools accept device/group **hostnames or names** in addition to UUIDs — no UUID hunting required.

## Device Tools

<ResponseField name="list_devices" type="tool">
  List all devices for your tenant.
</ResponseField>

<ResponseField name="get_device" type="tool">
  Get details for a single device by hostname or UUID.
</ResponseField>

<ResponseField name="list_device_backups" type="tool">
  List configuration backups for a device.
</ResponseField>

<ResponseField name="run_script" type="tool">
  Run a shell script or command on a device via SSH. Returns stdout and stderr.
</ResponseField>

<ResponseField name="push_file" type="tool">
  Upload a local file to a device.
</ResponseField>

<ResponseField name="pull_file" type="tool">
  Download a file from a device to a local directory.
</ResponseField>

<ResponseField name="icontrol_request" type="tool">
  Make an authenticated iControl REST API request to a device via the managed session proxy. Supports GET, POST, PUT, PATCH, DELETE.
</ResponseField>

## Device Group Tools

<ResponseField name="list_device_groups" type="tool">
  List all device groups for your tenant.
</ResponseField>

<ResponseField name="get_device_group" type="tool">
  Get details for a single device group by name or UUID.
</ResponseField>

<ResponseField name="list_devices_in_group" type="tool">
  List member devices of a device group.
</ResponseField>

<ResponseField name="run_script_on_group" type="tool">
  Run a script on a device group's active (or standby) device.
</ResponseField>

<ResponseField name="push_file_to_group" type="tool">
  Upload a local file to every device in a device group.
</ResponseField>

<ResponseField name="pull_files_from_group" type="tool">
  Download a file from every device in a group. Files are saved as `<hostname>_<filename>`.
</ResponseField>

## Context Tools

<ResponseField name="get_context" type="tool">
  Get the active tenant context currently in use.
</ResponseField>

## Tool Reference Table

| Tool                    | Description                              |
| ----------------------- | ---------------------------------------- |
| `list_devices`          | List all devices for your tenant         |
| `get_device`            | Get details for a device                 |
| `list_device_groups`    | List all device groups                   |
| `get_device_group`      | Get details for a device group           |
| `list_devices_in_group` | List member devices of a device group    |
| `list_device_backups`   | List backups for a device                |
| `run_script`            | Run a script on a device via SSH         |
| `push_file`             | Upload a local file to a device          |
| `pull_file`             | Download a file from a device            |
| `run_script_on_group`   | Run a script on a device group           |
| `push_file_to_group`    | Upload a file to a device group          |
| `pull_files_from_group` | Pull a file from every device in a group |
| `icontrol_request`      | Make an iControl REST API call           |
| `get_context`           | Get the active tenant context            |
