mcbluetooth/CLAUDE.md

1.7 KiB

Bluetooth MCP Server

Allow LLMs to manage the Linux Bluetooth stack

E2E Testing with mcbluetooth-esp32

Full automated Bluetooth testing is available using the ESP32 test harness:

Repository: /home/rpm/claude/mcbluetooth-esp32

Test Coverage:

  • All 4 SSP pairing modes: Just Works, Numeric Comparison, Passkey Entry, Legacy PIN
  • BLE GATT: service/characteristic creation, read, write, notify
  • HCI packet capture and analysis
  • Device management: trust, block, alias
  • HFP AG: SLC negotiation, incoming/outgoing calls, DTMF, volume, indicators

Running Tests:

cd /tmp/bt-e2e-test

# Full suite (may OOM on constrained systems)
PROMPT=$(cat test-prompt-v6.md)
claude -p "$PROMPT" \
  --mcp-config .mcp.json \
  --allowedTools "mcp__esp32__*,mcp__bluez__*" \
  --output-format json

# Phased runner (recommended — avoids OOM)
./run-phases.sh

Latest Results: v6 — 86/86 PASS (100%)

See mcbluetooth-esp32/docs/automated-e2e-testing.md for full setup guide.

Docs Site Deployment

Starlight documentation site in docs-site/ subdirectory.

  • Production: https://mcbluetooth.warehack.ing
  • Git: git@git.supported.systems:MCP/mcbluetooth.git
  • Server: ssh -A warehack-ing@warehack.ing, repo at ~/mcbluetooth

Environment

Copy .env.example to .env in docs-site/:

COMPOSE_PROJECT_NAME=mcbluetooth-docs
DOMAIN=mcbluetooth.warehack.ing

Commands

# From docs-site/ directory:
make up        # Build and start production container
make down      # Stop container
make logs      # Tail container logs
make restart   # Stop + start

Deploy to Production

ssh -A warehack-ing@warehack.ing "cd ~/mcbluetooth && git pull && cd docs-site && make up"