Klavis Strata MCP Server

공식

AI 에이전트가 모든 도구를 안정적으로 어떤 규모에서든 사용할 수 있는 하나의 MCP 서버

문서

Strata

모든 규모에서 AI 에이전트가 점진적으로 도구를 사용할 수 있게 해주는 하나의 MCP 서버

<img src="https://mintcdn.com/klavisai/7Siw7A5JJSHURM5d/images/concepts/strata_hero.png?fit=max&auto=format&n=7Siw7A5JJSHURM5d&q=85&s=b581fdb821699a32b260d124789396bd" alt="Strata Hero - Progressive tool discovery for AI agents" className="w-full rounded-lg" style={{ maxWidth: '100%', height: 'auto' }} width="2533" height="496" data-path="images/concepts/strata_hero.png" />

Strata란 무엇인가요?

Strata는 AI 에이전트가 복잡한 상황에서도 안정적으로 도구를 사용할 수 있도록 안내하는 하나의 MCP 서버로, 한 번에 모든 것을 쏟아내어 압도하는 대신 인간이 도구와 상호작용하는 방식을 고려하여 설계되었으며, 오늘날 AI 에이전트를 괴롭히는 세 가지 주요 문제를 해결합니다.

  • 도구 과부하: 너무 많은 도구가 LLM의 선택 마비를 유발합니다
  • 컨텍스트 과부하: 긴 도구 목록이 토큰 수와 비용을 폭증시킵니다
  • 커버리지 격차: 대부분의 서버가 40~50개의 도구에 머물러 있어 구축할 수 있는 범위가 제한됩니다

웹사이트, API 또는 자체 데이터로 오픈 소스를 통해 Strata를 사용할 수 있습니다!

비디오 튜토리얼

Strata의 작동 방식을 완전히 이해하려면 이 비디오 튜토리얼을 시청하세요.

