Listed from the MCP registry; nobody on Odel publishes it.

MCP server: One MCP server.

SMLIGHT ZeroStack RF Diagnostics

@zerostack-rfMCP server · External

Zigbee/Thread log diagnostics, TI F2 & EFR32 register decoder, and ZeroStack hardware benchmarks.

v0.9.10Apache-2.0Python
Freeno charge per call

Runs on your machine from its package; the steps are below.

SMLIGHT ZeroStack — Deterministic Zigbee 3.0 Firmware & RF Diagnostics
From the README

What it does

  1. Reads
  2. Writes
  3. High impact

Not assessed yet.

What it costs

Free

Odel charges nothing per call. The publisher may charge for its own service.

Runs locally over stdio

This server isn't hosted — your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).

PyPIzerostack-mcpv0.9.10

Run

uvx zerostack-mcp

MCP client config

{
  "mcpServers": {
    "smlight-zerostack-rf-diagnostics": {
      "command": "uvx",
      "args": [
        "zerostack-mcp"
      ]
    }
  }
}
README8 min read

SMLIGHT ZeroStack — Deterministic Zigbee 3.0 Firmware & RF Diagnostics

ZeroStack RF Diagnostics & Benchmark MCP Server (zerostack-mcp)

Official ZeroStack Overview & Downloads: https://smlight.tech/software/zerostack Interactive Web Log Analyzer: https://smlight-tech.github.io/zerostack/ Technical Whitepaper — Part 1 (PDF): Scaling Zigbee 3.0 / R23 Beyond the 100-Node Wall MCP Server: v0.9.9 | Target Firmware: ZeroStack Release Zero (0.9.9-beta.1)

zerostack-mcp is an open-source Model Context Protocol (MCP) server that gives AI coding assistants and home-automation troubleshooting agents (Claude Desktop, Cursor, Windsurf, Cline, OpenAI Agents, Home Assistant AI agents) deterministic tools to:

  1. Diagnose Zigbee2MQTT (z2m), Home Assistant ZHA (zigpy-znp, bellows), and OpenThread RCP logs (analyze_zigbee_thread_log).
  2. Decode hardware radio/UART status registers (decode_silicon_register) for TI SimpleLink F2 (CC2652P, CC2652P7, CC1352P7, CC2674P10) and Silicon Labs EFR32 (EFR32MG21, EFR32MG24).
  3. Evaluate Zigbee/Thread mesh coordinator capacity and SRCMATCH hardware limits (check_coordinator_capacity).
  4. Query verified hardware validation benchmarks (DWT->CYCCNT @ 48.0 MHz) (get_zerostack_benchmarks) comparing ZeroStack Release Zero (0.9.9-beta.1) against legacy TI Z-Stack (ZNP 3.x) across SMLIGHT SLZB-06 and SLZB-07 series coordinators.

Quick Start

Run with uvx (No Installation Required)

json
{
  "mcpServers": {
    "zerostack-rf": {
      "command": "uvx",
      "args": ["zerostack-mcp"]
    }
  }
}

Local Development Installation

bash
git clone https://github.com/zerostack-rf/zerostack-mcp.git
cd zerostack-rf-mcp
uv sync
uv run pytest
uv run zerostack-mcp

Supported Hardware — Release Zero (0.9.9-beta.1)

ZeroStack Release Zero (0.9.9-beta.1) supports the TI SimpleLink F2 family across SMLIGHT SLZB-06 and SLZB-07 series coordinators (Zigbee 3.0 / PRO R23 Coordinator & Router firmware with DMA-driven UART and Live Auto-Baud 115200 / 460800 / 1000000):

