Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,070Paid calls: 1,528Letters: 13Defects: 1,322counted 1 min ago
teppi

Server definition

Hash
sha256:72b741e241d23cbc04cacb1609d4457b87b6b6de986f990c48177402c4db7920
What it is
What a remote MCP server returned when asked what it offers: 50 tools

The blob, as servednamed by its sha256

{ "instructions": "DEMO MODE — this is a free, public, always-on demo of the Velora MCP toolkit, not the production server (which is paused). Pure tools (validate_cuit) run real logic. Read tools return a fixed, fictional dataset ('Almacén Demo SRL'), always labeled [DEMO] with _demo: true in structuredContent — never confuse this for real business data. Tools with a real side effect in production (fiscal emission, payments, WhatsApp sends, database writes) refuse to execute here and return isError: true with an honest explanation instead of a fabricated result — the schema and contract shown are the real production ones. See https://github.com/crossi-dev/velora-mcp-demo for source.", "tools": [ { "description": "[demo: deshabilitada] Sets the absolute stock quantity for a product (inventory sync, no audit trail).", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "mode": { "const": "set", "description": "Must be 'set'. Absolute-set is the only mode available via MCP.", "type": "string" }, "productId": { "description": "Product ID to update.", "minLength": 1, "type": "string" }, "quantity": { "description": "New absolute stock quantity.", "maximum": 9007199254740991, "minimum": 0, "type": "integer" } }, "required": [ "productId", "mode", "quantity" ], "type": "object" }, "name": "adjust_stock", "outputSchema": null }, { "description": "[demo: deshabilitada] Mass price change for all products or a specified subset in this business.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "amount": { "description": "Adjustment amount — percentage or fixed ARS value depending on mode.", "exclusiveMinimum": 0, "type": "number" }, "direction": { "description": "'up' raises, 'down' lowers, 'set' assigns an exact price.", "enum": [ "up", "down", "set" ], "type": "string" }, "mode": { "description": "'percent' = percentage change; 'fixed' = absolute ARS change.", "enum": [ "percent", "fixed" ], "type": "string" }, "productIds": { "description": "Specific product IDs to update. Omit to update ALL products.", "items": { "minLength": 1, "type": "string" }, "type": "array" } }, "required": [ "amount", "mode", "direction" ], "type": "object" }, "name": "bulk_price_update", "outputSchema": null }, { "description": "[demo: deshabilitada] Opens or closes a cash register shift for the authenticated business.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "action": { "description": "'abrir' to open a shift, 'cerrar' to close it.", "enum": [ "abrir", "cerrar" ], "type": "string" }, "monto": { "description": "Opening float (abrir) or physically counted cash (cerrar) in ARS.", "minimum": 0, "type": "number" }, "nota": { "description": "Optional operator note.", "maxLength": 500, "type": "string" } }, "required": [ "action", "monto" ], "type": "object" }, "name": "caja_ciclo_caja", "outputSchema": null }, { "description": "Queries the current cash register balance for the authenticated business — the open session data or the last closed session. Read-only.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": {}, "type": "object" }, "name": "caja_consultar_saldo", "outputSchema": null }, { "description": "[demo: deshabilitada] Records a cash movement tied to the OPEN caja shift: income, expense, withdrawal, tax, or payroll.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "descripcion": { "description": "Movement description.", "maxLength": 500, "minLength": 1, "type": "string" }, "monto": { "description": "Positive amount in ARS.", "exclusiveMinimum": 0, "type": "number" }, "tipo": { "description": "Movement type.", "enum": [ "ingreso", "gasto", "retiro", "sangria", "sangría", "impuesto", "sueldo" ], "type": "string" } }, "required": [ "tipo", "monto", "descripcion" ], "type": "object" }, "name": "caja_registrar_movimiento", "outputSchema": null }, { "description": "[demo: deshabilitada] Connects MercadoPago for this business using the BYOA OAuth-redirect model. Primary: returns an authorization URL. Fallback: accepts a production access token directly.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "accessToken": { "description": "Optional MercadoPago production access token.", "minLength": 20, "pattern": "^APP_USR-.*", "type": "string" } }, "type": "object" }, "name": "connect_mercadopago", "outputSchema": null }, { "description": "[demo: deshabilitada] Connects PedidosYa for this business using the BYOA secure-form model. Primary: returns a secure link. Fallback: accepts an API token directly.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "apiToken": { "description": "Optional PedidosYa API token.", "minLength": 1, "type": "string" } }, "type": "object" }, "name": "connect_pedidosya", "outputSchema": null }, { "description": "[demo: deshabilitada] Connects Tienda Nube (Nuvemshop) using the BYOA OAuth-redirect model. Returns an authorization URL — no token ever passes through chat. Gated behind env config in production.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": {}, "type": "object" }, "name": "connect_tiendanube", "outputSchema": null }, { "description": "[demo: deshabilitada] Connects WhatsApp Business using the BYOA Meta Embedded Signup model. Primary: returns a signup link. Optional: registers a phone number as a lightweight pre-step.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "phone": { "description": "Optional WhatsApp Business phone in E.164 format.", "minLength": 8, "type": "string" } }, "type": "object" }, "name": "connect_whatsapp", "outputSchema": null }, { "description": "Returns the BYOA (Bring Your Own Account) integration readiness for the authenticated business — what is connected and how to connect what is missing. Read-only.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": {}, "type": "object" }, "name": "connection_status", "outputSchema": null }, { "description": "[demo: deshabilitada] Creates a new product in the business catalog. Requires name and price.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "costPrice": { "description": "Purchase cost price in ARS (optional).", "exclusiveMinimum": 0, "type": "number" }, "initialStock": { "default": 0, "description": "Initial stock quantity (default 0).", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "name": { "description": "Product name.", "minLength": 1, "type": "string" }, "price": { "description": "Selling price in ARS.", "exclusiveMinimum": 0, "type": "number" }, "weightGrams": { "description": "Weight in grams (optional).", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" } }, "required": [ "name", "price" ], "type": "object" }, "name": "create_product", "outputSchema": null }, { "description": "[demo: deshabilitada] Creates a procurement order (purchase request) to a supplier.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "itemName": { "description": "Name of the item being ordered.", "minLength": 1, "type": "string" }, "quantity": { "description": "Quantity to order.", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "supplierId": { "description": "Existing supplier ID (optional if supplierName is provided).", "type": "string" }, "supplierName": { "description": "Supplier name (optional if supplierId is provided).", "type": "string" }, "unitPrice": { "description": "Unit price per item in ARS.", "minimum": 0, "type": "number" } }, "required": [ "itemName", "quantity", "unitPrice" ], "type": "object" }, "name": "create_purchase_request", "outputSchema": null }, { "description": "[demo: deshabilitada] Creates a physical shipment via the chosen courier and returns a tracking number and label URL.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "customerAddress": { "description": "Recipient street name.", "type": "string" }, "customerAddressNumber": { "description": "Recipient street number (required by OCA).", "type": "string" }, "customerCity": { "description": "Recipient city (optional).", "type": "string" }, "customerDni": { "description": "Recipient DNI (required by Andreani in production).", "type": "string" }, "customerLastName": { "description": "Recipient last name (optional).", "type": "string" }, "customerName": { "description": "Recipient first name.", "type": "string" }, "customerPhone": { "description": "Recipient phone number (optional).", "type": "string" }, "customerPostalCode": { "description": "Recipient postal code.", "type": "string" }, "customerProvince": { "description": "Recipient province (required by OCA).", "type": "string" }, "provider": { "description": "Courier slug from quote_shipping ('andreani', 'oca').", "type": "string" }, "saleId": { "description": "Velora Sale ID.", "type": "string" }, "service": { "description": "Courier-specific service key (defaults to 'domicilio').", "type": "string" }, "weightGrams": { "description": "Total shipment weight in grams.", "exclusiveMinimum": 0, "type": "number" } }, "required": [ "provider", "saleId", "customerName", "customerAddress", "customerPostalCode", "weightGrams" ], "type": "object" }, "name": "create_shipment", "outputSchema": null }, { "description": "[demo: deshabilitada] Creates a supplier for this business.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "contactName": { "description": "Contact person name (optional).", "type": "string" }, "email": { "description": "Supplier email address (optional).", "format": "email", "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$", "type": "string" }, "leadTimeDays": { "description": "Default lead time in days (optional).", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "name": { "description": "Supplier name (must be unique within this business).", "minLength": 1, "type": "string" }, "phone": { "description": "Supplier phone number (optional).", "type": "string" } }, "required": [ "name" ], "type": "object" }, "name": "create_supplier", "outputSchema": null }, { "description": "[demo: deshabilitada] Creates a tracked MercadoPago payment link for a catalog-tied cobro: atomically records the Sale + Invoice + PaymentIntent, then generates a real Checkout Pro link. MONEY: real and irreversible.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "customerId": { "description": "Customer ID.", "minLength": 1, "type": "string" }, "description": { "description": "Cobro description shown on the MP preference.", "minLength": 1, "type": "string" }, "expiresInDays": { "description": "Link lifetime in days (1–30, default 3).", "maximum": 30, "minimum": 1, "type": "integer" }, "idempotencyKey": { "description": "Stable UUID generated by the wizard.", "minLength": 1, "type": "string" }, "items": { "description": "Line items.", "items": { "properties": { "productId": { "description": "Product ID.", "minLength": 1, "type": "string" }, "quantity": { "description": "Units.", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "unitPriceOverride": { "description": "Optional negotiated unit price.", "exclusiveMinimum": 0, "type": "number" } }, "required": [ "productId", "quantity" ], "type": "object" }, "minItems": 1, "type": "array" } }, "required": [ "customerId", "items", "description", "idempotencyKey" ], "type": "object" }, "name": "create_tracked_payment_link", "outputSchema": null }, { "description": "[demo: deshabilitada] Deletes a customer from this business (blocked when the customer has sales or invoices).", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "customerId": { "description": "ID of the customer to delete.", "minLength": 1, "type": "string" } }, "required": [ "customerId" ], "type": "object" }, "name": "delete_customer", "outputSchema": null }, { "description": "[demo: deshabilitada] Deletes (or soft-archives, when it has sale records) a product from the catalog.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "productId": { "description": "ID of the product to delete.", "minLength": 1, "type": "string" } }, "required": [ "productId" ], "type": "object" }, "name": "delete_product", "outputSchema": null }, { "description": "[demo: deshabilitada] Deletes a supplier from this business (with full audit trail).", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "supplierId": { "description": "ID of the supplier to delete.", "minLength": 1, "type": "string" } }, "required": [ "supplierId" ], "type": "object" }, "name": "delete_supplier", "outputSchema": null }, { "description": "[demo: deshabilitada] Updates a single product's fields (name, price, costPrice, or stockQuantity).", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "costPrice": { "anyOf": [ { "exclusiveMinimum": 0, "type": "number" }, { "type": "null" } ], "description": "New cost price, or null to clear (optional)." }, "name": { "description": "New product name (optional).", "minLength": 1, "type": "string" }, "price": { "description": "New selling price in ARS (optional).", "exclusiveMinimum": 0, "type": "number" }, "productId": { "description": "ID of the product to update.", "minLength": 1, "type": "string" }, "stockQuantity": { "description": "Set stock to this value (optional).", "maximum": 9007199254740991, "minimum": 0, "type": "integer" } }, "required": [ "productId" ], "type": "object" }, "name": "edit_product", "outputSchema": null }, { "description": "[demo: deshabilitada] Updates an existing supplier's fields.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "contactName": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "New contact person name, or null to clear." }, "email": { "anyOf": [ { "format": "email", "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$", "type": "string" }, { "type": "null" } ], "description": "New email, or null to clear." }, "leadTimeDays": { "anyOf": [ { "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, { "type": "null" } ], "description": "New lead time in days, or null to clear." }, "name": { "description": "New supplier name (optional).", "minLength": 1, "type": "string" }, "phone": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "New phone number, or null to clear." }, "supplierId": { "description": "ID of the supplier to update.", "minLength": 1, "type": "string" } }, "required": [ "supplierId" ], "type": "object" }, "name": "edit_supplier", "outputSchema": null }, { "description": "[demo: deshabilitada] Emits an ARCA (formerly AFIP)-compliant electronic invoice (factura electrónica) for the authenticated business and returns the CAE authorization code.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "amountARS": { "description": "Invoice total in Argentine pesos (ARS).", "exclusiveMinimum": 0, "type": "number" }, "concept": { "description": "Items or concept description (optional).", "type": "string" }, "customerCuit": { "description": "Customer CUIT/CUIL (11 digits, any format).", "type": "string" }, "requestId": { "description": "Optional idempotency nonce.", "type": "string" }, "tipo": { "description": "A = IVA discriminado (B2B), B = consumidor final, C = monotributo.", "enum": [ "A", "B", "C" ], "type": "string" } }, "required": [ "customerCuit", "amountARS", "tipo" ], "type": "object" }, "name": "emit_invoice", "outputSchema": null }, { "description": "[demo: deshabilitada] Emits an ARCA-compliant Nota Crédito (NC) or Nota Débito (ND) against an original AFIP invoice and returns the CAE authorization code.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "amountARS": { "description": "Note total in Argentine pesos (ARS).", "exclusiveMinimum": 0, "type": "number" }, "associatedInvoice": { "description": "Reference to the original invoice being credited or debited.", "properties": { "nro": { "description": "Sequential number of the original invoice.", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "ptoVta": { "description": "Punto de venta of the original invoice.", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "tipo": { "description": "WSFE tipoComprobante of the original factura: 1=A, 6=B, 11=C.", "enum": [ "1", "6", "11" ], "type": "string" } }, "required": [ "tipo", "ptoVta", "nro" ], "type": "object" }, "concept": { "description": "Items or concept description (optional).", "type": "string" }, "customerCuit": { "description": "Customer CUIT/CUIL (11 digits, any format).", "type": "string" }, "kind": { "description": "credito = Nota Crédito, debito = Nota Débito.", "enum": [ "credito", "debito" ], "type": "string" }, "requestId": { "description": "Optional idempotency nonce.", "type": "string" }, "tipo": { "description": "Invoice type letter for this nota.", "enum": [ "A", "B", "C" ], "type": "string" } }, "required": [ "customerCuit", "amountARS", "tipo", "kind", "associatedInvoice" ], "type": "object" }, "name": "emit_nota", "outputSchema": null }, { "description": "Searches customers in the business by name and/or phone. Returns up to 20 matching customers sorted by name.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "name": { "description": "Customer name substring to search (case-insensitive).", "type": "string" }, "phone": { "description": "Customer phone number or partial number to search.", "type": "string" } }, "type": "object" }, "name": "find_customer", "outputSchema": null }, { "description": "Checks whether the business is ready to emit real ARCA electronic invoices. Returns { ready, missing, guidance } where ready=true means all fiscal fields and the ARCA certificate are configured.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": {}, "type": "object" }, "name": "get_fiscal_readiness", "outputSchema": null }, { "description": "Computes the shipment weight and item breakdown for a package. Accepts a saleId, a list of productIds, or an explicit weightGramsOverride.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "productIds": { "description": "Array of Velora Product IDs (assumes qty=1 per id).", "items": { "type": "string" }, "type": "array" }, "saleId": { "description": "Velora Sale ID (takes priority over productIds).", "type": "string" }, "weightGramsOverride": { "description": "Explicit weight override in grams.", "exclusiveMinimum": 0, "type": "number" } }, "type": "object" }, "name": "get_package_profile", "outputSchema": null }, { "description": "Checks the current status of a Velora PaymentIntent. Accepts a paymentIntentId OR a customer name.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "customerName": { "description": "Customer name (fuzzy match).", "type": "string" }, "paymentIntentId": { "description": "Velora PaymentIntent id. Optional when customerName is provided.", "type": "string" } }, "type": "object" }, "name": "get_payment_intent_status", "outputSchema": null }, { "description": "Returns all suppliers for this business (up to 50, sorted by name).", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "search": { "description": "Optional name substring to filter suppliers.", "type": "string" } }, "type": "object" }, "name": "list_suppliers", "outputSchema": null }, { "description": "ONE widget, two display modes: inline snapshot by default, fullscreen tabs (Cliente 360, Cerrar el día, Reposición de stock, Dashboard de ventas) on demand. Aggregates caja, payments, ventas, reportes, supplier, and customer reads.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "customerName": { "description": "Optional customer name to pre-search on the Cliente 360 tab.", "type": "string" }, "defaultTab": { "description": "Optional fullscreen tab to open into.", "enum": [ "cliente_360", "cierre_dia", "reposicion_stock", "dashboard_ventas" ], "type": "string" } }, "type": "object" }, "name": "open_business_overview", "outputSchema": null }, { "description": "Opens a visual widget showing the current shift state and action buttons. Read-only here.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": {}, "type": "object" }, "name": "open_caja_status", "outputSchema": null }, { "description": "Opens the catalog selector — a graphical product picker (MCP Apps widget) that shows active products with prices (ARS) and stock. Side-effect-free (no sale, no charge).", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "search": { "description": "Optional name filter (case-insensitive substring match).", "type": "string" } }, "type": "object" }, "name": "open_catalog_selector", "outputSchema": null }, { "description": "Opens the cobro status widget — a read-only view of ONE PaymentIntent's payment state. Accepts paymentIntentId OR customerName.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "customerName": { "description": "Customer name (optional when paymentIntentId is provided).", "type": "string" }, "paymentIntentId": { "description": "Velora PaymentIntent id (optional when customerName is provided).", "type": "string" } }, "type": "object" }, "name": "open_cobro_status", "outputSchema": null }, { "description": "Opens the comprobante + envío widget — a read-only view of the delivery receipt for a completed cobro. Accepts paymentIntentId, saleId, OR customerName.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "customerName": { "description": "Customer name (optional).", "type": "string" }, "paymentIntentId": { "description": "Velora PaymentIntent id (optional).", "type": "string" }, "saleId": { "description": "Velora Sale id (optional).", "type": "string" } }, "type": "object" }, "name": "open_delivery_receipt", "outputSchema": null }, { "description": "Opens a graphical onboarding hub showing integration status and connect links. Read-only.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": {}, "type": "object" }, "name": "open_onboarding", "outputSchema": null }, { "description": "Opens the payment-link wizard — a graphical form pre-filled with the cobro, for the owner to review and confirm before any money moves. Side-effect-free (no charge).", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "customerId": { "description": "Customer ID (optional).", "minLength": 1, "type": "string" }, "description": { "description": "Cobro description (e.g. '3 alfajores').", "minLength": 1, "type": "string" }, "items": { "description": "Line items (productId + quantity).", "items": { "properties": { "productId": { "description": "Product ID.", "minLength": 1, "type": "string" }, "quantity": { "description": "Units.", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "unitPriceOverride": { "description": "Optional negotiated unit price.", "exclusiveMinimum": 0, "type": "number" } }, "required": [ "productId", "quantity" ], "type": "object" }, "minItems": 1, "type": "array" } }, "required": [ "description", "items" ], "type": "object" }, "name": "open_payment_link_wizard", "outputSchema": null }, { "description": "Opens the pending cobros dashboard — a read-only widget listing PaymentIntents awaiting payment. Side-effect-free.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": {}, "type": "object" }, "name": "open_pending_orders", "outputSchema": null }, { "description": "Opens a VISUAL preview of a cash sale — resolved product names, unit prices, quantities, and total — with a confirm button that fires register_sale. Read-only preview itself.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "customerId": { "description": "Optional customer ID (omit for anonymous sales).", "type": "string" }, "items": { "description": "Line items for the sale.", "items": { "properties": { "productId": { "description": "Product ID.", "minLength": 1, "type": "string" }, "quantity": { "description": "Units to sell.", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" } }, "required": [ "productId", "quantity" ], "type": "object" }, "maxItems": 500, "minItems": 1, "type": "array" } }, "required": [ "items" ], "type": "object" }, "name": "open_sale_confirm", "outputSchema": null }, { "description": "Combines catalog stock/weight data and a live shipping quote into one widget — resolves items, computes total weight, and quotes couriers. Read-only, side-effect-free.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "declaredValue": { "description": "Declared value in ARS for insurance.", "minimum": 0, "type": "number" }, "destinationPostalCode": { "description": "Destination postal code (4 digits).", "type": "string" }, "items": { "description": "Line items to prepare for shipment.", "items": { "properties": { "productId": { "description": "Product ID.", "minLength": 1, "type": "string" }, "quantity": { "description": "Units.", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" } }, "required": [ "productId", "quantity" ], "type": "object" }, "minItems": 1, "type": "array" }, "originPostalCode": { "description": "Origin postal code (4 digits).", "type": "string" } }, "required": [ "items", "originPostalCode", "destinationPostalCode" ], "type": "object" }, "name": "open_shipment_prep", "outputSchema": null }, { "description": "Lists active products in the business catalog. Returns products sorted by name, each with id, name, price (ARS), costPrice, sku, stock quantity, and weightGrams.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "search": { "description": "Optional name filter (case-insensitive substring match).", "type": "string" } }, "type": "object" }, "name": "query_catalog", "outputSchema": null }, { "description": "Queries sales metrics from the database: 'ventas_periodo', 'margen', 'ranking_productos', 'por_empleado', or 'historial_cliente'.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "customer_name": { "description": "Customer name or fragment. Only for historial_cliente.", "minLength": 1, "type": "string" }, "from": { "description": "Start date YYYY-MM-DD. Requires 'to'.", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, "limit": { "default": 10, "description": "Max results (default 10, max 50).", "maximum": 50, "minimum": 1, "type": "integer" }, "metrica": { "description": "Metric to query.", "enum": [ "ventas_periodo", "margen", "ranking_productos", "por_empleado", "historial_cliente" ], "type": "string" }, "preset": { "description": "Preset date range. Mutually exclusive with from/to.", "enum": [ "hoy", "semana", "mes" ], "type": "string" }, "to": { "description": "End date YYYY-MM-DD. Requires 'from'.", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" } }, "required": [ "metrica" ], "type": "object" }, "name": "query_sales", "outputSchema": null }, { "description": "Quotes shipment rates from every active courier configured for the authenticated business and returns options sorted by price ascending.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "declaredValue": { "description": "Declared value in ARS for insurance.", "minimum": 0, "type": "number" }, "destinationPostalCode": { "description": "Destination postal code (4 digits).", "type": "string" }, "originPostalCode": { "description": "Origin postal code (4 digits).", "type": "string" }, "weightGrams": { "description": "Total shipment weight in grams.", "exclusiveMinimum": 0, "type": "number" } }, "required": [ "originPostalCode", "destinationPostalCode", "weightGrams" ], "type": "object" }, "name": "quote_shipping", "outputSchema": null }, { "description": "[demo: deshabilitada] Records a cash-register movement for the authenticated business ('purchase', 'income', 'salary', 'tax', 'adjustment').", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "amount": { "description": "Amount in ARS (always positive).", "exclusiveMinimum": 0, "type": "number" }, "date": { "description": "ISO 8601 date/datetime. Defaults to now.", "type": "string" }, "description": { "description": "Description (e.g. 'Pago proveedor Distribuidora ABC').", "minLength": 1, "type": "string" }, "type": { "description": "Movement type.", "enum": [ "purchase", "tax", "salary", "adjustment", "income", "sale" ], "type": "string" } }, "required": [ "type", "description", "amount" ], "type": "object" }, "name": "register_movement", "outputSchema": null }, { "description": "[demo: deshabilitada] Records a sale for the authenticated business. Creates a full Sale with SaleItems, decrements inventory, creates a CashMovement and Invoice.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "customerId": { "description": "Optional customer ID. Omit for anonymous sales.", "type": "string" }, "items": { "description": "Line items for the sale.", "items": { "properties": { "productId": { "description": "Product ID.", "minLength": 1, "type": "string" }, "quantity": { "description": "Units sold (positive integer).", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "unitPrice": { "description": "Sale price per unit in ARS (optional; catalog price used when omitted).", "exclusiveMinimum": 0, "type": "number" } }, "required": [ "productId", "quantity" ], "type": "object" }, "maxItems": 500, "minItems": 1, "type": "array" }, "paymentMethod": { "description": "Defaults to 'efectivo' when omitted.", "enum": [ "efectivo", "transferencia", "mp", "qr", "modo" ], "type": "string" }, "requestId": { "description": "Optional idempotency override.", "type": "string" } }, "required": [ "items" ], "type": "object" }, "name": "register_sale", "outputSchema": null }, { "description": "[demo: deshabilitada] Reverses the N most-recent sales within a time window. Restores inventory, removes CashMovement, SaleItem, Invoice, and Sale records. Destructive and irreversible.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "confirm": { "const": true, "description": "Must be explicitly true to confirm reversing sales.", "type": "boolean" }, "count": { "default": 1, "description": "Number of recent sales to reverse (max 10).", "exclusiveMinimum": 0, "maximum": 10, "type": "integer" }, "cutoffHours": { "default": 24, "description": "Only consider sales within the last N hours (max 48).", "exclusiveMinimum": 0, "maximum": 48, "type": "number" } }, "required": [ "confirm" ], "type": "object" }, "name": "return_sale", "outputSchema": null }, { "description": "[demo: deshabilitada] Sends a pre-approved Meta WhatsApp template message. Window-independent — can be sent proactively, outside the 24-hour session window.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "components": { "description": "Template variable substitutions (omit for templates with no placeholders).", "items": { "properties": { "parameters": { "description": "Ordered text substitutions.", "items": { "properties": { "text": { "type": "string" }, "type": { "const": "text", "type": "string" } }, "required": [ "type", "text" ], "type": "object" }, "type": "array" }, "type": { "description": "Component section to populate.", "enum": [ "body", "header", "button" ], "type": "string" } }, "required": [ "type", "parameters" ], "type": "object" }, "type": "array" }, "languageCode": { "description": "BCP-47 language code (defaults to 'es_AR').", "type": "string" }, "templateName": { "description": "Exact template name as registered in Meta Business Manager.", "type": "string" }, "to": { "description": "Recipient phone number (local AR or E.164).", "minLength": 1, "type": "string" } }, "required": [ "to", "templateName" ], "type": "object" }, "name": "send_whatsapp_template", "outputSchema": null }, { "description": "[demo: deshabilitada] Sends a plain-text WhatsApp message to a customer phone number. Only valid inside the 24-hour customer-service window (Meta error 131026 outside).", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "mediaUrl": { "description": "Optional public URL of a media file to attach.", "format": "uri", "type": "string" }, "text": { "description": "Message text body.", "minLength": 1, "type": "string" }, "to": { "description": "Recipient phone number (local AR or E.164).", "minLength": 1, "type": "string" } }, "required": [ "to", "text" ], "type": "object" }, "name": "send_whatsapp_text", "outputSchema": null }, { "description": "[demo: deshabilitada] Records inbound stock for a product — restock or initial stock, with an audit trail.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "autoCreateProduct": { "default": false, "description": "Auto-create product if not found.", "type": "boolean" }, "createPurchaseRequest": { "default": false, "description": "Also create a purchase request for this stock load.", "type": "boolean" }, "itemName": { "description": "Product name for resolution or auto-creation.", "minLength": 1, "type": "string" }, "productId": { "description": "Existing product ID (optional if itemName resolves it).", "type": "string" }, "quantity": { "description": "Units received.", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "supplierId": { "description": "Existing supplier ID (optional).", "type": "string" }, "supplierName": { "description": "Supplier name (optional).", "type": "string" }, "unitPrice": { "description": "Cost per unit in ARS.", "minimum": 0, "type": "number" } }, "required": [ "itemName", "quantity" ], "type": "object" }, "name": "stock_load", "outputSchema": null }, { "description": "Tracks the current status and event history of a shipment by tracking number.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "provider": { "description": "Courier that created the shipment ('andreani', 'oca').", "type": "string" }, "trackingNumber": { "description": "Tracking number returned by the courier at shipment creation time.", "type": "string" } }, "required": [ "trackingNumber", "provider" ], "type": "object" }, "name": "track_shipment", "outputSchema": null }, { "description": "[demo: deshabilitada] Bulk-creates products in the business catalog from a structured list (up to 50 items).", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "products": { "description": "List of products to create (1–50 items).", "items": { "properties": { "name": { "description": "Product name.", "type": "string" }, "price": { "description": "Selling price in ARS.", "type": "number" } }, "required": [ "name", "price" ], "type": "object" }, "maxItems": 50, "minItems": 1, "type": "array" } }, "required": [ "products" ], "type": "object" }, "name": "upload_catalog", "outputSchema": null }, { "description": "[demo: deshabilitada] Creates a new customer or updates an existing one for the authenticated business.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "address": { "description": "Customer street address (optional).", "type": "string" }, "city": { "description": "Customer city or locality (optional).", "type": "string" }, "customerId": { "description": "When provided, updates the customer with this id.", "type": "string" }, "email": { "description": "Customer email address (optional).", "type": "string" }, "name": { "description": "Customer display name.", "type": "string" }, "phone": { "description": "Customer phone number.", "type": "string" }, "postalCode": { "description": "Customer postal code (optional).", "type": "string" } }, "type": "object" }, "name": "upsert_customer", "outputSchema": null }, { "description": "Validates an Argentine CUIT or CUIL number. Returns parsed components (prefix, body, check digit), person type, and whether the check digit is mathematically correct. Accepts any format: raw digits, hyphened (20-12345678-9), or spaced. This tool runs the REAL check-digit algorithm — not a demo fixture.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "cuit": { "description": "CUIT/CUIL in any format (digits, hyphens, or spaces).", "type": "string" } }, "required": [ "cuit" ], "type": "object" }, "name": "validate_cuit", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:72b741e241d23cbc04cacb1609d4457b87b6b6de986f990c48177402c4db7920 | sha256sum