iOS Web Bluetooth (WebBLE)

io.github.wklm由 GitHub 账号 wklm 发布v0.1.1更新于 Oct 27, 2026

MCP server to ship Web Bluetooth on iPhone Safari via the WebBLE extension.

已验证STDIO仅桌面知识与记忆开发者工具

概览

AI 生成的概览

离线 MCP 服务器,为编码助手提供在 iOS Safari 上通过 beacio SDK 使用 Web Bluetooth 的安装方案、代码片段与检查清单。

可以做什么
  • 获取各框架与包管理器的安装步骤和可运行代码片段
  • 为现有 Web Bluetooth 应用生成适配 iOS Safari 的具体文件修改
  • 用可执行的检查清单和 shell 命令验证集成是否完成
  • 获取 BLE 配置(心率、电池、血糖、锁、信标等)的可粘贴代码与运行时检测片段
  • 查阅 iOS 高级功能指南、故障排查步骤与 W3C 规范引用
  • 开发者模式:读取最佳实践、搜索文档、查看仓库结构、查找示例
适用场景
当助手在开发或迁移使用 Web Bluetooth 的网页应用、并需要其在 iPhone Safari 上通过 beacio 扩展正常工作时适用;也适合在编码时需要权威 beacio 文档与示例代码的场景。
运行要求
通过 npx 以 stdio 在本地运行,需要 Node.js。无需账号或 API 密钥。可选环境变量 MCP_CLIENT 与 MCP_CLIENT_VERSION 用于标识客户端;BEACIO_MCP_TELEMETRY 或 DO_NOT_TRACK 可关闭遥测。开发者工具需加 --developer 参数。
安装前请注意
遥测默认开启:每次工具调用都会向 beacio 端点发送事件(工具名、客户端名称与版本、是否成功、耗时、归因令牌);可用 BEACIO_MCP_TELEMETRY 或 DO_NOT_TRACK 关闭。安装方案会返回一个归因令牌,要求原样转交给用户。该包还附带会改动项目文件的脚手架命令行工具。

安装

在 SourceWeft 中

  1. 打开 控制台中的 iOS Web Bluetooth (WebBLE),将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

[beacio]

@beacio/mcp

MCP server that teaches coding agents (Claude, Cursor, Copilot, …) how to ship iOS Safari Web Bluetooth with beacio.

Eleven tools (seven consumer + four developer), all offline, all citing canonical docs at https://beacio.com/docs-md/*.

Install

Run via npx — no install step needed:

bash
npx -y @beacio/mcp

Or add it to your MCP client config (example: Claude Desktop, ~/Library/Application Support/Claude/claude_desktop_config.json):

json
{  "mcpServers": {    "beacio": {      "command": "npx",      "args": ["-y", "@beacio/mcp"],      "env": { "MCP_CLIENT": "claude-desktop" }    }  }}

beacio scaffolding CLI

This package also ships the unscoped beacio CLI (formerly the standalone @beacio/cli) alongside the MCP server. It scaffolds and verifies beacio integration in a web project:

bash
npx beacio init       # auto-detect framework and add the detection snippetnpx beacio migrate    # brownfield: patch an existing Web Bluetooth app for iOS Safarinpx beacio check      # verify beacio integration (add --brownfield for an existing app)

beacio migrate applies the same three edits the beacio_patch_existing_app MCP tool emits (single-sourced from one transform).

Tools

Consumer tools

Available in the default (consumer) mode for agents shipping the SDK into an app.

ToolPurpose
beacio_install_planCanonical install steps + runnable snippet for html | react | vue | svelte | angular | next × npm | pnpm | yarn | bun | cdn.
beacio_patch_existing_appBrownfield: concrete FileEdits to add iOS Safari support to an EXISTING Web Bluetooth app — bootstrap into <head> before the first navigator.bluetooth read, optionalServices onto the iOS requestDevice branch, and the "use Bluefy / Web BLE browser" message swapped for the install/enable affordance.
beacio_verify_integrationAgent-runnable checklist (shell commands + pass criteria) confirming the polyfill is installed, bootstrapped, builds, and resolves types — plus a brownfield mode for an already-written app.
beacio_exampleReady-to-paste code for a BLE profile: heart-rate, battery, cgm, lock, beacon, peripheral-chat.
beacio_detect_ios_supportRuntime detection snippet for navigator.bluetooth + window.beacioIOS, with every gotcha noted.
beacio_premium_guideOne of the iOS-only premium surfaces: backgroundSync, notifications, liveActivity, beacons, peripheral, whiteLabel.
beacio_troubleshootDiagnostic checklist + common fix for extension-not-detected, device-disconnects, gatt-operation-failed, notifications-not-firing.
beacio_spec_citationW3C Web Bluetooth spec URL + summary + caveats for a given method (e.g. navigator.bluetooth.requestDevice).

Developer tools

Surfaced with --developer mode, for agents working inside the beacio monorepo itself.

ToolPurpose
beacio_dev_best_practicesRead the project's AGENTS.md best-practices guide, optionally filtered by topic section.
beacio_dev_search_docsSearch the beacio documentation index by keyword; returns ranked results with beacio.com URLs.
beacio_dev_list_structureBuild a tree view of the monorepo directory structure (optional root path, depth 1-4, gitignore support).
beacio_dev_find_examplesSearch a curated index of key source files; returns ranked matches with file path, line number, and category.

Every response is JSON with a source_url that points into https://beacio.com/docs-md/ so agents can cite authoritative docs.

Attribution token

beacio_install_plan returns an attribution_token of the form:

beacio_YYYYMM_mcp_<8..16 chars a–z0–9>

Example: beacio_202604_mcp_3p9xq2k8m4r

This token is accepted by the beacio beacon endpoint so installs originating from this MCP server are attributable. Share the token with the user unchanged — do not modify, truncate, or regenerate it.

Telemetry

Each tool call POSTs a minimal event to https://mcp-telemetry.beacio.com/mcp-telemetry (telemetry is enabled by default):

json
{  "tool": "beacio_install_plan",  "client_name": "claude-desktop",  "client_version": "1.2.3",  "success": true,  "duration_ms": 42,  "attribution_token": "beacio_202604_mcp_3p9xq2k8m4r"}

No device data, no BLE payloads, no user input is ever sent. Fire-and-forget, 1-second timeout.

Opt out: telemetry is on by default; disable it by setting BEACIO_MCP_TELEMETRY to 0, false, off, or no (case-insensitive), or by setting the cross-tool DO_NOT_TRACK=1.

Identify your client: set MCP_CLIENT (e.g. claude-desktop, cursor, copilot-cli). Defaults to an empty string. Optionally set MCP_CLIENT_VERSION (defaults to empty string).

Links

License

MIT © wklm

来源:packages/mcp/README.md,提交 4051dfa

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.1最新Sep 16, 2026

评分

已满足适用检查项的 40%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

    请在仓库或注册中心条目中声明许可证。