Claude Desktop Commander MCP

by wonderwhy-er
Verified

local-only server

The server can only run on the client’s local machine because it depends on local resources.

デスクトップコマンダーMCP

AI でファイルを検索、更新、管理し、ターミナル コマンドを実行します

簡潔にまとめると、4つの重要な点があります。ターミナルコマンド、diffベースのファイル編集、ripgrepベースのフォルダ内テキスト検索、URLからのファイル読み込み機能

目次

これは、Claude デスクトップ アプリがコンピューター上で長時間実行されるターミナル コマンドを実行し、モデル コンテキスト プロトコル (MCP) を通じてプロセスを管理できるようにするサーバーです。MCPファイルシステム サーバー上に構築され、追加の検索および置換ファイル編集機能を提供します。

特徴

  • 出力ストリーミングでターミナルコマンドを実行する
  • コマンドタイムアウトとバックグラウンド実行のサポート
  • プロセス管理(プロセスの一覧表示と終了)
  • 長時間実行コマンドのセッション管理
  • サーバー構成管理:
    • 設定値の取得/設定
    • 複数の設定を一度に更新する
    • サーバーの再起動なしで動的な構成変更が可能
  • 完全なファイルシステム操作:
    • ファイルの読み取り/書き込み
    • ディレクトリの作成/一覧表示
    • ファイル/ディレクトリを移動する
    • ファイルを検索
    • ファイルのメタデータを取得する
    • コード編集機能:
    • 小さな変更のための外科的テキスト置換
    • 大きな変更があった場合はファイル全体を書き換える
    • 複数ファイルのサポート
    • パターンベースの置換
    • vscode-ripgrep ベースのフォルダー内の再帰コードまたはテキスト検索

インストール

まず、 Claude デスクトップ アプリをダウンロードしてインストールし、 npm がインストールされていることを確認します。

オプション1: npx経由でインストールする

ターミナルでこれを実行するだけです

npx @wonderwhy-er/desktop-commander@latest setup

デバッグモードの場合(Node.js インスペクター接続を許可):

npx @wonderwhy-er/desktop-commander@latest setup --debug

実行中の場合はClaudeを再起動します

オプション2: bashスクリプトインストーラーを使用する (macOS)

macOS ユーザーの場合は、Node.js のバージョンを確認し、必要に応じてインストールし、Desktop Commander を自動的に構成する自動 bash インストーラーを使用できます。

curl -fsSL https://raw.githubusercontent.com/wonderwhy-er/DesktopCommanderMCP/refs/heads/main/install.sh | bash

このスクリプトは、シームレスなセットアップエクスペリエンスを実現するために、すべての依存関係と構成を自動的に処理します。

オプション3: Smithery経由でインストールする

Smithery経由で Claude Desktop 用の Desktop Commander を自動的にインストールするには:

npx -y @smithery/cli install @wonderwhy-er/desktop-commander --client claude

オプション4: claude_desktop_configに手動で追加する

次のエントリを claude_desktop_config.json に追加します。

  • Macの場合: ~/Library/Application\ Support/Claude/claude_desktop_config.json
  • Windows の場合: %APPDATA%\Claude\claude_desktop_config.json
  • Linuxの場合: ~/.config/Claude/claude_desktop_config.json
{ "mcpServers": { "desktop-commander": { "command": "npx", "args": [ "-y", "@wonderwhy-er/desktop-commander" ] } } }

実行中の場合はClaudeを再起動します

オプション5: 現地でチェックアウト

  1. クローンとビルド:
git clone https://github.com/wonderwhy-er/DesktopCommanderMCP.git cd DesktopCommanderMCP npm run setup

実行中の場合はClaudeを再起動します

セットアップ コマンドは次の処理を実行します。

  • 依存関係をインストールする
  • サーバーを構築する
  • Claudeのデスクトップアプリを構成する
  • 必要に応じて、Claude の設定に MCP サーバーを追加します。

デスクトップコマンダーのアップデート

