Klavis Strata

公式

あらゆる規模でAIエージェントがツールを確実に使用するためのMCPサーバー

Klavis Strata MCPで何ができますか?

  • サーバー間で利用可能なアクションを発見する — AIに実行したい内容を説明して関連ツールを見つけてもらい、discover_server_categories_or_actionsを優先的な開始点として使用します。
  • カテゴリ内のアクションを探索する — 利用可能なカテゴリを発見した後、get_category_actionsを使用して特定のサービスカテゴリ内の全アクション名を取得します。
  • アクションのパラメータスキーマを取得する — アクションを実行する前に、get_action_detailsを使用して特定のアクションの完全な入力詳細を取得します。
  • APIアクションを実行するexecute_actionを使用して、必要なパラメータを指定して発見したアクションを実行し、必要に応じて出力フィールドをフィルタリングして応答サイズを削減します。
  • キーワードでサーバードキュメントを検索する — カテゴリ発見でより精度が必要な場合、「create user」や「list projects」などの対象用語を指定してsearch_documentationを使用します。
  • 認証エラーを解決する — アクションが401エラーで失敗した場合、handle_auth_failureを呼び出して認証手順を取得するか、認証情報を保存します。

ドキュメント

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を探索