Install the ctrlPi API on a board
pico_ctrlpi_installInstall or update the ctrlPi API agent on Pico W, Pico 2 W, ESP32, ESP32-S3, or ESP32-C3 MicroPython boards, configure Wi-Fi/API settings, and reset the board.
Instructions
Install or update the ctrlPi API agent on a Pico W, Pico 2 W, ESP32, ESP32-S3 or ESP32-C3 running MicroPython (pico-gpio-api or esp32-gpio-api, downloaded from GitHub). Writes app.mpy, upgrader.mpy and main.py (plus boot.py on an ESP32), then config.json (the board's own kept, with this api_key and name), wifi.txt and scripts/cpu-temp.py when missing, and resets the board. It replaces main.py, so ask the user first and pass confirmed: true.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"board_id": "<board_id>",
"wifi_ssid": "<wifi_ssid>",
"confirmed": "<confirmed>"
},
"name": "pico_ctrlpi_install"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Agent name. Left out: the board's own name, else the agent's pico-<serial4> or esp32-<serial4> default; an empty string resets it to that default. | |
| api_key | No | Agent API key. Left out: the board's own key, else your-secret-key (public, so change it). | |
| board_id | Yes | Stable board UID returned by pico_boards_list, or its current serial device path. | |
| confirmed | Yes | Must be true after the user explicitly confirms the install. | |
| wifi_ssid | Yes | Wi-Fi network the agent joins. | |
| wifi_password | No | Wi-Fi password (empty for an open network). |