npx(オプション1)またはSmithery(オプション2)経由でインストールした場合、Claudeを再起動するたびにDesktop Commanderは自動的に最新バージョンに更新されます。手動での更新作業は必要ありません。

手動インストールの場合は、セットアップ コマンドを再度実行して更新できます。

使用法

サーバーは、いくつかのカテゴリに分類された包括的なツール セットを提供します。

利用可能なツール

カテゴリ道具説明
構成get_config完全なサーバー構成を JSON として取得します (blockedCommands、defaultShell、allowedDirectories を含む)
set_config_valueキーで特定の設定値を設定します。使用可能な設定: • blockedCommands : 実行できないシェルコマンドの配列• defaultShell : コマンドに使用するシェル (例: bash、zsh、powershell)• allowedDirectories : サーバーがファイル操作のためにアクセスできるファイルシステムパスの配列 (⚠️ ターミナルコマンドはこれらのディレクトリ外のファイルにもアクセスできます)
ターミナルexecute_commandタイムアウトとシェル選択を設定してターミナルコマンドを実行する
read_output実行中のターミナルセッションから新しい出力を読み取る
force_terminate実行中のターミナルセッションを強制終了する
list_sessionsすべてのアクティブなターミナルセッションを一覧表示する
list_processes実行中のすべてのプロセスを詳細情報とともに一覧表示します
kill_processPIDで実行中のプロセスを終了する
ファイルシステムread_fileローカルファイルシステムまたは URL からコンテンツを読み取ります (テキストと画像をサポート)
read_multiple_files複数のファイルを同時に読み取る
write_fileファイルの内容を完全に置き換えます(大きな変更の場合に最適)
create_directory新しいディレクトリを作成するか、存在することを確認します
list_directoryファイルとディレクトリの詳細なリストを取得する
move_fileファイルとディレクトリを移動または名前変更する
search_files大文字と小文字を区別しない部分文字列マッチングを使用して名前でファイルを検索する
search_coderipgrep を使用してファイルの内容内のテキスト/コードパターンを検索する
get_file_infoファイルまたはディレクトリに関する詳細なメタデータを取得する
テキスト編集edit_block外科的なテキスト置換を適用する(ファイル サイズの 20% 未満の変更に最適)

ツールの使用例

検索/置換ブロック形式:

filepath.ext <<<<<<< SEARCH content to find ======= new content >>>>>>> REPLACE

例:

src/main.js <<<<<<< SEARCH console.log("old message"); ======= console.log("new message"); >>>>>>> REPLACE

URL サポート

  • read_fileローカルファイルと URL の両方からコンテンツを取得できるようになりました
  • 例: Web リソースから読み取るためのisUrl: trueパラメータを指定したread_file
  • リモートソースからのテキストと画像コンテンツの両方を処理
  • 画像(ローカルまたはURLから)は、テキストではなく、Claudeのインターフェースで視覚的に表示されます。
  • クロードは実際の画像コンテンツを見て分析することができます
  • URL リクエストのデフォルトの 30 秒のタイムアウト

長時間実行されるコマンドの処理

時間がかかる可能性があるコマンドの場合:

構成管理

⚠️ 重要なセキュリティ警告

  1. 設定の変更は、必ず実際の作業とは別のチャットウィンドウで行ってください。Claude は、操作中にファイルシステムへのアクセス制限に遭遇した場合、設定( allowedDirectoriesなど)を変更しようとすることがあります。
  2. allowedDirectories設定は現在、ファイルシステム操作のみを制限し、ターミナルコマンドは制限しません。ターミナルコマンドは、許可されたディレクトリ外のファイルに引き続きアクセスできます。ターミナルの完全なサンドボックス化はロードマップに予定されています。

設定ツール

提供されているツールを使用してサーバー構成を管理できます。

// Get the entire config get_config({}) // Set a specific config value set_config_value({ "key": "defaultShell", "value": "/bin/zsh" }) // Set multiple config values using separate calls set_config_value({ "key": "defaultShell", "value": "/bin/bash" }) set_config_value({ "key": "allowedDirectories", "value": ["/Users/username/projects"] })

