<?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/kr/search-labs/author/jedr-blaszyk</link>
    </image>
    <link>https://www.elastic.co/kr/search-labs/author/jedr-blaszyk</link>
    <atom:link href="https://www.elastic.co/kr/search-labs/rss/author/jedr-blaszyk.xml" rel="self" type="application/rss+xml"/>
    <language><![CDATA[kr]]></language>
    <lastBuildDate>Mon, 28 Sep 2026 03:58:28 GMT</lastBuildDate>
  <item>
    <title><![CDATA[Elastic MCP 서버: 모든 AI 에이전트에 에이전트 빌더 도구 노출]]></title>
    <description><![CDATA[에이전트 빌더에 기본 제공되는 Elastic MCP 서버를 사용하여 개인 데이터 및 사용자 정의 도구에 대한 액세스를 통해 모든 AI 에이전트를 안전하게 확장하는 방법을 알아보세요.]]></description>
    <content:encoded><![CDATA[<p>Elastic 에이전트 빌더는 Elasticsearch의 자체 데이터와 긴밀하게 통합되는 도구와 에이전트를 생성하기 위한 플랫폼입니다. 예를 들어, 내부 문서에 대해 시맨틱 검색을 수행하거나 통합 가시성 로그를 분석하거나 보안 경고를 쿼리하는 도구를 만들 수 있습니다.</p><p>하지만 대부분의 시간을 보내는 환경에 이러한 맞춤형 데이터 인식 도구를 도입할 때 진정한 마법이 일어납니다. 코드 편집기 에이전트가 조직의 비공개 지식창고에 안전하게 액세스할 수 있다면 어떨까요?</p><p>이것이 바로 <strong>모델 컨텍스트 프로토콜(MCP)</strong> 이 필요한 이유입니다. Elastic 에이전트 빌더는 플랫폼의 도구에 대한 액세스를 제공하는 기본 제공 MCP 서버와 함께 제공됩니다.</p><h2>Elastic 에이전트 빌더 MCP 서버를 사용하는 이유는 무엇인가요?</h2><p>AI 에이전트는 매우 강력하지만, 일반적으로 학습된 데이터와 공개 인터넷에서 적극적으로 검색할 수 있는 정보로 지식이 제한되어 있습니다. 그들은 회사의 내부 디자인 문서, 팀의 특정 배포 런북 또는 애플리케이션 로그의 고유한 구조에 대해 알지 못합니다.</p><p>문제는 AI 어시스턴트에게 필요한 전문 컨텍스트를 제공하는 것입니다. 이것이 바로 MCP가 해결하고자 하는 문제입니다. <strong>MCP는 AI 모델이나 에이전트가 외부 도구를 검색하고 사용할 수 있도록 하는 개방형 표준입니다.</strong></p><p>이를 가능하게 하기 위해 Elastic 에이전트 빌더는 기본적으로 기본 제공 MCP 서버를 통해 사용자 정의 도구를 노출합니다. 즉, Elastic 에이전트 빌더로 구축한 전문화된 데이터 인식 도구로 <strong>Cursor</strong>, <strong>VS Code</strong> 또는 <strong>Claude Desktop과</strong> 같은 모든 MCP 호환 클라이언트를 쉽게 연결할 수 있습니다.</p><h2>MCP를 사용해야 할 때(그리고 사용하지 말아야 할 때)</h2><p>Elastic 에이전트 빌더에는 다양한 통합 패턴을 지원하기 위한 여러 프로토콜이 포함되어 있습니다. 효과적인 AI 워크플로우를 구축하려면 올바른 것을 선택하는 것이 중요합니다.</p><ul><li><p><a href="https://www.elastic.co/docs/solutions/search/agent-builder/mcp-server"><strong>MCP를 </strong></a><strong>사용하여</strong> 전문화된 도구로 AI 에이전트(예:<strong>커서</strong> 또는 <strong>VS 코드)를 보강할 수 있습니다.</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 에이전트가 다른 자율 에이전트와 협업할 수 있도록 하세요(<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><strong>처음부터 </strong>사용자 지정 애플리케이션을 구축할 때<a href="https://www.elastic.co/docs/solutions/search/agent-builder/kibana-api"><strong>에이전트 빌더 API를 사용하여 완전한 프로그래밍 방식으로 제어할 수 있습니다.</strong></a></p></li></ul><p>IDE를 벗어나지 않고도 내부 문서에서 답을 얻고자 하는 개발자에게 MCP는 완벽한 솔루션입니다.</p><h2>예: 에이전트 빌더 MCP 서버를 사용하는 커서의 사용자 지정 도구</h2><p>제가 매일 사용하는 실제 사례를 살펴보겠습니다. 먼저, 내부 엔지니어링 문서를 크롤링하여 <code>elastic-dev-docs</code> 이라는 Elasticsearch 인덱스로 색인화했습니다. 상담원 빌더에서 제공되는 일반적인 기본 제공 툴을 사용할 수도 있지만, 이 특정 지식창고를 쿼리하기 위한 자체 사용자 지정 툴을 만들겠습니다.</p><p>사용자 지정 도구를 구축하는 이유는 간단합니다: <strong>제어와 정밀도입니다</strong>. 이 접근 방식을 사용하면 <code>elastic-dev-docs</code> 인덱스에 대해 직접 빠른 시맨틱 쿼리를 실행할 수 있습니다. 당사는 정확히 어떤 인덱스를 대상으로 하고 데이터를 검색하는 방법을 완전히 제어할 수 있습니다.</p><p>이제 커서와 같은 AI 기반 코드 편집기에서 이 사용자 지정 지식창고를 사용하는 방법은 다음과 같습니다.</p><h3>1단계: 상담원 빌더에서 사용자 지정 지식창고 툴 만들기</h3><p>먼저 상담원 빌더에서 새 도구를 만듭니다. 명확하고 구체적인 도구 설명은 내부 Elastic 에이전트든 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="상담원 빌더에서 사용자 지정 지식창고 툴 만들기." /><p>외부에 연결하기 전에 UI에서 직접 테스트해 볼 수 있습니다. <strong>테스트</strong> 버튼을 클릭하여 매개변수를 수동으로 입력하여 LLM이 수행하는 작업을 에뮬레이션하고 결과를 검사하여 모든 것이 올바르게 작동하는지 확인하기만 하면 됩니다.</p><h3>2단계: 커서를 Elastic MCP 서버에 연결하기</h3><p>Elastic 에이전트 빌더는 안전한 MCP 엔드포인트를 통해 사용 가능한 모든 도구를 자동으로 노출합니다. Kibana 내의 도구 UI에서 고유한 서버 URL을 찾을 수 있습니다.</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>Cursor의 <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 에이전트 빌더 MCP 서버 도구가 표시됩니다.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt2837638263e628ed/6a17f36adbb4ffeb9cfb5820/d302c6d3609fbf14fd40e21b9e69e567bf12553f-1600x1002.png" alt="커서에서 사용할 수 있는 Elastic 에이전트 빌더 MCP 서버 도구의 이미지입니다." /><h3>3단계: 물어보세요!</h3><p>연결이 설정되면 이제 커서 상담원이 사용자 지정 도구를 호출하여 질문에 답하거나 코드 생성 프로세스를 안내할 수 있습니다.</p><p>구체적인 질문을 해보겠습니다:</p><p><em>"탄력적 검색 조직의 엔지니어링 내부 문서에서 크롤러 서비스를 릴리즈하기 위한 조회 단계"</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 에이전트 빌더의 기본 제공 MCP 서버를 사용하여 개인 데이터에 대한 안전한 액세스로 AI 어시스턴트를 확장하는 방법을 살펴보셨습니다. 모델을 진정으로 유용하게 활용하려면 자신의 정보에 근거를 두는 것이 중요합니다.</p><p>핵심 단계를 다시 한 번 정리해 보았습니다:</p><ul><li><p>필요에 맞는 프로토콜 선택하기(MCP).</p></li><li><p>사용자 지정 지식창고 툴 구축하기</p></li><li><p>해당 도구를 커서와 같은 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 에이전트를 Gemini Enterprise에 연결하기]]></title>
    <description><![CDATA[에이전트 빌더를 사용하여 사용자 정의 Elastic 에이전트를 A2A 프로토콜을 통해 Gemini Enterprise와 같은 외부 서비스에 노출하는 방법을 알아보세요.]]></description>
    <content:encoded><![CDATA[<p><strong>Elastic 에이전트 빌더는</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 에이전트 빌더에 직접 구축했습니다.</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 에이전트에서</a> 시장 데이터에 안전하게 액세스할 수 있는 <em>금융 지원</em> 에이전트와 같은 사용자 정의 에이전트를 구축하는 방법을 보여드렸습니다. 그러나 작업을 재구축하지 않고 Gemini Enterprise와 같은 다른 환경에서 인사이트를 사용할 수 없다면 그 가치는 제한적입니다.</p><p>이러한 상호운용성 문제가 에이전트 AI의 발목을 잡고 있습니다. 에이전트는 여러 플랫폼에서 소통하기 위해 공통 언어가 필요하며, 이것이 바로 A2A 프로토콜의 역할입니다. 상담원과 직접 소통할 수 있는 표준 커뮤니케이션 계층을 제공할 뿐만 아니라 조직 전체의 전문 상담원이 협업하고 인사이트를 공유할 수 있는 미래를 열어줍니다.</p><p>이를 가능하게 하기 위해 Elastic 에이전트 빌더는 기본적으로 모든 에이전트에 대해 두 개의 표준 엔드포인트를 통해 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 인스펙터를</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> 수 있습니다. 시작하면 기본적으로 <code>http://localhost:5001/</code> 에서 UI를 사용할 수 있습니다.</p><p>A2A 인스펙터를 상담원과 연결하려면 두 가지 주요 정보를 제공해야 합니다:</p><ul><li><p>상담원 카드 URL: 상담원을 설명하는 엔드포인트입니다. <a href="https://www.elastic.co/search-labs/blog/ai-agent-builder-elasticsearch">이전 게시물의 재무 도우미 상담</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 에이전트에</a> 의해 구동됩니다.</p><p>연결되면 Gemini Enterprise는 A2A 프로토콜을 사용하여 상담원과 직접 통신합니다. 이제 사용자는 익숙한 환경을 벗어나지 않고도 사용자 정의 Elasticsearch 에이전트의 심층적인 데이터 기반 인사이트에 액세스할 수 있습니다. 상담원 목록에서 사용자 정의 Elastic 에이전트를 확인할 수 있습니다:</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt7f54f0bb15216d8e/6a17ef4d6df73107d90a0fdb/37a39e92ebf3d72c6c8014397cd8e846336173a4-1600x834.png" alt="Google 상담원 공간 목록에서 사용자 지정 상담원 보기" /><p>Gemini Enterprise의 사용자가 다음과 같이 질문한다고 상상해 보세요:</p><p><em>"시장 심리가 걱정됩니다. 어떤 고객이 악재로 인해 가장 위험에 처해 있는지 알려주실 수 있나요?</em>"</p><p>뒤에서 Gemini Enterprise는 A2A 프로토콜을 통해 이 쿼리를 사용자 정의 Elastic 에이전트로 라우팅합니다. 그런 다음 상담원이 전문화된 도구를 사용하여 데이터를 쿼리하고 답변을 작성하여 다시 전송합니다. 최종 사용자에게는 매끄러운 경험이 제공됩니다.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blte130c332ee0648a6/6a17ef4fe9ea874426a9c6bb/e5f126c1a27a51c6e69a767aa87c9f746b62e39c-1600x1044.png" alt="사용자가 에이전트스페이스에 쿼리를 요청하면 백그라운드에서 쿼리가 어떻게 되는지 알아보기" /><p>그리고 여기서 멈추지 않습니다! 이제 Elastic 에이전트로 검색된 답변을 다른 전문 에이전트를 트리거할 수 있는 다음 질문의 컨텍스트로 사용할 수 있습니다(예. 투자 플랫폼 에이전트를 통해 상장사에 대한 노출을 조정할 수 있습니다). 검색창을 떠나지 않고도 이 모든 것이 가능합니다.</p><p>A2A가 포함된 Gemini Enterprise에 배포된 Elastic 에이전트를 사용하면 사용자가 데이터 및 도구와 대화할 수 있는 단일 UI를 제공하여 액세스, 오케스트레이션, 워크플로우를 통합하여 AI, 검색, 엔터프라이즈 시스템 간의 마찰을 제거할 수 있으며, 모두 맥락에 맞게 사용할 수 있습니다. 사용자 입장에서는 도구 전환이 줄어들고 직관적이고 유능한 AI 비서가 더 많아진다는 뜻입니다. 조직에게는 일관된 거버넌스, 확장성 및 상호 운용성이 내장되어 있다는 의미입니다.</p><h2>구축할 차례</h2><p>이제 어디서나 Elastic 에이전트를 사용할 수 있는 도구가 생겼습니다. 개방형 A2A 프로토콜을 활용하면 데이터를 인식하는 맞춤형 상담원의 범위를 확장할 수 있습니다.</p><p>이 게시물에서는 주요 단계를 안내해 드렸습니다:</p><ul><li><p>A2A 에이전트 카드 및 프로토콜 엔드포인트를 통해 에이전트를 노출합니다.</p></li><li><p>A2A 인스펙터로 연결을 테스트합니다.</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달러 이상 모든 주문 표시" 또는 "어떤 제품이 가장 많은 별점 리뷰를 받았나요?" 라고 질문하고 쿼리할 필요 없이 즉각적이고 정확한 답변을 받는다고 상상해 보세요.</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에서 개발한 MCP(<a href="https://modelcontextprotocol.io/introduction">모델 컨텍스트 프로토콜</a> )는 안전한 양방향 채널을 통해 AI 모델을 외부 데이터 소스에 연결하는 개방형 표준입니다. 대화 컨텍스트를 유지하면서 외부 시스템에 대한 실시간 액세스라는 AI의 주요 한계를 해결합니다.</p><h3>MCP 아키텍처</h3><p>모델 컨텍스트 프로토콜 아키텍처는 두 가지 주요 구성 요소로 이루어져 있습니다:</p><ul><li><p><strong>MCP 클라이언트</strong> - 사용자를 대신하여 정보를 요청하거나 작업을 실행하는 AI 어시스턴트 및 챗봇입니다.</p></li><li><p><strong>MCP 서버</strong> - 관련 정보를 검색하거나 요청된 작업(예: 외부 API 호출)을 수행하는 데이터 저장소, 검색 엔진 및 API입니다.</p></li></ul><p>MCP 서버는 네 가지 주요 기능을 클라이언트에 노출합니다:</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>"어떤 제품이 가장 많은 별점 리뷰를 받았나요?"</p></li></ul><p></p><p>쿼리를 작성하지 않고도 즉각적이고 정확한 답변을 얻을 수 있습니다.</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>저희 서버는 타입스크립트로 작성되었으며, 공식 <a href="https://github.com/modelcontextprotocol/typescript-sdk">MCP 타입스크립트 SDK를</a> 사용할 예정입니다. 설정을 위해서는 MCP 클라이언트가 내장되어 있는 Claude 데스크톱 앱(무료 버전으로도 충분)을 설치하는 것을 권장합니다. 당사의 MCP 서버는 기본적으로 MCP 도구를 통해 공식 <a href="https://www.elastic.co/kr/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> <a href="https://github.com/elastic/mcp-server-elasticsearch/blob/main/index.ts#L147"></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>"지난달의 500달러 이상 모든 주문 찾기와 같이 데이터에 대해 자연어 질문을 할 수 있도록 Elasticsearch MCP 서버를 설정하는 방법을 살펴보겠습니다."</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 패키지를 활용합니다. 로컬에서 개발하려는 경우, <a href="https://github.com/elastic/mcp-server-elasticsearch/blob/main/README.md">여기에서</a> Elasticsearch MCP 서버를 가동하는 방법에 대한 자세한 내용을 확인할 수 있습니다.</p><p><strong>Elasticseach 인덱스 채우기</strong></p><ul><li><p><a href="https://gist.github.com/jedrazb/60e9400cbe40addfd9e4337749c28431">예제 데이터를</a> 사용하여 이 데모의 "orders" 인덱스를 채울 수 있습니다.</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>