Desktop Commander MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| execute_commandB | Execute a terminal command with timeout. Command will continue running in background if it doesn't complete within timeout. |
| read_outputC | Read new output from a running terminal session. |
| force_terminateC | Force terminate a running terminal session. |
| list_sessionsB | List all active terminal sessions. |
| list_processesA | List all running processes. Returns process information including PID, command name, CPU usage, and memory usage. |
| kill_processA | Terminate a running process by PID. Use with caution as this will forcefully terminate the specified process. |
| block_commandB | Add a command to the blacklist. Once blocked, the command cannot be executed until unblocked. |
| unblock_commandB | Remove a command from the blacklist. Once unblocked, the command can be executed normally. |
| list_blocked_commandsB | List all currently blocked commands. |
| read_fileA | Read the complete contents of a file from the file system. Handles various text encodings and provides detailed error messages if the file cannot be read. Only works within allowed directories. |
| read_multiple_filesA | Read the contents of multiple files simultaneously. Each file's content is returned with its path as a reference. Failed reads for individual files won't stop the entire operation. Only works within allowed directories. |
| write_fileA | Completely replace file contents. Best for large changes (>20% of file) or when edit_block fails. Use with caution as it will overwrite existing files. Only works within allowed directories. |
| create_directoryA | Create a new directory or ensure a directory exists. Can create multiple nested directories in one operation. Only works within allowed directories. |
| list_directoryA | Get a detailed listing of all files and directories in a specified path. Results distinguish between files and directories with [FILE] and [DIR] prefixes. Only works within allowed directories. |
| move_fileA | Move or rename files and directories. Can move files between directories and rename them in a single operation. Both source and destination must be within allowed directories. |
| search_filesC | Recursively search for files and directories matching a pattern. Searches through all subdirectories from the starting path. Only searches within allowed directories. |
| get_file_infoA | Retrieve detailed metadata about a file or directory including size, creation time, last modified time, permissions, and type. Only works within allowed directories. |
| list_allowed_directoriesB | Returns the list of directories that this server is allowed to access. |
| edit_blockA | Apply surgical text replacements to files. Best for small changes (<20% of file size). Multiple blocks can be used for separate changes. Will verify changes after application. Format: filepath, then <<<<<<< SEARCH, content to find, =======, new content, >>>>>>> REPLACE. |
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 19 tools
Most tools have distinct purposes, but some overlap exists between 'execute_command' and 'force_terminate'/'kill_process' in managing processes, and 'edit_block' and 'write_file' in file modification. However, descriptions clarify their specific use cases (e.g., 'edit_block' for small changes, 'write_file' for large replacements), reducing confusion.
Tool names follow a consistent verb_noun pattern throughout, such as 'create_directory', 'list_directory', 'read_file', and 'move_file'. This uniformity makes the toolset predictable and easy for agents to navigate without naming conflicts.
With 19 tools, the count is slightly high but reasonable for a desktop management server covering file operations, process control, and command execution. It provides comprehensive functionality without being overwhelmingly large, though it could be streamlined by merging some related tools.
The toolset offers complete coverage for desktop management, including CRUD operations for files and directories, process lifecycle management, command execution with safety features (blocking/unblocking), and session handling. No obvious gaps are present, supporting a wide range of agent workflows.