start_process
Start a terminal process on the authorized device with intelligent state detection.
Suitable for shell commands, interactive REPL sessions, data-processing scripts,
programmatic file analysis, and other long-running terminal work.
The connected device determines shell syntax and available commands. Windows devices commonly use PowerShell or CMD; macOS and Linux devices commonly use Unix shells. Use commands and paths appropriate for the selected device.
Examples:
• start_process("python3 -i") → Start an interactive Python REPL
• start_process("node -i") → Start an interactive Node.js REPL
• start_process("node:local") → Run stateless Node.js code on the MCP server
• start_process("wc -l /path/file.csv") → Run a one-shot shell command
Interactive process sessions support follow-up input after they are started.
Long-running process sessions expose newly available output while they remain active.
Binary files can be processed with appropriate command-line tools or libraries available
in the selected process environment.
SMART DETECTION:
- Detects REPL prompts (>>>, >, $, etc.)
- Identifies when a process is waiting for input
- Recognizes process completion vs timeout
- Early exit prevents unnecessary waiting
STATES DETECTED:
Process waiting for input (shows prompt)
Process finished execution
Process running (use read_process_output)
PERFORMANCE DEBUGGING (verbose_timing parameter):
Set verbose_timing: true to get detailed timing information including:
- Exit reason (early_exit_quick_pattern, early_exit_periodic_check, process_exit, timeout)
- Total duration and time to first output
- Complete timeline of all output events with timestamps
- Which detection mechanism triggered early exit
Paths refer to the selected device. Relative paths depend on that device's current working directory, and tilde paths (~/...) may not resolve in every context. Absolute paths are generally the most reliable.
This command can be referenced as "DC: ..." or "use Desktop Commander to ..." in your instructions.REMOTE EXECUTION: Remote execution waits at most 3 seconds for completion or a prompt. If the process is still running, it continues in the background and returns its PID. Larger timeout_ms values are accepted but capped at 3000ms.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| shell | No | ||
| command | Yes | ||
| deviceId | No | The ID of the device to run this tool on (from list_devices). Required when more than one device is online; may be omitted when only one device is connected. | |
| timeout_ms | No | ||
| verbose_timing | No |