Coordinator ModelRadio SoCSRAM / FlashHardware RTS/CTSTransport
SLZB-06TI CC2652P88 KB / 352 KBNoEthernet / PoE / USB / Wi-Fi
SLZB-06UTI CC2652P88 KB / 352 KBYes (DIO10 / DIO11)Ethernet / PoE / USB / Wi-Fi
SLZB-06P7 / SLZB-06P7v1TI CC2652P7 / CC1352P7144 KB / 704 KBNoEthernet / PoE / USB / Wi-Fi
SLZB-06P7UTI CC2652P7 / CC1352P7144 KB / 704 KBYes (DIO10 / DIO11)Ethernet / PoE / USB / Wi-Fi
SLZB-07P7TI CC2652P7144 KB / 704 KBNoUSB Dongle
SLZB-06P10TI CC2674P10256 KB / 1024 KBYes (DIO10 / DIO11)Ethernet / PoE / USB / Wi-Fi
SLZB-07P10TI CC2674P10256 KB / 1024 KBNoUSB Dongle

Note on Silicon Labs EFR32 (EFR32MG21 / EFR32MG24): zerostack-mcp includes diagnostic rules (0x72, 0xa1, ASH_NCP_FATAL_ERROR) and EUSART0_IF register decoding for Silicon Labs EmberZNet / EZSP coordinators (SLZB-06M, SLZB-06Mg24, SkyConnect/ZBT-1). ZeroStack Release Zero (0.9.9-beta.1) ships on SMLIGHT TI SimpleLink F2 coordinators; Silicon Labs EFR32 support is in active development.


Verified Hardware Validation Benchmarks (TI CC1352P7 @ 48.0 MHz, DWT->CYCCNT)

Part 1: Deterministic Execution Latency (1 µs = 48 cycles)

Subsystem / OperationLegacy TI Z-Stack (ZNP 3.x)ZeroStack Release Zero (0.9.9-beta.1)Measured Improvement
TCLK Lookup (300-entry table, miss / first contact)1,486,228 cyc (30.96 ms)326 cyc (6.8 µs)4,559× faster (0 flash reads)
TCLK Lookup (300-entry table, oldest-record hit, age 383)620,396 cyc (12.92 ms)324 cyc (6.75 µs)1,915× faster (Slot 0: 7.1×, Slot 299: 9.1×)
Per-Frame NWK Encrypt (D=150)533,156 cyc (11.11 ms)3,968 cyc (82.7 µs)134.4× faster (O(1), 0 flash reads)
Per-Frame NWK Decrypt (D=150)532,182 cyc (11.09 ms)3,824 cyc (79.7 µs)139.2× faster (O(1), 0 flash reads)
Routed Hop Security Ceiling (D=150, Decrypt + Encrypt)22.19 ms (~45 pkt/s ceiling)162 µs (7,792 cyc, >6,100 pkt/s)135× higher ceiling
Per-Frame APS TX Security (300-peer table, D=0..100)52,909–409,301 cyc (8.53 ms)5,410–5,424 cyc (113 µs)Up to 75.5× faster
Device Authentication Check (Slot 0 -> 299)1,656 -> 42,243 cyc (880 µs)181 -> 179 cyc (3.7 µs)236× faster
NVM Stack Key Read (D = 0 -> 150)2,347 -> 64,817 cyc (1.35 ms)302–303 cyc (6.3 µs)213.9× faster
Idempotent NVM State Write (Unchanged 100 B, 48 writes)100,714 cyc (writes flash 48/48)3,770 cyc (0 B flash 48/48)26.7× faster + 0% flash wear
NVM Compaction FrequencyWrite #69 (163.9 ms stall)Write #1,013 (13.7 ms stall)14.7× lower compaction frequency
Dynamic Memory Allocation (malloc @ k=64 holes)2,550 cyc218 cyc (O(1) constant time)11.7× faster
Timer Start Latency (T=39 timers, 64 heap holes)10,034 cyc (209.0 µs)1,448 cyc (30.2 µs, heap-independent)6.9× faster
Inter-Task Event Enqueue (msgSend, Q=64 queued)935 cyc322 cyc (O(1) flat)2.9× faster
Host Serial Round-Trip (SYS_PING @ 115,200 baud)9,790 cyc (reply: 4,921 cyc)4,618 cyc (reply: 816 cyc)53% fewer total / 83% fewer reply

Part 2: Adversarial Resilience & Fault Recovery

