{
  "$schema": "https://static.modelcontextprotocol.io/schemas/mcp-server-card/v1.json",
  "version": "1.0",
  "protocolVersion": "2025-06-18",
  "serverInfo": {
    "name": "exxit-catalogo",
    "title": "Exxit: catálogo de productos",
    "version": "1.0.0"
  },
  "description": "Catálogo de Exxit de solo lectura: buscar productos, ver fichas con precio final con IVA y cuotas, y listar categorías. No compra ni paga.",
  "iconUrl": "https://exxit.com.ar/icon.png",
  "documentationUrl": "https://exxit.com.ar/ayuda/agentes",
  "transport": {
    "type": "streamable-http",
    "endpoint": "https://exxit.com.ar/api/mcp"
  },
  "capabilities": {
    "tools": {
      "listChanged": false
    }
  },
  "authentication": {
    "required": false,
    "schemes": []
  },
  "instructions": "Herramientas de solo lectura. El pago y la finalización de la compra los hace siempre la persona en el sitio.",
  "tools": [
    {
      "name": "buscar_productos",
      "title": "Buscar productos",
      "description": "Busca productos del catálogo de Exxit (hardware, PCs armadas, notebooks, monitores, periféricos). Devuelve id, nombre, marca, precio en pesos (el precio de lista que muestran los listados), si hay stock y la URL de la ficha. Usá ver_producto para el detalle (precio especial, cuotas y especificaciones).",
      "inputSchema": {
        "type": "object",
        "properties": {
          "texto": {
            "type": "string",
            "maxLength": 80,
            "description": "Qué buscar: nombre, modelo, marca o código. Ej.: \"rtx 4060\", \"ryzen 5 5600\"."
          },
          "categoria": {
            "type": "string",
            "maxLength": 60,
            "description": "Nombre o slug de categoría (ver listar_categorias). Ej.: \"Placas de video\", \"notebooks\"."
          },
          "marca": {
            "type": "string",
            "maxLength": 60,
            "description": "Nombre del fabricante (ver listar_marcas). Ej.: \"Kingston\"."
          },
          "precio_max": {
            "type": "number",
            "minimum": 0,
            "maximum": 1000000000,
            "description": "Precio máximo en pesos argentinos (ARS)."
          },
          "solo_con_stock": {
            "type": "boolean",
            "default": true,
            "description": "Solo productos con stock disponible (por defecto sí)."
          },
          "orden": {
            "type": "string",
            "enum": [
              "relevancia",
              "menor_precio",
              "mayor_precio",
              "nombre"
            ],
            "default": "relevancia",
            "description": "Orden de los resultados."
          },
          "limite": {
            "type": "integer",
            "minimum": 1,
            "maximum": 20,
            "default": 10,
            "description": "Cantidad máxima de resultados."
          }
        },
        "additionalProperties": false
      },
      "annotations": {
        "title": "Buscar productos",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      }
    },
    {
      "name": "ver_producto",
      "title": "Ver producto",
      "description": "Devuelve la ficha de un producto por id (número) o por su URL/slug (/prod/<id>/<nombre>): nombre, marca, precio final con IVA (el de transferencia) y precio sin impuestos nacionales como los muestra la ficha, cuotas, disponibilidad, garantía, especificaciones y URL.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100000000,
            "description": "Id del producto (lo devuelve buscar_productos)."
          },
          "slug": {
            "type": "string",
            "maxLength": 300,
            "description": "URL o slug de la ficha, ej. \"/prod/123/nombre-del-producto\"."
          }
        },
        "additionalProperties": false
      },
      "annotations": {
        "title": "Ver producto",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      }
    },
    {
      "name": "listar_categorias",
      "title": "Listar categorías",
      "description": "Lista las categorías del catálogo que tienen productos activos, con su URL. Sirve para filtrar buscar_productos.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "annotations": {
        "title": "Listar categorías",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      }
    }
  ],
  "resources": [],
  "prompts": []
}