Skip to content
margeloPublic

About

Command-line client and GitHub Action for Cloud Devices

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

3 Commits

Folders and files

Repository files navigation

ADC

Use Cloud Devices from your terminal, GitHub Actions, or an MCP client.

Homebrew

brew tap margelo/adc https://github.com/margelo/adc.git
brew install margelo/adc/adc

For device connections, install Android Platform Tools if adb is missing.

brew install --cask android-platform-tools

Run adc login for a Platform-connected workspace, or set ADC_API_KEY to a Cloud Devices API key. Use adc run to acquire a device, run a command with ANDROID_SERIAL set, and release the device when the command finishes.

adc run --name smoke -- adb shell getprop sys.boot_completed

GitHub Actions

Give the runner access to adb and store your Cloud Devices API key as the ADC_API_KEY repository secret. Add this step to your workflow.

- uses: margelo/adc@v0.2.0
  with:
    api-key: ${{ secrets.ADC_API_KEY }}
    command: adb shell getprop sys.boot_completed

The action uses the same CLI and releases the device when the command exits. Use api-url to select a different API environment.

MCP

Install uv and create a Cloud Devices API key in Platform. Add this configuration to an MCP client that supports local stdio servers.

{
  "mcpServers": {
    "cloud-devices": {
      "command": "uvx",
      "args": [
        "--python",
        "3.12",
        "--from",
        "agent-device-cloud-cli[mcp] @ git+https://github.com/margelo/adc.git@v0.2.0",
        "adc-mcp"
      ],
      "env": {
        "ADC_API_KEY": "<your-cloud-devices-api-key>"
      }
    }
  }
}

The server can provision, inspect, list, connect to, and release devices, and report usage. Install Android Platform Tools on the same machine to run the adb command returned by connect_device. Release the device when finished.

Build the release archive

python3 scripts/build-release.py dist

Upload the generated archive to the matching GitHub release. Update the formula's version, URL, checksum, and Python resources before publishing a new release.

About

Command-line client and GitHub Action for Cloud Devices

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages