ClaudeデスクトップアプリでMCPを導入した(MacOS)

ClaudeデスクトップアプリはMCPを使用できます。やり方は[ここ](https://modelcontextprotocol.io/quickstart/user)に書いてあるので、英語でよければそれでよいです。

例えば`filesystem`を導入すると、以下のことができます。（Claude.aiが言ってた）
> ファイルシステムツールはいくつかの操作を実行する権限を持っています。これには以下が含まれます：
>
> - ファイルの読み取り (`read_file`, `read_multiple_files`)
> - ファイルの書き込み・更新 (`write_file`, `edit_file`, `edit_block`)
> - ディレクトリの作成 (`create_directory`)
> - ディレクトリの内容の表示 (`list_directory`, `directory_tree`)
> - ファイルの移動/名前変更 (`move_file`)
> - ファイルの検索 (`search_files`)
> - ファイル情報の取得 (`get_file_info`)
> - アクセス可能なディレクトリの一覧表示 (`list_allowed_directories`)
> 
> これらの操作は、許可されたディレクトリ内でのみ実行できます。アクセス可能なディレクトリを確認するには、`list_allowed_directories`関数を使用できます。

以下の記事は、[manus.ai]()で自動生成しました。
プロンプトは「claudeのデスクトップ版から利用できるMCPの構築方法。MacOSで。」
そのまま実行してうまくいったので公開します。
私はClaude.aiのProプランを利用しているので、Freeプランについては確認できていません。

---

# MacOSでClaudeデスクトップアプリからMCPを構築する方法

## 目次

1. [はじめに](#はじめに)
2. [前提条件](#前提条件)
3. [ファイルシステムMCPサーバーのインストールと設定](#ファイルシステムmcpサーバーのインストールと設定)
4. [設定プロセスの詳細](#設定プロセスの詳細)
5. [使用例とトラブルシューティング](#使用例とトラブルシューティング)

## はじめに

Model Context Protocol（MCP）は、Anthropic社が開発した新しいオープンスタンダードで、AIアシスタント（Claudeなど）と外部データソースやツールの間でシームレスな接続を可能にします。MCPを使用することで、Claudeはファイルシステムへのアクセス、ウェブ検索、APIとの連携など、様々な機能を利用できるようになります。

このガイドでは、MacOS環境でClaudeデスクトップアプリからMCPを構築し、ファイルシステムへのアクセスなどの拡張機能を有効にする方法を詳しく説明します。

## MCPとは

MCPは、AIアプリケーションと外部データソースやツールの間のシームレスな統合を可能にするオープンプロトコルです。MCPを使用することで、AIアシスタントは以下のことができるようになります：

- 言語モデルとコンテキスト情報を共有する
- AIシステムにツールや機能を公開する
- 組み合わせ可能な統合とワークフローを構築する

MCPは以下のコンポーネントで構成されています：

- **MCPホスト**：Claudeデスクトップアプリなど、MCPを使用して様々なリソースと対話するアプリケーション
- **MCPクライアント**：ホスト内のコンポーネントで、特定のサーバーと直接的な一対一の接続を確立
- **MCPサーバー**：MCPフレームワークを通じて特定の機能を提供するように設計された小さなプログラム
- **ローカルリソース**：ファイル、データベース、サービスなど、コンピュータ上のリソース
- **リモートリソース**：APIやクラウドベースのサービスなど、外部のオンラインリソース

このガイドでは、MacOS環境でClaudeデスクトップアプリを拡張し、ファイルシステムへのアクセスを可能にするMCPサーバーの設定方法を説明します。

## 前提条件

MacOS環境でClaudeデスクトップアプリからMCPを構築するには、以下の前提条件が必要です：

### 1. Claudeデスクトップアプリ

Claudeデスクトップアプリは、MCPサーバーを実行するためのホストとして機能します。

- [Claude公式サイト](https://claude.ai/download)からMacOS版のClaudeデスクトップアプリをダウンロードしてインストールします。
- すでにClaudeデスクトップアプリをインストールしている場合は、最新バージョンであることを確認してください。
  - Claudeメニューをクリックし、「Check for Updates...」を選択して更新を確認できます。

### 2. Node.js

MCPサーバーの多くはNode.jsを使用して実行されるため、Node.jsのインストールが必要です。

- ターミナルを開き、以下のコマンドを実行してNode.jsがインストールされているか確認します：
  ```bash
  node --version
  ```
- バージョン番号が表示されれば、Node.jsはすでにインストールされています。
- インストールされていない場合は、[Node.js公式サイト](https://nodejs.org/)からダウンロードしてインストールするか、Homebrewを使用してインストールします：
  ```bash
  brew install node
  ```

### 3. 設定ディレクトリの確認

Claudeデスクトップアプリの設定ファイルを保存するディレクトリが存在することを確認します。

- ターミナルを開き、以下のコマンドを実行します：
  ```bash
  ls ~/Library/Application\ Support/Claude/
  ```
- このディレクトリが存在しない場合は、Claudeデスクトップアプリを一度起動して終了すると自動的に作成されます。

これらの前提条件を満たしたら、次のステップでMCPサーバーの設定を行います。

## ファイルシステムMCPサーバーのインストールと設定

このセクションでは、MacOS環境でClaudeデスクトップアプリからファイルシステムにアクセスするためのMCPサーバーをインストールして設定する方法を説明します。

### 1. 設定ファイルの作成

まず、Claudeデスクトップアプリの設定ファイルを作成または編集します。

1. ターミナルを開きます。
2. 以下のコマンドを実行して、設定ファイルを作成または開きます：
   ```bash
   touch ~/Library/Application\ Support/Claude/claude_desktop_config.json
   ```
3. お好みのテキストエディタで設定ファイルを開きます：
   ```bash
   open -a TextEdit ~/Library/Application\ Support/Claude/claude_desktop_config.json
   ```
   または
   ```bash
   code ~/Library/Application\ Support/Claude/claude_desktop_config.json
   ```

### 2. 設定ファイルの編集

設定ファイルに以下の内容を追加します。これにより、ファイルシステムMCPサーバーが設定されます：

```json
{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/YOUR_USERNAME/Desktop",
        "/Users/YOUR_USERNAME/Downloads"
      ]
    }
  }
}
```

**重要**: `YOUR_USERNAME`をあなたのMacOSのユーザー名に置き換えてください。ユーザー名がわからない場合は、ターミナルで以下のコマンドを実行して確認できます：

```bash
echo $USER
```

また、アクセスを許可したいディレクトリのパスを追加または変更できます。上記の例では、デスクトップとダウンロードフォルダへのアクセスを許可しています。

### 3. 設定の確認

設定ファイルを保存した後、以下の点を確認してください：

1. JSONの構文が正しいこと（括弧や引用符が正しく閉じられているなど）
2. パスが存在し、アクセス可能であること
3. Node.jsが正しくインストールされていること

### 4. Claudeデスクトップアプリの再起動

設定を適用するために、Claudeデスクトップアプリを再起動します：

1. Claudeデスクトップアプリを完全に終了します（⌘+Q）
2. アプリケーションを再起動します

再起動後、Claudeの入力ボックスの右下にハンマーアイコン（🔨）が表示されるはずです。このアイコンをクリックすると、利用可能なMCPツールが表示されます。

## 設定プロセスの詳細

このセクションでは、MacOS環境でClaudeデスクトップアプリのMCP設定をカスタマイズする方法と、より高度な設定オプションについて説明します。

### 設定ファイルの詳細

`claude_desktop_config.json`ファイルは、Claudeデスクトップアプリが起動時に読み込むMCPサーバーを定義します。このファイルの構造を詳しく見ていきましょう：

```json
{
  "mcpServers": {
    "サーバー名": {
      "command": "実行コマンド",
      "args": [
        "コマンド引数1",
        "コマンド引数2",
        "..."
      ],
      "env": {
        "環境変数名": "環境変数値"
      }
    }
  }
}
```

- `mcpServers`: すべてのMCPサーバー設定を含むオブジェクト
- `サーバー名`: 任意の識別子（例：`filesystem`）
- `command`: 実行するコマンド（通常は`npx`）
- `args`: コマンドに渡す引数の配列
- `env`: （オプション）サーバーに設定する環境変数

### ファイルシステムMCPサーバーのカスタマイズ

ファイルシステムMCPサーバーでは、Claudeがアクセスできるディレクトリを指定できます：

```json
{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/YOUR_USERNAME/Desktop",
        "/Users/YOUR_USERNAME/Downloads",
        "/Users/YOUR_USERNAME/Documents/Projects"
      ]
    }
  }
}
```

アクセスを許可したいディレクトリのパスを追加するだけで、Claudeはそれらのディレクトリ内のファイルを読み書きできるようになります。

### 複数のMCPサーバーの設定

複数のMCPサーバーを同時に設定することも可能です。例えば、ファイルシステムとBrave検索の両方を設定する場合：

```json
{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/YOUR_USERNAME/Desktop",
        "/Users/YOUR_USERNAME/Downloads"
      ]
    },
    "brave-search": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-brave-search"
      ],
      "env": {
        "BRAVE_API_KEY": "YOUR_API_KEY_HERE"
      }
    }
  }
}
```

Brave検索を使用するには、[Brave Developer Portal](https://brave.com/search/api/)からAPIキーを取得する必要があります。

### セキュリティに関する注意事項

MCPサーバーはあなたのユーザーアカウントの権限でコマンドを実行し、ローカルファイルにアクセスします。以下の点に注意してください：

1. 信頼できるソースからのMCPサーバーのみを追加する
2. アクセスを許可するディレクトリを必要最小限に制限する
3. 機密情報を含むディレクトリへのアクセスは許可しない

Claudeは各ツールの使用前に許可を求めるプロンプトを表示しますが、設定時点で適切なアクセス制限を設けることが重要です。

## 使用例とトラブルシューティング

このセクションでは、MacOS環境でClaudeデスクトップアプリのMCP機能を使用する具体的な例と、発生する可能性のある問題の解決方法を説明します。

### 使用例

Claudeデスクトップアプリでファイルシステムのアクセスが設定されると、以下のようなタスクを実行できるようになります。

#### 例1: ファイルの作成と保存

Claudeに以下のように指示してみましょう：

```
デスクトップに「今日のタスク.txt」というファイルを作成して、今日やるべきことのリストを5つ書いてください。
```

Claudeはファイルシステムツールを使用して、指定した場所にファイルを作成します。この操作を実行する前に、Claudeはツールの使用許可を求めるプロンプトを表示します。

#### 例2: ディレクトリ内のファイル検索

Claudeに以下のように指示してみましょう：

```
ダウンロードフォルダ内のPDFファイルをすべて探して、それぞれのファイル名とサイズを教えてください。
```

Claudeはファイルシステムツールを使用して、ダウンロードフォルダ内のPDFファイルを検索し、結果を表示します。

#### 例3: ファイルの内容分析

Claudeに以下のように指示してみましょう：

```
デスクトップにある「プロジェクト計画.docx」の内容を要約してください。
```

Claudeはファイルシステムツールを使用して、指定したファイルの内容を読み取り、要約を提供します。

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

MCPの設定や使用中に問題が発生した場合の対処法を紹介します。

#### 問題1: MCPツールが表示されない

**症状**: Claudeデスクトップアプリを再起動しても、入力ボックスの右下にハンマーアイコン（🔨）が表示されない。

**解決策**:
1. 設定ファイルの構文が正しいことを確認します：
   ```bash
   cat ~/Library/Application\ Support/Claude/claude_desktop_config.json
   ```
   JSONの構文エラーがないか確認してください。

2. Node.jsが正しくインストールされていることを確認します：
   ```bash
   node --version
   ```

3. Claudeデスクトップアプリが最新バージョンであることを確認します。

4. アプリを完全に終了し（⌘+Q）、再起動します。

#### 問題2: ファイルシステムへのアクセスエラー

**症状**: Claudeがファイルシステムにアクセスしようとすると、エラーが発生する。

**解決策**:
1. 設定ファイルで指定したパスが正しいことを確認します。

2. パスにユーザー名が正しく設定されているか確認します：
   ```bash
   echo $USER
   ```
   このコマンドの出力と設定ファイルのユーザー名が一致していることを確認してください。

3. 指定したディレクトリが存在し、アクセス権があることを確認します：
   ```bash
   ls -la /Users/YOUR_USERNAME/Desktop
   ```

#### 問題3: NPXコマンドが見つからない

**症状**: 「command not found: npx」というエラーメッセージが表示される。

**解決策**:
1. Node.jsを再インストールします：
   ```bash
   brew install node
   ```
   または公式サイトからダウンロードしてインストールします。

2. NPXが含まれているnpmパッケージを更新します：
   ```bash
   npm install -g npm
   ```

#### 問題4: MCPサーバーのインストールエラー

**症状**: MCPサーバーのインストール中にエラーが発生する。

**解決策**:
1. 手動でMCPサーバーをインストールします：
   ```bash
   npm install -g @modelcontextprotocol/server-filesystem
   ```

2. 設定ファイルを更新して、グローバルにインストールされたコマンドを使用します：
   ```json
   {
     "mcpServers": {
       "filesystem": {
         "command": "mcp-server-filesystem",
         "args": [
           "/Users/YOUR_USERNAME/Desktop",
           "/Users/YOUR_USERNAME/Downloads"
         ]
       }
     }
   }
   ```

これらの解決策で問題が解決しない場合は、[Anthropicのサポートページ](https://support.anthropic.com)や[Model Context Protocolの公式ドキュメント](https://modelcontextprotocol.io)を参照してください。

## まとめ

このガイドでは、MacOS環境でClaudeデスクトップアプリからModel Context Protocol（MCP）を構築する方法を説明しました。MCPを使用することで、Claudeはファイルシステムへのアクセスなど、様々な拡張機能を利用できるようになります。

主なステップは以下の通りです：

1. 前提条件の確認（Claudeデスクトップアプリ、Node.js）
2. 設定ファイルの作成と編集
3. ファイルシステムMCPサーバーの設定
4. Claudeデスクトップアプリの再起動と動作確認

MCPは比較的新しい技術ですが、AIアシスタントの能力を大幅に拡張する可能性を秘めています。このガイドが、あなたのClaudeデスクトップアプリの機能を強化する助けになれば幸いです。

## 参考リソース

- [Model Context Protocol公式サイト](https://modelcontextprotocol.io)
- [Anthropic公式ドキュメント](https://docs.anthropic.com)
- [Claude公式ダウンロードページ](https://claude.ai/download)
- [Node.js公式サイト](https://nodejs.org/)

---

以上が自動作成の内容です。以下は実行例です。

  - `filesystem`のみ導入しています。
  - `Desktop`、`Downloads`、`Documents`へのアクセスを許可してあります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/428825/c6190825-d270-4c89-9cc0-9e8f5c3e70b9.png)


以下は発展編となるので、簡単に記します。

`brave-search`を有効にするとウェブ検索が出来るようになります。
API keyの発行にクレジットカードの登録が（free planでも）必要なのが一番の難点でしたが、Kyashのバーチャルカードを作ればチャージなしでも通りました。

`@wonderwhy-er-desktop-commander`を導入すると、ファイル操作以外のコマンドプロンプトも実行できるようになります。
これでClaude Codeと似たようなことがClaudeへの定額で出来るようになります。

これらを導入するだけでもかなり強力になりますが、ファイルが意図せず失われたり、漏洩に繋がるリスクがあるので、導入するにしても実害のない領域から開始して慣れていくのがよいと思います。

最後までお読みいただき、ありがとうございました。