MCP server for remote debugging of embedded devices via wireless connection. Provides tools to connect to a wireless serial debugger device, read/write serial data, monitor PWM/SPI/I2C protocols, and control device pins and settings.
18 tools with mixed quality. Naming is generally verb-first and clear (connect_device, read_serial, send_pwm). Descriptions are present but often terse (10-50 chars) and lack context on when/why to use each tool. Input schemas are visible and typed, but many lack depth. No output schemas documented. Error handling is absent, no guidance on recovery or retryability. Tool composition is reasonable (separate read/write operations), but descriptions don't explain dependencies or prerequisites (e.g., 'read_pwm requires PWM pin allocation' is buried in description, not emphasized). Chinese descriptions present a localization issue for English-speaking LLMs.
清空缓冲区,避免空间不足。
连接无线串口调试器设备。首次使用时需要用户提供设备 IP 地址。连接成功后 IP 会自动保存,下次启动无需重复配置。
断开当前设备连接。
获取设备存储容量和各缓冲区使用情况。返回: free_heap(剩余堆栈KB), 以及 serial/spi/i2c/rx 各自的 {n:当前条数, max:容量}。用于判断是否需要清理缓冲区。
获取当前引脚协议分配。可用协议: SWCLK, SWDIO, NRST, TX, RX, PWM, SCK, MOSI, MISO, CS, SDA, SCL
获取设备状态:WiFi连接、IP地址、串口波特率、收发字节数、运行时间、当前菜单页面。
模拟设备按钮操作。
Descriptions are predominantly under 50 characters and lack context. Examples: 'disconnect_device' = '断开当前设备连接' (12 chars), 'get_status' = '获取设备状态...' (25 chars). No explanation of when to call, what data is returned, or dependencies. Baseline for A+ tools is 50-200 chars with clear WHAT/WHEN/WHY.
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields. E.g., get_status returns device state but structure is not specified. Baseline: 100% of A+ tools document return types.
No error handling or recovery guidance. Tools lack descriptions of failure modes, retryability, or next steps. E.g., 'connect_device' may fail if IP is unreachable, but no guidance on what to do. Baseline: error responses must tell LLM what to do next.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 52 | 2026-07-28+ | v2 |
读取 I2C 总线捕获的事务历史。返回: running状态, 总事务数, ISR计数, 最近事务列表(含地址/方向/数据)。需要先在设备上分配 SDA/SCL 引脚。
读取 PWM 频率(Hz)和占空比(%)。需先在设备上分配 PWM 引脚。
从目标设备读取串口接收到的数据(文本形式)。每次调用会清空缓冲区,适合轮询式读取。单次最多4KB。
读取 SPI 从机捕获的事务历史(MOSI/MISO 字节)。需先在设备上分配 SCK/MOSI/MISO/CS 引脚。
通过 I2C 主机发送/接收数据。自动停止 I2C 从机监听并切换为主机模式。
控制 PWM 输出(LEDC 生成)。
向目标设备发送串口数据。
通过 SPI 主机发送数据。自动停止 SPI 从机监听并切换为主机模式。
设置目标设备串口波特率。
调整缓冲区/历史容量,让 AI 能获取更多数据。已设安全界限防止溢出分区。只传需要改的参数,0 表示不修改。
设置引脚协议分配(逗号分隔5个协议名)。
Descriptions are in Chinese, not English. LLMs trained primarily on English will struggle to parse intent. All descriptions should be in English for broad LLM compatibility.
Parameter descriptions lack constraints and examples. E.g., 'set_pins' accepts 'order' as a string but does not specify valid protocol names, order, or format in the description. Baseline: constraints (enums, patterns, ranges) must be in descriptions, not just schema.