Bluetooth MCP Server

Bluetooth MCP Server

site icon
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/     # 实用函数测试

许可证

该项目遵循 MIT 开源许可条款。