Zenn
📖

WSL2でのMCP設定方法

2025/03/10に公開
2

はじめに

作今、クラウドLLMおよびにローカルLLMの進化がすごく、
仕事内でのAI活用範囲も増えてきました。
そこで、AIを更に活用するためのMCPについての記事を書こうと思ったのがきっかけです。

本記事では、以下の内容を記載します。

  • MCPとは何かについて簡単に説明
  • MCPを実際にClaude DesktopCursorエディタで動かしたサンプルを紹介したいと思います。

MCPとは

詳しい解説は以下を参照することをオススメします。

ここでは簡単に記載します。

MCPとは
  • 概要
    MCP(Model Context Protocol)は、
    AIアシスタントとデータが存在するシステムを効率的に接続するための仕組みを提供します。
    AIアプリケーションと外部データソースやツールとの統合を標準化し、シームレスな連携を可能にします。

  • 提供されること
    AIモデルがより良い、より関連性の高いレスポンスを生成できるよう支援
    コンテンツリポジトリ、ビジネスツール、開発環境などのシステムとAIの接続を標準化
    AIアプリケーションのための標準インターフェースを提供
    様々なデータソースへの安全な双方向接続が可能

  • ユースケース
    AIパワードIDE開発
    チャットインターフェースの拡張
    カスタムAIワークフロー構築
    ビジネスツールとの統合
    データリポジトリへのシームレスなアクセス

MCPのアーキテクチャ・シーケンス
  • アーキテクチャ
  • 主要コンポーネント
    MCP Hosts: AIアシスタントを使用するアプリケーション(Claude Desktop、IDEなど)
    MCP Clients: サーバーと1:1の接続を維持するプロトコルクライアント
    MCP Servers: データソースやツールを公開するサーバー
    External Systems: 実際のデータが保存されている外部システム

  • シーケンス

環境構築

前提

以下の動作環境を前提に記載します。

Windows11
WSL2 (Ubuntu)
Ubuntu上で、nvm, nodeがインストール済

Claude Desktopをインストール

Claude Desktop
こちらからダウンロードして、インストールを完了させてください。

Cursor エディタをインストール

Cursor エディタ
こちらからダウンロードして、インストールを完了させてください。

WSL2にMCPサーバをインストール

今回使用する、MCPサーバはAnthropicが提供している以下の3つを使用します。
各機能については、後ほどまとめて記載します。

Anthropic-MCP-Servers

  • filesystem
  • sequential-thinking
  • brave-search
  • WSL2にて実施
npm install -g @modelcontextprotocol/server-filesystem
npm install -g @modelcontextprotocol/server-sequential-thinking
npm install -g @modelcontextprotocol/server-brave-search

WSL2にMCPサーバ起動スクリプトを配置

続いて、MCPサーバ起動用のスクリプトを作成します。
全てWSL2にて実行します。

  • nodeのパスを確認

これから作成するスクリプトには、nodeの実行ファイルのパスを記載します。
このため、まずはnodeのパスを確認してください。

which node

> /home/{user}/.nvm/versions/node/{version}/bin/node

次に起動スクリプトを作成します。
このファイルはどのディレクトリに作成しても良いですが、
後ほどClaude Desktop, Cursorエディタで設定するため、
作成したディレクトリは把握しておいてください。

  • filesystemのMCPサーバ起動スクリプト

filesystem_mcp.shのファイル名で以下内容で保存してください。

filesystem_mcp.sh
#!/bin/bash
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
node "$HOME/.nvm/versions/node/{version}/lib/node_modules/@modelcontextprotocol/server-filesystem/dist/index.js" "/mnt/c/Users/{user}/Documents"
  • sequential-thinkingのMCPサーバ起動スクリプト

sequential-thinking_mcp.shのファイル名で以下内容で保存してください。

sequential-thinking_mcp.sh
#!/bin/bash
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
node "$HOME/.nvm/versions/node/{version}/lib/node_modules/@modelcontextprotocol/server-sequential-thinking/dist/index.js"
  • brave-searchのMCPサーバ起動スクリプト

brave-search_mcp.shのファイル名で以下内容で保存してください。

brave-search_mcp.sh
#!/bin/bash
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
export BRAVE_API_KEY="your-apikey"
node "$HOME/.nvm/versions/node/{version}/lib/node_modules/@modelcontextprotocol/server-brave-search/dist/index.js"
  • 実行権限付与

スクリプトの準備ができたら、実行権限を付与しておきます。

chmod +x filesystem_mcp.sh
chmod +x sequential-thinking_mcp.sh
chmod +x brave-search_mcp.sh

Claude DesktopのMCP設定

Claude Desktopを起動して、
以下のようにEdit Configを押下してください。

File > Settings > Developer > Edit Config

Edit Configを押下すると、claude_desktop_config.jsonのあるフォルダが開くはずです。

claude_desktop_config.jsonを以下のように書き換えてください。

  • claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "filesystem": {
      "command": "C:\\Windows\\System32\\wsl.exe",
      "args": [
        "-e",
        "bash",
        "-c",
        "{shを作成したディレクトリ}/filesystem_mcp.sh"
      ]
    },
    "sequential-thinking": {
      "command": "C:\\Windows\\System32\\wsl.exe",
      "args": [
        "-e",
        "bash",
        "-c",
        "{shを作成したディレクトリ}/sequential-thinking_mcp.sh"
      ]
    },
    "brave-search": {
      "command": "C:\\Windows\\System32\\wsl.exe",
      "args": [
        "-e",
        "bash",
        "-c",
        "{shを作成したディレクトリ}/brave-search_mcp.sh"
      ]
    }
  }
}