構成はサーバーの作業ディレクトリのconfig.jsonに保存され、サーバーの再起動後も保持されます。

ベストプラクティス

  1. 設定変更専用のチャットを作成します。すべての設定変更を 1 つのチャットで行い、実際の作業用に新しいチャットを開始します。
  2. 空のallowedDirectoriesには注意してください。これを空の配列 ( [] ) に設定すると、ファイル操作のためにファイルシステム全体へのアクセスが許可されます。
  3. 特定のパスを使用する: /ような広いパスを使用する代わりに、アクセスするディレクトリを正確に指定します。
  4. 変更後は常に構成を確認してください。get_config get_config({})を使用して、変更が正しく適用されたことを確認します。

異なるシェルの使用

コマンド実行に使用するシェルを指定できます。

// Using default shell (bash or system default) execute_command({ "command": "echo $SHELL" }) // Using zsh specifically execute_command({ "command": "echo $SHELL", "shell": "/bin/zsh" }) // Using bash specifically execute_command({ "command": "echo $SHELL", "shell": "/bin/bash" })

これにより、シェル固有の機能を使用したり、コマンド間で一貫した環境を維持したりできるようになります。

  1. execute_commandタイムアウト後に初期出力で戻ります
  2. コマンドはバックグラウンドで継続されます
  3. 新しい出力を取得するには、PID を指定したread_output使用します。
  4. 必要に応じてforce_terminateを使用して停止します

デバッグ

サーバーをデバッグする必要がある場合は、デバッグ モードでインストールできます。

# Using npx npx @wonderwhy-er/desktop-commander@latest setup --debug # Or if installed locally npm run setup:debug

これにより、次のようになります。

  1. Claude を別の「デスクトップ コマンダー」サーバーを使用するように構成します
  2. --inspect-brk=9229フラグを使用して Node.js インスペクタ プロトコルを有効にする
  3. デバッガが接続されるまで実行を一時停止します
  4. 追加のデバッグ環境変数を有効にする

デバッガーを接続するには:

  • Chromeでchrome://inspectにアクセスし、Node.jsインスタンスを探します。
  • VS Codeでは、「ノードプロセスにアタッチ」デバッグ構成を使用します。
  • 他のIDE/ツールにもNode.jsデバッグ用の同様の「アタッチ」オプションがあるかもしれない

重要なデバッグに関する注意事項:

  • デバッガーが接続されるまで、サーバーは起動時に一時停止します( --inspect-brkフラグのため)
  • デバッグ中にアクティビティが表示されない場合は、正しいNode.jsプロセスに接続していることを確認してください。
  • 複数のノードプロセスが実行中である可能性があります。ポート9229のプロセスに接続してください。
  • デバッグサーバーは、Claude の MCP サーバーリストで「desktop-commander-debug」として識別されます。

トラブルシューティング:

  • デバッグサーバーの使用中にClaudeがタイムアウトした場合、デバッガーが正しく接続されていない可能性があります。
  • 正しく接続されると、プロセスは最初のブレークポイントに到達した後も実行を継続します。
  • 接続したらIDEで追加のブレークポイントを追加できます

モデルコンテキストプロトコル統合

このプロジェクトは、MCP ファイルシステム サーバーを拡張して次の機能を実現します。

  • Claude Desktop のローカルサーバーのサポート
  • 完全なシステムコマンド実行
  • プロセス管理
  • ファイル操作
  • 検索/置換ブロックを使ったコード編集

Claude MCP の探索の一環として作成されました: https://youtube.com/live/TlbjFDbl5Us

