orb-cloud-mcp
# orb-cloud-mcp



[](https://codecov.io/gh/briandconnelly/orb-cloud-mcp)
An [MCP](https://modelcontextprotocol.io/) server for [Orb Cloud](https://orb.net/product/orb-cloud) device management. Exposes your Orb Cloud organizations and devices to any MCP-compatible client (Claude Desktop, Cursor, etc.).
## Tools and resources
**Tools**
| Tool | Description |
|------|-------------|
| `list_organizations` | List all organizations accessible with your API key |
| `list_devices` | List devices in an organization — hardware info, location, firmware, and configuration (cached) |
| `get_device_telemetry` | Real-time connectivity status and Orb performance scores for devices in an organization |
| `trigger_speedtest` | Trigger a `content` or `top` speed test on a device |
| `configure_temp_datasets` | Enable temporary data push from a device to a custom endpoint |
**Resources**
| URI | Description |
|-----|-------------|
| `orb://organizations` | All accessible organizations (cached) |
| `orb://organizations/{organization_id}/devices` | Stable device info for an organization (cached) |
`list_devices` and `list_organizations` results are cached for 5 minutes by default (see [Configuration](#configuration)).
## Requirements
- Python 3.10+
- An Orb Cloud API token — requires a [Plus plan or above](https://orb.net/product/orb-cloud). Generate a token in the Orb Cloud panel under **Settings → API Keys**.
## Installation
```bash
pip install orb-cloud-mcp
```
## Configuration
| Environment variable | Required | Default | Description |
|----------------------|----------|---------|-------------|
| `ORB_CLOUD_API_KEY` | Yes | — | Your Orb Cloud API token |
| `ORB_CLOUD_CACHE_TTL` | No | `300` | Cache TTL in seconds for stable data. Set to `0` to disable caching. |
### Claude Desktop
The config file location varies by platform:
- **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
- **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`
- **Linux:** `~/.config/Claude/claude_desktop_config.json`
```json
{
"mcpServers": {
"orb-cloud": {
"command": "uvx",
"args": ["orb-cloud-mcp"],
"env": {
"ORB_CLOUD_API_KEY": "your-token-here"
}
}
}
}
```
### Cursor and other MCP clients
```json
{
"mcpServers": {
"orb-cloud": {
"command": "uvx",
"args": ["orb-cloud-mcp"],
"env": {
"ORB_CLOUD_API_KEY": "your-token-here"
}
}
}
}
```
## Disclaimer
This tool is not officially affiliated with Orb. For official support, visit [orb.net](https://orb.net).
TDQS
Scored across 5 tools
Each tool targets a distinct resource and action: organizations, device configuration, live telemetry, speed tests, and temporary dataset configuration. The descriptions for list_devices and get_device_telemetry explicitly differentiate stable config from real-time data, eliminating ambiguity.
All tool names follow a consistent verb_noun pattern: list_organizations, list_devices, get_device_telemetry, trigger_speedtest, configure_temp_datasets. The mix of 'list' and 'get' and 'trigger' and 'configure' is semantically appropriate and predictable.
Five tools is a well-scoped size for an Orb Cloud device management and monitoring server. Each tool covers a distinct operation without unnecessary overhead or bloat, making the set easy to navigate.
The server covers core workflows: listing organizations and devices, retrieving telemetry, running diagnostics (speedtest), and temporary configuration changes. Minor gaps exist, such as permanent device configuration updates or direct device control (e.g., reboot), but agents can accomplish primary monitoring and testing tasks without dead ends.