設定が完了したら、Claude Desktopをタスクバーから右クリックして、Quitを押下し、終了してください。

終了したら、再度Claude Desktopを起動してください。

MCPの設定が成功した場合は、チャット画面の右下にツールのアイコンが表示されます。

このアイコンをクリックすると、使用可能なMCP Toolsが表示されます。

これで、MCPをClaude Desktopで使用することが可能です。

Cursor エディタのMCP設定

Cursorを起動して、
以下のようにMCP Serversの画面に遷移してください。

Cursor Settings > MCP

Add new MCP serverを押下してください。

ここに以下をそれぞれ設定してください。

  • filesystem
filesystem
Name: filesystem
Type: command
Command: wsl.exe -e bash -c {shを作成したディレクトリ}/filesystem_mcp.sh
  • sequential-thinking
sequential-thinking
Name: sequential-thinking
Type: command
Command: wsl.exe -e bash -c {shを作成したディレクトリ}/sequential-thinking_mcp.sh
  • brave-search
brave-search
Name: brave-search
Type: command
wsl.exe -e bash -c {shを作成したディレクトリ}/brave-search_mcp.sh

設定が完了したら、Disabledになっているので、押下してください。

成功すると、Enabledになります。

MCPの活用例

Claude DesktopでのMCPを活用例

早速、MCPを活用してみます。

以下のような依頼をClaudeにします。

braveで東京都新宿区の今日の天気を検索してください。
その結果をまとめて、HTMLファイルを生成し、Documentsフォルダに格納してください。

ClaudeがMCP Toolを実行する際に、許可を求めてきます。

問題なければ、Allow for This Chatを押下してください。

回答が完了すると、
filesystem_mcp.shで設定したフォルダに、
天気情報がまとまったHTMLファイルが生成されるはずです。

MCPサーバで利用可能なサービス

Anthropicが提供している各MCPサーバの機能を簡単に説明します。
個々の詳しい説明や使い方は、以下のURLからREADME.mdを参照してください。

AWS KB Retrieval

AWS ナレッジベースからの情報検索サービスです。
Bedrock Agent Runtimeを使用して、
AWSに関する技術文書や解決策を自動的に検索・取得できます。

Brave Search

Braveの検索APIを活用したウェブ検索とローカル検索機能を提供します。
一般的な情報検索からローカルビジネスの探索まで、幅広い検索ニーズに対応できます。

EverArt

様々なAIモデルを使用した画像生成サービスです。
テキスト入力から画像を作成したり、既存画像を編集したりすることができます。
クリエイティブな表現やビジュアルコンテンツ制作をサポートします。

Everything

プロンプト、リソース、ツールを含む参照/テスト用サーバーです。
MCPの機能を総合的に試すことができ、開発やテスト環境として活用できます。

Fetch

ウェブコンテンツの効率的な取得と変換を行います。
LLM(大規模言語モデル)での使用に最適化されたフォーマットに変換することで、
外部情報の効率的な処理が可能になります。

Filesystem

設定可能なアクセス制御を備えた安全なファイル操作を提供します。
ファイルの読み書き、ディレクトリ作成などの基本操作を、セキュリティを保ちながら実行できます。

Git

Gitリポジトリの読み取り、検索、操作のためのツールセットです。
コードの閲覧、変更履歴の追跡、ブランチ管理などをAIインターフェースから行うことができます。

GitHub

GitHub API統合によるリポジトリ管理とファイル操作機能を提供します。
issue管理、プルリクエスト操作、コードレビューなどのGitHub関連タスクを自動化できます。

GitLab

GitLab APIを介したプロジェクト管理機能を提供します。
リポジトリ操作、CI/CDパイプライン管理、issue-trackingなどをAIから制御できます。

Google Drive

Google Driveのファイルへのアクセスと検索機能を提供します。
ドキュメントの取得、共有設定の管理、ファイル内容の検索などが可能です。

Google Maps

位置情報サービス、経路案内、場所の詳細情報を提供します。
住所の地理情報への変換、最適ルートの検索、周辺施設の検索などの機能が利用できます。

Memory

ナレッジグラフベースの永続的メモリシステムです。
会話や情報を長期にわたって記憶し、関連性のある情報を後から取り出すことができます。

PostgreSQL

スキーマ検査機能を備えた読み取り専用データベースアクセスを提供します。
データベース構造の分析、クエリの実行、データの可視化などが可能です。

Puppeteer

ブラウザ自動化とウェブスクレイピング機能を提供します。
ウェブページの操作、データ抽出、フォーム入力などを自動化することができます。

Sentry

Sentry.ioからのエラーや問題を取得・分析する機能です。
アプリケーションの障害監視、エラートレンドの分析、問題の優先順位付けをサポートします。

Sequential Thinking

思考シーケンスを通じた段階的な問題解決をサポートします。
複雑な課題を小さなステップに分解し、反復的に考えることで解決策を見つけられます。

Slack

Slackチャンネルの管理とメッセージング機能を提供します。
メッセージの送信、チャンネル参加者の管理、通知の設定などをAIから制御できます。

Sqlite

軽量データベースの操作とビジネスインテリジェンス機能を提供します。
データの分析、クエリ実行、レポート生成などをSQLiteデータベースに対して行えます。

Time

時間とタイムゾーン変換機能を提供します。
異なるタイムゾーン間での時間計算、日付操作、スケジュール管理などに活用できます。

その他のMCPサーバ

他にもMCPサーバは、以下のSmitheryなどで提供されています。

Smithery

これらを活用して、AIをMCP活用で更に便利にしてみてください!

2
株式会社ブレイクエッジ 技術ブログ

Discussion

ログインするとコメントできます