ble-mcp-server MCP
A stateful Bluetooth Low Energy (BLE) Model Context Protocol (MCP) server that allows AI agents to interact with real BLE hardware. It enables scanning for devices, connecting to them, reading and writing characteristics, and subscribing to notifications. It supports Claude Code, VS Code with Copilot, and any MCP-compatible runtime, using bleak for cross-platform BLE on macOS, Windows, and Linux.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
Checks and signals
Each line is separate evidence, not a trust score.
- Popularity 19 GitHub stars
What you can do with it
- Scan for nearby BLE devices and connect to one
- Read characteristics and stream notifications from hardware
- Develop and debug BLE protocols conversationally
- Automate testing by running device-specific plugins
Source and maintenance
- Last repository push
- Latest release
- v0.3.0
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
ble-mcp-server 0.3.0
{
"version": "0.3.0",
"transport": "stdio",
"identifier": "ble-mcp-server",
"registryType": "pypi",
"environmentVariables": [
{
"name": "BLE_MCP_ALLOW_WRITES",
"format": "string",
"description": "Enable BLE characteristic writes (off by default for safety)"
},
{
"name": "BLE_MCP_WRITE_ALLOWLIST",
"format": "string",
"description": "Comma-separated UUID allowlist for writable characteristics"
},
{
"name": "BLE_MCP_PLUGINS",
"format": "string",
"description": "Plugin policy: 'all' or comma-separated plugin names. Unset = disabled."
},
{
"name": "BLE_MCP_TOOL_SEPARATOR",
"format": "string",
"description": "Tool name separator character (default '_'). Set to '.' if your client supports dots."
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · repository · passed · metadata changed · updated
- · backfill · recorded · Pre-expansion baseline; unobserved rich metadata remains unknown
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"ble-mcp-server-mcp": {
"command": "uvx",
"args": [
"ble-mcp-server==0.3.0"
],
"env": {
"BLE_MCP_ALLOW_WRITES": "<YOUR_BLE_MCP_ALLOW_WRITES>",
"BLE_MCP_WRITE_ALLOWLIST": "<YOUR_BLE_MCP_WRITE_ALLOWLIST>",
"BLE_MCP_PLUGINS": "<YOUR_BLE_MCP_PLUGINS>",
"BLE_MCP_TOOL_SEPARATOR": "<YOUR_BLE_MCP_TOOL_SEPARATOR>"
}
}
}
}Cline
{
"mcpServers": {
"ble-mcp-server-mcp": {
"command": "uvx",
"args": [
"ble-mcp-server==0.3.0"
],
"env": {
"BLE_MCP_ALLOW_WRITES": "<YOUR_BLE_MCP_ALLOW_WRITES>",
"BLE_MCP_WRITE_ALLOWLIST": "<YOUR_BLE_MCP_WRITE_ALLOWLIST>",
"BLE_MCP_PLUGINS": "<YOUR_BLE_MCP_PLUGINS>",
"BLE_MCP_TOOL_SEPARATOR": "<YOUR_BLE_MCP_TOOL_SEPARATOR>"
}
}
}
}VS Code
{
"servers": {
"ble-mcp-server-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"ble-mcp-server==0.3.0"
],
"env": {
"BLE_MCP_ALLOW_WRITES": "<YOUR_BLE_MCP_ALLOW_WRITES>",
"BLE_MCP_WRITE_ALLOWLIST": "<YOUR_BLE_MCP_WRITE_ALLOWLIST>",
"BLE_MCP_PLUGINS": "<YOUR_BLE_MCP_PLUGINS>",
"BLE_MCP_TOOL_SEPARATOR": "<YOUR_BLE_MCP_TOOL_SEPARATOR>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"ble-mcp-server-mcp": {
"command": "uvx",
"args": [
"ble-mcp-server==0.3.0"
],
"env": {
"BLE_MCP_ALLOW_WRITES": "<YOUR_BLE_MCP_ALLOW_WRITES>",
"BLE_MCP_WRITE_ALLOWLIST": "<YOUR_BLE_MCP_WRITE_ALLOWLIST>",
"BLE_MCP_PLUGINS": "<YOUR_BLE_MCP_PLUGINS>",
"BLE_MCP_TOOL_SEPARATOR": "<YOUR_BLE_MCP_TOOL_SEPARATOR>"
}
}
}
}Let your agent find its tools
Find servers like ble-mcp-server MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.