FlipperTalk
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| QFLIPPER_CLI | No | Explicit path to qFlipper-cli | auto |
| FLIPPERTALK_DIALECT | No | Force a firmware family if detection is wrong | auto |
| FLIPPERTALK_TOOLSETS | No | Which tool groups are exposed | all but network |
| FLIPPERTALK_READ_ONLY | No | Withholds every mutating tool | off |
| FLIPPERTALK_LOCAL_ROOTS | No | Confines host file access to an allowlist | |
| FLIPPERTALK_WRITE_CHUNK | No | Bytes per storage-write chunk (64–4096) | 512 |
| FLIPPERTALK_IDLE_TIMEOUT | No | Seconds before an idle connection is released | 120 |
| FLIPPERTALK_ALLOW_DESTRUCTIVE | No | Firmware flash, erase, wipe, restore, recursive delete, DFU reboot | off |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| flipper_alertA | Play the audiovisual alert -- the 'find my Flipper' beep and flash. |
| flipper_app_buttonA | Press a button inside a running app that supports RPC button control, such as the Sub-GHz remote. |
| flipper_app_data_exchangeB | Send a base64 payload to a running app that supports RPC data exchange. |
| flipper_app_exitA | Close the app currently running on the device and return to the desktop. |
| flipper_app_stateA | Report whether an application is currently holding the system. |
| flipper_asset_packA | List or install Momentum asset packs (themes: animations, icons, fonts). Installing copies a local pack folder onto the SD card; selecting it is done on the device and applies at reboot. |
| flipper_buzzerB | Play a tone on the piezo speaker. Frequency 0 stops it. |
| flipper_capabilitiesA | Report what the attached firmware actually supports: family (official, Momentum, Unleashed, RogueMaster), version, the real CLI command list, and which features are present. Call this first when you need to know what is possible on this particular device. |
| flipper_cliA | Run any command on the Flipper's built-in text CLI and return its output. This is the general-purpose escape hatch for anything the other tools do not cover -- run |
| flipper_connection_statusA | Report whether the server currently holds the serial port, and in which protocol mode. |
| flipper_deleteA | Delete a file or empty directory. Recursive deletion requires the server to be started with FLIPPERTALK_ALLOW_DESTRUCTIVE=1. |
| flipper_deploy_fapA | Upload a .fap to the device, verify it by md5, and launch it. The standard inner loop for Flipper app development -- point it at a freshly built .fap and see it running. |
| flipper_diagnosticsA | Run a diagnostic command: running threads (top), uptime, memory (free), system info (neofetch), settings (sysctl), or installed apps (loader list). |
| flipper_disconnectA | Release the serial port. The qFlipper desktop app cannot use the device while this server holds it, so call this before switching to qFlipper. |
| flipper_downloadA | Copy a file from the device to the host filesystem. |
| flipper_file_timestampC | Get a file's modification timestamp. |
| flipper_get_datetimeA | Read the device's real-time clock. |
| flipper_gpio_otgA | Turn the 5V OTG rail on the GPIO header on or off. |
| flipper_gpio_readB | Read the logic level of a GPIO pin. |
| flipper_gpio_set_modeC | Configure a GPIO pin as INPUT or OUTPUT. |
| flipper_gpio_writeB | Set the logic level of a GPIO pin configured as OUTPUT. |
| flipper_i2c_scanA | Scan the i2c bus on the GPIO header for connected devices. |
| flipper_ibuttonA | iButton / 1-Wire keys: read, write and emulate. Subcommand syntax varies between firmware versions and forks, so run flipper_capabilities if a command is rejected; the device's own error text is returned verbatim. |
| flipper_infoA | Get device information: hardware model, name, firmware version, build date, radio stack and protobuf version. |
| flipper_infraredA | Infrared: receive, transmit and use universal remotes. Subcommand syntax varies between firmware versions and forks, so run flipper_capabilities if a command is rejected; the device's own error text is returned verbatim. |
| flipper_inputC | Send a single button event to the device. |
| flipper_input_sequenceA | Send several button presses in order, optionally returning a screenshot afterwards. Use this to navigate to a screen and see the result in one call. |
| flipper_js_probeA | Report which JavaScript modules this firmware actually provides. Module sets differ substantially between official, Momentum and Unleashed, so check rather than assume before writing a script. |
| flipper_launch_appA | Launch an application by name (e.g. 'Sub-GHz') or by full .fap path. |
| flipper_ledA | Set an RGB LED channel or the display backlight brightness. |
| flipper_list_devicesA | List attached Flipper Zero devices, the current connection state, and whether qFlipper-cli is installed. Start here when anything is not working. |
| flipper_list_dirA | List the contents of a directory on the device. Paths start with /ext (SD card) or /int (internal storage). |
| flipper_list_scriptsA | List the JavaScript files stored on the device. |
| flipper_logA | Capture the device's live log stream for a fixed number of seconds. Useful for watching an app's FURI_LOG output while it runs. |
| flipper_md5sumA | Compute the md5 of a file on the device, without transferring it. |
| flipper_mkdirA | Create a directory on the device, including any missing parents. |
| flipper_momentum_settingsC | Read Momentum's on-device settings file. |
| flipper_nfcA | NFC: detect, dump, emulate and send raw commands. Subcommand syntax varies between firmware versions and forks, so run flipper_capabilities if a command is rejected; the device's own error text is returned verbatim. |
| flipper_notifyA | Get the device's attention: vibrate, flash an LED, or beep. A shortcut over flipper_led / flipper_vibro / flipper_buzzer. |
| flipper_onewire_searchA | Search the 1-Wire bus on the GPIO header for connected devices. |
| flipper_power_infoA | Get battery and charging telemetry: charge level, voltage, current, temperature and health. |
| flipper_property_getB | Read device properties by key prefix (e.g. 'devinfo', 'pwrinfo'). More structured than parsing CLI output. |
| flipper_read_app_reportsA | List scan output that apps have saved to the SD card (for example a BLE scanner's reports). This is the honest route to BLE and WiFi data, which the firmware itself cannot provide. |
| flipper_read_fileA | Read a file from the device. UTF-8 text is returned directly; binary content is returned base64-encoded. |
| flipper_rebootA | Reboot the device. OS mode is a normal restart; DFU and UPDATE modes require FLIPPERTALK_ALLOW_DESTRUCTIVE=1. |
| flipper_renameB | Rename or move a file or directory on the device. |
| flipper_rfidA | 125kHz RFID: read, write and emulate. Subcommand syntax varies between firmware versions and forks, so run flipper_capabilities if a command is rejected; the device's own error text is returned verbatim. |
| flipper_run_jsA | Run JavaScript on the device and return its output. Give inline |
| flipper_save_scriptB | Save a JavaScript file to /ext/apps/Scripts so it can be run from the device's Apps > Scripts menu. |
| flipper_scan_nearbyA | Answer 'what is around me?' by sweeping every sensor this hardware genuinely supports, returning structured results plus a plain-language summary. IMPORTANT: sources that cannot be run are reported as NOT CHECKED with a reason, never as 'nothing found' -- BLE and WiFi in particular cannot be scanned by any Flipper firmware. Read each source's |
| flipper_screen_recordA | Capture a run of frames, optionally pressing keys between them, so animations and screen transitions can be reviewed rather than a single still. Holds one screen stream open for the whole capture. |
| flipper_screenshotA | Capture the device's screen and return it as an image. Use this to see what an app actually renders rather than inferring it from code. |
| flipper_sense_capabilitiesA | Report which sensing sources this device can and cannot use, and why. Check here before promising a user that something can be detected. |
| flipper_set_datetimeB | Set the device clock, defaulting to the host's current local time. |
| flipper_statB | Get the type and size of a single file or directory. |
| flipper_storage_infoA | Get total, used and free space for a storage volume. |
| flipper_subghzA | Sub-GHz radio: receive, transmit, decode and chat. Subcommand syntax varies between firmware versions and forks, so run flipper_capabilities if a command is rejected; the device's own error text is returned verbatim. |
| flipper_tar_extractB | Extract a .tar/.tgz archive already on the device. |
| flipper_type_textA | Type a string directly into the device, one character at a time. Far better than arrow-keying an on-screen keyboard for filling in text fields. Requires Momentum or RogueMaster firmware. |
| flipper_unlock_desktopA | Unlock the device's desktop if it is locked. |
| flipper_uploadA | Upload a host file to the device and verify it by md5. Fails loudly if the bytes on the device do not match what was sent. |
| flipper_vibroB | Turn the vibration motor on or off. |
| flipper_virtual_displayA | Show host-rendered graphics on the device screen. Send a 1024-byte packed 128x64 framebuffer as base64. |
| flipper_write_fileB | Write a file to the device, creating parent directories as needed. |
| qflipper_backupA | Back up the device's internal memory to a host directory using qFlipper-cli. Releases the serial port first. |
| qflipper_statusA | Report whether qFlipper-cli is installed, where, and which of its operations are currently enabled. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ReconGrunt/FlipperTalk'
If you have feedback or need assistance with the MCP directory API, please join our Discord server