PR
AI・プログラミング生成AI

Claude DesktopでMCPを使ってみた!AIとファイルを連携させる新技術

はじめに

 最近、AI業界で急速に注目を集めているMCP(Model Context Protocol)について今日を持ったので、Claude Desktopを使ってみました。Anthropicが開発したAIアシスタント「Claude」によって提唱されたこのプロトコルは、業界標準として広く採用されつつあります。MCPは、大規模言語モデル(LLM)と外部ツールやサービスとのシームレスな連携を可能にする新しい通信規格として、AIの活用方法を根本から変えようとしている感じもありますね。

MCPとは何か

Model Context Protocol(MCP)は、AIモデルと外部システムの間でコンテキスト(文脈情報)をやり取りするための標準化されたプロトコルです。従来、AIとの連携には個別のAPIやカスタム実装が必要でしたが、MCPはこれを統一的なインターフェースで実現します。

AnthropicはMCPを「AIアプリケーションのためのUSB-Cポートのようなもの」と表現しています。USBがさまざまな周辺機器を標準化された方法で接続できるように、MCPはAIモデルを外部データソースやツールに標準化された方法で接続します。

MCPによって、AIは自身の知識だけでなく、外部の最新情報や専門ツールの機能も活用して、より高度な支援を提供できるようになります。特に、Claude Desktop等と組み合わせることで、ローカルファイルシステムに安全にアクセスできるようになり、機密性の高い情報もAIに処理させることが可能になります。

MCPの仕組み

MCPは、クライアント-サーバーアーキテクチャに基づいて設計されています:

  1. MCP クライアント:Claude Desktopなどのアプリケーションに組み込まれ、サーバーとの1対1の接続を維持します
  2. MCP サーバー:特定のデータソースやツールへのアクセスを提供する軽量なプログラム
  3. ホスト:Claude Desktopやその他のAIツールなど、ユーザーが操作するプログラム

MCPは、主に以下の3つの重要な要素に基づいています:

  • リソース(アプリケーション制御):AIに提供されるコンテキスト情報
  • プロンプト(ユーザー制御):特定のユーザー呼び出し型のインタラクション
  • ツール(モデル制御):AIモデルが呼び出して特定のアクションを実行できる機能

MCPを使ってみた

今回は、このホームページをスクレイピングをmdファイルに書き出して、それをローカルのMCPサーバーとして稼働して使ってみようと思います。スクレイピングはこちらにソースをアップしておきます。

https://github.com/hiirofish/website_scraper

Claude Desktop で MCPを設定する方法

環境はWindowsで行いました。有料でないと回数制限が厳しいので使い物にならないかもしれませんので注意。

1. Claudeのデスクトップアプリをインストール

https://claude.ai/download

2. Node.jsをインストール

https://nodejs.org/ja

3. MCPのファイルシステムサーバーをインストール

npm install -g @modelcontextprotocol/server-filesystem

4. Windowsの開発者モードを有効化

設定 → 開発者向け → 開発者モード をONにする

5. Claude Desktopの設定ファイルを編集

Claude Desktopのファイル → 設定 → 開発者 → 構成を編集から開く

以下が設定例。

{
  "mcpServers": {
    "homepage": {
      "command": "C:\\Program Files\\nodejs\\node.exe",
      "args": [
        "C:\\Users\\<ユーザー名>\\AppData\\Roaming\\npm\\node_modules\\@modelcontextprotocol\\server-filesystem\\dist\\index.js",
        "C:\\Users\\<ユーザー名>\\Documents\\フォルダのパス"
      ]
    }
  }
}

6. Claude Desktopを再起動

完全に終了させるためにタスクマネージャーからプロセスを終了

7. 設定の確認

ファイル → 設定 → 開発者を選択し、フォルダ名が表示されていればOK。

また、以下のようにチャットの設定メニューからも確認できます。

今回はhomepageというカテゴリにしてますが、ディレクトリはtake1bit_articlesになります。

うまくいかない場合は、MCPログファイルから設定が反映されているかを確認できます。

MCPの実践

Claude DesktopとMCPを使ったファイル操作の実際の使用例です。

最初の掴みでディレクトリを指定したいので、下記のようなプロンプトを打っておきます。

take1bit_articlesのフォルダを読み込んで

以下のように思考の連鎖をして、必要な検索を実行していきます。(CoT:Chain of Thought)
このあたりがMCPサーバーの利点で、RAG(Retrieval-Augmented Generation, 検索拡張生成)との違いのように思います。RAG情報検索の拡張であいまい検索に加え、文脈を取り入れたような技術で、rerankなどである程度精度をあげることもできますが、検索の枠を超えません。なので、ある程度情報が想定内であれば、精度が高いのですが、人間が実行するようにまず1つを見て、どうすればよいかを考えるということができません。これがローカルファイルをMCPサーバーにすることで簡単に実現できてしまうのがすごいと思います。

動画も一応参考。

まとめ

現在、様々なサービスやツールがMCPサーバーとして機能し始めています。Google Drive、Slack、GitHub、Gitといった一般的なサービス向けのMCPサーバーに加え、Postgres等のデータベース、Puppeteerによるウェブブラウジング、さらにはZed、Replit、Codeium、Sourcegraphといった開発ツールもMCPに対応しつつあります。最近のソフトバンクニュースでも「生成AI連携の標準化で業務効率を格段に向上」という記事が掲載され、MCPが業界に与える影響の大きさが示されています(参照)。

今回Claude Desktopを使ってMCPを試してみましたが、RAGでは物足りなかった深い文脈理解や複雑な分析能力が完全に補完されているように感じました。処理速度という課題はあるものの、AIとのシームレスな連携を実現する技術としてこれから様々な分野で活用されていくでしょう。何か面白そうな応用例があれば、また試してみたいと思います。

Claudeの紹介リンクを書いておきますので、興味あれば使ってみてください。

https://claude.ai/referral/b-Hr0uP76g

タイトルとURLをコピーしました