0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude + Perplexity で Deep Research を実現する手順【MCPサーバー構築ガイド】

Last updated at Posted at 2025-03-19

概要

  • 目的
    Claude の既存の知識(2024年などの学習データ)に加え、Perplexity の検索APIを使って 最新情報 を参照できるようにする「Deep Research」機能を構築します。

  • アプローチ
    MCP(Model Context Protocol)サーバーを用いて、Claude に外部ツール(Perplexity)へのアクセス能力を付与します。Claude は必要に応じて Perplexity からリアルタイム検索結果を取得し、高精度な回答を返すことが可能になります。

全体の流れ

  1. WSL2 or Windows環境の準備
  2. Node.js のインストール
  3. Perplexity APIキーの取得
  4. MCP用コード(perplexity-ask)のダウンロード
  5. Claude Desktop の設定ファイル(claude_desktop_config.json)の作成
  6. エラー対処(nodeコマンドが見つからない、APIキーの受け渡しなど)
  7. Claude でツールを呼び出すテスト

1. WSL2 or Windows環境の準備

1-1. WSL2の有効化(Windowsユーザー向け)

Windows 10/11 でWSL2を使う場合は、以下の手順を参考にセットアップしてください。

  1. PowerShellを管理者権限で起動
  2. WSL2を有効化
    dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
    dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
    wsl --set-default-version 2
    
  3. WSL2用のLinuxディストリビューションをインストール
    Microsoft Store などから Ubuntu をインストールしておく。

1-2. Windowsのみで実行したい場合

  • Node.js をWindowsネイティブでインストールして、Dockerを使わずにローカル実行することも可能です。
  • ただし、本記事では WSL2上で Node.js を実行し、Windows側のClaude Desktop から呼び出す 例を中心に解説します。

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

WSL2(Ubuntu)上で Node.js をインストールします。最新の LTS を入れればOKです。

# パッケージを更新
sudo apt update && sudo apt upgrade -y

# Node.js (npm含む) のインストール
sudo apt install -y nodejs npm

補足: より新しいバージョンが必要な場合は nvm を使う方法もあります。
例: nvm-sh/nvm

インストール後、以下でバージョンを確認してください。

node --version
npm --version

3. Perplexity APIキーの取得

  1. Perplexity AI 公式サイト
    Perplexity AI にアクセスし、アカウントを作成してログインします。
  2. APIキーを生成
    • プロフィールアイコン → Settings → API
    • 必要に応じて課金プランを設定し、新規APIキーを発行
  3. メモしておく
    生成されたAPIキー(例: pplx-xxxxxx...)は後ほど使うので控えておきます。

4. MCP用コード(perplexity-ask)のダウンロード

Perplexity MCPサーバーの実装は、ppl-ai/modelcontextprotocol リポジトリの perplexity-ask に含まれています。

4-1. リポジトリをクローン

WSL2 ターミナルで任意のディレクトリへ移動し、GitHubからクローンします。

cd ~
git clone https://github.com/ppl-ai/modelcontextprotocol.git
cd modelcontextprotocol/perplexity-ask

4-2. npm install

npm install

これで依存パッケージがインストールされ、dist/index.js などが生成されます。


5. Claude Desktop の設定ファイルを作成

5-1. 設定ファイルの場所

Claude Desktop は、通常 %APPDATA%\Claude\claude_desktop_config.json を読み込みます。無い場合は作ってください。
例:

C:\Users\ユーザー名\AppData\Roaming\Claude\claude_desktop_config.json

5-2. ファイル内容の例

{
  "mcpServers": {
    "perplexity-ask": {
      "command": "wsl",
      "args": [
        // Node.js のフルパス,
        // perplexity-ask のエントリーポイント
        "/usr/bin/node",
        "/home/your_user/modelcontextprotocol/perplexity-ask/dist/index.js"
      ],
      "env": {
        "PERPLEXITY_API_KEY": "pplx-あなたのAPIキー"
      }
    }
  }
}

注意:

  • "/home/your_user/.../index.js" の部分は、実際にクローンした場所に合わせて修正してください。
  • WSL2 上に Node.js がインストールされている場合、/usr/bin/node などフルパスを指定すると確実です。
  • envPERPLEXITY_API_KEY を指定しても、WSL2 の非対話的シェル経由では引き継がれないことがあります(後述の対策を参照)。

5-3. 「env が渡らない」場合の対策

WSL2 上で env が反映されない場合は、次のいずれかを行います:

  1. bash -c で export

    {
      "mcpServers": {
        "perplexity-ask": {
          "command": "wsl",
          "args": [
            "bash",
            "-c",
            "export PERPLEXITY_API_KEY='pplx-xxx'; /usr/bin/node /home/your_user/modelcontextprotocol/perplexity-ask/dist/index.js"
          ]
        }
      }
    }
    
  2. WSL2 内にスクリプトを作り export → node 実行

    # /home/your_user/mcp_run.sh
    #!/usr/bin/env bash
    export PERPLEXITY_API_KEY="pplx-xxx"
    exec /usr/bin/node /home/your_user/modelcontextprotocol/perplexity-ask/dist/index.js
    
    {
      "mcpServers": {
        "perplexity-ask": {
          "command": "wsl",
          "args": [
            "/home/your_user/mcp_run.sh"
          ]
        }
      }
    }
    

このように設定ファイルを作成したら、Claude Desktop を 完全に再起動 してください。


6. エラー対処

6-1. 「node: コマンドが見つかりません」

  • WSL2 非対話的シェルでは PATH が異なる場合があります。
  • Node.js のフルパスを指定すれば解決することが多いです。
  • 例:"/usr/bin/node"

6-2. 「PERPLEXITY_API_KEY が必須です」と表示される

  • env が渡っていない場合は、上記の bash -cスクリプト方式で export してから実行してください。

6-3. 「ハンマーアイコンは出るが最新情報が取得されない」

  • Claude は外部ツールが必要と判断しない限り、自分の知識ベースで回答を試みます。
  • 「最新情報を取得するために perplexity_ask を使ってください」 と明示的に指示すると、外部検索を実行してくれます。

7. Claude でツールを呼び出すテスト

  1. Claude Desktop を起動
  2. ハンマーアイコンの確認
    右上などに「perplexity-ask」が表示されていれば、MCPサーバーが認識されている状態です。
  3. 質問で外部ツール使用を指示
    例:
    今日の最新ニュースを取得するために perplexity_ask を使ってください。
    
    または
    Use perplexity_ask to search for the latest news about [topic].
    
  4. 回答が最新情報を含むか確認

まとめ

  • Claude Desktop + MCP サーバー(perplexity-ask) の連携により、Claude が最新情報を取得可能になります。
  • ただし、WSL2 経由の実行では env が引き継がれないなどのハマりどころがあるため、フルパス指定bash -c 方式などで対処が必要です。
  • Claude に「ツールを使って検索して」と指示すると、実際に Perplexity API からリアルタイムの情報を取得して回答する「Deep Research」が実現できます。

これで、0 から MCP サーバーを構築し、Claude に最新情報を参照させるまでの一連の流れは完了です。お疲れさまでした!


参考リンク

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?