
Bluetooth MCP Server

2025.03.28
1
Python蓝牙设备检测AI 助手交互位置服务
Bluetooth MCP Server 是一个基于 Model Context Protocol (MCP) 的服务,旨在使 Claude 和其他 AI 助手能够扫描和交互附近的蓝牙设备。该项目采用测试驱动开发(TDD)方法构建,提供了一个跨平台的、经过测试的蓝牙操作接口。
View on GitHub
Overview
基本能力
产品定位
Bluetooth MCP Server 是一个用于蓝牙设备检测和交互的 MCP 服务器,主要用于 AI 助手(如 Claude)与蓝牙设备的交互。
核心功能
- 多协议扫描:支持检测 BLE 和经典蓝牙设备。
- 灵活过滤:可按名称、类型或其他属性过滤设备。
- 自动设备识别:识别并分类常见设备(如 Freebox、电视等)。
- 增强设备信息:获取制造商信息、设备类型和详细特性。
- 跨平台支持:支持 Windows、macOS 和 Linux。
- 平台特定优化:在 Windows 上提供增强的检测能力。
- MCP 集成:与 Claude 和其他兼容的 AI 助手无缝集成。
适用场景
- AI 助手与蓝牙设备的交互。
- 跨平台的蓝牙设备检测和管理。
- 蓝牙设备的自动化测试和开发。
工具列表
- FastAPI:用于构建 API 框架。
- Bleak:提供跨平台的蓝牙功能。
- Anthropic Claude:支持 MCP 集成。
常见问题解答
- 蓝牙问题:
- "Access denied" 错误:使用管理员权限运行服务器。
- 适配器未检测到:确保蓝牙在系统设置中启用。
- 未找到设备:确保附近有可发现的蓝牙设备。
- Windows 特定问题:检查蓝牙服务是否活动(
services.msc
)。 - MCP 问题:
- 工具未被 Claude 检测到:验证 MCP 服务器 URL 是否正确且可访问。
- 执行错误:检查服务器日志以获取详细错误信息。
使用教程
使用依赖
- Python 3.7+
- 蓝牙适配器(内置或外置)
- 管理员/sudo 权限(某些蓝牙操作需要)
- 互联网连接(用于安装包)
安装教程
# 克隆仓库
git clone https://github.com/yourusername/bluetooth-mcp-server.git
cd bluetooth-mcp-server
# 创建并激活虚拟环境
python -m venv venv
# Windows
venv\Scripts\activate
# macOS/Linux
source venv/bin/activate
# 安装依赖
pip install -r requirements.txt
# 配置环境变量
cp .env.example .env
# 根据需要编辑 .env 文件
调试方式
# 启动蓝牙 API 服务器
python run.py
# 在另一个终端中,启动 MCP 服务器
python bluetooth_mcp_server.py
# 运行测试
pytest
# 运行特定测试类别
pytest tests/api/ # API 测试
pytest tests/models/ # 数据模型测试
pytest tests/services/ # 服务逻辑测试
pytest tests/utils/ # 实用函数测试