Saat mendaftarkan agen atau server Model Context Protocol (MCP) secara eksplisit dengan Agent Registry menggunakan API Layanan, Anda harus memberikan file konfigurasi yang menjelaskan kemampuannya.
Agent Registry memvalidasi file yang Anda upload berdasarkan spesifikasi open source eksternal sebelum mengindeksnya untuk menemukan alat dan kemampuan agen.
Dokumen ini memberikan contoh dan link ke struktur JSON yang diharapkan untuk spesifikasi alat MCP dan Kartu Agen.
Skema Kartu Agen
Saat mendaftarkan agen yang kompatibel dengan A2A, payload agent-card.json Anda harus
mematuhi
spesifikasi Agent2Agent (A2A) resmi.
Ukuran file maksimum untuk file spesifikasi adalah 10 KB.
Kolom array skills mendukung indeks penelusuran kata kunci.
Agent Registry mendukung versi 0.3 dan 1.0 dari
Kartu Agen A2A.
Skema versi 1.0 (direkomendasikan)
Untuk Kartu Agen A2A versi 1.0, payload harus mematuhi
spesifikasi v1.0 A2A resmi. Dalam spesifikasi ini, Anda mendeklarasikan endpoint
transportasi dalam array supportedInterfaces.
{
"name": "string",
"description": "string",
"version": "string",
"supportedInterfaces": [
{
"url": "string",
"protocolBinding": "string",
"protocolVersion": "string",
"tenant": "string"
}
],
"capabilities": {
"streaming": false,
"pushNotifications": false,
"extendedAgentCard": false
},
"defaultInputModes": [
"text/plain"
],
"defaultOutputModes": [
"text/plain"
],
"skills": [
{
"id": "string",
"name": "string",
"description": "string",
"tags": [
"string"
],
"examples": [
"string"
]
}
]
}
Definisi kolom (Versi 1.0)
name: Nama agen yang dapat dibaca manusia.description: Ringkasan tingkat tinggi tentang tujuan agen.version: Versi agen, misalnya,1.0.0.supportedInterfaces: Array kombinasi URL dan transport yang didukung. Setiap antarmuka berisi:url: URL endpoint tempat antarmuka ini dijangkau.protocolBinding: Pengikatan protokol yang didukung di URL ini, misalnya,HTTP+JSON,JSONRPC, atauGRPC.protocolVersion: Versi protokol A2A yang diekspos oleh antarmuka ini, misalnya,1.0.0.tenant: Opsional. ID pemilik agen.
capabilities: Opsional. Menentukan kemampuan operasional yang didukung seperti berikut:extensions: Opsional. Array ekstensi protokol.streaming: Opsional. Boolean yang menunjukkan apakah agen mendukung respons streaming.pushNotifications: Opsional. Boolean yang menunjukkan apakah notifikasi push didukung untuk update tugas.extendedAgentCard: Opsional. Boolean yang menunjukkan apakah agen menyediakan Kartu Agen yang diperluas saat diautentikasi.
defaultInputModes: Opsional. Array jenis MIME yang diterima sebagai input.defaultOutputModes: Opsional. Array jenis MIME yang dihasilkan sebagai output.skills: Array kemampuan yang dimiliki agen:id: ID terprogram unik untuk skill.name: Nama yang mudah dibaca manusia untuk skill.description: Penjelasan mendetail tentang fungsi skill.tags: Array string kata kunci yang digunakan untuk mengategorikan skill.examples: Array contoh perintah atau skenario.
Skema Versi 0.3
Untuk Kartu Agen A2A versi 0.3, payload harus mematuhi
spesifikasi v0.3.0. Dalam spesifikasi ini, URL inferensi
utama dan versi protokol dideklarasikan sebagai kolom tingkat teratas.
{
"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"
]
}
Definisi kolom (Versi 0.3)
name: Nama agen yang dapat dibaca manusia.description: Ringkasan tingkat tinggi tentang tujuan agen.version: Versi agen, misalnya,1.0.2.protocolVersion: Versi A2A protocol yang diimplementasikan agen. Karena versi 1.0 menghentikan penggunaan kolom tingkat teratas ini, nilai harus berupa0.3atau versi patch0.3apa pun, seperti0.3.1, untuk skema ini.url: URL endpoint tempat agen dapat dijangkau.capabilities: Opsional. Menentukan kemampuan operasional yang didukung, sepertistreaming,pushNotifications, ataustateTransitionHistory.defaultInputModes: Opsional. Array jenis MIME yang diterima sebagai input.defaultOutputModes: Opsional. Array jenis MIME yang dihasilkan sebagai output.skills: Array kemampuan yang dimiliki agen:id: ID terprogram unik untuk skill.name: Nama yang mudah dibaca manusia untuk skill.description: Penjelasan mendetail tentang fungsi skill.tags: Array string kata kunci yang digunakan untuk mengategorikan skill.examples: Array contoh perintah atau skenario.
Skema alat MCP
Saat mendaftarkan server MCP, payload toolspec.json Anda harus menyertakan daftar alat yang mematuhi
skema objek Tool MCP.
Payload yang diharapkan adalah objek JSON dengan satu kolom tools, persis seperti yang ditampilkan oleh
alat MCP standar atau permintaan daftar.
Ukuran file maksimum untuk file spesifikasi ini adalah 10 KB.
{
"tools": [
{
"name": "string",
"description": "string",
"inputSchema": {
"type": "object",
"properties": {}
},
"annotations": {
"title": "string",
"readOnlyHint": false,
"destructiveHint": true,
"idempotentHint": false,
"openWorldHint": true
}
}
]
}
Definisi kolom
tools: Array alat yang disediakan oleh server:name: ID terprogram untuk alat.description: Penjelasan tujuan alat yang dapat dibaca manusia.inputSchema: Objek Skema JSON yang menentukan parameter yang diharapkan untuk alat.annotations: Petunjuk perilaku yang memandu cara agen pengelola berinteraksi dengan alat:title: Judul yang dapat dibaca manusia untuk alat.readOnlyHint: Jikatrue, alat hanya mengambil data dan tidak mengubah lingkungannya. Jumlah defaultnya adalahfalsedestructiveHint: Jikatrue, alat ini melakukan operasi yang dapat menyebabkan perubahan permanen. Jumlah defaultnya adalahtrueidempotentHint: Jikatrue, memanggil alat berulang kali tidak akan berpengaruh tambahan. Jumlah defaultnya adalahfalseopenWorldHint: Jikatrue, alat berinteraksi dengan sistem eksternal. Jumlah defaultnya adalahtrue