MCP server
Desktop Commander MCP Server
- Maintainer
- Community
- Runs
- Local (stdio)
- GitHub
- ★ 10,113, last push 2026-10-24 (checked 2026-10-24)
- License
- MIT
- Registry
- io.github.wonderwhy-er/desktop-commander
Install the Desktop Commander MCP Server
Pick your client. Each tab starts the same local command. Config shapes checked against each client's docs on 2026-10-25.
Run in a terminal. Everything after -- is the command that starts the server. docs
claude mcp add --transport stdio desktop-commander -- npx -y @wonderwhy-er/desktop-commander
Claude Desktop only: Settings > Developer > Edit Config opens claude_desktop_config.json. Add this, save and restart the app. docs
{
"mcpServers": {
"desktop-commander": {
"command": "npx",
"args": [
"-y",
"@wonderwhy-er/desktop-commander"
]
}
}
}Add to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (this project), or use the install button. docs
{
"mcpServers": {
"desktop-commander": {
"command": "npx",
"args": [
"-y",
"@wonderwhy-er/desktop-commander"
]
}
}
}Add to .vscode/mcp.json (note the "servers" key and the type), or use the install button. Command Palette > "MCP: Open User Configuration" for all workspaces. docs
{
"servers": {
"desktop-commander": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@wonderwhy-er/desktop-commander"
]
}
}
}Run codex mcp add desktop-commander -- npx -y @wonderwhy-er/desktop-commander, or add this to ~/.codex/config.toml. docs
[mcp_servers.desktop-commander] command = "npx" args = ["-y", "@wonderwhy-er/desktop-commander"]
Run in a terminal (-s user adds it for all projects; the default is this project). docs
gemini mcp add -s user desktop-commander npx -- -y @wonderwhy-er/desktop-commander
Run in a terminal; it writes ~/.copilot/mcp-config.json. docs
copilot mcp add desktop-commander -- npx -y @wonderwhy-er/desktop-commander
Add to mcp_config.json: ~/.config/devin/mcp_config.json on macOS and Linux (older installs: ~/.codeium/windsurf/mcp_config.json), %APPDATA%\devin\ on Windows. docs
{
"mcpServers": {
"desktop-commander": {
"command": "npx",
"args": [
"-y",
"@wonderwhy-er/desktop-commander"
]
}
}
}Add to Zed's settings.json (or Settings > AI > MCP Servers > Add Server). Remote servers without an Authorization header sign in with OAuth. docs
{
"context_servers": {
"desktop-commander": {
"command": "npx",
"args": [
"-y",
"@wonderwhy-er/desktop-commander"
]
}
}
}Add to opencode.json in the project (or ~/.config/opencode/opencode.json). docs
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"desktop-commander": {
"type": "local",
"command": [
"npx",
"-y",
"@wonderwhy-er/desktop-commander"
],
"enabled": true
}
}
}Add to ~/.kiro/settings/mcp.json (all projects) or .kiro/settings/mcp.json (this project). docs
{
"mcpServers": {
"desktop-commander": {
"command": "npx",
"args": [
"-y",
"@wonderwhy-er/desktop-commander"
]
}
}
}MCP Servers > Configure > Configure MCP Servers opens cline_mcp_settings.json; add this entry. docs
{
"mcpServers": {
"desktop-commander": {
"command": "npx",
"args": [
"-y",
"@wonderwhy-er/desktop-commander"
]
}
}
}Security notes
- The local server runs with your user's permissions (npx downloads it from npm on first run).
- It reads files you point it at. Give it only the folders it needs.
- Community code: read it (or at least the tools it registers) before you give it credentials.
Alternatives
- Boxofficial
Hosted server for searching, reading and asking questions about files in Box.
- Dropboxofficial
Search and read files in Dropbox (hosted server).
- Filesystemreference
Read, write, move and search files inside the folders you allow.
- Google Docsofficial
Google's hosted server for reading and writing Google Docs documents (developer preview).
- Google Driveofficial
Google's hosted MCP server for finding and reading Google Drive files (developer preview).
- Google Sheetsofficial
Google's hosted server for reading and editing Google Sheets spreadsheets (developer preview).
- Google Slidesofficial
Google's hosted server for reading and building Google Slides decks (developer preview).
- MarkItDownofficial
Convert PDF, Word, Excel, PowerPoint, images and audio to Markdown.
FAQ
What does the Desktop Commander MCP Server do?+
Terminal commands, process control, file search and diff edits on your machine.
Is the Desktop Commander MCP server official?+
Community-maintained (wonderwhy-er on GitHub), not by the company whose product it connects to.
How do I add Desktop Commander to Claude Code?+
Run: claude mcp add desktop-commander -- npx -y @wonderwhy-er/desktop-commander. Add --scope project to share it with your team through .mcp.json.
How do I use the Desktop Commander MCP server in Cursor or VS Code?+
Open the Cursor or VS Code tab above: it has the mcp.json entry and a one-click install link. Cursor uses the "mcpServers" key; VS Code uses "servers" and needs a type ("stdio").
Does Desktop Commander work in ChatGPT and claude.ai?+
No: it runs locally over stdio, and ChatGPT and claude.ai only connect to remote servers. Use it in Claude Desktop, Claude Code, Cursor, VS Code or another client that can start a local process.
What are the alternatives to the Desktop Commander MCP server?+
Other file system & documents MCP servers: Box, Dropbox, Filesystem, Google Docs and Google Drive.