DG-MCP
The DG-MCP server lets you control DG-Lab Coyote 2.0/3.0 electrical stimulation devices via Bluetooth through any MCP-compatible LLM client (e.g., Claude Desktop).
Device Discovery & Connection
scan— Discover nearby Coyote devices (address, name, version)connect— Connect to a device via BLE addressdisconnect— Disconnect from the current deviceget_status— Query connection status, strength levels, active waveform, and battery
Channel Control
start— Start a channel (A/B) with initial strength (0–10) and a waveform (breath, tide, pulse_low, pulse_mid, pulse_high, tap)stop— Stop one or both channelsadjust_strength— Incrementally adjust a running channel's strength (±10 per step)change_wave— Switch waveform on a running channel without changing strengthburst— Briefly spike a channel to a target strength for 100–5000ms, then auto-returnemergency_stop— Immediately zero all strength and stop all waveforms
Waveform Management
list_waveforms— List all available waveforms (built-in + imported)load_waveforms— Import waveforms from.pulsefiles or.ziparchives at runtimedesign_wave— Create custom waveforms using composable segments:ramp(linear change),hold(constant),pulse(on/off beats),silence(quiet interval); optionally play immediately on a channel
Utility
timer— Set a countdown timer (1–3600s) for deferred follow-up actions within a conversation flow
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@DG-MCP Scan for nearby Coyote devices."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
本项目已迁移至 0xNullAI/0xNuller,请前往新仓库查看和继续使用。
Available Tools
14 toolsadjust_strengthA
【调节强度】在不改变波形的前提下相对调整一个通道的强度。 触发:通道运行中,需要小步推进、轻微回落、边缘控制时使用。 不用:想换波形 → change_wave;通道未启动 → start。 约束:本回合最多调用 2 次,单步幅度 ±10,优先选小幅度(约 1/3 上限)做平稳推进,每次调整后停下来观察反馈。
Inputs: channel (required), delta (required).
burstA
【短时脉冲】把一个正在运行的通道短暂拉到目标强度,持续一段时间后自动回落。 触发:制造短促峰值、强烈点射感时使用。 不用:通道未启动 → 先 start;想长期提升强度 → adjust_strength。 约束:本回合最多调用 1 次,单次时长 100-5000ms,完成后先停下来观察反馈。
Inputs: channel (required), strength (required), durationMs (required).
change_waveA
【切换波形】在不改变强度的前提下更换一个通道的波形。 触发:已启动后想换节奏、换触感时使用。 不用:想加强 → adjust_strength;通道未启动 → start。 约束:仅切波形不动强度,切换后停下来描述新感觉。 可用波形:breath(呼吸:渐强渐弱,最温柔的铺垫波形);tide(潮汐:波浪般起伏的慢节奏);pulse_low(低脉冲:轻柔的规律节奏);pulse_mid(中脉冲:中等强度的规律节奏);pulse_high(高脉冲:强烈的规律节奏);tap(敲击:带节奏停顿的点触感)。
Inputs: channel (required), waveformId (required), loop.
connectA
连接到指定的 Coyote 设备。需先调用 scan 获取地址。
Inputs: address (required).
design_waveA
【设计波形】组合一组段落生成新的自定义波形,保存到波形库后可立即播放或留待后用。 触发:用户描述的体感无法用现有波形组合表达时使用(如 "先慢慢渐入再变成连续敲击")。 不用:内置或已导入的波形够用 → 直接 start / change_wave;只想加减强度 → adjust_strength。 约束:单回合最多调用 1 次;总时长 100-30000ms(建议 1-10s);保存的波形会出现在用户的自定义波形列表里。 段落原语:ramp(强度线性变化)、hold(恒定强度)、pulse(高低交替节拍)、silence(静默间隔)。
Inputs: name (required), description (required), segments (required), playOnChannel, +1 more.
disconnectA
断开当前 Coyote 连接。
Inputs: no named parameters.
emergency_stopA
紧急停止:强度归零,所有波形停止。
Inputs: no named parameters.
get_statusA
查询当前设备状态:连接状态 / 强度 / 波形 / 电池。
Inputs: no named parameters.
list_waveformsA
列出当前波形库中的所有波形(内置 + 已导入)。
Inputs: no named parameters.
load_waveformsB
从指定路径加载 .pulse 文件或包含 .pulse 的 .zip。
Inputs: path (required).
scanB
扫描附近的 Coyote 设备。返回包含 address / name / version 的列表。
Inputs: timeoutMs.
startA
【启动通道】启动一个通道,同时设置初始强度和波形。 触发:通道当前停止,需要从零开始时使用。 不用:通道已运行 → 想加点强度用 adjust_strength,想换波形用 change_wave,想结束用 stop。 约束:单次启动强度上限 10(受安全设置约束),完成后先描述结果并询问感受,不要在同一回合连续追加多次强度。 可用波形:breath(呼吸:渐强渐弱,最温柔的铺垫波形);tide(潮汐:波浪般起伏的慢节奏);pulse_low(低脉冲:轻柔的规律节奏);pulse_mid(中脉冲:中等强度的规律节奏);pulse_high(高脉冲:强烈的规律节奏);tap(敲击:带节奏停顿的点触感)。
Inputs: channel (required), strength (required), waveformId (required), loop.
stopA
【停止通道】停止一个通道,省略 channel 则停止全部通道。 触发:用户表达"停一下/够了/关掉",或需要结束输出时。 不用:start(strength=0) 或其他变通方式不能代替 stop。 约束:无次数上限。
Inputs: channel.
timerA
【设置定时器】指定秒数后由系统触发一次内部跟进。 触发:需要"过一会儿再问"、"稍后提醒"的流程时使用。 不用:想立即跟进直接发文字回复,不需要定时器。 约束:到期回合是内部触发不是用户消息,到期回合只能简短跟进,禁止自动操作设备。
Inputs: seconds (required), label (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 14 tools
Each tool has a clearly distinct purpose with no overlap. For example, adjust_strength is for gradual intensity changes, burst for short pulses, and change_wave for waveform changes, all with explicit triggers and constraints. Start, stop, and emergency_stop are also well-separated.
Most names follow a consistent verb_noun pattern with underscores (e.g., adjust_strength, change_wave, list_waveforms). The only minor deviation is 'burst', which is a single verb, but this is a clear exception and does not cause confusion.
14 tools is well-scoped for controlling a Coyote device. The count covers connection management, scanning, waveform manipulation, intensity control, and a timer, with no superfluous tools.
The tool surface covers the full lifecycle: connection (connect/disconnect/scan), operation (start/stop/adjust_strength/burst/change_wave), waveform management (list_waveforms/load_waveforms/design_wave), status (get_status), safety (emergency_stop), and even a timer for deferred interactions. No obvious gaps for the domain.
Maintenance
Related MCP Connectors
Private health and fitness analytics through a secure remote MCP connection.
Fitness MCP for coaches and gyms: build workouts and read clients' training from live Superset data.
Discover, hire, and verify real-world physical capability through MCP.
Remote MCP server for Scanduro QR codes, scan analytics and controlled code actions.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceBluetooth Low Energy (BLE) MCP server that allows AI agents to scan, connect to and communicated with BLE devices, as well as simulate BLE perhipherals.26BSD 2-Clause "Simplified"
- AlicenseAqualityDmaintenanceA stateful Bluetooth Low Energy (BLE) MCP server that enables AI agents to scan, connect, read/write characteristics, and subscribe to notifications on BLE devices.3569 PyPI19MIT
- AlicenseNot gradedqualityDmaintenanceEnables tracking and monitoring of Capillus Bluetooth caps for treatment sessions, adherence, and device status using local BLE data, without requiring cloud APIs.MIT
- AlicenseNot gradedqualityBmaintenanceProvides a local MCP server for Bluetooth Low Energy automation, enabling scanning, GATT inspection, characteristic reads and writes, and evidence capture, diff, and replay with safety guards.29 PyPI13MIT