MCPLow riskUnclaimed

ble-mcp-server

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

es617es617/ble-mcp-server★ 18Updated Mar 30, 2026

server.json

{
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "name": "io.github.es617/ble-mcp-server",
  "description": "Let AI agents interact with real BLE hardware — scan, connect, read, write, and subscribe.",
  "repository": {
    "url": "https://github.com/es617/ble-mcp-server.git",
    "source": "github"
  },
  "version": "0.3.0",
  "packages": [
    {
      "registryType": "pypi",
      "identifier": "ble-mcp-server",
      "version": "0.3.0",
      "transport": {
        "type": "stdio"
      },
      "environmentVariables": [
        {
          "description": "Enable BLE characteristic writes (off by default for safety)",
          "format": "string",
          "name": "BLE_MCP_ALLOW_WRITES"
        },
        {
          "description": "Comma-separated UUID allowlist for writable characteristics",
          "format": "string",
          "name": "BLE_MCP_WRITE_ALLOWLIST"
        },
        {
          "description": "Plugin policy: 'all' or comma-separated plugin names. Unset = disabled.",
          "format": "string",
          "name": "BLE_MCP_PLUGINS"
        },
        {
          "description": "Tool name separator character (default '_'). Set to '.' if your client supports dots.",
          "format": "string",
          "name": "BLE_MCP_TOOL_SEPARATOR"
        }
      ]
    },
    {
      "registryType": "pypi",
      "identifier": "ble-mcp-server",
      "version": "0.3.0",
      "transport": {
        "type": "streamable-http",
        "url": "http://localhost:8000/mcp"
      },
      "environmentVariables": [
        {
          "description": "Enable BLE characteristic writes (off by default for safety)",
          "format": "string",
          "name": "BLE_MCP_ALLOW_WRITES"
        },
        {
          "description": "Comma-separated UUID allowlist for writable characteristics",
          "format": "string",
          "name": "BLE_MCP_WRITE_ALLOWLIST"
        },
        {
          "description": "Plugin policy: 'all' or comma-separated plugin names. Unset = disabled.",
          "format": "string",
          "name": "BLE_MCP_PLUGINS"
        },
        {
          "description": "Tool name separator character (default '_'). Set to '.' if your client supports dots.",
          "format": "string",
          "name": "BLE_MCP_TOOL_SEPARATOR"
        },
        {
          "description": "Maximum concurrent MCP sessions (default 1).",
          "format": "string",
          "name": "BLE_MCP_MAX_SESSIONS"
        },
        {
          "description": "Password for OAuth approval page. Required unless --no-auth is used.",
          "isRequired": true,
          "format": "string",
          "isSecret": true,
          "name": "BLE_MCP_AUTH_TOKEN"
        }
      ]
    },
    {
      "registryType": "pypi",
      "identifier": "ble-mcp-server",
      "version": "0.3.0",
      "transport": {
        "type": "sse",
        "url": "http://localhost:8000/sse"
      },
      "environmentVariables": [
        {
          "description": "Enable BLE characteristic writes (off by default for safety)",
          "format": "string",
          "name": "BLE_MCP_ALLOW_WRITES"
        },
        {
          "description": "Comma-separated UUID allowlist for writable characteristics",
          "format": "string",
          "name": "BLE_MCP_WRITE_ALLOWLIST"
        },
        {
          "description": "Plugin policy: 'all' or comma-separated plugin names. Unset = disabled.",
          "format": "string",
          "name": "BLE_MCP_PLUGINS"
        },
        {
          "description": "Tool name separator character (default '_'). Set to '.' if your client supports dots.",
          "format": "string",
          "name": "BLE_MCP_TOOL_SEPARATOR"
        },
        {
          "description": "Maximum concurrent MCP sessions (default 1).",
          "format": "string",
          "name": "BLE_MCP_MAX_SESSIONS"
        },
        {
          "description": "Password for OAuth approval page. Required unless --no-auth is used.",
          "isRequired": true,
          "format": "string",
          "isSecret": true,
          "name": "BLE_MCP_AUTH_TOKEN"
        }
      ]
    }
  ]
}

Permissions

DeclaredDetected
Runs code—python
Installs—pypi:ble-mcp-server@0.3.0pypi:ble-mcp-server@0.3.0pypi:ble-mcp-server@0.3.0
Runs install scripts—None
NetworkNoneNone
Needs credentialsBLE_MCP_AUTH_TOKENBLE_MCP_AUTH_TOKEN
Outside the workspace—None
Agent tools—None

Checks

Low risk · Nothing worth a warning was found.

Not reviewed by a person · Checked by rules; the model review is not switched on yet.

Versions

  1. #10.3.0latestOct 7, 2026