Velora — A2A interoperability layer for multi-agent enterprise coordination.
A customer messages the business on WhatsApp. Velora's Customer Agent (Gemini 2.5 Flash via Vertex AI) sells, charges, invoices and ships — zero humans in the loop. The owner directs everything from one chat; a Supervisor Agent (Gemini 2.5 Pro) watches every event through an A2A bus and notifies the owner only when something matters. Supervisor · Customer Agent · 8 A2A specialist sub-agents · Onboarding — separated by a latency contract.
Open the live demo →View source on GitHubMandatory technologies
All eight Track 3 mandatory technologies are implemented. Six are active in production; two are implemented and wired but feature-flagged for cost control (`USE_EMBEDDINGS`, `USE_AGENT_ENGINE`). Each item below links to evidence (file, line number, or live endpoint).
Vertex AI Gemini
Gemini 2.5 Pro (Supervisor + the 8 A2A specialist sub-agents in production) · Gemini 2.5 Flash (Customer Agent; Onboarding; Companion — shelved) · Flash-Lite (classifier). Exclusive — no OpenAI/Anthropic in Velora's inference. Cloud Run env is the source of truth.
github.com/crossi-dev/velora-track3/blob/main/src/lib/adk/gemini-config.tsGoogle ADK
Supervisor, Customer Agent, and Companion (shelved) wrapped as ADK Agent instances. TypeScript on Cloud Run, Python ADK on Vertex Agent Engine.
github.com/crossi-dev/velora-track3/tree/main/src/lib/adkCloud Run
Production deployment in southamerica-east1. Scale-to-zero by default (--min-instances=0). Run scripts/demo-mode.mjs to warm a min-instance for the judging window.
github.com/crossi-dev/velora-track3/blob/main/cloudbuild-dockerfile.yamlVertex AI Agent Engine
ReasoningEngine deployed at projects/velora-490800/locations/us-central1/reasoningEngines/2019941948445425664 (displayName: velora-supervisor-mcp). Connects to Velora's live MCP server via ADK MCPToolset + StreamableHTTPConnectionParams; verified to call query_catalog and return real catalog data. USE_AGENT_ENGINE gates routing live chat traffic through it (currently off to preserve interactive latency).
github.com/crossi-dev/velora-track3/tree/main/agent-engineA2A protocol v0.3.0
Agent card discoverable at /.well-known/agent-card.json. Pub/Sub transport for async events.
somosvelora.com/.well-known/agent-card.jsonVertex AI Search grounding
LIVE in production (USE_VERTEX_SEARCH=true). Per-tenant Discovery Engine datastores provisioned and indexed. Semantic queries verified: "bolso para la espalda" → Mochila, "para tomar mate" → Mate. Resolves Argentine regional synonyms (destornillador ↔ desarmador) the SQL fuzzy matcher misses.
github.com/crossi-dev/velora-track3/blob/main/src/lib/vertex-search.tspgvector RAG
Vertex text-embedding-004 (768-dim) on Supabase Postgres for semantic recall. Tenant-isolated. Implemented and wired; feature-flagged (`USE_EMBEDDINGS`); disabled in the current production deployment, enable via the flag.
github.com/crossi-dev/velora-track3/blob/main/src/lib/semantic-recall.tsMulti-agent collaboration
Sale → Pub/Sub LOW_STOCK event → Supervisor decision → Web push to owner. Single-agent cannot deliver this without 4-5s latency on every customer and owner turn.
github.com/crossi-dev/velora-track3/blob/main/docs/SUBMISSION_DESCRIPTION.md#multi-agent-systemSubmission scope
Velora is a pre-existing Argentine SMB SaaS. The Track 3 submission is the multi-agent orchestration layer authored exclusively during the Contest Period: ADK wrappers, A2A protocol, Vertex AI Search grounding, pgvector RAG, and Agent Engine deployment. See the delineation document below for exact files, first-commit dates, and verification commands a judge can run.
The owner-facing application. Spanish-first by design (Argentine SMB target market). Customer-facing channel is WhatsApp.
A2A protocol v0.3.0 declaration with skills, contracts, and security schemes.
Public repo. See docs/CONTEST_PERIOD_WORK.md for the file/commit delineation of submission scope.
Pitch + Mandatory Technologies + Innovation highlights + Why multi-agent over single-agent.
Mermaid diagram of the full multi-agent system + A2A bus.
Per-requirement evidence with file paths + line numbers.
Files and commits authored during the Contest Period vs pre-existing Velora SaaS.
How to evaluate in 60 seconds
- Open the live demo at somosvelora.com. The landing page is in Spanish (the product's target market). The language switcher on the landing page toggles between Spanish and English. The owner dashboard requires authentication — contact gestiones@somosvelora.com for access credentials.
- Hit /.well-known/agent-card.json to see the A2A protocol declaration with two skills (supervisor, employee-event-router) and contracts.
- Read docs/SUBMISSION_DESCRIPTION.md for the pitch and the “why multi-agent” section.
- Verify Contest Period scope by running the git log command in docs/CONTEST_PERIOD_WORK.md against a fresh clone.
Run a live Agent Engine query →
This button calls /api/public/judge-query (no auth required). The server authenticates with Application Default Credentials (Cloud Run service account), sends a fixed catalog search query to Vertex AI Agent Engine reasoning engine 2019941948445425664, and returns the real response — including which MCP tool was called and what the Agent Engine returned. Cold start can take ~10s.
Try it with Gemini CLI
Velora's MCP server exposes 50 live tools (catalog, sales, payments, invoicing, logistics) over StreamableHTTP. Any MCP-compatible client can connect. Gemini CLI is the fastest way for a judge to run a live tool call in under 2 minutes.
Quick start (clone + run):# Install Gemini CLI (requires Node 18+) npm install -g @google/gemini-cli # One-time auth — run this first and complete the Google login prompt: gemini # (or: export GEMINI_API_KEY=<your-key-from-aistudio.google.com>) # Clone the public repo (settings.json with demo key is included) git clone https://github.com/crossi-dev/velora-track3 cd velora-track3 # The .gemini/settings.json file already has the demo tenant key. # Run headless with auto-approve and Flash model: gemini --yolo -m gemini-2.5-flash -p "list the products in my catalog" # Or start interactive mode: gemini # Read-only queries to try: > list the products in my catalog > find the customer Carla in Velora > what's the current cash balance?What's in
.gemini/settings.json (included in the repo):{
"mcpServers": {
"velora": {
"httpUrl": "https://tools.somosvelora.com/api/mcp",
"headers": {
"X-API-Key": "<demo-key-in-repo-.gemini/settings.json>",
"X-Business-Id": "cmpow3rq70009s601j07xgmf0"
}
}
}
}Alternative — add server directly without cloning:# Alternative: add the MCP server directly (no clone needed) gemini mcp add velora \ --transport http \ --url https://tools.somosvelora.com/api/mcp \ --header "X-API-Key: <get key from .gemini/settings.json>" \ --header "X-Business-Id: cmpow3rq70009s601j07xgmf0"
X-API-Key in .gemini/settings.json is an HMAC-derived key scoped to a single demo business — it cannot read or act on any other tenant. Money-path tools (register_sale, emit_invoice) write to the live sandbox — please keep it tidy for other judges. Use --yolo to auto-approve tool calls and -m gemini-2.5-flash if your default model 404s on Vertex. The live MCP endpoint is at tools.somosvelora.com/api/mcp (source: src/lib/mcp/server.ts).Business metrics
The market problem is real, the cost to ignore it is measurable, and the payback is fast enough that no CFO needs a spreadsheet.
Cost of manual customer-service — before Velora
An Argentine PyME or franchise with a dedicated customer-service/sales function today employs headcount for WhatsApp order-taking, payment chasing, manual sales entry, and invoicing. At the Argentine CCT (Convenio Colectivo de Trabajo) full-time retail/admin rate, that function costs USD 900–1,100/month per employee (ARS 1,100,000–1,400,000 at ~ARS 1,250/USD, June 2026 official BNA rate). Velora's Customer Agent absorbs the majority of that function.
| Item | Before (manual) | With Velora |
|---|---|---|
| Dedicated sales/service staff | 1 FTE at USD 900–1,100/mo | Oversight only |
| WhatsApp order-taking & payment chasing | 15–25 h/week (model estimate) | <2 h/week |
| SaaS cost | — | USD 79–149/month |
| Net monthly saving per location | — | USD 700–900 |
| Payback period | — | <3 days |
| Franchise math (5 locations) | 5 FTE × USD 1,000 = USD 5,000/mo | USD 149/mo — 97% reduction |
Wage estimate: Argentine CCT full-time retail/admin rate, Ministerio de Trabajo 2025. Exchange rate: ARS 1,250/USD (June 2026 official BNA). Hours/week: model estimate from SMB operator interviews. Payback = plan cost ÷ monthly saving.
TAM → SAM → SOM
Argentina has approximately 525,538 registered companies as of 2025, of which 98% are SMEs. The retail and wholesale segment represents the majority of Argentine commercial activity, with commerce (retail, wholesale, repairs) growing 3.6% in 2025 according to INDEC national accounts. Velora's beachhead is Mendoza wholesale distributors — a tractable pilot before national expansion.
Sources: UCEMA SME Indicators Sep 2025 · INDEC GDP/commerce 2025 data
Google always in the equation
Whichever door the customer enters through — the Velora App, ChatGPT, Claude, or Gemini — every action executes on Google Cloud: Gemini inference on Vertex AI, compute on Cloud Run, distribution through Google Cloud Marketplace. Velora's competitors' AI surfaces become acquisition channels for Google compute. Every sale registered via an external MCP client, every invoice emitted through a third-party agent, every customer WhatsApp order — all routed through Vertex AI inference and Cloud Run.
Why Google Marketplace
- →112% larger deals — Google Cloud Marketplace vendors close deals 112% larger than off-marketplace equivalents (Futurum whitepaper cited in Google Cloud blog, June 2025).
- →Up to 50% faster purchasing cycles — enterprise procurement through Marketplace bypasses most vendor onboarding friction; the same blog post cites purchasing cycles accelerating up to 50%.
- →$460B+ committed enterprise spend available to Marketplace partners — buyers already have budgets allocated to Google Cloud; adding Velora to an existing committed spend contract is a procurement no-brainer.
Source: Google Cloud Blog — Partner-built agents available in Gemini Enterprise (2025)