{
  "$schema": "https://modelcontextprotocol.io/schemas/server-card.json",
  "serverInfo": {
    "name": "upcbay-mcp-server",
    "title": "UPCBay Barcode MCP Server",
    "version": "1.0.0",
    "description": "MCP server providing barcode validation, GS1 check digit calculations, UPC/EAN conversion, and pricing for UPCBay.",
    "website": "https://upcbay.com"
  },
  "transport": {
    "type": "sse",
    "endpoint": "https://upcbay.com/api/mcp/sse"
  },
  "capabilities": {
    "tools": {
      "listChanged": true
    },
    "resources": {
      "subscribe": false,
      "listChanged": true
    },
    "prompts": {
      "listChanged": false
    }
  },
  "tools": [
    {
      "name": "lookup_barcode",
      "description": "Look up details and verify format of a UPC-A (12 digits) or EAN-13 (13 digits) barcode.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "barcode": {
            "type": "string",
            "description": "12-digit UPC or 13-digit EAN code"
          }
        },
        "required": [
          "barcode"
        ]
      }
    },
    {
      "name": "calculate_check_digit",
      "description": "Calculate the GS1 Modulo 10 check digit for an 11-digit UPC prefix or 12-digit EAN prefix.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "prefix": {
            "type": "string",
            "description": "11 digits for UPC or 12 digits for EAN"
          }
        },
        "required": [
          "prefix"
        ]
      }
    },
    {
      "name": "convert_upc_to_ean",
      "description": "Convert a 12-digit UPC-A into a 13-digit EAN-13 code (and vice versa).",
      "inputSchema": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "12-digit UPC or 13-digit EAN"
          },
          "targetFormat": {
            "type": "string",
            "enum": [
              "ean13",
              "upca"
            ],
            "description": "Target barcode format"
          }
        },
        "required": [
          "code"
        ]
      }
    },
    {
      "name": "get_pricing_packages",
      "description": "Get current pricing packages, quantities, and discount tiers for authentic UPC/EAN barcodes.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "quantity": {
            "type": "number",
            "description": "Optional quantity of barcodes desired (e.g. 1, 5, 10, 25, 50, 100, 500, 1000)"
          }
        }
      }
    }
  ]
}
