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エージェントを悩ませる3つの主要な問題を解決します。

  • ツール過多: ツールが多すぎるとLLMが選択に麻痺する
  • コンテキスト過多: 長いツールリストはトークン数とコストを膨張させる
  • カバレッジ不足: ほとんどのサーバーは40~50のツールで限界に達し、構築できる範囲が制限される

Strataは、ウェブサイトAPI、さらにはオープンソースでご自身のデータ上でご利用いただけます!

ビデオチュートリアル

Strataの仕組みを完全に理解するには、このビデオチュートリアルをご覧ください。

テキストチュートリアル 実際に動作するStrataを確認するには、この[共有Claude会話](https://claude.ai/share/9b44a192-9f2d-46e2-a875-ef905c457070)をご覧ください!

1. サーバーカテゴリまたはアクションの発見

discover_server_categories_or_actions - ユーザーの意図に基づいて関連するカテゴリやアクションを見つけます。セマンティック検索ではありません!

**説明**: **推奨される開始点**。ユーザークエリに基づいて利用可能なカテゴリまたはアクションを発見します。サーバー全体で利用可能なアクションを探索する際は、まずこのツールを試してください。これは利用可能なアクションを探索するための主要なエントリポイントであり、他の検索方法よりも先に使用する必要があります。出力は、詳細レベルと詳細情報を含むサーバーのリストになります。

詳細レベルが 'categories_only' の場合、詳細はカテゴリ名のみのリストになります。次のステップでは、get_category_actions ツールを使用してカテゴリのアクションを取得することを推奨します。

詳細レベルが 'full_details' の場合、詳細はカテゴリ名とそのアクションの詳細を含むリストになります。これはサーバーのアクション数が少ない場合に発生します。次のステップでは、execute_action ツールを使用してアクションを実行することを推奨します。

詳細レベルが 'categories_and_actions' の場合、詳細はカテゴリ名とアクション名のリストになります。これは外部ツールを使用する場合に発生します。次のステップでは、get_action_details ツールを使用してアクションの詳細を取得することを推奨します。

パラメータ:

  • user_query (string, 必須): 結果をフィルタリングするための自然言語のユーザークエリ。
  • server_names (array, 必須): カテゴリまたはアクションを発見するサーバー名のリスト。

2. カテゴリアクションの取得

get_category_actions - 指定されたカテゴリ内のすべてのアクション名を取得します。

**説明**: 特定のカテゴリ内で利用可能なAPIアクションの包括的な概要を取得します。特定のサービスカテゴリで利用可能なアクションを探索したり、カテゴリの機能の詳細なビューを取得したい場合にこのツールを使用します。**重要**: discover_server_categories ツールからサーバーカテゴリを取得した後にのみ呼び出す必要があります。

パラメータ:

  • category_names (array, 必須): アクションを取得するカテゴリのリスト

3. アクション詳細の取得

get_action_details - 特定のアクションの完全なスキーマとパラメータを取得します。

**説明**: 必須およびオプションのパラメータを含む、特定のアクションに関する詳細情報を取得します。カテゴリ名とアクション名を指定する必要があります。**重要**: 以前のツール呼び出しからサーバーカテゴリを取得した後にのみ呼び出す必要があります。

パラメータ:

  • category_name (string, 必須): カテゴリの名前
  • action_name (string, 必須): カテゴリ内のアクション/操作の名前

4. アクションの実行

execute_action - パラメータを指定してアクションを実行し、結果を取得します。

**説明**: 提供されたパラメータで特定のアクションを実行します。サーバー名、アクション名、アクションパラメータを指定する必要があります。**重要**: get_action_details ツールからアクションの詳細を取得した後にのみ呼び出す必要があります。

パラメータ:

  • server_name (string, 必須): サーバーの名前
  • category_name (string, 必須): アクションを実行するカテゴリの名前
  • action_name (string, 必須): 実行するアクション/操作の名前
  • path_params (string, オプション): アクションのパスパラメータを含むJSON文字列
  • query_params (string, オプション): アクションのクエリパラメータを含むJSON文字列
  • body_schema (string, オプション, デフォルト: "{}"): アクションのリクエストボディを含むJSON文字列
  • include_output_fields (array, オプション): 以前のツール呼び出しからこのアクションのresponse_schemaがわかっている場合に強く推奨されます: レスポンスに含めるフィールドパスの配列。これらのフィールドのみが返されます。ネストされたフィールドにはドット表記を使用します (例: "author.displayName")。
  • maximum_output_characters (integer, オプション): オプション: レスポンスで返す最大文字数。レスポンスがこの制限を超えると切り捨てられます。include_output_fieldsをこれよりも優先してください。

5. ドキュメントの検索

search_documentation - 必要な場合にのみ関連情報を見つけます。

**説明**: **セカンダリオプション**: discover_server_categoriesで十分な詳細が得られない場合、または特定のサーバーのドキュメント内を検索する必要がある場合にのみ、このツールを使用します。キーワードマッチングを使用して、カテゴリ、操作、タグ、または機能別にサーバーアクションのドキュメントを検索します。これは自然言語検索ではなく、正確なキーワードやフレーズに一致します。関連性でランク付けされたエンドポイントを返します。最適な一致を見つけるには、いくつかの対象を絞ったキーワードを使用します。一般的なパターン: カテゴリ名 ('projects', 'users', 'pipelines')、アクション ('create', 'delete', 'list', 'get')、または組み合わせ ('create user', 'list projects')。検索アルゴリズムはスマートスコアリングを使用して、冗長な説明フィールドが結果を圧倒するのを防ぎます。

パラメータ:

  • query (string, 必須): APIドキュメントの用語に一致する検索キーワード。ベストプラクティス: (1) 'users'、'projects'、'files' などのリソース名を使用する、(2) 'user create' や 'project delete' のように精度を高めるためにアクションを追加する、(3) 'how to'、'show me'、'all the' などのフィラーワードを避け、エンドポイント名や説明に現れる中核的な用語に焦点を当てる。
  • server_name (string, 必須): 検索対象のサーバー名。
  • max_results (integer, オプション, デフォルト: 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 (string, 必須): execute_action中に認証に失敗したサーバーの名前
  • intention (string, 必須, 列挙型: ["get_auth_url", "save_auth_data"]): execute_actionが認証エラーで失敗した場合に認証手順を取得するには 'get_auth_url' を使用します。認証失敗後にユーザーが認証情報を提供した場合に認証情報を保存するには 'save_auth_data' を使用します。
  • auth_data (object, オプション): 認証失敗後にユーザーが提供する認証データ (例: {"token": "...", "api_key": "..."})。認証失敗を解決する際に 'save_auth_data' インテントでのみ使用されます。

評価

Strataは実際の成果をもたらします。

  • MCPMarkベンチマーク: 公式GitHubサーバーと比較して**+15.2%高いpass@1率**、公式Notionサーバーと比較して**+13.4%高いpass@1率**を達成。(ソース)
  • 人間による評価: 2,000件を超える実世界のクエリ評価セットで83%以上の精度を達成

次のステップ

数分で最初のStrataサーバーを作成 完全なStrata APIを探索