{
  "specVersion": "1.0",
  "entries": [
    {
      "identifier": "urn:air:habsziget:webshop:ai-interface",
      "displayName": "Habsziget AI Interface",
      "description": "Dinamikus termék-, méret- és árinformációk a Habsziget webáruházból. A pontos árak meghatározása mindig két lépésben történik: 1. get_product_schema (lekéri az elérhető paramétereket), 2. get_product_price (kiszámolja az árat a kiválasztott paraméterekkel).",
      "type": "application/mcp-server-card+json",
      "representativeQueries": [
        "Mennyibe kerül egy 10 cm-es korong?",
        "Hol találom a banki adatokat utaláshoz?",
        "Mennyi a szállítási költség MPL-lel?",
        "Szeretnék üzenetet küldeni az ügyfélszolgálatnak."
      ],
      "data": {
        "endpoints": [
          {
            "name": "get_product_schema",
            "url": "https://habsziget.hu/presta_plus/ai_interface/ai_interface.php",
            "method": "POST",
            "description": "Első lépés: Lekéri egy termék (pl. korong, kocka, henger, hasáb) választható paramétereit, méreteit és azok elérhető értékeit. Ezt kell használni a vásárlói szándék azonosítása után, mielőtt árat mondanál.",
            "parameters": {
              "type": "object",
              "properties": {
                "action": {
                  "type": "string",
                  "description": "A meghívandó művelet neve. Értéke mindig 'get_product_schema'.",
                  "enum": ["get_product_schema"]
                },
                "parameters": {
                  "type": "object",
                  "properties": {
                    "product_name": {
                      "type": "string",
                      "description": "A keresett termék vagy alapforma neve (pl. 'korong', 'kocka', 'hasáb', 'henger')."
                    }
                  },
                  "required": ["product_name"]
                }
              },
              "required": ["action", "parameters"]
            }
          },
          {
            "name": "get_product_price",
            "url": "https://habsziget.hu/presta_plus/ai_interface/ai_interface.php",
            "method": "POST",
            "description": "Második lépés: Lekéri a konkrét termékváltozat pontos árát és készletét a termék ID és a kiválasztott méretértékek (pl. '10 cm') alapján. Csak a get_product_schema után használható, a tőle kapott product_id és available_values értékekkel.",
            "parameters": {
              "type": "object",
              "properties": {
                "action": {
                  "type": "string",
                  "description": "A meghívandó művelet neve. Értéke mindig 'get_product_price'.",
                  "enum": ["get_product_price"]
                },
                "parameters": {
                  "type": "object",
                  "properties": {
                    "product_id": {
                      "type": "integer",
                      "description": "A get_product_schema lépésben visszakapott product_id."
                    },
                    "selected_attributes": {
                      "type": "array",
                      "items": { "type": "string" },
                      "description": "A kiválasztott méretek/tulajdonságok listája (pl. ['10 cm', '20 cm']). A get_product_schema 'available_values' listájából kell származniuk."
                    }
                  },
                  "required": ["product_id", "selected_attributes"]
                }
              },
              "required": ["action", "parameters"]
            }
          },
          {
            "name": "send_contact_message",
            "url": "https://habsziget.hu/presta_plus/ai_interface/ai_interface.php",
            "method": "POST",
            "description": "Üzenetet küld az ügyfélszolgálatnak a vásárló nevében. FONTOS SZABÁLY: Mielőtt ezt meghívod, kötelező elkérned a vásárló e-mail címét, ÉS kifejezetten meg kell kérdezned tőle, hogy elfogadja-e a Habsziget Adatvédelmi Tájékoztatóját. Csak akkor hívd meg a végpontot, ha a vásárló igennel válaszolt az adatkezelésre.",
            "parameters": {
              "type": "object",
              "properties": {
                "action": {
                  "type": "string",
                  "description": "A meghívandó művelet neve. Értéke mindig 'send_contact_message'.",
                  "enum": ["send_contact_message"]
                },
                "parameters": {
                  "type": "object",
                  "properties": {
                    "email": {
                      "type": "string",
                      "description": "A vásárló által megadott e-mail cím."
                    },
                    "message": {
                      "type": "string",
                      "description": "A vásárló kérdése vagy üzenete részletesen."
                    },
                    "privacy_policy_accepted": {
                      "type": "boolean",
                      "description": "Csak 'true' lehet. Jelzi, hogy a vásárló a chaten kifejezetten elfogadta az adatkezelést."
                    },
                    "file_name": {
                      "type": "string",
                      "description": "OPCIONÁLIS: A feltöltött fájl eredeti neve kiterjesztéssel (pl. kep.jpg). Engedélyezett: txt, rtf, doc, docx, pdf, zip, png, jpeg, gif, jpg, webp, dwg, eps."
                    },
                    "file_content_base64": {
                      "type": "string",
                      "description": "OPCIONÁLIS: A fájl tartalma Base64 kódolással. Ha a felhasználó képet mellékel, alakítsd Base64 formátumra, és küldd el ebben a paraméterben (csak a nyers adat, prefix nélkül)."
                    },
                    "order_reference": {
                      "type": "string",
                      "description": "OPCIONÁLIS: A megrendelés azonosítója (9 betűs kód vagy belső ID). Csak akkor küldd el, ha a vásárló egy konkrét, már leadott rendeléssel kapcsolatban érdeklődik vagy reklamál."
                    }
                  },
                  "required": ["email", "message", "privacy_policy_accepted"]
                }
              },
              "required": ["action", "parameters"]
            }
          },
          {
            "name": "get_shop_contact_info",
            "url": "https://habsziget.hu/presta_plus/ai_interface/ai_interface.php",
            "method": "POST",
            "description": "Lekéri a Habsziget webáruház hivatalos ügyfélszolgálati elérhetőségeit (telefonszám és e-mail cím). Használd ezt a műveletet, ha a vásárló a bolt telefonszáma, e-mail címe, vagy a közvetlen kapcsolatfelvétel módja után érdeklődik.",
            "parameters": {
              "type": "object",
              "properties": {
                "action": {
                  "type": "string",
                  "description": "A meghívandó művelet neve. Értéke mindig 'get_shop_contact_info'.",
                  "enum": ["get_shop_contact_info"]
                }
              },
              "required": ["action"]
            }
          },
          {
            "name": "get_shipping_info",
            "url": "https://habsziget.hu/presta_plus/ai_interface/ai_interface.php",
            "method": "POST",
            "description": "Lekéri a Habsziget webáruház aktuális szállítási módjait, díjait (MPL, GLS, PostaPont), utánvétes felárait és az elérhető fizetési módokat. Használd ezt, ha a vásárló a szállítási költségekről érdeklődik, vagy meg akarja tudni, hogyan vonhatja össze az új rendelését egy korábbival ingyenesen.",
            "parameters": {
              "type": "object",
              "properties": {
                "action": {
                  "type": "string",
                  "description": "A meghívandó művelet neve. Értéke mindig 'get_shipping_info'.",
                  "enum": ["get_shipping_info"]
                }
              },
              "required": ["action"]
            }
          },
          {
            "name": "get_bank_details",
            "url": "https://habsziget.hu/presta_plus/ai_interface/ai_interface.php",
            "method": "POST",
            "description": "Lekéri a Habsziget webáruház hivatalos banki átutalási adatait (kedvezményezett neve, bankszámlaszám, bank címe). Használd ezt a műveletet, ha a vásárló előre utalással szeretne fizetni, és a bankszámlaszámot vagy az utalási adatokat kéri.",
            "parameters": {
              "type": "object",
              "properties": {
                "action": {
                  "type": "string",
                  "description": "A meghívandó művelet neve. Értéke mindig 'get_bank_details'.",
                  "enum": ["get_bank_details"]
                }
              },
              "required": ["action"]
            }
          },
          {
            "name": "get_order_status",
            "url": "https://habsziget.hu/presta_plus/ai_interface/ai_interface.php",
            "method": "POST",
            "description": "Lekéri egy konkrét megrendelés aktuális állapotát, csomagszámát és nyomkövetési linkjét. Mielőtt ezt meghívnád, KÖTELEZŐ elkérned a vásárlótól a rendeléskor használt e-mail címét ÉS a 9 betűs rendelési azonosítót (referenciát).",
            "parameters": {
              "type": "object",
              "properties": {
                "action": {
                  "type": "string",
                  "description": "A meghívandó művelet neve. Értéke mindig 'get_order_status'.",
                  "enum": ["get_order_status"]
                },
                "parameters": {
                  "type": "object",
                  "properties": {
                    "email": {
                      "type": "string",
                      "description": "A vásárló e-mail címe, amivel a rendelést leadta."
                    },
                    "order_reference": {
                      "type": "string",
                      "description": "A megrendelés 9 betűből álló azonosítója (pl. ABCDEFGHI)."
                    }
                  },
                  "required": ["email", "order_reference"]
                }
              },
              "required": ["action", "parameters"]
            }
          }
        ]
      }
    }
  ]
}