PluginBench
MCP Server

io.github.es617/ble-mcp-server MCP Server

io.github.es617/ble-mcp-server

What is the io.github.es617/ble-mcp-server MCP server?

Let AI agents interact with real BLE hardware — scan, connect, read, write, and subscribe.

How to install io.github.es617/ble-mcp-server

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • BLE_MCP_ALLOW_WRITES

    Enable BLE characteristic writes (off by default for safety)

  • BLE_MCP_WRITE_ALLOWLIST

    Comma-separated UUID allowlist for writable characteristics

  • BLE_MCP_PLUGINS

    Plugin policy: 'all' or comma-separated plugin names. Unset = disabled.

  • BLE_MCP_TOOL_SEPARATOR

    Tool name separator character (default '_'). Set to '.' if your client supports dots.

  • BLE_MCP_MAX_SESSIONS

    Maximum concurrent MCP sessions (default 1).

  • BLE_MCP_AUTH_TOKEN
    required
    secret

    Password for OAuth approval page. Required unless --no-auth is used.

Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "ble-mcp-server": {
      "command": "uvx",
      "args": [
        "ble-mcp-server"
      ],
      "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>",
        "BLE_MCP_MAX_SESSIONS": "<YOUR_BLE_MCP_MAX_SESSIONS>",
        "BLE_MCP_AUTH_TOKEN": "<YOUR_BLE_MCP_AUTH_TOKEN>"
      }
    }
  }
}
Cursor
~/.cursor/mcp.json
{
  "mcpServers": {
    "ble-mcp-server": {
      "command": "uvx",
      "args": [
        "ble-mcp-server"
      ],
      "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>",
        "BLE_MCP_MAX_SESSIONS": "<YOUR_BLE_MCP_MAX_SESSIONS>",
        "BLE_MCP_AUTH_TOKEN": "<YOUR_BLE_MCP_AUTH_TOKEN>"
      }
    }
  }
}
Windsurf
~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "ble-mcp-server": {
      "command": "uvx",
      "args": [
        "ble-mcp-server"
      ],
      "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>",
        "BLE_MCP_MAX_SESSIONS": "<YOUR_BLE_MCP_MAX_SESSIONS>",
        "BLE_MCP_AUTH_TOKEN": "<YOUR_BLE_MCP_AUTH_TOKEN>"
      }
    }
  }
}
VS Code
.vscode/mcp.json
{
  "servers": {
    "ble-mcp-server": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "ble-mcp-server"
      ],
      "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>",
        "BLE_MCP_MAX_SESSIONS": "<YOUR_BLE_MCP_MAX_SESSIONS>",
        "BLE_MCP_AUTH_TOKEN": "<YOUR_BLE_MCP_AUTH_TOKEN>"
      }
    }
  }
}
Claude Code
claude mcp add ble-mcp-server --env BLE_MCP_ALLOW_WRITES=<YOUR_BLE_MCP_ALLOW_WRITES> --env BLE_MCP_WRITE_ALLOWLIST=<YOUR_BLE_MCP_WRITE_ALLOWLIST> --env BLE_MCP_PLUGINS=<YOUR_BLE_MCP_PLUGINS> --env BLE_MCP_TOOL_SEPARATOR=<YOUR_BLE_MCP_TOOL_SEPARATOR> --env BLE_MCP_MAX_SESSIONS=<YOUR_BLE_MCP_MAX_SESSIONS> --env BLE_MCP_AUTH_TOKEN=<YOUR_BLE_MCP_AUTH_TOKEN> -- uvx ble-mcp-server

Related MCP servers

Let AI agents interact with debug probes — connect, flash, read/write memory, and reset.

View repository →

Give AI agents access to your Obsidian vault via local files or Self-hosted LiveSync.

View repository →

Let AI agents interact with serial devices — list ports, connect, send, and read.

View repository →