The tokenmonitor plugin ships through Fractal Manifold's MCP marketplace. Same skill catalogue, same tool surface — only the install command differs. Install it below, then jump to the skills & tools reference.
# Skills (you invoke these)
/tokenmonitor:configure
/tokenmonitor:theme <day|night|auto>
/tokenmonitor:settings <change>…
/tokenmonitor:firmware
# Tools the model calls as needed — the diagnostic four,# plus control-plane tools the skills drive for you
tokenmonitor_status
tokenmonitor_health
tokenmonitor_recent_logs
tokenmonitor_provision_hint
Where it lives
Marketplace entries land in ~/.claude/plugins/. Uninstall any time with /plugin uninstall tokenmonitor.
Codex CLI
registers tokenmonitor-mcp as an MCP server
Codex reads MCP servers from ~/.codex/config.toml. One command registers the broker so Codex can call the tokenmonitor_* tools — install the tokenmonitor-mcp broker first (see Setup).
Adds an [mcp_servers.tokenmonitor-mcp] entry to ~/.codex/config.toml.
What you get
# Tools Codex can call as needed
tokenmonitor_status
tokenmonitor_health
tokenmonitor_recent_logs
tokenmonitor_provision_hint
# Pair & reconfigure by asking Codex in plain language —# it drives the provisioning + control-plane tools for you.
Remove it
Drop the server any time with codex mcp remove tokenmonitor-mcp.
Same prompt works in any of the three CLIs. It hits tokenmonitor_status under the hood.
What's the status of my wall monitor broker?
The broker is running with role leader on localhost:8765. It last served tmon-3c7c9a02 a few seconds ago and has handled 2,847 requests since it started 4 hours ago. Health: PASS.
If the answer comes back with a different broker role, an empty request count, or the CLI says it can't find the tool — head to the troubleshooting page.
Skills & MCP tools
Four skills. Four core tools.
Skills are explicit commands you invoke; tools are functions the model can call on your behalf. Both are loaded the moment the tokenmonitor plugin is installed — nothing else to wire up.
/tokenmonitor:configure
Pair or reconfigure a device
Provision a new device, or reconfigure an existing one, from the LAN. Discovers via mDNS, prompts for the 6-digit pairing code, pushes broker URL + auto-generated PSK, registers the device locally.
When to use
New device showing "Waiting for setup" / pairing code on screen
Moving the broker to a different machine
Rotating the passphrase / PSK
Re-establishing trust after a device factory reset
Syntax
/tokenmonitor:configure
What it does, step by step
Scans _tmon._tcp.local for advertised devices
Prompts you to confirm the pairing code on the device
Generates a random per-device key (or hashes a passphrase you set)
POSTs the broker URL + key to the device over the LAN
Writes the device entry under ~/.config/tokenmonitor/devices/
/tokenmonitor:theme
Switch themes remotely
Flip a device between Day, Night or Auto themes from the comfort of your CLI. Auto follows sunrise/sunset for the device's configured city with a ±90 s hysteresis.
When to use
Force Day mode for a screenshot
Force Night mode when you're working late and the sensor lags
Reset to Auto after manual overrides
Syntax
/tokenmonitor:theme<day | night | auto> [--device<device_id>]
Examples
/tokenmonitor:theme auto
/tokenmonitor:theme night --device tmon-3c7c9a02
/tokenmonitor:theme day --device kitchen
/tokenmonitor:settings
Reconfigure a provisioned device
Push runtime settings to an already-paired device via the control plane: city, day / night brightness, alert volume, which providers are enabled, auto-rotation, broker URL, passphrase rotation. The change applies on the device's next 60 s poll, with automatic rollback if it can't be promoted.
WiFi SSID / password cannot be changed remotely — a bad push would brick the device. Open the on-device Settings panel (long-press the mascot) or factory-reset and re-run /tokenmonitor:configure.
/tokenmonitor:firmware
Stage a signed firmware update
Stage an over-the-air firmware update to the device across your LAN, through the broker. Each image is an Ed25519-signed manifest the device verifies before the boot slot switches — with automatic rollback if the new build doesn't check in healthy, and an anti-rollback floor against downgrades.
When to use
A new firmware release is available for your device
You want to move a device onto the dev / canary channel
Re-applying after an automatic rollback
Syntax
/tokenmonitor:firmware [--device<device_id>]
Safe by design
Updates only ever flow over your own LAN, and the device installs nothing it can't cryptographically verify. If a build won't boot cleanly, it reverts itself.
MCP tools
What the model can call directly.
These are the four you'll reach for directly — your AI agent calls them in response to natural-language questions, no slash-skill needed. The skills drive a larger set of control-plane tools (device registry, discovery, firmware publish / revert) behind the scenes.
tokenmonitor_status
Runtime, role + request count
Returns the broker's runtime, its role (leader or follower), when it last served the device, and the total requests handled since startup.
Runs a PASS/FAIL check across your provider credentials (present, parseable, not expired), a signed self-ping to the broker, and recently observed device traffic.
okcredentialsself_pingobserved_traffic
tokenmonitor_recent_logs
Tail the broker log
Returns the last N lines (default 50) of the broker's structured log. Useful when a device shows stale data and you want to see whether the broker even received the poll.
lines: intlevel?: warn|err
tokenmonitor_provision_hint
Suggests laptop LAN URLs
Lists candidate broker URLs (your laptop's LAN interfaces) ranked by reachability. The captive portal uses this to populate the broker-URL field when you'd rather not run the configure skill.
urls[]preferred: string
Example
A new device, end to end.
Powered on, pairing code visible, plugin installed. From here:
I just powered on a new wall monitor. It's showing pairing code 428 715.
I'll configure it. Running /tokenmonitor:configure… Found tmon-3c7c9a02 at 192.168.1.42 via mDNS. Generated a device key and pushed it over the LAN. It's rebooting now — give it ~10 s.
Is my broker actually serving it?
Called tokenmonitor_status. Broker is running with role leader; it last served tmon-3c7c9a02 seconds ago, 12 requests so far. Health PASS.
Switch to night mode.
Ran /tokenmonitor:theme night. Device acknowledged in 110 ms.
Next step
Configure your device.
With the plugin loaded, /tokenmonitor:configure takes over from here. It discovers the device on your LAN, prompts for the pairing code, pushes the PSK.