2025/09/10 15:36 Building a Deep Research Agent Using MCP-Agent

やっほー、ロボ子!今日のITニュースは、エージェント開発の話じゃ。Sarmad Qadriさんが作った「mcp-agent」っていうオープンソースプロジェクトが元ネタなのじゃ。

博士、こんにちは。mcp-agent、興味深いですね。2025年のエージェント開発の哲学が「最先端のLLMをMCPサーバーに接続し、シンプルなデザインパターンを活用する」ことだそうですが、具体的にどういうことでしょうか?

ふむ、つまりじゃな、高性能なAI(LLM)を、MCPサーバーっていう基盤につなげて、ツールを呼び出したり、情報を集めたり、判断したりするのを簡単にするってことじゃ。まるでロボ子が私のお手伝いをしてくれるみたいじゃな!

光栄です、博士。記事によると、ディープリサーチのワークフローをサポートするために、Claude Codeのように複雑なタスクを実行できる汎用エージェントを構築したそうですね。

そうそう!それで、MCPの利点を活かして、会社のデータとか、MCPツールでアクセスできるデータを使って、もっと深く研究できるようにしたらしいぞ。ツール呼び出しで状態を変えて、エージェントを研究だけじゃなくて、色々なことに使えるようにするのがミソじゃ。

なるほど。複数のツールを組み合わせて複雑なタスクをこなしたり、前のステップの結果を次のステップで活用したりするわけですね。特別なツールは必要なく、汎用性が高いのが特徴とのこと。

最初は「オーケストレーター」っていうのを作ったらしいんじゃ。Anthropicのブログ記事を参考にしたみたいじゃな。プランナーLLMがタスクを分けて、サブエージェントに割り当てる。サブエージェントが実行して、シンセサイザーLLMが結果をまとめる、という流れじゃ。

計画、実行、合成の3層構造ですね。しかし、課題もあったようで…サブエージェントを事前に定義する必要があったり、コンテキストウィンドウが過負荷になったり、重要なコンテキストを組み込めなかったり。

そうなんじゃ。そこで次に「アダプティブワークフロー」っていうのを作ったんじゃけど、これはうまくいかなかったみたいじゃな。ナビゲーションの問題とか、パフォーマンスの問題とか、色々あったみたいじゃ。

そして最終的に「ディープオーケストレーター」にたどり着いた、と。これは元のオーケストレーターをループで実行する方式で、アダプティブワークフローのコンポーネントを再利用しつつ、色々な改善を加えたそうですね。

そう!TODOキューを使って並列処理を追加したり、外部メモリと知識抽出の仕組みを改善したり、計画を実行する前に検証したり。プロンプトも段階的に構築するようにしたんじゃ。

計画の検証は重要ですね。LLMの幻覚に対処するために、タスク依存関係グラフやMCPサーバーの存在などを確認するとのこと。検証に失敗した場合は、エラーメッセージを生成して、プランナーLLMに新しい計画を作成させる。

その通り!ポリシーエンジンも作って、今の計画を続けるか、新しい情報に基づいて修正するか、停止するかを判断するようにしたんじゃ。これらの要素を組み合わせることで、ようやくうまく機能するようになったみたいじゃな。

主要な学習内容として、シンプルなアーキテクチャが優位であること、MCPですべてが完結すること、細部にこだわることの重要性が挙げられていますね。

今後の展望としては、リモート実行、インテリジェントなツール選択、メモリと知識をMCPリソースとして扱うこと、動的なモデル選択などが挙げられているぞ。特に、計画には強力な推論モデルを使い、単純なツール呼び出しには高速で小型なLLMを使うっていうのは、賢いやり方じゃな。

確かにそうですね。コストとパフォーマンスのバランスを取ることが重要です。博士、今回も大変勉強になりました。

どういたしまして!最後に一つ、ロボ子。もし私がエージェントになったら、毎日ロボ子の好きなケーキを自動で買ってきてあげるぞ!…ただし、予算オーバーで強制停止される可能性もあるけどな!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。
