matic-desk-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MATIC_CONFIG | No | Override the path to the robot identity and credential file `pair` writes to. Defaults to `~/.config/matic/robot.json`. | |
| MATIC_DESK_DATA | No | Set this to keep the ledger (`ledger.sqlite`) and aliases (`aliases.json`) somewhere other than `~/Library/Application Support/Matic Desk/`. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| matic_statusA | Current robot status: activity (cleaning, paused, returning, charging, docked, ready, error or offline), battery %, current room, error codes, bag full/missing flags and firmware, plus settings (water flow, deep mop, pet waste avoidance, child lock, voice). Never fails for connectivity: an unreachable robot reports activity 'offline' with a message. |
| matic_roomsA | Rooms on the robot's map, groups of numbered segments (e.g. 'Living Room' covers 'Living Room 1..3') and the user's room aliases. Use these names with matic_start_cleaning. |
| matic_bag_reportA | Dust bag usage since the last recorded bag swap: swap date, days, runs, total cleaning, vacuum and mop seconds, whether the robot reports the bag full or missing, previous bags and an estimate of the remaining life. The robot has no fill gauge, only full/missing flags. If 'complete' is false, runs before 'counted_from' may be missing; say so. |
| matic_historyA | Recent cleaning runs, newest first: start and end (UTC), total duration, vacuum and mop seconds, rooms, modes and whether the run completed. The robot keeps about 20 runs; older ones come from the local ledger. |
| matic_mapA | A 1024x1024 PNG of the floor plan with room names, the robot's position and, while a run is active, its route. |
| matic_start_cleaningA | Start the robot cleaning now. Give |
| matic_pauseA | Pause the current cleaning run (resume later with matic_resume). |
| matic_resumeA | Resume a paused cleaning run. |
| matic_stopA | Stop and end the current cleaning run (the robot stays where it is). Use matic_dock to send it home. |
| matic_dockA | Send the robot back to its dock (ends the current run). |
| matic_set_settingA | Change one robot setting and return all settings. water_flow: mop water amount, 0.5 to 2.0 in 0.1 steps (1.0 is normal). deep_mop: double-pass mopping, on/off. pet_waste: pet waste avoidance, on/off. child_lock: on/off. voice: spoken prompts, on/off. |
| matic_record_bag_swapA | Record that the user changed the robot's dust bag, then return the bag report. Omit |
| matic_name_roomA | Create or replace a room alias so the user can say e.g. 'office' for 'Room 3' or 'downstairs' for several rooms. An alias can't reuse a room name, a group name or 'all'. Returns the updated rooms, groups and aliases. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 13 tools
Each tool targets a distinct resource or action: map/status/rooms/history/bag report, start/pause/resume/stop/dock, and settings/bag swap/room alias are clearly separated. The only close pair is stop vs dock, but their descriptions distinguish staying in place from returning home.
All tools use a consistent matic_ prefix and snake_case, with readable verb or noun phrases such as matic_start_cleaning, matic_pause, and matic_bag_report. No mixed casing or naming conventions appear.
13 tools is well-scoped for a robot vacuum control server, covering operation, state, history, bag maintenance, and room aliasing without obvious bloat.
Core robot lifecycle (start/pause/resume/stop/dock), status, map, rooms, settings, history, and bag management are covered. Minor gaps remain around scheduling, error clearing, and no-go zone management, but agents can work around them.