텍스트 튜토리얼 이 [공유된 Claude 대화](https://claude.ai/share/9b44a192-9f2d-46e2-a875-ef905c457070)를 확인하여 Strata가 실제로 작동하는 모습을 보세요!

1. 서버 카테고리 또는 액션 발견

discover_server_categories_or_actions - 사용자 의도에 따라 관련 카테고리나 액션을 찾습니다. 시맨틱 검색이 아닙니다!

**설명**: **선호되는 시작점**. 사용자 쿼리를 기반으로 사용 가능한 카테고리나 액션을 발견합니다. 서버 전반에서 어떤 액션을 사용할 수 있는지 탐색할 때 이 도구를 먼저 사용해 보세요. 이는 사용 가능한 액션을 탐색하기 위한 기본 진입점이며 다른 검색 방법보다 먼저 사용해야 합니다. 출력은 세부 수준과 세부 정보가 포함된 서버 목록입니다.

세부 수준이 'categories_only'인 경우, 세부 정보는 카테고리 이름 목록만 포함합니다. 다음 단계에서는 get_category_actions 도구를 사용하여 카테고리의 액션을 가져오는 것이 좋습니다.

세부 수준이 'full_details'인 경우, 세부 정보는 액션 세부 정보가 포함된 카테고리 이름 목록입니다. 이는 서버에 액션이 몇 개 없을 때 발생합니다. 다음 단계에서는 execute_action 도구를 사용하여 액션을 실행하는 것이 좋습니다.

세부 수준이 'categories_and_actions'인 경우, 세부 정보는 카테고리 이름과 액션 이름 목록입니다. 이는 외부 도구를 사용할 때 발생합니다. 다음 단계에서는 get_action_details 도구를 사용하여 액션의 세부 정보를 가져오는 것이 좋습니다.

매개변수:

  • user_query (문자열, 필수): 결과를 필터링하기 위한 자연어 사용자 쿼리.
  • server_names (배열, 필수): 카테고리나 액션을 발견할 서버 이름 목록.

2. 카테고리 액션 가져오기

get_category_actions - 지정된 카테고리 내의 모든 액션 이름을 검색합니다.

**설명**: 특정 카테고리 내에서 사용 가능한 API 액션에 대한 포괄적인 개요를 가져옵니다. 특정 서비스 카테고리에서 어떤 액션을 사용할 수 있는지 탐색하거나 카테고리 기능에 대한 자세한 보기를 원할 때 이 도구를 사용하세요. \*\* 중요 \*\*: discover_server_categories 도구에서 서버 카테고리를 가져온 후에만 호출해야 합니다.

매개변수:

  • category_names (배열, 필수): 액션을 가져올 카테고리 목록

3. 액션 세부 정보 가져오기

get_action_details - 특정 액션에 대한 전체 스키마와 매개변수를 가져옵니다.

**설명**: 필수 및 선택적 매개변수를 포함하여 특정 액션에 대한 자세한 정보를 가져옵니다. 카테고리 이름과 액션 이름을 제공해야 합니다. \*\* 중요 \*\*: 이전 도구 호출에서 서버 카테고리를 가져온 후에만 호출해야 합니다.

매개변수:

  • category_name (문자열, 필수): 카테고리 이름
  • action_name (문자열, 필수): 카테고리 내 액션/작업 이름

4. 액션 실행

execute_action - 매개변수를 사용하여 액션을 실행하고 결과를 가져옵니다.

**설명**: 제공된 매개변수로 특정 액션을 실행합니다. 서버 이름, 액션 이름 및 액션 매개변수를 제공해야 합니다. \*\* 중요 \*\*: get_action_details 도구에서 액션 세부 정보를 가져온 후에만 호출해야 합니다.

매개변수:

  • server_name (문자열, 필수): 서버 이름
  • category_name (문자열, 필수): 액션을 실행할 카테고리 이름
  • action_name (문자열, 필수): 실행할 액션/작업 이름
  • path_params (문자열, 선택 사항): 액션의 경로 매개변수를 포함하는 JSON 문자열
  • query_params (문자열, 선택 사항): 액션의 쿼리 매개변수를 포함하는 JSON 문자열
  • body_schema (문자열, 선택 사항, 기본값: "{}"): 액션의 요청 본문을 포함하는 JSON 문자열
  • include_output_fields (배열, 선택 사항): 이전 도구 호출에서 이 액션의 response_schema를 알고 있을 때 강력히 권장됩니다: 응답에 포함할 필드 경로의 배열입니다. 이 필드만 반환됩니다. 중첩 필드에는 점 표기법을 사용하세요 (예: "author.displayName").
  • maximum_output_characters (정수, 선택 사항): 응답에서 반환할 최대 문자 수입니다. 응답이 이 제한을 초과하면 잘립니다. include_output_fields를 이보다 우선하여 사용하세요.

5. 문서 검색

search_documentation - 필요할 때만 관련 정보를 찾습니다.

**설명**: **보조 옵션**: discover_server_categories가 충분한 세부 정보를 제공하지 않거나 특정 서버의 문서 내에서 검색해야 할 때만 이 도구를 사용하세요. 키워드 매칭을 사용하여 카테고리, 작업, 태그 또는 기능별로 서버 액션 문서를 검색합니다. 이는 자연어 검색이 아니며 정확한 키워드와 구문을 일치시킵니다. 관련성 순위가 매겨진 엔드포인트를 반환합니다. 몇 가지 대상 키워드를 사용하여 가장 일치하는 항목을 찾으세요. 일반적인 패턴: 카테고리 이름 ('projects', 'users', 'pipelines'), 액션 ('create', 'delete', 'list', 'get') 또는 조합 ('create user', 'list projects'). 검색 알고리즘은 장황한 설명 필드가 결과를 압도하는 것을 방지하기 위해 스마트 스코어링을 사용합니다.

매개변수:

  • query (문자열, 필수): API 문서 용어와 일치하는 검색 키워드. 모범 사례: (1) 'users', 'projects', 'files'와 같은 리소스 이름을 사용하고, (2) 'user create' 또는 'project delete'와 같이 정확성을 위해 액션을 추가하며, (3) 'how to', 'show me', 'all the'와 같은 군더더기 단어를 피하고 엔드포인트 이름과 설명에 나타나는 핵심 용어에 집중하세요.
  • server_name (문자열, 필수): 검색할 서버 이름.
  • max_results (정수, 선택 사항, 기본값: 10, 최소: 1, 최대: 50): 반환할 결과 수. 기본값: 10

6. 인증 실패 처리

handle_auth_failure - 필요할 때만 인증을 처리합니다.

**설명**: 액션 실행 시 발생하는 인증 실패를 처리합니다. 중요: 이 도구는 execute_action이 특히 인증 문제(401 Unauthorized, 잘못된 자격 증명, 만료된 토큰 등)로 인해 실패할 때만 호출해야 합니다. 인증 상태를 확인하거나 다른 목적으로 이 도구를 호출하지 마세요. 사용법: (1) execute_action이 인증 오류를 반환하면 'get_auth_url'로 이 도구를 호출하여 인증 지침을 가져옵니다. (2) 실패 후 사용자가 인증 데이터를 제공하면 'save_auth_data'로 이 도구를 호출하여 자격 증명을 저장합니다. 실패가 인증 실패가 아닌 경우(예: 404 Not Found, 500 Internal Server Error 등)에는 절대 이 도구를 호출하지 마세요.

매개변수:

  • server_name (문자열, 필수): execute_action 중 인증에 실패한 서버 이름
  • intention (문자열, 필수, 열거형: ["get_auth_url", "save_auth_data"]): execute_action이 인증 오류로 실패할 때 인증 지침을 가져오려면 'get_auth_url'을 사용하세요. 인증 실패 후 사용자가 인증 자격 증명을 제공할 때 'save_auth_data'를 사용하세요.
  • auth_data (객체, 선택 사항): 인증 실패 후 사용자가 제공한 인증 데이터 (예: {"token": "...", "api_key": "..."}). 인증 실패를 해결할 때 'save_auth_data' 의도로만 사용됩니다.

평가

Strata는 실제 결과를 제공합니다.

  • MCPMark 벤치마크: 공식 GitHub 서버 대비 +15.2% 더 높은 pass@1 비율과 공식 Notion 서버 대비 +13.4% 더 높은 pass@1 비율을 달성했습니다. (출처)
  • 인간 평가: 2천 개 이상의 실제 쿼리 평가 세트에서 83% 이상의 정확도를 기록했습니다

다음 단계

몇 분 만에 첫 번째 Strata 서버를 만드세요 전체 Strata API 살펴보기