68 lines
1.7 KiB
Markdown
68 lines
1.7 KiB
Markdown
# 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:**
|
|
```bash
|
|
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/`:
|
|
|
|
```env
|
|
COMPOSE_PROJECT_NAME=mcbluetooth-docs
|
|
DOMAIN=mcbluetooth.warehack.ing
|
|
```
|
|
|
|
### Commands
|
|
|
|
```bash
|
|
# 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
|
|
|
|
```bash
|
|
ssh -A warehack-ing@warehack.ing "cd ~/mcbluetooth && git pull && cd docs-site && make up"
|
|
```
|