Skip to main content
MCP server CX Codex

BLEA — Claude Code MCP server: Bluetooth LE diagnostics

Lets an agent scan for BLE devices, walk GATT services, and read or write characteristics under explicit confirmation. Useful when you need to inspect real hardware instead of guessing from logs.

Install into Claude Code · Platform CLI All methods and platforms ↓
claude mcp add blea -- uvx blea
Open on GitHub

What BLEA does

BLEA stands for Bluetooth Low Energy Automation. One runtime, ble, serves two surfaces: plain subcommands print deterministic JSON or JSONL for scripts and shells, while ble mcp launches a stdio MCP server exposing the same tools with managed BLE sessions. Alongside it comes a skill that spells out the workflow and the safety boundaries, plus an MCP declaration.

The covered loop is the usual one: confirm the OS grants Bluetooth access, locate the right device nearby, enumerate GATT services, keep raw bytes as evidence and compare captures across runs. Anything that changes state waits for permission — pair takes --allow-pairing and a device confirmation, exchange takes --allow-write. Offline work is supported too: diff compares two captures, replay re-runs a saved one.

Python 3.10 or newer is required, and the OS supplies Bluetooth through Bleak. Install the runtime from PyPI first, because the local MCP server looks for the ble executable on PATH. Device names only resolve when exactly one scanned device carries that name, so prefer the identifier from scan — on macOS that is normally a UUID, not a MAC address.

What it helps with

  • check whether the OS exposes Bluetooth to tools
  • pick the right device out of a crowded scan
  • enumerate GATT services and characteristics
  • keep raw bytes and compare two captures
  • read a characteristic before changing device state

Example prompts for the agent

  • Run ble doctor --json and tell me what it says about Bluetooth access.
  • Scan for 8 seconds and list the devices you find.
  • Diff before.blea.jsonl against after.blea.jsonl with ble diff.

How to install BLEA

Platform CLI

claude mcp add blea -- uvx blea

uvx runs the command named after the package; if the README names another one, use uvx --from blea <command>

Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more

Questions about BLEA

How do I install BLEA in Claude Code?

Install the runtime first with uv tool install blea, then register the server: claude mcp add blea -- uvx blea.

What does BLEA do?

It hands an agent BLE tooling: scanning, GATT discovery, reads and subscriptions, confirmed writes, plus offline diff and replay of captured data.

What does BLEA need to run?

Python 3.10 or newer and OS-level Bluetooth access via Bleak. The skill does not install the runtime, so blea from PyPI is a separate step.

Similar MCP servers

All MCP servers for Agent setup: memory, context, orchestration →

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor