Web Bluetooth SDK for iOS Safari https://ioswebble.com/
claude mcp add beacio-sdk -- npx -y @ios-web-bluetooth/mcp{
"mcpServers": {
"beacio-sdk": {
"command": "npx",
"args": ["-y", "@ios-web-bluetooth/mcp"]
}
}
}MCP Servers overview
# iOSWebBLE SDK
Web Bluetooth SDK for iOS Safari. Scan, connect, and talk to BLE devices from any web app.
## Packages
| Package | Purpose | Size |
|---------|---------|------|
| [`@ios-web-bluetooth/core`](packages/core) | BLE scanning, connecting, GATT read/write/subscribe | ~4KB gzip |
| [`@ios-web-bluetooth/detect`](packages/detect) | iOS extension detection + install banner | ~2KB gzip |
| [`@ios-web-bluetooth/profiles`](packages/profiles) | Typed BLE profiles (heart rate, battery, etc.) | Optional |
| [`@ios-web-bluetooth/react`](packages/react-sdk) | React hooks (`useDevice`, `useCharacteristic`) | Optional |
| [`@ios-web-bluetooth/cli`](packages/cli) | CLI tooling | Optional |
| [`@ios-web-bluetooth/mcp`](packages/mcp) | MCP server for AI coding agents | Optional |
## Quick Start
```bash
npm install @ios-web-bluetooth/core @ios-web-bluetooth/detect
```
```typescript
import { initIOSWebBLE, isIOSSafari } from '@ios-web-bluetooth/detect';
import { WebBLE, WebBLEError } from '@ios-web-bluetooth/core';
// 1. On iOS Safari, detect the extension and prompt install if missing
if (isIOSSafari()) {
await initIOSWebBLE({
operatorName: 'MyApp',
banner: { mode: 'sheet' },
onReady: () => console.log('Extension ready'),
});
}
// 2. Scan and connect (works on iOS Safari + Chrome + Edge)
const ble = new WebBLE();
const device = await ble.requestDevice({
filters: [{ services: ['heart_rate'] }],
});
await device.connect();
// 3. Read a value
const value = await device.read('heart_rate', 'heart_rate_measurement');
console.log('Heart rate:', value.getUint8(1));
// 4. Subscribe to notifications
const unsub = device.subscribe('heart_rate', 'heart_rate_measurement', (v) => {
console.log('Heart rate:', v.getUint8(1));
});
// 5. Clean up
unsub();
await device.disconnect();
```
For plain HTML (no bundler):
```html
<script src="https://ioswebble.com/webble.js"></script>
```
## Error Handling
All errors are `WebBLEError` instances with a typed `code` and a human-readable `suggestion`:
```typescript
try {
const device = await ble.requestDevice({
filters: [{ services: ['heart_rate'] }],
});
await device.connect();
} catch (err) {
if (err instanceof WebBLEError) {
console.log(err.code); // e.g. 'DEVICE_NOT_FOUND'
console.log(err.suggestion); // 'No matching devices in range'
}
}
```
## AI Agent Integration
MCP server for coding agents (Claude Code, Cursor, Copilot):
```
npx -y @ios-web-bluetooth/mcp
```
Full SDK reference for LLM context: <https://ioswebble.com/llms-full.txt>
## Documentation
Each package has its own README with full API reference:
- [SDK wiki](https://github.com/wklm/ioswebble-sdk/wiki) -- curated getting-started guides, troubleshooting, and background sync usage
- [`@ios-web-bluetooth/core` README](packages/core/README.md) -- scanning, connecting, GATT operations, error codes
- [`@ios-web-bluetooth/detect` README](packages/detect/README.md) -- extension detection, install banners, React provider
- [`@ios-web-bluetooth/react` README](packages/react-sdk/README.md) -- React hooks, provider setup, and UI components
## Wiki
- [Getting Started](https://github.com/wklm/ioswebble-sdk/wiki/Getting-Started)
- [Background Sync](https://github.com/wklm/ioswebble-sdk/wiki/Background-Sync)
- [Troubleshooting](https://github.com/wklm/ioswebble-sdk/wiki/Troubleshooting)
## License
Proprietary. See individual package licenses.
What people ask about beacio-sdk
What is wklm/beacio-sdk?
+
wklm/beacio-sdk is mcp servers for the Claude AI ecosystem. Web Bluetooth SDK for iOS Safari https://ioswebble.com/ It has 2 GitHub stars and was last updated yesterday.
How do I install beacio-sdk?
+
You can install beacio-sdk by cloning the repository (https://github.com/wklm/beacio-sdk) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is wklm/beacio-sdk safe to use?
+
wklm/beacio-sdk has not been audited yet by our security agent. Review the original repository on GitHub before using it in production.
Who maintains wklm/beacio-sdk?
+
wklm/beacio-sdk is maintained by wklm. The last recorded GitHub activity is from yesterday, with 0 open issues.
Are there alternatives to beacio-sdk?
+
Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.
Deploy beacio-sdk to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/wklm-beacio-sdk)<a href="https://claudewave.com/repo/wklm-beacio-sdk"><img src="https://claudewave.com/api/badge/wklm-beacio-sdk" alt="Featured on ClaudeWave: wklm/beacio-sdk" width="320" height="64" /></a>More MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
The fastest path to AI-powered full stack observability, even for lean teams.
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!
⭐AI-driven public opinion & trend monitor with multi-platform aggregation, RSS, and smart alerts.🎯 告别信息过载,你的 AI 舆情监控助手与热点筛选工具!聚合多平台热点 + RSS 订阅,支持关键词精准筛选。AI 智能筛选新闻 + AI 翻译 + AI 分析简报直推手机,也支持接入 MCP 架构,赋能 AI 自然语言对话分析、情感洞察与趋势预测等。支持 Docker ,数据本地/云端自持。集成微信/飞书/钉钉/Telegram/邮件/ntfy/bark/slack 等渠道智能推送。