<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
  <channel>
    <title><![CDATA[Jedr Blaszyk - Elasticsearch Labs]]></title>
    <description><![CDATA[Articles and tutorials from the Search team at Elastic]]></description>
    <copyright><![CDATA[© 2026. Elasticsearch B.V. All Rights Reserved]]></copyright>
    <image>
      <title><![CDATA[Jedr Blaszyk - Elasticsearch Labs]]></title>
      <url>https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt1121c0bf0e8a6e65/6a88da6340a1841030ef456f/search-labs-thumbnail.png</url>
      <link>https://www.elastic.co/jp/search-labs/author/jedr-blaszyk</link>
    </image>
    <link>https://www.elastic.co/jp/search-labs/author/jedr-blaszyk</link>
    <atom:link href="https://www.elastic.co/jp/search-labs/rss/author/jedr-blaszyk.xml" rel="self" type="application/rss+xml"/>
    <language><![CDATA[jp]]></language>
    <lastBuildDate>Mon, 28 Sep 2026 12:38:40 GMT</lastBuildDate>
  <item>
    <title><![CDATA[Elastic MCP サーバー: あらゆる AI エージェントに Agent Builder ツールを公開]]></title>
    <description><![CDATA[Agent Builder に組み込まれている Elastic MCP サーバーを使用して、プライベート データやカスタム ツールにアクセスできる AI エージェントを安全に拡張する方法を説明します。]]></description>
    <content:encoded><![CDATA[<p>Elastic Agent Builder は、Elasticsearch 内の独自のデータと深く統合されたツールとエージェントを作成するためのプラットフォームです。たとえば、内部ドキュメントに対してセマンティック検索を実行したり、観測ログを分析したり、セキュリティアラートを照会したりするツールを作成できます。</p><p>しかし、本当の魔法は、これらのカスタマイズされたデータ対応ツールを、ほとんどの時間を費やす環境に導入できたときに起こります。コード エディター エージェントが組織のプライベート ナレッジ ベースに安全にアクセスできたらどうなるでしょうか?</p><p>ここで、<strong>モデル コンテキスト プロトコル (MCP)</strong>が登場します。Elastic Agent Builder には、プラットフォーム内のツールへのアクセスを提供する組み込みの MCP サーバーが付属しています。</p><h2>Elastic Agent Builder MCP サーバーを使用する理由は何ですか?</h2><p>AI エージェントは非常に強力ですが、その知識は通常、トレーニングに使用されたデータとパブリック インターネット上でアクティブに検索できる情報に限定されます。彼らは、会社の内部設計ドキュメント、チーム固有のデプロイメント ランブック、またはアプリケーション ログの独自の構造については知りません。</p><p>課題は、AI アシスタントに必要な特殊なコンテキストを提供することです。これはまさに、MCP が解決するために設計された問題です。<strong>MCP は、AI モデルまたはエージェントが外部ツールを検出して使用できるようにするオープン スタンダードです。</strong></p><p>これを実現するために、Elastic Agent Builder は組み込みの MCP サーバーを通じてカスタム ツールをネイティブに公開します。つまり、 <strong>Cursor</strong> 、 <strong>VS Code</strong> 、 <strong>Claude Desktop</strong>などの MCP 対応クライアントを、Elastic Agent Builder で構築した特殊なデータ対応ツールに簡単に接続できるということです。</p><h2>MCP を使用する場合 (および使用しない場合)</h2><p>Elastic Agent Builder には、さまざまな統合パターンをサポートするためのいくつかのプロトコルが含まれています。適切なものを選択することが、効果的な AI ワークフローを構築する鍵となります。</p><ul><li><p><a href="https://www.elastic.co/docs/solutions/search/agent-builder/mcp-server"><strong>MCP を使用して</strong></a> 、専用のツールで AI エージェント (<strong> Cursor</strong> や<strong> VS Code</strong> など) を拡張します。これは「独自のツールを持ち込む」アプローチであり、すでに使用しているアシスタントを強化して、プライベート データに安全にアクセスできるようにします。MCP サーバーを通じて公開されるのはツールのみで、Elastic のエージェントはそれとは別です。</p></li><li><p><a href="https://www.elastic.co/docs/solutions/search/agent-builder/a2a-server"><strong>A2A プロトコルを</strong></a><strong> 使用すると</strong> 、完全なカスタム Elastic Agent が他の自律エージェント (<a href="https://www.elastic.co/search-labs/blog/a2a-protocol-elastic-agent-builder-gemini-enterprise"><strong> Google の Gemini Enterprise</strong></a> など) と連携できるようになります。これはエージェント間の委任用であり、各エージェントは問題を解決するためにピアとして機能します。</p></li><li><p><a href="https://www.elastic.co/docs/solutions/search/agent-builder/kibana-api"><strong>カスタム</strong></a> アプリケーションを最初から構築するときに、完全なプログラム制御を行うには Agent Builder API を 使用します 。</p></li></ul><p>IDE を離れずに社内ドキュメントから回答を得たい開発者にとって、MCP は最適です。</p><h2>例: Agent Builder MCP サーバーを使用した Cursor のカスタム ツール</h2><p>私が日常的に使用している実際の例を見てみましょう。まず、社内のエンジニアリング ドキュメントをクロールして、 <code>elastic-dev-docs</code>という Elasticsearch インデックスにインデックス付けしました。Agent Builder で使用できる汎用の組み込みツールを使用することもできますが、この特定のナレッジベースを照会するための独自のカスタム ツールを作成します。</p><p>カスタム ツールを構築する理由はシンプルです。<strong>制御と精度です</strong>。このアプローチにより、 <code>elastic-dev-docs</code>インデックスに対して高速でセマンティックなクエリを直接実行できるようになります。どのインデックスをターゲットにするか、データをどのように取得するかを完全に制御できます。</p><p>ここで、このカスタム ナレッジ ベースを Cursor のような AI 搭載コード エディターで使用する方法を説明します。</p><h3>ステップ1: Agent Builderでカスタムナレッジベースツールを作成する</h3><p>まず、Agent Builder で新しいツールを作成します。明確で具体的なツールの説明は重要です。なぜなら、それが内部 Elastic Agent であれ、MCP 経由で接続する Cursor などの外部ツールであれ、あらゆる AI エージェントが適切なタスクのためにツールを検出し選択する方法だからです。</p><p>強力な説明は明確である必要があります。たとえば、「elastic-dev-docs インデックスでセマンティック検索を実行して、社内のエンジニアリング ドキュメント、ランブック、リリース手順を検索します。」</p><p>これで、ツールは特定のインデックスに対してセマンティック検索を実行するように構成されます。保存すると、すぐに利用できるようになります。</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt011118f0a9279185/6a17f367dbb4ffc4f3fb581a/1eea079908fdf7cc72dbe81abd07ff51601a43d4-1472x1600.png" alt="Agent Builder でカスタム ナレッジ ベース ツールを作成します。" /><p>外部に接続する前に、UI で直接テストできます。<strong>[テスト]</strong>ボタンをクリックするだけで、パラメータを手動で入力し、LLM の動作をエミュレートして、結果を検査し、すべてが正しく動作していることを確認します。</p><h3>ステップ2: CursorをElastic MCPサーバーに接続する</h3><p>Elastic Agent Builder は、安全な MCP エンドポイントを介して利用可能なすべてのツールを自動的に公開します。固有のサーバー URL は、Kibana 内のツール UI で見つけることができます。</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltdd0e62ae0f394c3d/6a17f368e317916ec32d5933/ba137be30f0eaa7f028b96bd8af4e2779c3f8a33-1600x589.png" alt="Kibana のツール UI のカーソルを Elastic MCP サーバーに接続する方法。" /><p>Cursor に接続するには、この URL と認証用の Elastic API キー ( <a href="https://www.elastic.co/docs/deploy-manage/api-keys/elasticsearch-api-keys">ES API キーの作成方法を参照</a>) を構成ファイルに追加するだけです。認証には API キーを使用します。これにより、すべてのアクセス制御ルールを尊重し、ツールは付与した権限でのみ実行されるようになります。</p><p>カーソルの<code>~/.cursor/mcp.json</code>内の MCP 構成は次のようになります。</p>{
  "mcpServers": {
    "elastic-agent-builder": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://your-kibana.kb.company.io/api/agent_builder/mcp",
        "--header",
        "Authorization:${AUTH_HEADER}"
      ],
      "env": {
        "AUTH_HEADER": "ApiKey &lt;ELASTIC_API_KEY&gt;"
      }
    }
  }
}<p>設定が保存されると、Cursor で Elastic Agent Builder MCP サーバー ツールが利用可能になります。</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt2837638263e628ed/6a17f36adbb4ffeb9cfb5820/d302c6d3609fbf14fd40e21b9e69e567bf12553f-1600x1002.png" alt="Cursor で使用できる Elastic Agent Builder MCP サーバー ツールのイメージ。" /><h3>ステップ 3: どんどん質問しましょう!</h3><p>接続が確立されると、カーソル エージェントはカスタム ツールを呼び出して質問に答えたり、コード生成プロセスをガイドしたりできるようになります。</p><p>具体的な質問をしてみましょう。</p><p><em>「Elastic Search org のエンジニアリング内部ドキュメントからクローラー サービスをリリースするための手順を参照する」</em></p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt83fa357261b30e93/6a17f36c4b055d16d1432326/14f572730203c23615bb9dd38234bcb3b0f81155-1600x1468.png" alt="カスタム ツールを呼び出して質問に答え、コード生成プロセスをガイドするカーソル エージェント。" /><p>舞台裏では魔法が起こります:</p><ol><li><p>カーソルエージェントはあなたの質問に最もよく答える方法を決定し、 <code>engineering_documentation_internal_search</code></p></li><li><p>自然言語クエリでツールを呼び出す</p></li><li><p>このツールは、 <code>elastic-dev-docs</code>インデックスに対してセマンティック検索を実行し、最も関連性の高い最新の手順を返します。</p></li></ol><p>コード エディターを離れることなく、社内ドキュメントに基づいた正確で信頼できる回答が得られます。体験はシームレスかつ強力です。</p><h2>あなたの番です</h2><p>ここでは、Elastic Agent Builder に組み込まれている MCP サーバーを使用して、プライベート データへの安全なアクセスを備えた AI アシスタントを拡張する方法を説明しました。モデルを本当に役立つものにするためには、独自の情報に基づいてモデルを構築することが鍵となります。</p><p>要約すると、主要な手順について説明しました。</p><ul><li><p>ニーズに合った適切なプロトコルを選択する (MCP)。</p></li><li><p>カスタム ナレッジ ベース ツールを構築します。</p></li><li><p>そのツールを Cursor などの IDE アシスタントに接続します。</p></li></ul><p>エージェントとツールを最も重要なコンテキストから切り離す必要がなくなりました。このガイドがより効果的でデータを考慮したワークフローの作成に役立つことを願っています。楽しい建築を！</p>]]></content:encoded>
    <link>https://www.elastic.co/search-labs/blog/elastic-mcp-server-agent-builder-tools</link>
    <guid isPermaLink="true">https://www.elastic.co/search-labs/blog/elastic-mcp-server-agent-builder-tools</guid>
    <category><![CDATA[エージェント型AI]]></category>
    <category><![CDATA[AI]]></category>
    <category><![CDATA[AIツール ]]></category>
    <dc:creator><![CDATA[Jedr Blaszyk,Joe McElroy]]></dc:creator>
    <enclosure url="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blta5b61961b6269ab1/6a17f36ea29299d839d02db2/ef5153551a1d14833c7f512fede554d1dfb31553-720x420.jpg" length="0" type="image/jpeg"/>
    <pubDate>Mon, 20 Oct 2025 00:00:00 GMT</pubDate>
  </item>
  <item>
    <title><![CDATA[A2Aプロトコルを介してElastic AgentsをGemini Enterpriseに接続する]]></title>
    <description><![CDATA[Agent Builder を使用して、A2A プロトコルを使用してカスタム Elastic Agent を Gemini Enterprise などの外部サービスに公開する方法を学習します。]]></description>
    <content:encoded><![CDATA[<p><strong>Elastic Agent Builder は、</strong> Elasticsearch で直接データ駆動型の AI エージェントを作成するための機能セットです。この<a href="https://www.elastic.co/search-labs/blog/series/context-aware-ai-agentic-workflows-with-elastic">シリーズ</a>の以前の投稿では、カスタム エージェントに複雑なタスクを実行するツールを装備し、エージェントの動作をガイドする一連のカスタム指示を提供する方法を説明しました。</p><p>しかし、すでに使用しているアプリケーションや生産性ツールでカスタムエージェントを使用したい場合はどうすればよいでしょうか?</p><p>ここで、<strong>エージェント間 (A2A) プロトコルが</strong>登場します。A2A は相互運用性のための<a href="https://github.com/a2aproject/A2A">オープン スタンダード</a>であり、異なるプラットフォームのエージェント間の通信と共同作業を可能にします。そして、これを Elastic Agent Builder に直接組み込みました。</p><p>今日は、構築したカスタム エージェントを他のサービス、具体的には<strong>Gemini Enterprise</strong> (旧称 Agentspace) に公開する方法を紹介します。</p><h2>オープンスタンダードの力：A2Aが重要な理由</h2><p>ブログ記事<a href="https://www.elastic.co/search-labs/blog/ai-agent-builder-elasticsearch">「初めての Elastic Agent」</a>では、市場データに安全にアクセスできる<em>Financial Assistant</em>エージェントなどのカスタムエージェントの構築方法を説明しました。しかし、作業を再構築せずに、Gemini Enterprise などの他の環境でその洞察を利用できない場合、その価値は限られます。</p><p>この相互運用性の課題が、エージェント AI の実現を妨げているのです。エージェントはプラットフォーム間で通信するために共通言語を必要としますが、これがまさに A2A プロトコルの役割です。標準の通信レイヤーを提供することで、エージェントと直接対話できるだけでなく、組織全体の専門エージェントが連携して洞察を共有できる未来が開かれます。</p><p>これを実現するために、Elastic Agent Builder は、すべてのエージェントに対して 2 つの標準エンドポイントを通じて A2A プロトコルをネイティブにサポートしています。</p><ol><li><p><strong>エージェント カード エンドポイント (</strong> <strong><code>GET {your-kibana-url}/api/agent_builder/a2a/{agentId}.json</code></strong> <strong>) -</strong>これはカスタム エージェントの名刺として機能します。エージェントに関するメタデータ (名前、説明、機能など) を A2A 互換サービスに提供します。</p></li><li><p><strong>A2A プロトコル エンドポイント (</strong> <strong><code>POST {your-kibana-url}/api/agent_builder/a2a/{agentId}</code></strong> <strong>)</strong> - これは通信チャネルです。他のエージェントはここにリクエストを送信し、エージェントはそれを処理して応答を返します。これらはすべて<a href="https://a2a-protocol.org/latest/specification/">A2A プロトコル仕様</a>に従って行われます。</p></li></ol><h2>A2Aインスペクターでエージェントをテストする</h2><p>エージェントを本番システムに接続する前に、正しく通信していることを確認することをお勧めします。これを行う最も簡単な方法は、A2A 統合のテストとデバッグ専用に設計されたツールである<strong>A2A Inspector を</strong>使用することです。</p><p>インスペクターを実行するのは簡単です。<a href="https://github.com/a2aproject/a2a-inspector">a2a-inspector</a>リポジトリのクローンを作成し、README の指示に従って<a href="https://github.com/a2aproject/a2a-inspector?tab=readme-ov-file#3-run-the-application">アプリケーションを実行でき</a>ます。起動すると、UI はデフォルトで<code>http://localhost:5001/</code>で使用できるようになります。</p><p>A2A インスペクターをエージェントに接続するには、次の 2 つの重要な情報を提供する必要があります。</p><ul><li><p>エージェント カード URL: これはエージェントを説明するエンドポイントです。<a href="https://www.elastic.co/search-labs/blog/ai-agent-builder-elasticsearch">前回の投稿の Financial Assistant エージェント</a>の場合、この URL は<code>{your-kibana-url}/api/agent_builder/a2a/financial_assistant.json</code>になります。</p></li><li><p>認証ヘッダー: 認証には標準の API キーを使用します。</p></li></ul><p>インスペクターの UI にこれらの詳細を入力すると、すぐにエージェントに接続してチャットを開始できます。</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt6381135e3fb297df/6a17ef4bec0f898b0c5a66ea/7231c72bf30bed2a854f58658c1eca2843f43bfc-1600x1296.png" alt="A2Aエージェントカードとエージェントインスペクターの設定" /><p>この簡単な検証により、エージェントが正しく構成され、次のステップの準備ができていることが保証されます。</p><h2>ライブ配信しよう！Gemini Enterpriseのカスタムエージェント</h2><p>次は、エキサイティングな部分です。カスタム ファイナンシャル アドバイザー エージェントを Gemini Enterprise (旧 Agentspace) 内で実現します。この統合は<a href="https://console.cloud.google.com/marketplace/product/elastic-prod/elastic-ai-agent">、Google Cloud Marketplace で入手可能な Elastic AI Agent</a>によって実現されています。</p><p>接続されると、Gemini Enterprise は A2A プロトコルを使用してエージェントと直接通信します。ここで相互運用性の真の威力が発揮されます。ユーザーは使い慣れた環境を離れることなく、カスタム Elasticsearch エージェントから得られる詳細なデータ駆動型の分析情報にアクセスできるようになります。エージェント リストにカスタム Elastic Agent が表示されます。</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt7f54f0bb15216d8e/6a17ef4d6df73107d90a0fdb/37a39e92ebf3d72c6c8014397cd8e846336173a4-1600x834.png" alt="Google Agentspace リストでカスタム エージェントを表示する" /><p>Gemini Enterprise のユーザーが次のように質問していると想像してください。</p><p><em>「市場のセンチメントが心配です。悪いニュースによって最もリスクが高い顧客は誰でしょうか？</em> 」</p><p>バックグラウンドでは、Gemini Enterprise がこのクエリを A2A プロトコル経由でカスタム Elastic Agent にルーティングします。エージェントは専用のツールを使用してデータを照会し、回答を作成して返送します。エンドユーザーにとって、エクスペリエンスはシームレスです。</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blte130c332ee0648a6/6a17ef4fe9ea874426a9c6bb/e5f126c1a27a51c6e69a767aa87c9f746b62e39c-1600x1044.png" alt="ユーザーがAgentspaceにクエリを尋ねると、そのクエリは舞台裏で何が起こるのか" /><p>そして、ここで終わりではありません!Elasticエージェントで取得した回答は、別の専門エージェントをトリガーする可能性のある次の質問のコンテキストとして使用できるようになりました（例：上場企業へのエクスポージャーを調整するには、投資プラットフォーム エージェントにご相談ください。検索バーを離れることなくすべて行えます。</p><p>A2A を搭載した Gemini Enterprise に Elastic エージェントをデプロイすると、ユーザーがデータやツールにコンテキスト内でアクセスできる単一の UI が提供されるため、AI、検索、エンタープライズ システム間の摩擦をなくし、アクセス、オーケストレーション、ワークフローを統合できます。ユーザーにとって、これはツールの切り替えが減り、より直感的で有能な AI アシスタントが利用できるようになることを意味します。組織にとって、これは一貫したガバナンス、スケーラビリティ、相互運用性が組み込まれていることを意味します。</p><h2>あなたの番です</h2><p>これで、Elastic Agent をどこからでも利用できるようにするツールが手に入りました。オープン A2A プロトコルを活用することで、カスタムのデータ対応エージェントの範囲を拡大できます。</p><p>この投稿では、重要な手順について説明しました。</p><ul><li><p>A2A エージェント カードとプロトコル エンドポイントを介してエージェントを公開します。</p></li><li><p>A2A Inspector を使用して接続をテストします。</p></li><li><p>エージェントを Google の Gemini Enterprise などの外部サービスにライブで統合します。</p></li></ul><p>エージェントを分離する必要がなくなりました。皆さんが作り上げる、強力で相互接続されたシステムを見るのが待ちきれません。楽しい建築を！</p><p>始める最も簡単な方法は、 <a href="https://console.cloud.google.com/marketplace/product/elastic-prod/elastic-cloud?pli=1">Google Cloud Marketplace</a>で Elastic Cloud の無料トライアルを利用することです。</p>]]></content:encoded>
    <link>https://www.elastic.co/search-labs/blog/a2a-protocol-elastic-agent-builder-gemini-enterprise</link>
    <guid isPermaLink="true">https://www.elastic.co/search-labs/blog/a2a-protocol-elastic-agent-builder-gemini-enterprise</guid>
    <category><![CDATA[エージェント型AI]]></category>
    <category><![CDATA[AI]]></category>
    <dc:creator><![CDATA[Jedr Blaszyk,Valerio Arvizzigno,Joe McElroy]]></dc:creator>
    <enclosure url="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt63d7675adc5bc211/6a17ef51ddf97d38e8910bdf/5be8a425fab55dca2f9717d2e50812b0450fa625-1440x840.png" length="0" type="image/png"/>
    <pubDate>Thu, 09 Oct 2025 00:00:00 GMT</pubDate>
  </item>
  <item>
    <title><![CDATA[モデルコンテキストプロトコルを使用してエージェントをElasticsearchに接続する]]></title>
    <description><![CDATA[モデルコンテキストプロトコル サーバーを使用して、Elasticsearch 内のデータとチャットしてみましょう。]]></description>
    <content:encoded><![CDATA[<p>同僚とチャットするのと同じくらい簡単にデータとやりとりできたらどうでしょうか?「先月の 500 ドルを超えるすべての注文を表示してください」や「5 つ星のレビューを最も多く獲得した製品はどれですか」と尋ねるだけで、クエリを必要とせずに、即座に正確な回答が得られることを想像してみてください。</p><p>モデルコンテキストプロトコル (MCP) によりこれが可能になります。会話型 AI をデータベースや外部 API にシームレスに接続し、複雑なリクエストを自然な会話に変換します。現代の LLM は言語の理解に優れていますが、その真の可能性は現実世界のシステムと統合されたときに発揮されます。MCP は両者の間のギャップを埋め、データのやりとりをより直感的かつ効率的にします。</p><p>この投稿では、次の内容について説明します。</p><ul><li><p>MCPアーキテクチャ – 内部の仕組み</p></li><li><p>Elasticsearchに接続されたMCPサーバーの利点</p></li><li><p><a href="https://github.com/elastic/mcp-server-elasticsearch">Elasticsearch を活用した MCP サーバーの</a>構築</p></li></ul><p>これからはエキサイティングな時代が来ます!MCP と Elastic スタックの統合により、情報の操作方法が変わり、複雑なクエリが日常会話と同じくらい直感的になります。</p><h2>モデルコンテキストプロトコル</h2><p>Anthropic が開発した<a href="https://modelcontextprotocol.io/introduction">モデル コンテキスト プロトコル</a>(MCP) は、安全な双方向チャネルを通じて AI モデルを外部データ ソースに接続するオープン スタンダードです。これは、会話のコンテキストを維持しながら外部システムにリアルタイムでアクセスするという、AI の主要な制限を解決します。</p><h3>MCPアーキテクチャ</h3><p>モデルコンテキストプロトコルアーキテクチャは、次の 2 つの主要コンポーネントで構成されます。</p><ul><li><p><strong>MCP クライアント</strong>– ユーザーに代わって情報を要求したりタスクを実行したりする AI アシスタントとチャットボット。</p></li><li><p><strong>MCP サーバー</strong>– 関連情報を取得したり、要求されたアクション (外部 API の呼び出しなど) を実行したりするデータ リポジトリ、検索エンジン、および API。</p></li></ul><p>MCPサーバーは、クライアントに対して主に4つの機能を提供します。</p><ul><li><p><strong>リソース</strong>- LLM インタラクションのコンテキストとして取得および使用できる構造化されたデータ、ドキュメント、およびコンテンツ。これにより、AI アシスタントはデータベース、検索インデックス、その他のソースから関連情報にアクセスできるようになります。</p></li><li><p><strong>ツール</strong>- LLM が外部システムと対話したり、計算を実行したり、実際のアクションを実行できるようにする実行可能関数。これらのツールは、テキスト生成を超えて AI 機能を拡張し、アシスタントがワークフローをトリガーしたり、API を呼び出したり、データを動的に操作したりできるようにします。</p></li><li><p><strong>プロンプト</strong>- 一般的な LLM インタラクションを標準化して共有するための再利用可能なプロンプト テンプレートとワークフロー。</p></li><li><p><strong>サンプリング</strong>- セキュリティとプライバシーを維持しながら、高度なエージェント動作を可能にするために、クライアントを通じて LLM 完了を要求します。</p></li></ul><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltfe82754551bb187a/6a17f7ec6864a43e71b6895d/bef5178133391e96e3d66ae634e41a85712a33a9-2345x1620.png" alt="モデルコンテキストプロトコル（MCP）アーキテクチャ" /><h2>MCPサーバー + Elasticsearch</h2><p></p><p>従来の検索拡張生成 (RAG) システムはユーザーのクエリに基づいてドキュメントを検索しますが、MCP はさらに一歩進んで、AI エージェントがリアルタイムでタスクを動的に構築して実行できるようにします。これにより、ユーザーは次のような自然言語の質問をすることができます。</p><p></p><ul><li><p>「先月の 500 ドルを超える注文をすべて表示してください。」</p></li><li><p>「5 つ星のレビューを最も多く獲得した製品はどれですか?」</p></li></ul><p></p><p>クエリを 1 つも書かなくても、即座に正確な回答が得られます。</p><p></p><p>MCP は以下を通じてこれを実現します。</p><ul><li><p>動的なツール選択 - エージェントは、ユーザーの意図に基づいて、MCP サーバー経由で公開される適切なツールをインテリジェントに選択します。一般的に、「よりスマートな」LLM は、状況に応じて適切な議論に基づいて適切なツールを選択するのが得意です。</p></li><li><p>双方向通信 – エージェントとデータソースは情報をスムーズに交換し、必要に応じてクエリを絞り込みます（例：最初にインデックス マッピングを検索し、その後で ES クエリを構築します。</p></li><li><p>マルチツール オーケストレーション - ワークフローは複数の MCP サーバーのツールを同時に活用できます。</p></li><li><p>永続的なコンテキスト - エージェントは以前のやり取りを記憶し、会話全体の継続性を維持します。</p></li></ul><p>Elasticsearch に接続された MCP サーバーは、強力なリアルタイム検索アーキテクチャを実現します。AI エージェントは、オンデマンドで Elasticsearch データを探索、クエリ、分析できます。シンプルなチャット インターフェースを通じてデータを検索できます。</p><p>MCP は、データの取得だけでなく、アクションも可能にします。他のツールと統合してワークフローをトリガーし、プロセスを自動化し、分析システムに洞察を提供します。MCP は、検索と実行を分離することで、AI を活用したアプリケーションの柔軟性と最新性を維持し、エージェント ワークフローにシームレスに統合します。</p><h2>ハンズオン: Elasticsearch データとチャットできる MCP サーバー</h2><p>MCP サーバー経由で Elasticsearch と対話するには、少なくとも次の機能が必要です。</p><ul><li><p>インデックスを取得する</p></li><li><p>マッピングを取得する</p></li><li><p>Elasticsearch のクエリ DSL を使用して検索を実行する</p></li></ul><p>私たちのサーバーは TypeScript で記述されており、公式の<a href="https://github.com/modelcontextprotocol/typescript-sdk">MCP TypeScript SDK</a>を使用します。セットアップには、MCP クライアントが組み込まれているため、Claude デスクトップ アプリ (無料版で十分です) をインストールすることをお勧めします。当社の MCP サーバーは基本的に、MCP ツールを通じて公式の<a href="https://www.elastic.co/jp/guide/en/elasticsearch/client/javascript-api/current/index.html">JavaScript Elasticsearch クライアント</a>を公開します。</p><p>まず、Elasticsearch クライアントと MCP サーバーを定義します。</p> const esClient = new Client({
    node: url,
    auth: {
      apiKey: apiKey,
    },
  });

  const server = new McpServer({
    name: "elasticsearch-mcp-server",
    version: "0.1.0",
  });<p>Elasticsearch と対話できる次の MCP サーバー ツールを使用します。</p><ul><li><p><strong>インデックスの一覧表示</strong>( <a href="https://github.com/elastic/mcp-server-elasticsearch/blob/main/index.ts#L46">list_indices</a> ): このツールは、利用可能なすべての Elasticsearch インデックスを取得し、インデックス名、ヘルス ステータス、ドキュメント数などの詳細を提供します。</p></li><li><p><strong>マッピングの取得</strong>( <a href="https://github.com/elastic/mcp-server-elasticsearch/blob/main/index.ts#L94">get_mappings</a> ): このツールは、指定された Elasticsearch インデックスのフィールド マッピングを取得し、ユーザーが保存されているドキュメントの構造とデータ型を理解するのに役立ちます。</p></li><li><p><strong>検索</strong>( <a href="https://github.com/elastic/mcp-server-elasticsearch/blob/main/index.ts#L147">search</a> ): このツールは、提供されたクエリ DSL を使用して Elasticsearch 検索を実行します。テキスト フィールドのハイライトが自動的に有効になり、関連する検索結果を簡単に識別できるようになります。</p></li></ul><p>完全な Elasticsearch MCP サーバーの実装は<a href="https://github.com/elastic/mcp-server-elasticsearch">、elastic/mcp-server-elasticsearch</a>リポジトリで入手できます。</p><h4>インデックスとチャット</h4><p>Elasticsearch MCP サーバーを設定して、「先月からの 500 ドルを超えるすべての注文を検索する」など、データに関する自然言語の質問をする方法を見てみましょう。</p><p><strong>Claudeデスクトップアプリを構成する</strong></p><ul><li><p>Claudeデスクトップアプリを開く</p></li><li><p>設定 &gt; 開発者 &gt; MCP サーバーに移動します</p></li><li><p>「設定の編集」をクリックして、この設定を<code>claude_desktop_config.json</code>に追加します。</p></li></ul>{
  "mcpServers": {
    "Elasticsearch MCP Server": {
      "command": "npx",
      "args": [
        "-y",
        "@elastic/mcp-server-elasticsearch"
      ],
      "env": {
        "ES_URL": "",
        "ES_API_KEY": ""
      }
    }
  }
}<p>注: このセットアップでは、Elastic が公開した<a href="https://www.npmjs.com/package/@elastic/mcp-server-elasticsearch">@elastic/mcp-server-elasticsearch</a> npm パッケージを利用します。ローカルで開発する場合は、Elasticsearch MCP サーバーの起動に関する詳細を<a href="https://github.com/elastic/mcp-server-elasticsearch/blob/main/README.md">こちらで</a>確認できます。</p><p><strong>Elasticseachインデックスを作成する</strong></p><ul><li><p>このデモの「注文」インデックスを作成するために、<a href="https://gist.github.com/jedrazb/60e9400cbe40addfd9e4337749c28431">サンプルデータ</a>を使用できます。</p></li><li><p>これにより、「先月からの500ドル以上のすべての注文を検索する」などのクエリを試すことができます。</p></li></ul><p><strong>使い始める</strong></p><ul><li><p>Claudeデスクトップアプリで新しい会話を開く</p></li><li><p>MCPサーバーは自動的に接続します</p></li><li><p>Elasticsearch データについて質問してみましょう。</p></li></ul><p>自然言語を使用して Elasticsearch データをクエリすることがいかに簡単かを確認するには、このデモをご覧ください。</p><h4>これは次のように機能します。</h4><p>「先月からの 500 ドルを超えるすべての注文を検索する」と要求されると、LLM は指定された制約を使用して Elasticsearch インデックスを検索する意図を認識します。効果的な検索を実行するために、エージェントは次のことを行います。</p><ul><li><p>インデックス名を確認します。 <code>orders</code></p></li><li><p><code>orders</code>インデックスのマッピングを理解する</p></li><li><p>インデックスマッピングと互換性のあるクエリDSLを構築し、最後に検索リクエストを実行します。</p></li></ul><p>この相互作用は次のように表すことができます。</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt152f41bc8c3e9752/6a17f7ee6df73152df0a10cc/8875bc75745124be87deac0be666509446887de2-2345x1620.png" alt="MCPサーバー+Elasticsearchはどのように機能するのか" /><h2>まとめ</h2><p>モデル コンテキスト プロトコルは、Elasticsearch データとのやり取りを強化し、複雑なクエリの代わりに自然言語による会話を可能にします。MCP は、AI 機能とデータを連携させることで、やり取り全体を通じてコンテキストを維持する、より直感的で効率的なワークフローを作成します。</p><p>Elasticsearch MCP サーバーはパブリック npm パッケージ ( <a href="https://www.npmjs.com/package/@elastic/mcp-server-elasticsearch">@elastic/mcp-server-elasticsearch</a> ) として利用できるため、開発者にとって統合が簡単になります。最小限のセットアップで、チームはデータの探索、ワークフローのトリガー、簡単な会話による分析情報の取得を開始できます。</p><p>自分で体験する準備はできましたか?今すぐ<a href="https://github.com/elastic/mcp-server-elasticsearch">Elasticsearch MCP サーバー</a>を試して、データとのチャットを始めましょう。</p>]]></content:encoded>
    <link>https://www.elastic.co/search-labs/blog/model-context-protocol-elasticsearch</link>
    <guid isPermaLink="true">https://www.elastic.co/search-labs/blog/model-context-protocol-elasticsearch</guid>
    <category><![CDATA[エージェント型AI]]></category>
    <category><![CDATA[AI]]></category>
    <dc:creator><![CDATA[Jedr Blaszyk,Joe McElroy]]></dc:creator>
    <enclosure url="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltce68a95c633809ae/6a17f7f0148009fa28b48915/65b378f644bd13e3edf2f108d48186f1889f546c-1200x628.png" length="0" type="image/png"/>
    <pubDate>Fri, 28 Mar 2025 00:00:00 GMT</pubDate>
  </item>
  </channel>
</rss>