Stress VectorLegacy TI Z-Stack (ZNP 3.x)ZeroStack Release Zero (0.9.9-beta.1)Measured Improvement
Malformed Secured OTA Frames (12 NWK/APS classes + 3,255 MAC vectors)Remote CPU HardFault (Precise BusFault after 143,345–144,412 cyc)0 crashes (320–6,631 cyc; 790 cyc / 16 µs routing reject)Zero remote crash + 9.8×–402× lower CPU
1,000-Frame Cryptographic Replay Flood (D=150)143,802 cyc (3.0 ms)/replay (2.99 s lockup)1,550 cyc (32 µs)/replay (32.4 ms total)92.8× faster (30× faster auth tamper reject)
NOR Flash Brownout Fuzzing (22,959 HW cuts + 2M shadow ops)1 verify conflict; torn-record reboot writes 20,232 B (62 erases)0 corrupted records; torn reboot writes 27 B (0 erases)749× lower post-brownout flash write volume
Hostile UART Framing Abuse (115,200 baud, 6 scenarios)8.84 s serial link blackout (44 lost pings on 300 × SOF)0 lost pings (3–55 ms wire-speed recovery, Δheap = 0 B)Zero blackout (29 ms on 300 × SOF, 3 ms truncated)
50-Device Unauthenticated Join / TCLK Miss Flood (D=300)33.9 ms/miss (1.70 s total stall)4 µs (208 cyc; 4.3 ms UART RTT, 0.22 s total)7.7× faster end-to-end
1,000-Frame 50-Router Echo Amplification Storm (D=150)143,865 cyc (3.00 ms)/echo (3.00 s total CPU)7,076 cyc (147 µs p50, 151.16 ms total CPU)19.9× lower total CPU (20.3× faster/echo)
64-Frame Post-Outage Unique Broadcast Flood (D=150)Admits 30 / 64, 200.25 ms total, 3.01 ms shedAdmits 40 / 64 (+33% BTT), 18.87 ms total, 174 µs shed10.6× lower CPU time (17.3× faster shed)

MCP Tools, Resources & Prompts

Tools

All tools include read-only, idempotent ToolAnnotations (readOnlyHint=True, idempotentHint=True, destructiveHint=False, openWorldHint=False):

  • analyze_zigbee_thread_log(log_text): Matches raw Z2M/ZHA/OpenThread logs against 16+ error signatures (including decimal Z2M MAC codes 225/233/240/241, 0x10, 0x11, 0xC7, 0xCD, 0xA7/0xAD, 6000ms SRSP, and multi-line ZCL MQTT delta-zero telemetry floods).
  • decode_silicon_register(chip, register_or_addr, hex_value): Decodes TI SimpleLink F2 (CMD_IEEE_RX, CMD_IEEE_CSMA, RFC_DBELL, RFC_RAM:SRCMATCH, VIMS, PRCM) and Silicon Labs EFR32 (EUSART0_IF).
  • check_coordinator_capacity(device_count, sleepy_zed_count, chip_family): Evaluates TI SimpleLink F2 32-slot SRCMATCH hardware table utilization, indirect queue quota isolation (50% pool cap, max 2 frames/child), zero flash-read stalls during sleepy poll windows, and SRAM heap headroom.
  • get_zerostack_benchmarks(platform): Returns Part 1 and Part 2 hardware validation benchmarks for SLZB-06, SLZB-06U, SLZB-06P7, SLZB-06P7U, SLZB-06P7V1, SLZB-07P7, SLZB-06P10, SLZB-07P10, or "all".

Resources & Prompts

  • zerostack://benchmarks/summary — Complete Part 1 & Part 2 DWT->CYCCNT benchmark dataset.
  • zerostack://hardware/supported-models — Supported TI SimpleLink F2 hardware matrix for Release Zero (0.9.9-beta.1).
  • zerostack://diagnostics/catalog — Full machine-readable ZeroStack diagnostics catalog.
  • Prompt diagnose_zigbee_log(log_text) — Structured troubleshooting workflow for Zigbee2MQTT / ZHA logs.

License

Apache License 2.0 (Apache-2.0) — Copyright (c) 2026 SMLIGHT / ZeroStack RF Engineering. Learn more at https://smlight.tech/software/zerostack.