Perplexity MCP Server について
Perplexity MCP Server は Perplexity API をラップした MCP サーバーで、LLM エージェントに検索を組み合わせた回答と詳細なリサーチ機能を提供します。最新のウェブ情報が必要なエージェントや開発者向けです。エラー処理、入力検証、モデルの推理過程の表示オプションを備えています。
主な機能
- 01検索を組み合わせた高速な照会ツール
- 02鮮度・ドメイン・学術ソースによるフィルタリング
- 03複数ソースを調査する深層リサーチツール
- 04reasoning_effort によるリサーチ深度の調整
- 05showThinking による推理過程の表示
活用シーン
- 01エージェントに出典付きの最新ウェブ情報を提供
- 02AI アシスタントで複雑なテーマのリサーチレポートを作成
- 03自動化ワークフローにウェブ検索を組み込む
MCP 対応
本プロジェクトは Perplexity の検索と深層リサーチを、perplexity_search と perplexity_deep_research というツールとして MCP クライアントに公開する MCP サーバーです。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Perplexity MCP Server
Perplexity の検索 API で AI エージェントを強化しましょう!
Perplexity AI API に包括的にアクセスできる MCP(Model Context Protocol)サーバーです。標準化された安全で統合しやすいプロトコルを通じて、LLM や AI エージェントが検索で補強された高速なクエリを実行し、複数の情報源を対象とした徹底的な詳細調査を行えるようにします。
cyanheads/mcp-ts-template をベースに構築されており、堅牢なエラー処理、ロギング、セキュリティ機能を備えたモジュール型アーキテクチャを採用しています。
🚀 主な機能:Perplexity ツール 🛠️
このサーバーは、Perplexity 独自の機能を活用するための専用ツールを AI に提供します。
| ツール名 | 説明 | 主な機能 |
|---|---|---|
perplexity_search | Perplexity API を使用して、検索で補強された高速なクエリを実行します。簡単な質問やリアルタイムの情報取得に最適です。 | - 新しさで絞り込みます(day、week、month、year)。- ドメインまたは日付範囲で絞り込みます。 - academic モードで学術情報源を優先します。- モデルの内部推論を任意で含めます( showThinking)。 |
perplexity_deep_research | 複雑なトピックについて複数の情報源を対象に徹底的な調査を行い、詳細なレポートを作成します。 | - 詳細な分析やレポートの作成に最適です。 - reasoning_effort(low、medium、high)で調査の深さとコストを調整できます。 |
注:詳細調査ツールでは、Cline などの MCP クライアントを通じて、長めのタイムアウト(例:180 秒)を設定することをおすすめします。他のクライアントでは 60 秒後にタイムアウトすることがありますが、詳細調査には十分ではありません。
目次
| 概要 | 機能 | インストール |
|---|---|---|
| 設定 | プロジェクト構成 | |
| ツール | 開発 | ライセンス |
概要
Perplexity MCP Server はブリッジとして機能し、Model Context Protocol(MCP)を理解するアプリケーション(MCP クライアント)が、Perplexity AI API と直接かつ効率的に連携できるようにします。対象となるアプリケーションには、高度な AI アシスタント(LLM)、IDE 拡張機能、カスタムのリサーチツールなどがあります。
複雑で個別対応が必要な API 統合の代わりに、このサーバーを利用することで、ツールから次のことが可能になります。
- リサーチの自動化:エージェントがプログラムを通じて簡単な検索や詳細なリサーチを実行できるようにします。
- AI の推論能力の向上:LLM に、回答の根拠となる最新の検証可能な Web 情報を提供します。
- 検索のワークフローへの統合:検索拡張生成をあらゆる AI 主導のタスクにシームレスに追加します。
堅牢な mcp-ts-template をベースに構築されたこのサーバーは、MCP 標準を介して Perplexity の機能を公開するための、標準化された安全で効率的な方法を提供します。
開発者向けメモ:このリポジトリには、LLM コーディングエージェント向けに、コードベースのパターン、ファイルの場所、コードスニペットをすばやく参照できる開発者用チートシートとして .clinerules ファイルが含まれています。
機能
コアユーティリティ
mcp-ts-template が提供する堅牢なユーティリティを活用しています。
- ロギング:ファイルのローテーションと任意の MCP 通知に対応した、構造化可能な設定式ロギングです。
- エラー処理:標準化された
McpError型を使用する、一元化されたエラー処理です。 - 設定:Zod による検証を伴う環境変数の読み込み(
dotenv)です。 - 入力の検証/サニタイズ:スキーマ検証に
zodを使用し、専用のサニタイズユーティリティを備えています。 - リクエストコンテキスト:
AsyncLocalStorageを使用し、一意のリクエスト ID によって操作を追跡し、関連付けます。 - 型安全性:TypeScript と Zod スキーマによって強い型付けを適用します。
- HTTP トランスポート:セッション管理と CORS に対応した Hono ベースの高性能 HTTP サーバーです。
- 認証:JWT と OAuth 2.1 に対応した堅牢な認証レイヤーです。
Perplexity との統合
- 2 種類の API に対応:標準の Chat Completions API(
perplexity_search)と、より高度なリサーチモデル(perplexity_deep_research)の両方を完全に統合しています。 - 高度な検索制御:新しさ、ドメインフィルタリング、学術情報源の優先順位付けなど、検索パラメーターをきめ細かく制御できます。
- コスト追跡:トークン使用量とモデルに基づいて API 呼び出しのコストを見積もるユーティリティにより、費用の管理を支援します。
- 高い回復力を備えた API クライアント:Perplexity API との連携専用サービスです。エラー処理とリクエスト/レスポンスのロギングを組み込みで備えています。
インストール
前提条件
- Node.js (>=18.0.0)
- npm(Node.js に付属)
- Perplexity API キー — Perplexity アカウント設定から取得
セットアップ
-
リポジトリをクローンします。
git clone https://github.com/cyanheads/perplexity-mcp-server.git cd perplexity-mcp-server -
依存関係をインストールします。
npm install -
プロジェクトをビルドします。
npm run build
設定
環境変数
プロジェクトのルートに .env ファイルを作成して、サーバーを設定します(.env.example をコピーできます)。これらの変数は、MCP クライアントの設定でも指定できます。
| 変数 | 説明 | デフォルト値 |
|---|---|---|
PERPLEXITY_API_KEY | 必須です。 Perplexity の API キーです。 | "" |
MCP_TRANSPORT_TYPE | トランスポート方式です。stdio または http を指定します。 | stdio |
MCP_HTTP_PORT | HTTP サーバーのポートです(MCP_TRANSPORT_TYPE=http の場合)。 | 3010 |
MCP_HTTP_HOST | HTTP サーバーのホストアドレスです。 | 127.0.0.1 |
MCP_LOG_LEVEL | ログレベルです(debug、info、warn、error)。 | info |
MCP_AUTH_MODE | HTTP の認証方式です。jwt または oauth を指定します。 | jwt |
MCP_AUTH_SECRET_KEY | jwt 認証で必須です。 安全なシークレットキー(32 文字以上)です。 | "" |
MCP クライアントの設定
次の内容を MCP クライアントの設定ファイル(例:cline_mcp_settings.json)に追加します。
{
"mcpServers": {
"perplexity-mcp-server": {
"command": "node",
"args": ["/path/to/your/perplexity-mcp-server/dist/index.js"],
"env": {
"PERPLEXITY_API_KEY": "YOUR_PERPLEXITY_API_KEY_HERE"
}
}
}
}
プロジェクト構成
コードベースは src/ ディレクトリ内でモジュール化された構成になっています。
src/
├── index.ts # Entry point: Initializes and starts the server
├── config/ # Configuration loading (env vars, package info)
│ └── index.ts
├── mcp-server/ # Core MCP server logic and capability registration
│ ├── server.ts # Server setup, capability registration
│ ├── transports/ # Transport handling (stdio, http)
│ └── tools/ # MCP Tool implementations (subdirs per tool)
├── services/ # External service integrations (Perplexity API client)
├── types-global/ # Shared TypeScript type definitions
└── utils/ # Common utility functions (logger, error handler, etc.)
詳細なファイルツリーを確認するには、npm run tree を実行するか、docs/tree.md を参照してください。
ツール
Perplexity MCP Server は、Perplexity API と連携するための主要なツールを 2 つ提供します。
| ツール名 | 説明 | 主な引数 |
|---|---|---|
perplexity_search | 検索機能を組み合わせたクエリをすばやく実行します。 | query、search_recency_filter?、search_domain_filter?、search_mode?、showThinking? |
perplexity_deep_research | 複数の情報源を用いて、徹底的な調査クエリを実行します。 | query、reasoning_effort? |
注:すべてのツールは包括的なエラー処理に対応し、構造化された JSON レスポンスを返します。
開発
ビルドとテスト
# Build the project (compile TS to JS in dist/)
npm run build
# Clean build artifacts
npm run clean
# Generate a file tree representation for documentation
npm run tree
# Clean build artifacts and then rebuild the project
npm run rebuild
# Start the server using stdio (default)
npm start
ライセンス
このプロジェクトは Apache License 2.0 のもとでライセンスされています。詳細については LICENSE ファイルを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。