Rob Desktop Commander
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ROB_DC_SHELL | No | Shell for command tools (default: `powershell.exe` on Windows). | powershell.exe |
| ROB_DC_MAX_IO | No | Maximum simultaneous filesystem-I/O jobs globally. | 24 |
| ROB_DC_TIMEOUT_MS | No | Default command lifetime. | 30000 |
| ROB_DC_ALLOWED_DIRS | No | Allowed roots for filesystem tools. Use `*` for unrestricted file tools. Multiple roots use the OS PATH delimiter (`;` on Windows). | user home |
| ROB_DC_MAX_SEARCHES | No | Maximum simultaneous ripgrep searches globally. | 4 |
| ROB_DC_MAX_PROCESSES | No | Maximum simultaneously running child processes across all projects. | 8 |
| ROB_DC_MAX_READ_BYTES | No | File read/patch safety limit. | 2000000 |
| ROB_DC_ALLOW_DANGEROUS | No | Set to `1` to disable the small dangerous-command guard. | |
| ROB_DC_DETACH_AFTER_MS | No | Delay before `exec` turns into a persistent session. | 2500 |
| ROB_DC_MAX_OUTPUT_CHARS | No | Per-stream output protection. | 1000000 |
| ROB_DC_QUEUE_TIMEOUT_MS | No | Maximum wait for a saturated concurrency pool. | 15000 |
| ROB_DC_MAX_SEARCH_RESULTS | No | Global search result cap. | 500 |
| ROB_DC_MAX_IO_PER_WORKSPACE | No | Maximum filesystem-I/O jobs for one project. | 8 |
| ROB_DC_MAX_SEARCHES_PER_WORKSPACE | No | Maximum simultaneous searches for one project. | 2 |
| ROB_DC_MAX_PROCESSES_PER_WORKSPACE | No | Maximum child processes for one project/workspace. | 3 |
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": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| rob_statusB | Show Rob Desktop Commander runtime, security scope and active process sessions. |
| fs_readA | Read one local file. Supports UTF-8 line slicing or base64 for binary files. Prefer fs_read_many when several files are needed. |
| fs_read_manyA | Read multiple UTF-8 files in one MCP call. Use this instead of repeated fs_read calls when gathering project context. |
| fs_writeA | Create, overwrite or append a UTF-8 file. Overwrites are atomic by default and can use expectedSha256 as an optimistic concurrency guard. |
| fs_patchA | Apply one or more exact text replacements to a file in memory, validate expected match counts, then write once atomically. |
| fs_listB | List a directory tree with bounded recursion and result count. |
| fs_manageC | Perform filesystem management in one tool: stat, mkdir, move, copy or delete. destination is required for move/copy. |
| searchB | Fast local search powered by ripgrep. mode=content searches text with line/column output; mode=name searches file paths. |
| execB | Run a shell command efficiently. If it finishes before detachAfterMs, stdout/stderr and exit code are returned in this same MCP call. If still running, it automatically becomes a persistent session and returns sessionId. |
| process_startA | Start a long-running or interactive command immediately and return a sessionId without waiting. |
| process_readA | Read new output events from a persistent process session. Omit cursor for incremental reads; provide cursor for explicit replay position. |
| process_inputC | Send input to an interactive persistent process session. |
| process_killA | Terminate a persistent process session, including its child process tree on Windows. |
| process_listA | List active and recently completed persistent process sessions. |
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 14 tools
Most tools target clearly distinct resources or actions: process_* covers session lifecycle, fs_* covers filesystem operations, and search/exec are specific utilities. The main overlap is between exec and process_start, since exec can implicitly become a session, but the descriptions differentiate quick commands from explicit long-running sessions.
Nearly all names use snake_case with a domain prefix (process_, fs_, rob_) followed by an action, which is predictable and readable. The bare names search and exec are minor deviations from that prefix pattern, but not enough to cause confusion.
At 14 tools, the set is well-scoped for a desktop commander covering process control, filesystem access, search, and shell execution. Each tool earns its place, and fs_manage consolidates multiple filesystem operations without bloating the count.
The server covers the full lifecycle for its apparent domain: process start/list/read/input/kill, filesystem read/write/patch/list/manage (stat, mkdir, move, copy, delete), local search, shell execution, and runtime status. No obvious CRUD or workflow gaps remain for the stated purpose.