{"$schema":"https://ar-agents.vercel.app/schemas/discovery.v1.json","generatedAt":"2026-05-13","packages":[{"name":"@ar-agents/identity","version":"0.7.0","repository":"https://github.com/ar-agents/ar-agents/tree/main/packages/identity","npm":"https://www.npmjs.com/package/@ar-agents/identity","toolCount":2,"tools":[{"name":"lookup_cuit_afip","description":"Look up an Argentine CUIT/CUIL against AFIP's padron webservice. Returns taxpayer name, tax condition (Monotributo / Responsable Inscripto / etc.), monotributo category if applicable, and registered a"},{"name":"validate_cuit","description":"Validate an Argentine CUIT/CUIL via the AFIP modulo-11 check digit algorithm. PURE FUNCTION: no API call, no environment dependencies, sub-millisecond latency, free. Returns whether the input is mathe"}]},{"name":"@ar-agents/identity-attest","version":"0.4.2","repository":"https://github.com/ar-agents/ar-agents/tree/main/packages/identity-attest","npm":"https://www.npmjs.com/package/@ar-agents/identity-attest","toolCount":5,"tools":[{"name":"check_verification_status","description":"Check whether a verification is still pending, completed, expired, or failed. Use this between user turns when waiting for the user to click a magic link."},{"name":"get_attestation","description":"Fetch the signed attestation for a completed verification. Returns null if not yet verified. The attestation includes trust_level (0-1), method, subject, claims, and a signature you can persist for au"},{"name":"list_verification_methods","description":"List all verification methods the host app has registered (with trust levels). Use to know what options are available before calling request_identity_verification."},{"name":"request_identity_verification","description":"Start a verification flow to prove the user controls a phone, email, or other identity asset. Returns a request_id you'll use to check status, plus a verification_url (for magic-link flows) or instruc"},{"name":"submit_otp_code","description":"Submit the OTP code the user dictated back to you (after they received it via WhatsApp/SMS/Email). Returns the signed attestation if correct, throws InvalidOtpCodeError if wrong (with attempts remaini"}]},{"name":"@ar-agents/mi-argentina","version":"0.1.0","description":"Mi Argentina (gov OIDC) as drop-in tools for the Vercel AI SDK. PKCE login, ID-token JWT verification with JWKS caching, userinfo, refresh.","repository":"https://github.com/ar-agents/ar-agents/tree/main/packages/mi-argentina","npm":"https://www.npmjs.com/package/@ar-agents/mi-argentina","toolCount":5,"tools":[{"name":"mi_argentina_start_login","description":"Start an OIDC login flow against Mi Argentina. Returns the authorize URL + state/nonce for replay protection."},{"name":"mi_argentina_complete_login","description":"Exchange the OIDC code for an ID token + access token. Verifies the JWT signature against the cached JWKS."},{"name":"mi_argentina_get_user_profile","description":"Fetch the authenticated user's profile (DNI, name, contact info) from the Mi Argentina userinfo endpoint."},{"name":"mi_argentina_verify_id_token","description":"Verify an ID token JWT against Mi Argentina's published JWKS. Use to validate identity claims from upstream services."},{"name":"mi_argentina_refresh_token","description":"Refresh an expired access token using a refresh token. Maintains long-lived sessions without forcing re-login."}]},{"name":"@ar-agents/firma-digital","version":"0.1.0","description":"AR digital signature primitives — PKCS#7/CMS verification with AC-Raíz/ONTI trust-anchor heuristic and certificate fingerprint pinning.","repository":"https://github.com/ar-agents/ar-agents/tree/main/packages/firma-digital","npm":"https://www.npmjs.com/package/@ar-agents/firma-digital","toolCount":4,"tools":[{"name":"firma_inspect_cert","description":"Inspect an X.509 certificate (subject, issuer, validity, fingerprint, AKI/SKI, key usage). Use before trusting any cert in a verification chain."},{"name":"firma_verify_chain","description":"Verify an X.509 chain of trust against a configurable AR trust anchor (defaults to AC-Raíz / ONTI heuristic). Returns the chain depth + the trust-anchor identity."},{"name":"firma_is_onti_issued","description":"Predicate: does this certificate ultimately chain to an ONTI-issued AC-Raíz root? Use to gate operations that require state-issued PKI identity."},{"name":"firma_verify_cms_signature","description":"Verify a PKCS#7/CMS detached or attached signature against a payload. Returns the signer chain + claim of authenticity."}]},{"name":"@ar-agents/gde-tad","version":"0.2.0","description":"TAD (Trámites a Distancia) + GDE (Gestión Documental Electrónica) primitives — DEC inbox polling, Mis Trámites listing, IGJ inscription pre-flight. The 4th pieza for sociedades-IA.","repository":"https://github.com/ar-agents/ar-agents/tree/main/packages/gde-tad","npm":"https://www.npmjs.com/package/@ar-agents/gde-tad","toolCount":4,"tools":[{"name":"get_critical_notifications","description":"Filtra solo las notificaciones de severidad 'critical' del DEC, ordenadas por fecha de respuesta más cercana."},{"name":"list_domicilio_inbox","description":"Lista las notificaciones del Domicilio Electrónico Constituido (DEC) de una sociedad/persona, con severidad calculada (critical/important/info) por organismo + asunto + deadline."},{"name":"list_mis_tramites","description":"Lista los expedientes/trámites en TAD donde la sociedad/persona es parte. Read-only."},{"name":"validate_igj_inscription","description":"Pre-flight validator para una inscripción IGJ (SAS/SRL/SA/SOCIEDAD-IA). Pure algorithm — no network, no auth."}]},{"name":"@ar-agents/mercadopago","version":"0.17.2","repository":"https://github.com/ar-agents/ar-agents/tree/main/packages/mercadopago","npm":"https://www.npmjs.com/package/@ar-agents/mercadopago","toolCount":89,"tools":[{"name":"analyze_payment_3ds","description":"Pure local analyzer for a Payment's 3DS (Strong Customer Authentication) state. Pass a payment_id (string) and the tool fetches the Payment then derives { status: 'not_required'|'frictionless'|'challe"},{"name":"calculate_installments","description":"Calculate cuotas (installments) options for a given amount. THE killer Argentine feature — returns options like '12 cuotas sin interés de $X' (recommended_message field) which you should surface VERBA"},{"name":"cancel_order","description":"Cancel an Order. Releases any auth-holds and marks the Order as canceled. For orders that have already been CAPTURED, use refund_payment instead — cancel only works pre-capture. **IRREVERSIBLE — confi"},{"name":"cancel_payment","description":"Cancel a pending or in_process payment (only works before approval). Once approved, use refund_payment instead. Common use: cancel an unpaid ticket payment that's still pending. **IRREVERSIBLE — confi"},{"name":"cancel_point_payment_intent","description":"Cancel an OPEN point payment intent before the buyer interacts with the device. ONLY WORKS while state='OPEN' — once the buyer taps, you can't cancel; refund_payment after the fact instead. **IRREVERS"},{"name":"cancel_qr_payment","description":"Cancel a pending QR order on a POS. Necessary if the buyer never scans — otherwise the next create_qr_payment on the same POS returns 409. **IRREVERSIBLE — but low-stakes since the QR has not been pai"},{"name":"cancel_subscription","description":"Cancel an active Mercado Pago subscription. After cancellation, MP will not charge the customer again. This action is irreversible — confirm with the user before calling."},{"name":"capture_order","description":"Capture a previously-authorized Order (only for orders created with capture_mode='manual'). Captures up to the originally-authorized amount; pass amount for partial capture. Common use: ride-share mar"},{"name":"capture_payment","description":"Capture an authorized credit-card payment that was created with capture=false. Use for hold-then-capture flows (e.g., authorize on order, capture on shipment). Optional partial amount. **MOVES MONEY —"},{"name":"charge_saved_card","description":"Charge a previously-saved card for a returning customer. Requires customer_id + card_id (from list_customer_cards) AND a fresh CVV the user provides this session. AR Mercado Pago does NOT support CVV-"},{"name":"compute_marketplace_fee","description":"PURE HELPER (no network) — given a transaction amount + fee rule (% or flat ARS, with optional min/max floors), returns the exact `marketplace_fee` value in ARS to pass to create_order or create_payme"},{"name":"confirm_3ds_challenge","description":"After the buyer completes a 3DS challenge (redirected back from challengeUrl), call this to poll MP and confirm whether the payment is now resolved. Polls get_payment up to N times with exponential ba"},{"name":"create_customer","description":"Create a Mercado Pago customer record so the buyer can save cards for future charges. Idempotent on email — if a customer with that email exists, MP returns it instead of creating a duplicate. Use fin"},{"name":"create_customer_card","description":"Add a saved card to an existing customer using a card_token (one-time token from MP frontend Cardform — agents should NEVER take raw card data, that's a PCI violation). Returns the saved CustomerCard "},{"name":"create_order","description":"Create a new Order via MP's modern Order Management API. DIFFERENT from create_payment_preference: Order is a transactional entity with explicit lifecycle (created → processed → captured/canceled), su"},{"name":"create_payment","description":"Create a one-time payment. Two flows: (a) with a card token from MP frontend Cardform — for transparent checkout; (b) without token, for non-card methods like 'account_money', 'rapipago', 'pagofacil'."},{"name":"create_payment_preference","description":"Create a Mercado Pago Checkout Pro preference and get back a payment URL (init_point) to send to the customer. THIS is the recommended way for an agent to take a payment when you only have a payer ema"},{"name":"create_point_payment_intent","description":"Create a payment intent on a physical Point device — the device prompts the buyer to tap/insert/swipe their card. Returns immediately with intent_id; query state via get_point_payment_intent or wait f"},{"name":"create_pos","description":"Create a POS (Point of Sale) under a store. The POS's external_id is what create_qr_payment uses. Each physical checkout / counter / agent typically has its own POS. Categories are MP-defined (default"},{"name":"create_qr_payment","description":"Generate a dynamic in-store QR for a buyer to scan with any AR wallet (Modo, BNA+, Cuenta DNI, Naranja X, Mercado Pago, etc. — interop is mandated by Transferencias 3.0). Requires a pre-configured POS"},{"name":"create_store","description":"Create a store under the seller's MP account. Stores are the parent entity for POSes (which generate QR payments). Required ONE-TIME setup before create_pos. Pass a unique external_id and a display na"},{"name":"create_subscription","description":"Create a Mercado Pago recurring subscription. Returns an init_point URL where the customer must complete the FIRST payment with their card and CVV (this is a hard MP requirement; agents cannot bypass "},{"name":"create_subscription_plan","description":"Create a REUSABLE subscription plan (preapproval_plan). Different from create_subscription: a plan defines price + frequency once, then customers subscribe to it via subscribe_to_plan. Use plans for S"},{"name":"create_webhook","description":"Subscribe a webhook URL to a MP topic (payment, subscription_authorized_payment, subscription_preapproval, merchant_order, point_integration_wh). MP will POST to this URL when events of that topic fir"},{"name":"delete_customer_card","description":"Delete a saved card from a customer. Common use: customer requests removal, or expired card cleanup. **IRREVERSIBLE — confirm with the user before calling. The customer must re-enter card data (PAN + "},{"name":"delete_pos","description":"Delete a POS. IRREVERSIBLE. Cancels any pending QR orders attached to it. Confirm with user before calling."},{"name":"delete_store","description":"Delete a store. IRREVERSIBLE. Confirm with user before calling. Will fail if the store has associated POSes — delete those first."},{"name":"delete_webhook","description":"Delete a webhook subscription. MP stops POSTing to it immediately. **IRREVERSIBLE — confirm before calling. State the webhook URL + topic so the user knows which subscription is being removed. Re-subs"},{"name":"explain_payment_status","description":"PURE HELPER (no network) — given a Payment object (from get_payment / create_payment / handle_webhook), returns { summary, recommendedAction, final, paid, retryable } in Spanish. Translates MP's crypt"},{"name":"find_applicable_promos","description":"PURE HELPER (no network, sub-ms) — returns the 'cuotas sin interés' promotions applicable to a given (issuer, paymentMethodId, amount, category, date) tuple. Includes the federal Ahora 3/6/12/18/24/30"},{"name":"find_customer_by_email","description":"Find an existing customer by email address. Returns the customer object if found, or null. Use before create_customer to avoid duplicate records."},{"name":"get_account_balance","description":"Get the seller's current MP wallet balance. Returns { available_balance, unavailable_balance, total_amount, currency_id }. The available balance is what the seller can withdraw or pay with right now; "},{"name":"get_account_info","description":"Get info about the Mercado Pago account that owns the access token: site_id (MLA=Argentina), country_id, user_type (registered, partial, etc.). Useful to verify the agent is connected to the right acc"},{"name":"get_customer","description":"Get a customer by id. Returns full Customer object: email, first_name, last_name, identification, address, default_card, registered cards. PURE READ. USE WHEN you have the customer_id from a previous "},{"name":"get_customer_card","description":"Get details of a single saved card by (customer_id, card_id). Returns last 4 digits, expiration, brand, issuer. PURE READ — useful before charge_saved_card to confirm the card is still valid."},{"name":"get_dispute","description":"Get details of a specific dispute including reason, amount, resolution status. Read-only."},{"name":"get_merchant_order","description":"Get a merchant_order with all its associated payments + shipments. MerchantOrder is the parent entity for Payments associated with a single Preference — one Order can have multiple partial Payments (r"},{"name":"get_order","description":"Fetch an Order by ID. Returns the Order with its lifecycle status and any attached payments/refunds."},{"name":"get_payment","description":"Fetch a single payment by ID. Use to confirm status after webhook arrives, or to inspect details (status_detail explains rejections)."},{"name":"get_payment_preference","description":"Fetch a Checkout Pro preference by ID. Returns the preference config and current init_point URLs. Use to inspect a previously-created link."},{"name":"get_point_payment_intent","description":"Get the current state of a Point payment intent (OPEN, PROCESSING, FINISHED, CANCELED, ERROR). USE in polling loops if you can't wait for the webhook. When state=FINISHED, the intent.payment.id is the"},{"name":"get_pos","description":"Fetch a POS by id. Returns: name, store_id, category, external_id, qr_template (if configured). PURE READ. Use when you need to find the external_id for create_qr_payment."},{"name":"get_refund","description":"Fetch a single refund by (payment_id, refund_id). Returns the Refund object with amount, status, date_created. PURE READ — useful to verify a refund processed or to reconcile partial-refund history."},{"name":"get_settlement","description":"Get details of a single settlement: amount, date_scheduled, date_processed, bank_account info (CBU + bank name)."},{"name":"get_store","description":"Fetch a single store by (user_id, store_id). Returns store details: name, location, business_hours, external_id. PURE READ."},{"name":"get_subscription_plan","description":"Fetch a subscription plan by id. Returns plan config: amount, frequency, status, init_point. Use to inspect a plan before subscribing customers, or to display plan details to the user."},{"name":"get_subscription_status","description":"Check the current status of a Mercado Pago subscription. Use this to confirm the customer completed the first payment (status becomes 'authorized') or to inspect the next charge date."},{"name":"get_test_cards","description":"Pure helper that returns the official MP test cards for AR (MLA): VISA/Mastercard/Amex credit + debit, with the 'magic' holder names that route the payment to specific status_detail values (APRO=appro"},{"name":"handle_webhook","description":"Process an incoming MP webhook in ONE call: verify the HMAC-SHA256 signature, parse the event, and (optionally) auto-fetch the underlying resource (Payment, Subscription, Order). Returns the structure"},{"name":"list_account_movements","description":"List wallet movements (incoming payments, transfers, refunds, holdings) for the active MP account. Filter by date range with `from`/`to` (ISO 8601). Useful for monthly conciliation or 'show me what ca"},{"name":"list_bank_accounts","description":"List the bank accounts (CBUs) the seller has registered with MP for receiving payouts. Returns an array — the one with `is_default: true` is where settlements (release_money) go. USE BEFORE list_settl"},{"name":"list_customer_cards","description":"List the saved cards for a customer. Returns array with last 4 digits, expiration, payment method (visa, master, naranja, etc.). The card_id can be used in subsequent create_payment calls to charge a "},{"name":"list_identification_types","description":"List valid identification types for the seller's site. AR returns: DNI, CI, LE, LC, Otro, Pasaporte, CUIT, CUIL with their min/max length. Useful to validate an identification before passing to create"},{"name":"list_issuers","description":"List card issuers (banks) that support a payment_method_id. Optionally filter by `bin` (first 6 digits of the card) for accurate issuer detection. Useful with calculate_installments — issuer-specific "},{"name":"list_payment_disputes","description":"List all disputes / chargebacks raised against a payment. Read-only — resolution is dashboard-only. Surface the dashboard URL `https://www.mercadopago.com.ar/disputes/{dispute_id}` to the user when th"},{"name":"list_payment_methods","description":"List all payment methods enabled for the seller's MP account (visa, master, naranja, naranja_x, cabal, account_money, rapipago, pagofacil, etc.). Use to validate which methods you can offer the custom"},{"name":"list_point_devices","description":"List the physical Point devices (Smart, Tap to Pay, etc.) linked to the seller's MP account. Distinct from logical POS — these are actual terminals at brick-and-mortar shops. Returns each device's id "},{"name":"list_pos","description":"List all POSes for the seller (or filtered by store_id). Use to find an existing POS before create_qr_payment, or to surface options."},{"name":"list_refunds","description":"List all refunds for a given payment. Returns array of Refund objects. Useful to confirm a refund was processed or to inspect partial-refund history."},{"name":"list_settlements","description":"List settlements (release_money) — i.e. transfers from the MP wallet to the seller's registered bank account (CBU). USE WHEN the user asks 'cuándo me deposita MP' or for monthly bank-conciliation repo"},{"name":"list_settlements_all","description":"Collect ALL settlements matching a filter — auto-paginates. Pass `max_items` to cap. Use for monthly bank-conciliation reports."},{"name":"list_stores","description":"List all stores configured for this MP account. Use this to find an existing store_id before create_pos, or to surface store options to the agent."},{"name":"list_subscription_payments","description":"List the auto-charge attempts (authorized_payments) under a subscription. Useful for 'show me the cobros del último mes for this client' or to debug a failing recurring charge."},{"name":"list_subscription_plans","description":"List all subscription plans defined for this MP account. Useful before create_subscription_plan to check if one already exists, or for surfacing options to a customer."},{"name":"list_webhooks","description":"List all webhook subscriptions configured for this MP application. Use to see what topics + URLs are wired before adding new ones."},{"name":"mp_health_check","description":"Liveness probe against MP. Returns { ok, latencyMs, userId, circuit }. USE THIS as the first call in long-running agent workflows to verify (a) network path to MP is up, (b) accessToken is valid, (c) "},{"name":"oauth_authorize_url","description":"Build the URL the SELLER (third-party MP account) visits to authorize your marketplace app. Pass the seller's redirect uri (must be whitelisted in MP dev panel) and an opaque state token (CSRF protect"},{"name":"oauth_exchange_code","description":"Exchange the authorization code (from the OAuth redirect) for an `OAuthToken`. Returns access_token, refresh_token, user_id, and expires_in. **PERSIST the entire response** — refresh_token is long-liv"},{"name":"oauth_refresh_token","description":"Refresh a per-seller access_token using the saved refresh_token. Call PROACTIVELY before expires_in elapses, or REACTIVELY on a 401 from a per-seller MercadoPagoClient. Returns a fresh OAuthToken — pe"},{"name":"pause_subscription","description":"Pause an authorized Mercado Pago subscription. Charges stop until resumed. Only works on subscriptions in 'authorized' status."},{"name":"refund_payment","description":"Refund an approved payment. Pass amount for partial refund; omit for full refund. Idempotency key is auto-generated based on paymentId+amount to prevent double-refunds on retries. **IRREVERSIBLE AND M"},{"name":"register_bank_account","description":"Register a new bank account (CBU) for the seller. NOTE: MP usually requires this through the dashboard for compliance — this endpoint may not work for all accounts. If it fails with 403, redirect the "},{"name":"resume_subscription","description":"Resume a paused Mercado Pago subscription. Charges resume on the next scheduled date. Only works on subscriptions in 'paused' status."},{"name":"search_merchant_orders","description":"Search merchant_orders by preference_id, external_reference, or status. Paginated. Returns up to 50 per page. USE WHEN you have a preference_id and want all its derived merchant_orders, or when reconc"},{"name":"search_payments","description":"Search payments with filters. Most common: by external_reference (your-system identifier) to find all payments for an order, or by status='approved' to list successful charges in a date range. Returns"},{"name":"search_payments_all","description":"Collect ALL payments matching a filter — auto-paginates under the hood. Returns an array (NOT paginated) so the agent doesn't have to manage offset/limit loops manually. SAFETY: pass `max_items` to ca"},{"name":"search_subscriptions","description":"Search subscriptions across the seller's account. Filter by status (pending/authorized/paused/cancelled), payer_email, external_reference, or preapproval_plan_id (to find all subscribers of a plan). P"},{"name":"subscribe_to_plan","description":"Subscribe a customer to an existing reusable plan. Returns a Preapproval with init_point URL where the customer completes first payment. Cleaner than create_subscription when you have fixed tiers."},{"name":"update_customer","description":"Update a customer's profile (first_name, last_name, phone, identification, address, default_card). MP merges the patch — fields you don't send remain unchanged. Use to keep customer records in sync (e"},{"name":"update_merchant_order","description":"Update a merchant_order — typically to add items or shipping info. Most agent flows don't need this; use only when integrating with a custom shipping flow that requires updating the MO mid-lifecycle."},{"name":"update_order","description":"Patch an existing Order before it's captured/canceled. Common use: update items or external_reference."},{"name":"update_payment_preference","description":"Update a Checkout Pro preference (notification_url, back_urls, items, payer info, payment_methods exclusion list). Only works on preferences NOT yet paid. Common use: regenerate the link with a new no"},{"name":"update_point_device_mode","description":"Switch a Point device's operating_mode between 'PDV' (bound to a logical POS, takes payments triggered through that POS) and 'STANDALONE' (works independently, accepts any payment). PDV is for cash-re"},{"name":"update_pos","description":"Update a POS's properties (name, category, external_id). MP merges the patch."},{"name":"update_store","description":"Update a store's properties (name, location, business_hours, external_id). MP merges the patch."},{"name":"update_subscription","description":"Update a subscription's amount, status, reason, external_reference, OR card_token_id (to switch payment method when the buyer's card is expired/declined). For card swap: pass card_token_id from a fres"},{"name":"update_subscription_plan","description":"Update a subscription plan's reason / amount / status / back_url. Existing customer subscriptions to the plan are NOT automatically updated — only NEW subscribers get the new pricing."},{"name":"update_webhook","description":"Update a webhook's URL or topic. Useful when you change deployment URLs without resubscribing from scratch."},{"name":"validate_tax_id","description":"PURE HELPER (no network, sub-ms) — validates a tax ID against the appropriate country algorithm. Supports AR (DNI/CUIT/CUIL with modulo-11), BR (CPF/CNPJ with two-step weighted modulo), MX (RFC struct"}]},{"name":"@ar-agents/mercadolibre","version":"0.1.0","description":"Mercado Libre Agent Toolkit for the Vercel AI SDK 6.","repository":"https://github.com/ar-agents/ar-agents/tree/main/packages/mercadolibre","npm":"https://www.npmjs.com/package/@ar-agents/mercadolibre","toolCount":14,"tools":[{"name":"list_my_items"},{"name":"get_item"},{"name":"create_item"},{"name":"update_item_price_or_stock"},{"name":"categorize_listing_and_plan_attributes"},{"name":"list_unanswered_questions"},{"name":"answer_question"},{"name":"classify_question_spam"},{"name":"list_recent_orders"},{"name":"get_order"},{"name":"list_open_claims"},{"name":"defend_claim"},{"name":"get_seller_reputation"},{"name":"list_promotion_candidates"}]},{"name":"@ar-agents/whatsapp","version":"0.4.0","repository":"https://github.com/ar-agents/ar-agents/tree/main/packages/whatsapp","npm":"https://www.npmjs.com/package/@ar-agents/whatsapp","toolCount":6,"tools":[{"name":"mark_whatsapp_read"},{"name":"send_whatsapp_buttons"},{"name":"send_whatsapp_list"},{"name":"send_whatsapp_media"},{"name":"send_whatsapp_template"},{"name":"send_whatsapp_text"}]},{"name":"@ar-agents/banking","version":"0.4.0","description":"Argentine banking primitives (CBU/CVU + bank lookup) and BCRA Central de Deudores adapter as drop-in tools for the Vercel AI SDK.","repository":"https://github.com/ar-agents/ar-agents/tree/main/packages/banking","npm":"https://www.npmjs.com/package/@ar-agents/banking","toolCount":11,"tools":[{"name":"get_bcra_variable","description":"Fetch the time series for a specific BCRA Principales Variables indicator by id. USE THIS WHEN: the user wants historical values of a specific variable (cotización USD, CER, UVA, inflación). Optional "},{"name":"get_cer","description":"Convenience: fetch the latest CER (Coeficiente de Estabilización de Referencia, BCRA variable id 30). CER is the official inflation-tracking coefficient used to adjust regulated debt and contracts. US"},{"name":"get_reservas_bcra","description":"Convenience: fetch the latest BCRA international reserves (Reservas Internacionales, variable id 1). USE THIS WHEN: the user asks about reservas, USD reserves, or BCRA balance sheet. Returns the lates"},{"name":"get_usd_oficial","description":"Convenience: fetch the latest USD oficial cotización (Tipo de Cambio Minorista, BCRA variable id 4). Returns the current value + date + the most recent N daily datapoints. USE THIS WHEN: the user asks"},{"name":"get_uva","description":"Convenience: fetch the latest UVA (Unidad de Valor Adquisitivo, BCRA variable id 31). UVA is the inflation-adjusted unit used for AR mortgages, fixed-term deposits, and rentals. USE THIS WHEN: the use"},{"name":"list_banks","description":"Return the full list of known Argentine banks with their BCRA codes. USE THIS WHEN: you need to render a dropdown of banks for the user to pick from, or need to enumerate available entities for a work"},{"name":"list_bcra_variables","description":"List all BCRA Principales Variables (monetary indicators) with their current latest value and ID. Returns variables like Reservas Internacionales, Tipo de Cambio Minorista USD, Tipo de Cambio Mayorist"},{"name":"list_psps","description":"Return the full list of known Argentine PSPs (fintechs / digital wallets / virtual account issuers — Mercado Pago, Ualá, Naranja X, Personal Pay, etc.) with their CVU prefixes. USE THIS WHEN: you need"},{"name":"lookup_bank_by_code","description":"Look up the Argentine bank or PSP (payment service provider) by its 3-digit BCRA-assigned entity code. PURE FUNCTION: in-memory lookup, free, sub-millisecond. Returns the entity's full legal name, sho"},{"name":"lookup_credit_situation","description":"Look up the BCRA Central de Deudores credit situation for an Argentine CUIT. Returns the worst situation code (1=normal, 2=low risk <90 days, 3=medium risk 90-180 days, 4=high risk 180-365 days, 5=irr"},{"name":"validate_cbu","description":"Validate an Argentine CBU (Clave Bancaria Uniforme, traditional bank account) or CVU (Clave Virtual Uniforme, fintech wallet account) via the BCRA dual mod-10 check-digit algorithm. PURE FUNCTION: no "}]},{"name":"@ar-agents/facturacion","version":"0.3.0","description":"AFIP/ARCA factura electrónica (WSFE) as drop-in tools for the Vercel AI SDK. Reuses WSAA from @ar-agents/identity.","repository":"https://github.com/ar-agents/ar-agents/tree/main/packages/facturacion","npm":"https://www.npmjs.com/package/@ar-agents/facturacion","toolCount":10,"tools":[{"name":"consultar_factura_emitida","description":"Consultar los detalles completos de una factura ya emitida (CAE, fecha, importes, doc receptor). USE WHEN: necesitás verificar que un CAE es válido y matchea con tu base de datos, o estás migrando de "},{"name":"consultar_ultimo_comprobante","description":"Consultar el último número de comprobante autorizado para un (PtoVta, CbteTipo) — i.e. cuál fue el número del último Factura C emitido desde el punto de venta 1. USE BEFORE emitir_factura para obtener"},{"name":"emitir_factura","description":"Emitir una factura electrónica vía AFIP/ARCA WSFE. Solicita el CAE (Código de Autorización Electrónico) que valida la factura ante AFIP. RETURNS: el CAE (14 dígitos), su fecha de vencimiento, y el núm"},{"name":"health_check_afip","description":"Health check de AFIP WSFE — devuelve el status de los servidores app, db, y auth. Use as a /health endpoint o como pre-flight rápido antes de emitir muchas facturas. PURE READ, latencia < 200ms."},{"name":"obtener_alicuotas_iva","description":"Listar las alícuotas de IVA disponibles según AFIP (21%=5, 10.5%=4, 27%=6, 0%=3, etc.). USE WHEN: el usuario necesita ver las opciones para construir una factura B o A. HEAVY: round-trip a AFIP. Prefe"},{"name":"obtener_cotizacion","description":"Obtener la cotización oficial AFIP de una moneda extranjera vs ARS. REQUIRED antes de emitir cualquier factura no-PES (AFIP rechaza si la cotización está desactualizada). Devuelve el monCotiz a usar e"},{"name":"obtener_tipos_comprobante","description":"Listar los tipos de comprobante disponibles según AFIP (Factura A=1, B=6, C=11, Nota Crédito A=3, etc.). USE WHEN: necesitás mostrar al usuario la lista actualizada (puede haber tipos nuevos que no es"},{"name":"obtener_tipos_concepto","description":"Listar los tipos de concepto: Productos (1), Servicios (2), Productos y Servicios (3). HEAVY: round-trip a AFIP. Preferí `Concepto` constants."},{"name":"obtener_tipos_documento","description":"Listar los tipos de documento que AFIP acepta (CUIT=80, DNI=96, Pasaporte=94, Consumidor Final=99, etc.). HEAVY: round-trip a AFIP. Preferí los constants de `DocTipo` para flujos comunes."},{"name":"obtener_tipos_moneda","description":"Listar las monedas que WSFE acepta para emitir facturas (PES = Pesos, DOL = Dólar, 060 = Euro, 012 = Real, etc.). USE WHEN: el usuario quiere emitir Factura E (exportación) o multi-moneda. HEAVY: roun"}]},{"name":"@ar-agents/shipping","version":"0.2.0","description":"Argentine shipping carriers (Andreani, OCA, Correo Argentino) as drop-in tools for Vercel AI SDK 6+ agents.","repository":"https://github.com/ar-agents/ar-agents/tree/main/packages/shipping","npm":"https://www.npmjs.com/package/@ar-agents/shipping","toolCount":6,"tools":[{"name":"cancelar_envio","description":"Cancelar un envío que aún no salió a reparto. Returns { canceled: bool, reason? }. Si canceled=false, surface reason verbatim al usuario (típicamente 'ya está en reparto' o 'el carrier no soporta canc"},{"name":"cotizar_envio","description":"Cotizar el costo de un envío vía un carrier específico (Andreani, OCA, o Correo Argentino). Pasá origen + destino + paquetes (peso + dimensiones + valor declarado) y servicio (standard, express, same_"},{"name":"cotizar_envio_todos","description":"Cotizar un envío en TODOS los carriers configurados en paralelo. Returns { quotes: QuoteOption[] } ordenado por costo (más barato primero). USE WHEN el usuario dice 'cuál es el envío más barato' o 'co"},{"name":"crear_envio","description":"Crear un envío real con un carrier. RETURNS un trackingNumber + labelUrl + costo. SIDE EFFECT: el envío queda registrado en el sistema del carrier — confirma con el usuario antes si el monto es alto ("},{"name":"listar_sucursales","description":"Listar las sucursales / centros de despacho de un carrier cerca de un Código Postal Argentino (CPA). Returns array con id, name, address, openingHours, distanceKm cuando disponible. USE WHEN el usuari"},{"name":"trackear_envio","description":"Consultar el estado actual de un envío vía su trackingNumber. Returns { currentStatus, events[], deliveredAt? }. currentStatus normalizado a uno de: label_created, in_transit, out_for_delivery, delive"}]},{"name":"@ar-agents/igj","version":"0.1.0","description":"Inspección General de Justicia (IGJ) public registry primitives — search corporate entities, fetch domicilios, autoridades, balances, asambleas via the open data CKAN at datos.jus.gob.ar.","repository":"https://github.com/ar-agents/ar-agents/tree/main/packages/igj","npm":"https://www.npmjs.com/package/@ar-agents/igj","toolCount":6,"tools":[{"name":"igj_search_entities","description":"Full-text search the IGJ corporate registry by name. Returns a paginated list with denominación, CUIT, tipo societario, status."},{"name":"igj_get_entity","description":"Fetch a single IGJ-registered entity by CUIT or registry number. Includes inscripción/baja status, last update."},{"name":"igj_get_domicilios","description":"List the registered domicilios (legal/real/fiscal) for an IGJ entity. Useful for verifying counterparties before contracting."},{"name":"igj_get_autoridades","description":"Fetch the registered authorities (directorio, sindicatura, gerencia) for an entity, with start/end dates of their mandate."},{"name":"igj_get_balances","description":"List filed balance-sheet metadata for an entity. Includes filing date and the period covered (the actual balance-sheet PDFs are not yet exposed via the public CKAN)."},{"name":"igj_get_asambleas","description":"List filed shareholder/partner asambleas for an entity (date, type, registered minutes ID)."}]},{"name":"@ar-agents/boletin-oficial","version":"0.1.0","description":"Boletín Oficial de la República Argentina — search published normas, fetch by ID, query the day's edition, subscribe to keyword/CUIT/organismo updates.","repository":"https://github.com/ar-agents/ar-agents/tree/main/packages/boletin-oficial","npm":"https://www.npmjs.com/package/@ar-agents/boletin-oficial","toolCount":6,"tools":[{"name":"bo_search","description":"Full-text search the Boletín Oficial archive. Filter by organismo, fecha range, keyword. Returns ranked normas with summary + publication date."},{"name":"bo_get_norma","description":"Fetch a single norma by its BO id. Returns the full body + metadata (issuing organism, date, sumario)."},{"name":"bo_today","description":"Fetch all normas published in today's Boletín Oficial. Useful for the morning operating loop on a sociedad-IA."},{"name":"bo_subscribe","description":"Subscribe to BO updates by CUIT, organismo, or keyword. Notifications are dispatched via the configured webhook."},{"name":"bo_list_subscriptions","description":"List all active BO subscriptions for the current tenant."},{"name":"bo_unsubscribe","description":"Cancel a BO subscription by id. Used by the agent to retire stale watch criteria."}]},{"name":"@ar-agents/ap2","version":"0.2.0","description":"Google AP2 (Agent Payments Protocol) primitives — Mandate verification + signing (ES256 / JWS), canonical claims, multi-hop mandate chains, budget tracker. Infrastructure package — no LLM tool surface.","repository":"https://github.com/ar-agents/ar-agents/tree/main/packages/ap2","npm":"https://www.npmjs.com/package/@ar-agents/ap2","toolCount":0,"tools":[]},{"name":"@ar-agents/agentic-commerce-bridge","version":"5.0.0","description":"Open-source merchant facilitator for the Agentic Commerce Protocol (ACP). LLM-buyer-facing checkout sessions, signed webhooks, /.well-known/acp.json discovery, AR-fiscal compliance (auto-issued AFIP/ARCA factura). Infrastructure package — no LLM tool surface.","repository":"https://github.com/ar-agents/ar-agents/tree/main/packages/agentic-commerce-bridge","npm":"https://www.npmjs.com/package/@ar-agents/agentic-commerce-bridge","toolCount":0,"tools":[]},{"name":"@ar-agents/mcp","version":"0.9.0","description":"MCP (Model Context Protocol) server bundling the @ar-agents/* toolkit (12 subpackages, 133 tools) for any MCP host (Claude Desktop, Cursor, Continue, Cline). Infrastructure package — exposes the underlying tool surface via stdio transport.","repository":"https://github.com/ar-agents/ar-agents/tree/main/packages/mcp","npm":"https://www.npmjs.com/package/@ar-agents/mcp","toolCount":0,"tools":[]}],"totalTools":168,"endpoints":[{"name":"auto_incorporate","url":"https://ar-agents.vercel.app/api/auto-incorporate","method":"POST","description":"Self-incorporate an Argentine sociedad-IA in a single call. Returns generated package.json + agent.ts + .env.example + README.md, the env-var manifest, the legal+operational checklist, a Vercel one-click deploy URL, and a signed audit-log reference. Suitable for a USA-LLC agent (or any external orchestrator) to call directly.","schema":"https://ar-agents.vercel.app/api/auto-incorporate"},{"name":"play_agent","url":"https://ar-agents.vercel.app/api/play","method":"POST","description":"Live sociedad-IA agent demo (12 tools, mocked-but-realistic). Edge Runtime + Vercel AI Gateway streaming. Audit-logged to KV under x-play-session header."},{"name":"play_audit","url":"https://ar-agents.vercel.app/api/play/audit/{sessionId}","method":"GET","description":"Public audit log for a /play session. Each entry is HMAC-SHA256-signed at write time; pass ?verify=1 to ask the server to confirm tamper-free state."},{"name":"play_tamper_demo","url":"https://ar-agents.vercel.app/api/play/tamper-demo","method":"POST","description":"Read-only tampering demonstration. Returns an original signed entry + a mutated version + verification results for both. Educational — does not modify any real audit log."},{"name":"audit_badge","url":"https://ar-agents.vercel.app/api/badge/{sessionId}","method":"GET","description":"Returns a 24px SVG verification badge for embeds. Color + label updates live based on the audit log's verification state (verified / tampered / no-hmac / no entries). 60s cache."},{"name":"audit_stream","url":"https://ar-agents.vercel.app/api/play/audit-stream/{sessionId}","method":"GET","description":"Server-Sent Events live-stream of audit entries for a session. Initial snapshot + delta-emit on a 2s tick + 15s keep-alive ping + 5min uptime cap (clients reconnect via EventSource)."},{"name":"audit_csv","url":"https://ar-agents.vercel.app/api/play/audit/{sessionId}/csv","method":"GET","description":"RFC 4180 CSV export of the session's audit log. UTF-8 BOM for Excel compatibility. Columns: ts, tool, governance, durationMs, errored, hmac, input, output. content-disposition attachment with filename ar-agents-audit-{prefix}-{YYYYMMDD}.csv. 60s cache."}]}