終わり

  • 2025年4月16日 設定の改善- 許可されたパス、コマンド、シェル環境の設定が改善されました
  • 2025年4月14日 Windows環境の修正- Windowsプラットフォーム固有の問題を解決しました
  • 2025年4月14日 Linuxの改善- さまざまなLinuxディストリビューションとの互換性が強化されました
  • 2025年12月4日 許可ディレクトリとブロックコマンドの改善- ファイルの読み取り/書き込みと端末コマンドの制限に関するセキュリティとパス検証が改善されました。端末は引き続き、許可ディレクトリを無視してファイルにアクセスできます。
  • 2025年11月4日 シェル設定- コマンド実行時に優先シェルを設定する機能が追加されました
  • 2025年7月4日 URLサポートを追加- read_fileコマンドでURLからコンテンツを取得できるようになりました
  • 2025年3月28日 「Watching /」JSONエラーを修正- JSON以外のメッセージを処理し、サーバーのクラッシュを防ぐためのカスタムstdioトランスポートを実装しました
  • 2025年3月25日 より優れたコード検索統合済み) - コンテキストに応じた結果によるコード探索の強化

進行中の作業とTODO

現在、以下の機能が検討されています。

  • WSL (Windows Subsystem for Linux 統合) のサポート
  • SSHのサポート- リモートサーバーコマンド実行
  • csv/pdfなどのファイルのサポートが向上
  • セキュリティ強化のためのMac/Linux/Windows用ターミナルサンドボックス
  • ファイル読み取りモード- たとえば、HTML をプレーンテキストまたはマークダウンとして読み取ることができます

Webサイト

最新情報、ドキュメント、アップデートについては、公式 Web サイトhttps://desktopcommander.app/をご覧ください。

メディア

以下のリソースを通じてこのプロジェクトの詳細を学んでください。

記事

MCPを搭載したClaudeがCursorとWindsurfに取って代わりました。これはどのようにして実現したのでしょうか? - モデルコンテキストプロトコル機能を備えたClaudeが開発者のワークフローにどのような変化をもたらしているかを詳細に検証します。

ビデオ

Claude Desktop Commander ビデオ チュートリアル- Commander を効果的にセットアップして使用する方法をご覧ください。

AnalyticsIndiaMagでの出版

この開発者はWindsurfとCursorを捨て、MCPでClaudeを使用しました

コミュニティ

サポートを受けたり、フィードバックを共有したり、他のユーザーとつながったりするには、 Discord サーバーに参加してください。

お客様の声

https://www.youtube.com/watch?v=ly3bed99Dy8&lc=UgyyBt6_ShdDX_rIOad4AaABAg

https://www.youtube.com/watch?v=ly3bed99Dy8&lc=UgztdHvDMqTb9jiqnf54AaABAg

https://www.youtube.com/watch?v=ly3bed99Dy8&lc=UgyQFTmYLJ4VBwIlmql4AaABAg

https://www.youtube.com/watch?v=ly3bed99Dy8&lc=Ugy4-exy166_Ma7TH-h4AaABAg

https://medium.com/@pharmx/you-sir-are-my-hero-62cff5836a3e

貢献

このプロジェクトが役に立ったと感じたら、GitHubで⭐星を付けていただけると嬉しいです!これにより、他の人がこのプロジェクトを見つけやすくなり、さらなる開発が促進されます。

コミュニティからの貢献を歓迎します!バグを見つけた場合、機能のリクエストがある場合、またはコードに貢献したい場合は、以下の方法でご協力ください。

  • バグを発見しましたか? github.com/wonderwhy-er/DesktopCommanderMCP/issuesで問題を報告してください。
  • **機能に関するアイデアをお持ちですか?**問題セクションから機能リクエストを送信してください。
  • **コードを投稿したいですか?**リポジトリをフォークしてブランチを作成し、プルリクエストを送信してください。
  • 質問や議論はありますか? GitHubのディスカッションタブで議論を始めてください。

規模の大小を問わず、すべての貢献を大歓迎します。

このツールがワークフローにとって価値があると思われる場合は、プロジェクトのサポートを検討してください。

よくある質問

よくある質問への回答をご紹介します。より包括的なFAQについては、詳細なFAQドキュメントをご覧ください。

DesktopCommanderMCPとは何ですか?

これは、Claude Desktop がファイル システムとターミナルにアクセスできるようにする MCP ツールであり、Claude をコーディング、自動化、コードベースの探索などのための多目的アシスタントに変えます。

