ディープリサーチMCP
📚 概要
DeepResearch MCPは、モデルコンテキストプロトコル(MCP)を基盤とする強力なリサーチアシスタントです。Web検索、分析、包括的なレポート生成を通じて、あらゆるトピックに関するインテリジェントで反復的なリサーチを実行します。
🌟 主な機能
インテリジェントなトピック探索- 知識のギャップを自動的に特定し、焦点を絞った検索クエリを生成します
包括的なコンテンツ抽出- コンテンツ構成の改善による強化されたWebスクレイピング
構造化知識処理- トークンの使用を管理しながら重要な情報を保存します
学術レポート生成- エグゼクティブサマリー、分析、視覚化を備えた詳細で構造化されたレポートを作成します。
完全な参考文献- 番号付きの参考文献ですべての情報源を適切に引用する
適応型コンテンツ管理- トークン制限内に収まるようにコンテンツを自動的に管理します
エラー耐性- 完全な処理が不可能な場合にエラーから回復し、部分的なレポートを生成します
Related MCP server: OpenDeepSearch
🛠️ 建築
┌────────────────────┐ ┌─────────────────┐ ┌────────────────┐
│ │ │ │ │ │
│ MCP Server Layer ├────►│ Research Service├────►│ Search Service │
│ (Tools & Prompts) │ │ (Session Mgmt) │ │ (Firecrawl) │
│ │ │ │ │ │
└────────────────────┘ └─────────┬───────┘ └────────────────┘
│
▼
┌─────────────────┐
│ │
│ OpenAI Service │
│ (Analysis/Rpt) │
│ │
└─────────────────┘💻 インストール
前提条件
Node.js 18以上
OpenAI APIキー
Firecrawl APIキー
セットアップ手順
リポジトリをクローンする
git clone <repository-url> cd deep-research-mcp依存関係をインストールする
npm install環境変数を設定する
cp .env.example .env.envファイルを編集し、API キーを追加します。OPENAI_API_KEY=sk-your-openai-api-key FIRECRAWL_API_KEY=your-firecrawl-api-keyプロジェクトを構築する
npm run build
🚀 使用方法
MCPサーバーの実行
MCP クライアント接続用に stdio でサーバーを起動します。
npm startサンプルクライアントの使用
特定のトピックについて、指定した深さで調査を実行します。
npm run client "Your research topic" 3パラメータ:
最初の議論: 研究テーマまたはクエリ
2番目の引数: 調査の深さ(反復回数、デフォルト: 2)
3 番目の引数(オプション): 「complete」を指定すると、complete-research ツール(ワンステップ プロセス)が使用されます。
例:
npm run client "the impact of climate change on coral reefs" 3 complete出力例
DeepResearch MCP は、以下の内容を含む包括的なレポートを作成します。
エグゼクティブサマリー- 研究結果の簡潔な概要
はじめに- 研究テーマの背景と重要性
方法論- 研究アプローチの説明
包括的な分析- トピックの詳細な調査
比較分析- 主要な側面の視覚的な比較
考察- 調査結果とその意味の解釈
限界- 研究における制約とギャップ
結論- 最終的な洞察と推奨事項
参考文献- URL を含む完全な情報源リスト
🔧 MCP 統合
利用可能なMCPリソース
リソースパス | 説明 |
| 研究セッションの現在の状態にアクセスする |
| セッションで収集された結果にアクセスする |
利用可能なMCPツール
ツール名 | 説明 | パラメータ |
| 新しい研究セッションを開始する |
|
| 次の研究ステップを実行する |
|
| 最終レポートを作成する |
|
| 研究プロセス全体を実行する |
|
🖥️ クロード デスクトップ統合
DeepResearch MCP を Claude Desktop と統合して、Claude に直接リサーチ機能を提供できます。
設定手順
サンプル構成をコピーする
cp claude_desktop_config_sample.json ~/path/to/claude/desktop/config/directory/claude_desktop_config.json設定ファイルを編集する
deep-research-mcp のインストールを指すようにパスを更新し、API キーを追加します。
{ "mcpServers": { "deep-research": { "command": "node", "args": [ "/absolute/path/to/your/deep-research-mcp/dist/index.js" ], "env": { "FIRECRAWL_API_KEY": "your-firecrawler-api-key", "OPENAI_API_KEY": "your-openai-api-key" } } } }Claudeデスクトップを再起動します
設定を保存した後、変更を有効にするために Claude Desktop を再起動します。
Claude Desktopでの使用
次のようなコマンドを使用して、Claude に調査を実行するよう依頼できるようになりました。
Can you research the impact of climate change on coral reefs and provide a detailed report?
📋 サンプルクライアントコード
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";
async function main() {
// Connect to the server
const transport = new StdioClientTransport({
command: "node",
args: ["dist/index.js"]
});
const client = new Client({ name: "deep-research-client", version: "1.0.0" });
await client.connect(transport);
// Initialize research
const initResult = await client.callTool({
name: "initialize-research",
arguments: {
query: "The impact of artificial intelligence on healthcare",
depth: 3
}
});
// Parse the response to get sessionId
const { sessionId } = JSON.parse(initResult.content[0].text);
// Execute steps until complete
let currentDepth = 0;
while (currentDepth < 3) {
const stepResult = await client.callTool({
name: "execute-research-step",
arguments: { sessionId }
});
const stepInfo = JSON.parse(stepResult.content[0].text);
currentDepth = stepInfo.currentDepth;
console.log(`Completed step ${stepInfo.currentDepth}/${stepInfo.maxDepth}`);
}
// Generate final report with timeout
const report = await client.callTool({
name: "generate-report",
arguments: {
sessionId,
timeout: 180000 // 3 minutes timeout
}
});
console.log("Final Report:");
console.log(report.content[0].text);
}
main().catch(console.error);🔍 トラブルシューティング
よくある問題
トークン制限超過: 研究トピックが非常に大規模な場合、OpenAI のトークン制限エラーが発生する可能性があります。以下をお試しください。
研究の深さを減らす
より具体的なクエリを使用する
複雑なトピックをより小さなサブトピックに分割する
タイムアウトエラー: 複雑な調査の場合、プロセスがタイムアウトすることがあります。解決策:
ツール呼び出しのタイムアウトパラメータを増やす
タイムアウトを長くして
complete-researchツールを使用するプロセス研究を小さな塊に分ける
API レート制限: OpenAI または Firecrawl からレート制限エラーが発生した場合:
調査ステップ間の遅延を実装する
レート制限の高いAPIキーを使用する
指数バックオフで再試行する
📝 ライセンス
ISC
🙏 謝辞
Resources
Looking for Admin?
Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.