Services API を使用してエージェント レジストリにエージェントまたは Model Context Protocol(MCP)サーバーを明示的に登録する場合は、その機能を記述する構成ファイルを提供する必要があります。
エージェント レジストリは、アップロードされたファイルを外部のオープンソース仕様に照らして検証してから、インデックスを作成してエージェントのスキルとツールを検出します。
このドキュメントでは、エージェント カードと MCP ツールの仕様に必要な JSON 構造の例とリンクを示します。
エージェント カードのスキーマ
A2A 準拠のエージェントを登録する場合、agent-card.json ペイロードは
公式の
A2A 仕様に準拠している必要があります。
この仕様ファイルの最大ファイルサイズは 10 KB です。
skills
配列フィールドはキーワード検索インデックスをサポートしています。
{
"name": "string",
"description": "string",
"version": "string",
"protocolVersion": "string",
"url": "string",
"skills": [
{
"id": "string",
"name": "string",
"description": "string",
"tags": [
"string"
],
"examples": [
"string"
]
}
],
"capabilities": {
"streaming": false,
"pushNotifications": false,
"stateTransitionHistory": false
},
"defaultInputModes": [
"text/plain"
],
"defaultOutputModes": [
"text/plain"
]
}
フィールドの定義
name: エージェントの人が読める形式の名前。description: エージェントの目的の概要。version: エージェントのバージョン(1.0.2など)。protocolVersion: エージェントが実装する Agent2Agent プロトコルのバージョン(0.3.0など)。url: エージェントにアクセスできるエンドポイント URL。capabilities: 省略可。エージェントがサポートするオペレーション機能(streaming、pushNotifications、stateTransitionHistoryなど)を指定するオブジェクト。defaultInputModes: 省略可。エージェントが入力として受け入れるデフォルトの MIME タイプを定義する文字列の配列(["text/plain"]など)。defaultOutputModes: 省略可。エージェントが出力として生成するデフォルトの MIME タイプを定義する文字列の配列(["text/plain"]など)。skills: エージェントが持つ機能の配列。id: スキルの固有のプログラム識別子。name: スキルの人が読める形式の名前。description: スキルの機能の詳細な説明。tags: スキルの分類に使用されるキーワード文字列の配列。examples: このスキルが処理するプロンプトまたはシナリオの例の配列。
MCP ツールのスキーマ
MCP サーバーを登録するときは、toolspec.json ペイロードに、
MCP Tool オブジェクト スキーマに準拠するツールのリスト
を含める必要があります。
想定されるペイロードは、標準の MCP ツールまたはリスト リクエストによって返されるものとまったく同じ、単一の tools フィールドを持つ JSON オブジェクトです。この仕様ファイルの最大ファイルサイズは 10 KB です。
{
"tools": [
{
"name": "string",
"description": "string",
"inputSchema": {
"type": "object",
"properties": {}
},
"annotations": {
"title": "string",
"readOnlyHint": false,
"destructiveHint": true,
"idempotentHint": false,
"openWorldHint": true
}
}
]
}
フィールドの定義
tools: サーバーによって提供されるツールの配列。name: ツールのプログラム識別子。description: ツールの目的を人が読める形式で説明したものです。inputSchema: ツールの想定されるパラメータを定義する JSON スキーマ オブジェクト。annotations: オーケストレータ エージェントがツールとやり取りする方法をガイドする動作のヒント。title: ツールの人が読める形式のタイトル。readOnlyHint:trueの場合、ツールはデータの取得のみを行い、環境を変更しません。デフォルトはfalseです。destructiveHint:trueの場合、ツールは永続的な変更を引き起こす可能性のあるオペレーションを実行します。デフォルトはtrueです。idempotentHint:trueの場合、ツールを繰り返し呼び出しても追加の効果はありません。デフォルトはfalseです。openWorldHint:trueの場合、ツールは外部システムとやり取りします。デフォルトはtrueです。