MCP-Server

velora

com.somosvelora/velora
Business & Betrieb Commerce & Retail Payments & Fintech Öffentlich und erreichbar MCP 2025-11-25

Was dieses MCP kann

Provides Argentine commerce operations including catalog and inventory, customer and supplier management, cash register tracking, invoicing, MercadoPago payments, shipments, logistics, and WhatsApp integrations.

adjust_stock
Adjust stock
[demo: deshabilitada] Sets the absolute stock quantity for a product (inventory sync, no audit trail).
Destruktiv Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['productId', 'mode', 'quantity'], 'properties': {'mode': {'type': 'string', 'const': 'set', 'description': "Must be 'set'. Absolute-set is the only mode available via MCP."}, 'quantity': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'New absolute stock quantity.'}, 'productId': {'type': 'string', 'minLength': 1, 'description': 'Product ID to update.'}}}
bulk_price_update
Bulk price update
[demo: deshabilitada] Mass price change for all products or a specified subset in this business.
Destruktiv Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['amount', 'mode', 'direction'], 'properties': {'mode': {'enum': ['percent', 'fixed'], 'type': 'string', 'description': "'percent' = percentage change; 'fixed' = absolute ARS change."}, 'amount': {'type': 'number', 'description': 'Adjustment amount â\x80\x94 percentage or fixed ARS value depending on mode.', 'exclusiveMinimum': 0}, 'direction': {'enum': ['up', 'down', 'set'], 'type': 'string', 'description': "'up' raises, 'down' lowers, 'set' assigns an exact price."}, 'productIds': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}, 'description': 'Specific product IDs to update. Omit to update ALL products.'}}}
caja_ciclo_caja
Open or close cash shift
[demo: deshabilitada] Opens or closes a cash register shift for the authenticated business.
Destruktiv
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['action', 'monto'], 'properties': {'nota': {'type': 'string', 'maxLength': 500, 'description': 'Optional operator note.'}, 'monto': {'type': 'number', 'minimum': 0, 'description': 'Opening float (abrir) or physically counted cash (cerrar) in ARS.'}, 'action': {'enum': ['abrir', 'cerrar'], 'type': 'string', 'description': "'abrir' to open a shift, 'cerrar' to close it."}}}
caja_consultar_saldo
Consult cash balance
Queries the current cash register balance for the authenticated business — the open session data or the last closed session. Read-only.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
caja_registrar_movimiento
Register cash movement (caja)
[demo: deshabilitada] Records a cash movement tied to the OPEN caja shift: income, expense, withdrawal, tax, or payroll.
Destruktiv Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['tipo', 'monto', 'descripcion'], 'properties': {'tipo': {'enum': ['ingreso', 'gasto', 'retiro', 'sangria', 'sangrÃ\xada', 'impuesto', 'sueldo'], 'type': 'string', 'description': 'Movement type.'}, 'monto': {'type': 'number', 'description': 'Positive amount in ARS.', 'exclusiveMinimum': 0}, 'descripcion': {'type': 'string', 'maxLength': 500, 'minLength': 1, 'description': 'Movement description.'}}}
connection_status
Connection status
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.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
connect_mercadopago
Connect MercadoPago
[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.
Destruktiv Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'accessToken': {'type': 'string', 'pattern': '^APP_USR-.*', 'minLength': 20, 'description': 'Optional MercadoPago production access token.'}}}
connect_pedidosya
Connect PedidosYa
[demo: deshabilitada] Connects PedidosYa for this business using the BYOA secure-form model. Primary: returns a secure link. Fallback: accepts an API token directly.
Destruktiv Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'apiToken': {'type': 'string', 'minLength': 1, 'description': 'Optional PedidosYa API token.'}}}
connect_tiendanube
Connect Tienda Nube
[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.
Destruktiv Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
connect_whatsapp
Connect WhatsApp
[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.
Destruktiv Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'phone': {'type': 'string', 'minLength': 8, 'description': 'Optional WhatsApp Business phone in E.164 format.'}}}
create_product
Create product
[demo: deshabilitada] Creates a new product in the business catalog. Requires name and price.
Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['name', 'price'], 'properties': {'name': {'type': 'string', 'minLength': 1, 'description': 'Product name.'}, 'price': {'type': 'number', 'description': 'Selling price in ARS.', 'exclusiveMinimum': 0}, 'costPrice': {'type': 'number', 'description': 'Purchase cost price in ARS (optional).', 'exclusiveMinimum': 0}, 'weightGrams': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Weight in grams (optional).', 'exclusiveMinimum': 0}, 'initialStock': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Initial stock quantity (default 0).'}}}
create_purchase_request
Create purchase request
[demo: deshabilitada] Creates a procurement order (purchase request) to a supplier.
Destruktiv Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['itemName', 'quantity', 'unitPrice'], 'properties': {'itemName': {'type': 'string', 'minLength': 1, 'description': 'Name of the item being ordered.'}, 'quantity': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Quantity to order.', 'exclusiveMinimum': 0}, 'unitPrice': {'type': 'number', 'minimum': 0, 'description': 'Unit price per item in ARS.'}, 'supplierId': {'type': 'string', 'description': 'Existing supplier ID (optional if supplierName is provided).'}, 'supplierName': {'type': 'string', 'description': 'Supplier name (optional if supplierId is provided).'}}}
create_shipment
Create shipment
[demo: deshabilitada] Creates a physical shipment via the chosen courier and returns a tracking number and label URL.
Destruktiv Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['provider', 'saleId', 'customerName', 'customerAddress', 'customerPostalCode', 'weightGrams'], 'properties': {'saleId': {'type': 'string', 'description': 'Velora Sale ID.'}, 'service': {'type': 'string', 'description': "Courier-specific service key (defaults to 'domicilio')."}, 'provider': {'type': 'string', 'description': "Courier slug from quote_shipping ('andreani', 'oca')."}, 'customerDni': {'type': 'string', 'description': 'Recipient DNI (required by Andreani in production).'}, 'weightGrams': {'type': 'number', 'description': 'Total shipment weight in grams.', 'exclusiveMinimum': 0}, 'customerCity': {'type': 'string', 'description': 'Recipient city (optional).'}, 'customerName': {'type': 'string', 'description': 'Recipient first name.'}, 'customerPhone': {'type': 'string', 'description': 'Recipient phone number (optional).'}, 'customerAddress': {'type': 'string', 'description': 'Recipient street name.'}, 'customerLastName': {'type': 'string', 'description': 'Recipient last name (optional).'}, 'customerProvince': {'type': 'string', 'description': 'Recipient province (required by OCA).'}, 'customerPostalCode': {'type': 'string', 'description': 'Recipient postal code.'}, 'customerAddressNumber': {'type': 'string', 'description': 'Recipient street number (required by OCA).'}}}
create_supplier
Create supplier
[demo: deshabilitada] Creates a supplier for this business.
Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['name'], 'properties': {'name': {'type': 'string', 'minLength': 1, 'description': 'Supplier name (must be unique within this business).'}, 'email': {'type': 'string', 'format': 'email', 'pattern': "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$", 'description': 'Supplier email address (optional).'}, 'phone': {'type': 'string', 'description': 'Supplier phone number (optional).'}, 'contactName': {'type': 'string', 'description': 'Contact person name (optional).'}, 'leadTimeDays': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Default lead time in days (optional).', 'exclusiveMinimum': 0}}}
create_tracked_payment_link
Create tracked payment link
[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.
Destruktiv Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['customerId', 'items', 'description', 'idempotencyKey'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['productId', 'quantity'], 'properties': {'quantity': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Units.', 'exclusiveMinimum': 0}, 'productId': {'type': 'string', 'minLength': 1, 'description': 'Product ID.'}, 'unitPriceOverride': {'type': 'number', 'description': 'Optional negotiated unit price.', 'exclusiveMinimum': 0}}}, 'minItems': 1, 'description': 'Line items.'}, 'customerId': {'type': 'string', 'minLength': 1, 'description': 'Customer ID.'}, 'description': {'type': 'string', 'minLength': 1, 'description': 'Cobro description shown on the MP preference.'}, 'expiresInDays': {'type': 'integer', 'maximum': 30, 'minimum': 1, 'description': 'Link lifetime in days (1â\x80\x9330, default 3).'}, 'idempotencyKey': {'type': 'string', 'minLength': 1, 'description': 'Stable UUID generated by the wizard.'}}}
delete_customer
Delete customer
[demo: deshabilitada] Deletes a customer from this business (blocked when the customer has sales or invoices).
Destruktiv Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['customerId'], 'properties': {'customerId': {'type': 'string', 'minLength': 1, 'description': 'ID of the customer to delete.'}}}
delete_product
Delete product
[demo: deshabilitada] Deletes (or soft-archives, when it has sale records) a product from the catalog.
Destruktiv Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['productId'], 'properties': {'productId': {'type': 'string', 'minLength': 1, 'description': 'ID of the product to delete.'}}}
delete_supplier
Delete supplier
[demo: deshabilitada] Deletes a supplier from this business (with full audit trail).
Destruktiv Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['supplierId'], 'properties': {'supplierId': {'type': 'string', 'minLength': 1, 'description': 'ID of the supplier to delete.'}}}
edit_product
Edit product
[demo: deshabilitada] Updates a single product's fields (name, price, costPrice, or stockQuantity).
Destruktiv Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['productId'], 'properties': {'name': {'type': 'string', 'minLength': 1, 'description': 'New product name (optional).'}, 'price': {'type': 'number', 'description': 'New selling price in ARS (optional).', 'exclusiveMinimum': 0}, 'costPrice': {'anyOf': [{'type': 'number', 'exclusiveMinimum': 0}, {'type': 'null'}], 'description': 'New cost price, or null to clear (optional).'}, 'productId': {'type': 'string', 'minLength': 1, 'description': 'ID of the product to update.'}, 'stockQuantity': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Set stock to this value (optional).'}}}
edit_supplier
Edit supplier
[demo: deshabilitada] Updates an existing supplier's fields.
Destruktiv Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['supplierId'], 'properties': {'name': {'type': 'string', 'minLength': 1, 'description': 'New supplier name (optional).'}, 'email': {'anyOf': [{'type': 'string', 'format': 'email', 'pattern': "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"}, {'type': 'null'}], 'description': 'New email, or null to clear.'}, 'phone': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'New phone number, or null to clear.'}, 'supplierId': {'type': 'string', 'minLength': 1, 'description': 'ID of the supplier to update.'}, 'contactName': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'New contact person name, or null to clear.'}, 'leadTimeDays': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, {'type': 'null'}], 'description': 'New lead time in days, or null to clear.'}}}
emit_invoice
Emit invoice (ARCA)
[demo: deshabilitada] Emits an ARCA (formerly AFIP)-compliant electronic invoice (factura electrónica) for the authenticated business and returns the CAE authorization code.
Destruktiv Externer Zugriff
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['customerCuit', 'amountARS', 'tipo'], 'properties': {'tipo': {'enum': ['A', 'B', 'C'], 'type': 'string', 'description': 'A = IVA discriminado (B2B), B = consumidor final, C = monotributo.'}, 'concept': {'type': 'string', 'description': 'Items or concept description (optional).'}, 'amountARS': {'type': 'number', 'description': 'Invoice total in Argentine pesos (ARS).', 'exclusiveMinimum': 0}, 'requestId': {'type': 'string', 'description': 'Optional idempotency nonce.'}, 'customerCuit': {'type': 'string', 'description': 'Customer CUIT/CUIL (11 digits, any format).'}}}
emit_nota
Emit credit/debit note (ARCA)
[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.
Destruktiv Externer Zugriff
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['customerCuit', 'amountARS', 'tipo', 'kind', 'associatedInvoice'], 'properties': {'kind': {'enum': ['credito', 'debito'], 'type': 'string', 'description': 'credito = Nota Crédito, debito = Nota Débito.'}, 'tipo': {'enum': ['A', 'B', 'C'], 'type': 'string', 'description': 'Invoice type letter for this nota.'}, 'concept': {'type': 'string', 'description': 'Items or concept description (optional).'}, 'amountARS': {'type': 'number', 'description': 'Note total in Argentine pesos (ARS).', 'exclusiveMinimum': 0}, 'requestId': {'type': 'string', 'description': 'Optional idempotency nonce.'}, 'customerCuit': {'type': 'string', 'description': 'Customer CUIT/CUIL (11 digits, any format).'}, 'associatedInvoice': {'type': 'object', 'required': ['tipo', 'ptoVta', 'nro'], 'properties': {'nro': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Sequential number of the original invoice.', 'exclusiveMinimum': 0}, 'tipo': {'enum': ['1', '6', '11'], 'type': 'string', 'description': 'WSFE tipoComprobante of the original factura: 1=A, 6=B, 11=C.'}, 'ptoVta': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Punto de venta of the original invoice.', 'exclusiveMinimum': 0}}, 'description': 'Reference to the original invoice being credited or debited.'}}}
find_customer
Find customer
Searches customers in the business by name and/or phone. Returns up to 20 matching customers sorted by name.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'name': {'type': 'string', 'description': 'Customer name substring to search (case-insensitive).'}, 'phone': {'type': 'string', 'description': 'Customer phone number or partial number to search.'}}}
get_fiscal_readiness
Get fiscal readiness
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.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
get_package_profile
Get package profile
Computes the shipment weight and item breakdown for a package. Accepts a saleId, a list of productIds, or an explicit weightGramsOverride.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'saleId': {'type': 'string', 'description': 'Velora Sale ID (takes priority over productIds).'}, 'productIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Array of Velora Product IDs (assumes qty=1 per id).'}, 'weightGramsOverride': {'type': 'number', 'description': 'Explicit weight override in grams.', 'exclusiveMinimum': 0}}}
get_payment_intent_status
Get payment intent status
Checks the current status of a Velora PaymentIntent. Accepts a paymentIntentId OR a customer name.
Nur Lesen Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'customerName': {'type': 'string', 'description': 'Customer name (fuzzy match).'}, 'paymentIntentId': {'type': 'string', 'description': 'Velora PaymentIntent id. Optional when customerName is provided.'}}}
list_suppliers
List suppliers
Returns all suppliers for this business (up to 50, sorted by name).
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'search': {'type': 'string', 'description': 'Optional name substring to filter suppliers.'}}}
open_business_overview
Open business overview
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.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'defaultTab': {'enum': ['cliente_360', 'cierre_dia', 'reposicion_stock', 'dashboard_ventas'], 'type': 'string', 'description': 'Optional fullscreen tab to open into.'}, 'customerName': {'type': 'string', 'description': 'Optional customer name to pre-search on the Cliente 360 tab.'}}}
open_caja_status
Open caja status
Opens a visual widget showing the current shift state and action buttons. Read-only here.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
open_catalog_selector
Open catalog selector
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).
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'search': {'type': 'string', 'description': 'Optional name filter (case-insensitive substring match).'}}}
open_cobro_status
Open cobro status
Opens the cobro status widget — a read-only view of ONE PaymentIntent's payment state. Accepts paymentIntentId OR customerName.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'customerName': {'type': 'string', 'description': 'Customer name (optional when paymentIntentId is provided).'}, 'paymentIntentId': {'type': 'string', 'description': 'Velora PaymentIntent id (optional when customerName is provided).'}}}
open_delivery_receipt
Open delivery receipt
Opens the comprobante + envío widget — a read-only view of the delivery receipt for a completed cobro. Accepts paymentIntentId, saleId, OR customerName.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'saleId': {'type': 'string', 'description': 'Velora Sale id (optional).'}, 'customerName': {'type': 'string', 'description': 'Customer name (optional).'}, 'paymentIntentId': {'type': 'string', 'description': 'Velora PaymentIntent id (optional).'}}}
open_onboarding
Open onboarding hub
Opens a graphical onboarding hub showing integration status and connect links. Read-only.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
open_payment_link_wizard
Open payment link wizard
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).
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['description', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['productId', 'quantity'], 'properties': {'quantity': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Units.', 'exclusiveMinimum': 0}, 'productId': {'type': 'string', 'minLength': 1, 'description': 'Product ID.'}, 'unitPriceOverride': {'type': 'number', 'description': 'Optional negotiated unit price.', 'exclusiveMinimum': 0}}}, 'minItems': 1, 'description': 'Line items (productId + quantity).'}, 'customerId': {'type': 'string', 'minLength': 1, 'description': 'Customer ID (optional).'}, 'description': {'type': 'string', 'minLength': 1, 'description': "Cobro description (e.g. '3 alfajores')."}}}
open_pending_orders
Open pending orders
Opens the pending cobros dashboard — a read-only widget listing PaymentIntents awaiting payment. Side-effect-free.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
open_sale_confirm
Open sale confirmation
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.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['productId', 'quantity'], 'properties': {'quantity': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Units to sell.', 'exclusiveMinimum': 0}, 'productId': {'type': 'string', 'minLength': 1, 'description': 'Product ID.'}}}, 'maxItems': 500, 'minItems': 1, 'description': 'Line items for the sale.'}, 'customerId': {'type': 'string', 'description': 'Optional customer ID (omit for anonymous sales).'}}}
open_shipment_prep
Open shipment prep
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.
Nur Lesen Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['items', 'originPostalCode', 'destinationPostalCode'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['productId', 'quantity'], 'properties': {'quantity': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Units.', 'exclusiveMinimum': 0}, 'productId': {'type': 'string', 'minLength': 1, 'description': 'Product ID.'}}}, 'minItems': 1, 'description': 'Line items to prepare for shipment.'}, 'declaredValue': {'type': 'number', 'minimum': 0, 'description': 'Declared value in ARS for insurance.'}, 'originPostalCode': {'type': 'string', 'description': 'Origin postal code (4 digits).'}, 'destinationPostalCode': {'type': 'string', 'description': 'Destination postal code (4 digits).'}}}
query_catalog
Query catalog
Lists active products in the business catalog. Returns products sorted by name, each with id, name, price (ARS), costPrice, sku, stock quantity, and weightGrams.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'search': {'type': 'string', 'description': 'Optional name filter (case-insensitive substring match).'}}}
query_sales
Query sales
Queries sales metrics from the database: 'ventas_periodo', 'margen', 'ranking_productos', 'por_empleado', or 'historial_cliente'.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['metrica'], 'properties': {'to': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': "End date YYYY-MM-DD. Requires 'from'."}, 'from': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': "Start date YYYY-MM-DD. Requires 'to'."}, 'limit': {'type': 'integer', 'default': 10, 'maximum': 50, 'minimum': 1, 'description': 'Max results (default 10, max 50).'}, 'preset': {'enum': ['hoy', 'semana', 'mes'], 'type': 'string', 'description': 'Preset date range. Mutually exclusive with from/to.'}, 'metrica': {'enum': ['ventas_periodo', 'margen', 'ranking_productos', 'por_empleado', 'historial_cliente'], 'type': 'string', 'description': 'Metric to query.'}, 'customer_name': {'type': 'string', 'minLength': 1, 'description': 'Customer name or fragment. Only for historial_cliente.'}}}
quote_shipping
Quote shipping
Quotes shipment rates from every active courier configured for the authenticated business and returns options sorted by price ascending.
Nur Lesen Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['originPostalCode', 'destinationPostalCode', 'weightGrams'], 'properties': {'weightGrams': {'type': 'number', 'description': 'Total shipment weight in grams.', 'exclusiveMinimum': 0}, 'declaredValue': {'type': 'number', 'minimum': 0, 'description': 'Declared value in ARS for insurance.'}, 'originPostalCode': {'type': 'string', 'description': 'Origin postal code (4 digits).'}, 'destinationPostalCode': {'type': 'string', 'description': 'Destination postal code (4 digits).'}}}
register_movement
Register cash movement
[demo: deshabilitada] Records a cash-register movement for the authenticated business ('purchase', 'income', 'salary', 'tax', 'adjustment').
Destruktiv Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['type', 'description', 'amount'], 'properties': {'date': {'type': 'string', 'description': 'ISO 8601 date/datetime. Defaults to now.'}, 'type': {'enum': ['purchase', 'tax', 'salary', 'adjustment', 'income', 'sale'], 'type': 'string', 'description': 'Movement type.'}, 'amount': {'type': 'number', 'description': 'Amount in ARS (always positive).', 'exclusiveMinimum': 0}, 'description': {'type': 'string', 'minLength': 1, 'description': "Description (e.g. 'Pago proveedor Distribuidora ABC')."}}}
register_sale
Register sale
[demo: deshabilitada] Records a sale for the authenticated business. Creates a full Sale with SaleItems, decrements inventory, creates a CashMovement and Invoice.
Destruktiv Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['productId', 'quantity'], 'properties': {'quantity': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Units sold (positive integer).', 'exclusiveMinimum': 0}, 'productId': {'type': 'string', 'minLength': 1, 'description': 'Product ID.'}, 'unitPrice': {'type': 'number', 'description': 'Sale price per unit in ARS (optional; catalog price used when omitted).', 'exclusiveMinimum': 0}}}, 'maxItems': 500, 'minItems': 1, 'description': 'Line items for the sale.'}, 'requestId': {'type': 'string', 'description': 'Optional idempotency override.'}, 'customerId': {'type': 'string', 'description': 'Optional customer ID. Omit for anonymous sales.'}, 'paymentMethod': {'enum': ['efectivo', 'transferencia', 'mp', 'qr', 'modo'], 'type': 'string', 'description': "Defaults to 'efectivo' when omitted."}}}
return_sale
Return sale
[demo: deshabilitada] Reverses the N most-recent sales within a time window. Restores inventory, removes CashMovement, SaleItem, Invoice, and Sale records. Destructive and irreversible.
Destruktiv Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['confirm'], 'properties': {'count': {'type': 'integer', 'default': 1, 'maximum': 10, 'description': 'Number of recent sales to reverse (max 10).', 'exclusiveMinimum': 0}, 'confirm': {'type': 'boolean', 'const': True, 'description': 'Must be explicitly true to confirm reversing sales.'}, 'cutoffHours': {'type': 'number', 'default': 24, 'maximum': 48, 'description': 'Only consider sales within the last N hours (max 48).', 'exclusiveMinimum': 0}}}
send_whatsapp_template
Send WhatsApp template
[demo: deshabilitada] Sends a pre-approved Meta WhatsApp template message. Window-independent — can be sent proactively, outside the 24-hour session window.
Destruktiv Externer Zugriff
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['to', 'templateName'], 'properties': {'to': {'type': 'string', 'minLength': 1, 'description': 'Recipient phone number (local AR or E.164).'}, 'components': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'parameters'], 'properties': {'type': {'enum': ['body', 'header', 'button'], 'type': 'string', 'description': 'Component section to populate.'}, 'parameters': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'text'], 'properties': {'text': {'type': 'string'}, 'type': {'type': 'string', 'const': 'text'}}}, 'description': 'Ordered text substitutions.'}}}, 'description': 'Template variable substitutions (omit for templates with no placeholders).'}, 'languageCode': {'type': 'string', 'description': "BCP-47 language code (defaults to 'es_AR')."}, 'templateName': {'type': 'string', 'description': 'Exact template name as registered in Meta Business Manager.'}}}
send_whatsapp_text
Send WhatsApp text
[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).
Destruktiv Externer Zugriff
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['to', 'text'], 'properties': {'to': {'type': 'string', 'minLength': 1, 'description': 'Recipient phone number (local AR or E.164).'}, 'text': {'type': 'string', 'minLength': 1, 'description': 'Message text body.'}, 'mediaUrl': {'type': 'string', 'format': 'uri', 'description': 'Optional public URL of a media file to attach.'}}}
stock_load
Stock load
[demo: deshabilitada] Records inbound stock for a product — restock or initial stock, with an audit trail.
Destruktiv Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['itemName', 'quantity'], 'properties': {'itemName': {'type': 'string', 'minLength': 1, 'description': 'Product name for resolution or auto-creation.'}, 'quantity': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Units received.', 'exclusiveMinimum': 0}, 'productId': {'type': 'string', 'description': 'Existing product ID (optional if itemName resolves it).'}, 'unitPrice': {'type': 'number', 'minimum': 0, 'description': 'Cost per unit in ARS.'}, 'supplierId': {'type': 'string', 'description': 'Existing supplier ID (optional).'}, 'supplierName': {'type': 'string', 'description': 'Supplier name (optional).'}, 'autoCreateProduct': {'type': 'boolean', 'default': False, 'description': 'Auto-create product if not found.'}, 'createPurchaseRequest': {'type': 'boolean', 'default': False, 'description': 'Also create a purchase request for this stock load.'}}}
track_shipment
Track shipment
Tracks the current status and event history of a shipment by tracking number.
Nur Lesen Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['trackingNumber', 'provider'], 'properties': {'provider': {'type': 'string', 'description': "Courier that created the shipment ('andreani', 'oca')."}, 'trackingNumber': {'type': 'string', 'description': 'Tracking number returned by the courier at shipment creation time.'}}}
upload_catalog
Upload catalog
[demo: deshabilitada] Bulk-creates products in the business catalog from a structured list (up to 50 items).
Destruktiv
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['products'], 'properties': {'products': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'price'], 'properties': {'name': {'type': 'string', 'description': 'Product name.'}, 'price': {'type': 'number', 'description': 'Selling price in ARS.'}}}, 'maxItems': 50, 'minItems': 1, 'description': 'List of products to create (1â\x80\x9350 items).'}}}
upsert_customer
Upsert customer
[demo: deshabilitada] Creates a new customer or updates an existing one for the authenticated business.
Destruktiv Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'city': {'type': 'string', 'description': 'Customer city or locality (optional).'}, 'name': {'type': 'string', 'description': 'Customer display name.'}, 'email': {'type': 'string', 'description': 'Customer email address (optional).'}, 'phone': {'type': 'string', 'description': 'Customer phone number.'}, 'address': {'type': 'string', 'description': 'Customer street address (optional).'}, 'customerId': {'type': 'string', 'description': 'When provided, updates the customer with this id.'}, 'postalCode': {'type': 'string', 'description': 'Customer postal code (optional).'}}}
validate_cuit
Validate CUIT/CUIL
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.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['cuit'], 'properties': {'cuit': {'type': 'string', 'description': 'CUIT/CUIL in any format (digits, hyphens, or spaces).'}}}
Hinzugefügt
open_shipment_prep
17. September 2026 12:37
Hinzugefügt
open_business_overview
17. September 2026 12:37
Hinzugefügt
open_onboarding
17. September 2026 12:37
Hinzugefügt
open_caja_status
17. September 2026 12:37
Hinzugefügt
open_sale_confirm
17. September 2026 12:37
Hinzugefügt
upload_catalog
17. September 2026 12:37
Hinzugefügt
connect_tiendanube
17. September 2026 12:37
Hinzugefügt
connect_whatsapp
17. September 2026 12:37
Hinzugefügt
connect_pedidosya
17. September 2026 12:37
Hinzugefügt
connect_mercadopago
17. September 2026 12:37
Hinzugefügt
query_sales
17. September 2026 12:37
Hinzugefügt
delete_supplier
17. September 2026 12:37
Hinzugefügt
edit_supplier
17. September 2026 12:37
Hinzugefügt
create_purchase_request
17. September 2026 12:37
Hinzugefügt
create_supplier
17. September 2026 12:37
Hinzugefügt
list_suppliers
17. September 2026 12:37
Hinzugefügt
create_tracked_payment_link
17. September 2026 12:37
Hinzugefügt
open_delivery_receipt
17. September 2026 12:37
Hinzugefügt
open_cobro_status
17. September 2026 12:37
Hinzugefügt
open_pending_orders
17. September 2026 12:37
Hinzugefügt
open_payment_link_wizard
17. September 2026 12:37
Hinzugefügt
get_payment_intent_status
17. September 2026 12:37
Hinzugefügt
caja_registrar_movimiento
17. September 2026 12:37
Hinzugefügt
caja_ciclo_caja
17. September 2026 12:37
Hinzugefügt
caja_consultar_saldo
17. September 2026 12:37
Hinzugefügt
connection_status
17. September 2026 12:37
Hinzugefügt
send_whatsapp_template
17. September 2026 12:37
Hinzugefügt
send_whatsapp_text
17. September 2026 12:37
Hinzugefügt
get_package_profile
17. September 2026 12:37
Hinzugefügt
track_shipment
17. September 2026 12:37