Klavis Strata

공식

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

Klavis Strata MCP(으)로 무엇을 할 수 있나요?

  • 의도에 따른 관련 도구 발견 — 자연어 쿼리를 사용하여 discover_server_categories_or_actions로 서버 전반의 일치하는 카테고리나 작업을 찾도록 어시스턴트에게 요청합니다.
  • 카테고리 내 작업 탐색 — get_category_actions를 통해 특정 서비스 카테고리의 모든 작업 이름 목록을 요청합니다.
  • 작업 스키마 검사 — get_action_details로 카테고리와 작업 이름을 제공하여 특정 작업의 전체 매개변수 세부 정보를 얻습니다.
  • API 작업 실행 — execute_action을 사용하여 경로, 쿼리 또는 본문 매개변수로 서버 작업을 실행하고 선택적으로 출력 필드를 필터링합니다.
  • 서버 문서 검색 — search_documentation을 사용하여 서버 내에서 키워드 기반 문서 조회를 요청해 관련 엔드포인트를 찾습니다.
  • 인증 실패 해결 — handle_auth_failure로 인증 URL을 검색하거나 사용자가 제공한 자격 증명을 저장하여 401 오류를 처리합니다.

문서

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가 어떻게 작동하는지 완전히 이해하려면 이 비디오 튜토리얼을 시청하세요:

텍스트 튜토리얼

팁

Strata가 실제로 작동하는 모습을 보려면 이 공유된 Claude 대화를 확인하세요!

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 (문자열, 필수, enum: ["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,000개 이상의 실제 쿼리 평가 세트에서 83% 이상의 정확도 달성

다음 단계

몇 분 안에 첫 번째 Strata 서버 만들기 전체 Strata API 살펴보기

이 문서는 개발자 문서 플랫폼인 Mintlify에서 구축 및 호스팅됩니다.