mcp
UnexploredMCP server for Web Bluetooth on iOS Safari: scaffolding, UUID lookup, extension detection.
Install
Terminal
$npx -y @beacio/mcpmcp_config.json
{
"mcpServers": {
"com-beacio-mcp": {
"args": [
"-y",
"@beacio/mcp"
],
"command": "npx"
}
}
}Documentation
beacio SDK
Web Bluetooth SDK for iOS Safari. Scan, connect, and talk to BLE devices from any web app.
Packages
| Package | Purpose | Size |
|---|---|---|
@beacio/core | BLE scanning, connecting, GATT read/write/subscribe | ~4KB gzip |
@beacio/core/detect | iOS extension detection + install banner | ~2KB gzip |
@beacio/core/profiles | Typed BLE profiles (heart rate, battery, etc.) | Optional |
@beacio/react | React hooks (useDevice, useCharacteristic) | Optional |
@beacio/mcp | MCP server for AI coding agents + the beacio scaffolding CLI (npx beacio init) | Optional |
Quick Start
npm install @beacio/core
import { initBeacio, isIOSSafari } from '@beacio/core/detect';
import { beacio, BeacioError } from '@beacio/core';
// 1. On iOS Safari, detect the extension and prompt install if missing
if (isIOSSafari()) {
await initBeacio({
operatorName: 'MyApp',
banner: { mode: 'sheet' },
onReady: () => console.log('Extension ready'),
});
}
// 2. Scan and connect (works on iOS Safari + Chrome + Edge)
const ble = new beacio();
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):
Sourced from the repository README.
More in Browser & Web
- browser-useControl a real Chrome browser to complete any task: fill forms, extract data, book flights.110,346
- Puppeteer MCP ServerEnables headless browser automation for scraping dynamic JS pages, taking full-page screenshots, clicking elements, and filling web forms.9,800
- Business Contact FinderCheck how to contact a business website, and whether that contact path actually works.7,331
- strataMCP server for progressive tool usage at any scale (see https://klavis.ai)5,807
- exaConnect AI agents to Exa for web search, content fetching, and multi-step research.5,096
- apify-mcp-serverExtract data from any website with thousands of scrapers, crawlers, and automations on Apify Store ⚡4,798