Skema JSON

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 keterampilan dan alat 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 A2A resmi. Kolom array skills mendukung indeks penelusuran kata kunci.

{
  "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

  • name: Nama agen yang dapat dibaca manusia.
  • description: Ringkasan tingkat tinggi tentang tujuan agen.
  • version: Versi agen, misalnya, 1.0.2.
  • protocolVersion: Versi protokol Agent2Agent yang diterapkan agen, misalnya, 0.3.0.
  • url: URL endpoint tempat agen dapat dijangkau.
  • capabilities: Opsional. Objek yang menentukan kemampuan operasional yang didukung agen, seperti streaming, pushNotifications, atau stateTransitionHistory.
  • defaultInputModes: Opsional. Array string yang menentukan jenis MIME default yang diterima agen sebagai input, misalnya, ["text/plain"].
  • defaultOutputModes: Opsional. Array string yang menentukan jenis MIME default yang dihasilkan agen sebagai output, misalnya, ["text/plain"].
  • skills: Array kemampuan yang dimiliki agen:

    • id: ID terprogram unik untuk skill.
    • name: Nama yang mudah dibaca untuk skill.
    • description: Penjelasan mendetail tentang fungsi skill.
    • tags: Array string kata kunci yang digunakan untuk mengategorikan skill.
    • examples: Array contoh perintah atau skenario yang ditangani skill ini.

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.

{
  "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: Jika true, alat hanya mengambil data dan tidak mengubah lingkungannya. Jumlah defaultnya adalah false
      • destructiveHint: Jika true, alat ini melakukan operasi yang dapat menyebabkan perubahan permanen. Jumlah defaultnya adalah true
      • idempotentHint: Jika true, memanggil alat berulang kali tidak akan berpengaruh tambahan. Jumlah defaultnya adalah false
      • openWorldHint: Jika true, alat berinteraksi dengan sistem eksternal. Jumlah defaultnya adalah true