これは Cursor/Windsurf とどう違うのでしょうか?

IDEに特化したツールとは異なり、Claude Desktop Commanderは、コーディング環境内だけでなくOS全体に対応するソリューション中心のアプローチを提供します。Claudeはファイルを分割するのではなく完全に読み込み、複数のプロジェクトにまたがって同時に作業でき、変更を一度に実行する際にも継続的なレビューは必要ありません。

API クレジットを支払う必要がありますか?

いいえ。このツールは、API 呼び出しではなく、Claude Desktop の標準 Pro サブスクリプション (月額 20 ドル) で動作するため、サブスクリプション料金以外に追加費用は発生しません。

Desktop Commander は自動的に更新されますか?

はい、npxまたはSmithery経由でインストールした場合、Claudeを再起動するとDesktop Commanderは自動的に最新バージョンに更新されます。手動で更新する必要はありません。

最も一般的な使用例は何ですか?

  • 複雑なコードベースの調査と理解
  • 図表とドキュメントの生成
  • システム全体のタスクを自動化
  • 複数のプロジェクトを同時に作業する
  • 精密な制御による外科的コード変更

ツールのインストールや使用に問題があります。どこでサポートを受けられますか?

コミュニティサポートについては、 Discordサーバーにご参加ください。既知の問題についてはGitHubのIssueをご確認ください。トラブルシューティングのヒントについては、 FAQ全文をご覧ください。よりユーザーフレンドリーな体験のために、ウェブサイトのFAQセクションもご覧ください。新しい問題が発生した場合は、 GitHubのIssueに問題の詳細を記載してご投稿ください。

データ収集

Desktop Commanderはインストールとセットアップ中に、ツールの改善に役立てるために匿名の使用データを収集します。これには以下のものが含まれます。

  • オペレーティングシステム情報
  • Node.js と NPM のバージョン
  • インストール方法とシェル環境
  • エラー メッセージ (セットアップ中に発生した場合)

このデータはGoogleアナリティクスの分析機能を使用して収集され、機械生成された一意のIDに関連付けられます。個人情報は一切収集されません。このデータは、ツールの使用方法を理解し、一般的な問題を特定するために活用されます。

今後のリリースでは、このデータ収集のオプトアウトオプションを組み込む予定です。現時点では、オプトアウトをご希望の場合は、ファイアウォール設定でgoogle-analytics.comへのネットワーク接続をブロックしてください。

ライセンス

マサチューセッツ工科大学

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Claude デスクトップ アプリは、コマンド実行、プロセス管理、差分ベースのファイル編集などの機能を使用して、MCP を介してターミナル コマンドを実行し、コンピューター上のファイルを編集できます。

  1. Search, update, manage files and run terminal commands with AI
    1. Table of Contents
      1. Features
        1. Installation
          1. Option 1: Install through npx
          2. Option 2: Using bash script installer (macOS)
          3. Option 3: Installing via Smithery
          4. Option 4: Add to claude_desktop_config by hand
          5. Option 5: Checkout locally
          6. Updating Desktop Commander
        2. Usage
          1. Available Tools
          2. Tool Usage Examples
          3. URL Support
        3. Handling Long-Running Commands
          1. Configuration Management
            1. ⚠️ Important Security Warnings
            2. Configuration Tools
            3. Best Practices
          2. Using Different Shells
            1. Debugging
              1. Model Context Protocol Integration
                1. DONE
                  1. Work in Progress and TODOs
                    1. Website
                      1. Media
                        1. Article
                        2. Video
                        3. Publication at AnalyticsIndiaMag
                        4. Community
                      2. Testimonials
                        1. Contributing
                          1. Frequently Asked Questions
                            1. What is DesktopCommanderMCP?
                            2. How is this different from Cursor/Windsurf?
                            3. Do I need to pay for API credits?
                            4. Does Desktop Commander automatically update?
                            5. What are the most common use cases?
                            6. I'm having trouble installing or using the tool. Where can I get help?
                          2. Data Collection
                            1. License
                              ID: zempur9oh4