MeshMonitor API
by @dadud
Use the MeshMonitor REST API to inspect Meshtastic mesh state, nodes, channels, telemetry, messages, traceroutes, packets, solar data, and network-wide stats...
clawhub install meshmonitor-apiπ About This Skill
name: meshmonitor description: Use the MeshMonitor REST API to inspect Meshtastic mesh state, nodes, channels, telemetry, messages, traceroutes, packets, solar data, and network-wide stats. Use when the user wants data from a MeshMonitor instance, wants a MeshMonitor-backed dashboard/report, wants help querying mesh history, or wants a reusable MeshMonitor API integration/skill created or updated.
meshmonitor
Use this skill for MeshMonitor API work.
What this skill assumes
/api/v1/api/v1/docs/First move
1. Confirm the MeshMonitor base URL. 2. Confirm you have a valid API token. 3. Test auth with a lightweight request before doing anything bigger.
Use the helper script:
python3 scripts/meshmonitor_api.py --base-url http://HOST:PORT --token 'mm_v1_...' info
If auth fails, stop and ask for a fresh token. Do not guess token format.
Supported API areas
This skill is designed to use as much of the API as practical. Prefer these endpoint groups when available:
info β API/version metadatanodes β list nodes, inspect node, position historychannels β channel configurationtelemetry β telemetry history and summariesmessages β mesh messages/historytraceroutes β route/path historynetwork β network-wide statistics/topology summariespackets β raw packet logssolar β forecast/solar views when enabledWorkflow
1) Validate docs + auth
2) Prefer read-heavy discovery first
Before building reports or automation:
This tells you which features are populated on the actual instance.
3) Produce structured outputs
When the user asks for a report, return concise structured sections such as:
4) Be careful with time filters
Many MeshMonitor endpoints are history-oriented. Prefer explicit params like:
sincebeforelimitactivesinceDaysWhen unsure, start with conservative limits.
Files in this skill
references/api-notes.md β known API groups and verified live behavior notesscripts/meshmonitor_api.py β helper CLI for authenticated calls, endpoint discovery, message sending, and report generationRead references/api-notes.md when you need a quick endpoint map.
Helper CLI coverage
The helper now has first-class commands for:
infonodesnodeposition-historychannelschanneltelemetrytelemetry-counttelemetry-nodemessagesmessagesend-messagetraceroutestraceroutenetworktopologypacketspacketsolarsolar-rangedocsrawhealth-summarynode-reporttraffic-reporttopology-reportRecommended usage patterns
Quick health check
python3 scripts/meshmonitor_api.py --base-url http://HOST:PORT --token 'TOKEN' health-summary
Inspect a node
python3 scripts/meshmonitor_api.py --base-url http://HOST:PORT --token 'TOKEN' node-report '!a1b2c3d4'
Browse mesh traffic
python3 scripts/meshmonitor_api.py --base-url http://HOST:PORT --token 'TOKEN' traffic-report --limit 20
Inspect topology
python3 scripts/meshmonitor_api.py --base-url http://HOST:PORT --token 'TOKEN' topology-report
Send a message
python3 scripts/meshmonitor_api.py --base-url http://HOST:PORT --token 'TOKEN' send-message --channel 0 'hello from the API'
Explore live API surface
python3 scripts/meshmonitor_api.py --base-url http://HOST:PORT --token 'TOKEN' docs
Troubleshooting
Unauthorized / invalid token
Docs page works but API fails
Authorization: Bearer ... header is present.Endpoint exists in docs but returns empty data
That usually means the instance has the feature but no stored data yet. Report that clearly instead of treating it as a hard failure.
Deliverables this skill is good at
π Tips & Best Practices
Unauthorized / invalid token
Docs page works but API fails
Authorization: Bearer ... header is present.Endpoint exists in docs but returns empty data
That usually means the instance has the feature but no stored data yet. Report that clearly instead of treating it as a hard failure.