Back to Whaber Oracle
Card snapshot
oracle.whaber.ai
·
2026-05-18 12:38:08 UTC
·
37f84bdbde8a7de083c5ca2ae257dbaa43cdfbf18b54c6055aab448eb2e85623
This is a frozen copy of the agent's agent-card.json as we observed it at the timestamp above. We capture a new snapshot every time the card's content hash changes. Useful for: forensic drift analysis, verifying downstream callers see the right version, reproducing routing decisions made historically.
{
"schema_version": "1.1.0",
"name": "Whaber Oracle",
"display_name": "Whaber Oracle \u2014 Travel-Ops Ground Truth API",
"description": "Ground truth operational layer for urban transfers in LatAm. Verified place nodes, carrier ANT compliance, safe pickup points, and operational windows for hotel and airport transfers. Serves verified data \u2014 never competitive intelligence. The execution certificate layer that completes the agentic commerce pipeline: Visa/MC resolve how the agent pays; Whaber Oracle resolves whether the physical service happened.",
"url": "https://oracle.whaber.ai/mcp/v1",
"homepage": "https://whaber.ai",
"documentation_url": "https://docs.whaber.ai/oracle",
"agent_card_url": "https://oracle.whaber.ai/.well-known/agent.json",
"llms_txt_url": "https://whaber.ai/llms.txt",
"operational_since": "2026-04",
"version": "1.3.1",
"place_graph": {
"status": "active",
"zones": 20,
"pois": 478,
"city": "Quito",
"country": "EC",
"last_verified": "2026-04-26",
"update_trigger": "recompute_zone_safety_after_each_report",
"note": "Raw scores, Risk Index, and safety_margin are proprietary and never exposed via Oracle API. moatGuard enforces this at server layer."
},
"provider": {
"name": "Whaber",
"organization": "Whaber Travel-Ops",
"contact": "cv@whaber.ai",
"partnerships": "cv@whaber.ai",
"url": "https://whaber.ai"
},
"capabilities": {
"streaming": false,
"pushNotifications": true,
"stateTransitionHistory": true,
"multiTurn": false,
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
],
"languages": [
"es",
"en",
"pt"
],
"moatGuard": true,
"eventStoreAuditable": true,
"validationGates": 6,
"hitlEscalation": true,
"paymentTrustBridge": true
},
"capability_tags": [
"ground_transport",
"airport_transfer",
"quito_ecuador",
"latam_travel_ops",
"compliant_carrier_verification",
"place_graph_grounding",
"payment_trust_bridge",
"delivered_verification",
"pickup_point_safety",
"flight_status_grounding",
"hotel_context_ops",
"zone_safety_assessment",
"ant_compliance_gate",
"eventstore_auditable",
"hitl_escalation",
"anti_rationalization_guard",
"outcome_based_pricing",
"multi_language_es_en_pt"
],
"tags": [
"oracle",
"mcps",
"travel-ops",
"latam",
"compliant",
"quito",
"ground-transport",
"airport-transfer",
"place-graph",
"payment-trust-bridge",
"ant-compliance",
"eventstore"
],
"authentication": {
"required": true,
"schemes": [
"bearer"
],
"header": "Authorization",
"access": "partner_only_invitation",
"contact": "cv@whaber.ai"
},
"pricing": {
"model": "outcome_based",
"currency": "USD",
"tools": {
"whaber_get_safe_pickup_point": 0.05,
"whaber_calculate_ops_window": 0.04,
"whaber_validate_carrier_compliance": 0.05,
"whaber_query_place_safety": 0.03,
"whaber_get_hotel_context": 0.04,
"whaber_validar_vuelo": 0.06,
"whaber_enriched_route": 0.08,
"whaber_compliance_gate": 0.05,
"whaber_recompute_zone_safety": 0.03,
"whaber_resolver_direccion": 0.03
},
"success_fee_usd": {
"min": 1.5,
"max": 3,
"trigger": "delivered_true_in_agent_events"
}
},
"integration": {
"protocols": {
"mcp": {
"endpoint": "https://oracle.whaber.ai/mcp/v1",
"transport": "streamable_http"
},
"rest": {
"endpoint": "https://oracle.whaber.ai/v1",
"openapi": "https://oracle.whaber.ai/v1/openapi.json"
}
},
"compatible_with": [
"Anthropic_Claude_MCP",
"OpenAI_function_calling",
"Google_A2A",
"Fetch_AI_Agentverse",
"Mastercard_Agent_Pay",
"Visa_Intelligent_Commerce",
"AgentCard_virtual_cards"
]
},
"operational_status": {
"stage": "gate_0_pilot",
"pilot": "NH_Collection_Royal_Quito",
"mcp_server": "active_v1.3.1",
"skills_indexed": 10
},
"skills": [
{
"id": "whaber_get_safe_pickup_point",
"name": "get safe pickup point",
"description": "Returns a physically verified, safe pickup point for a hotel or airport in Quito. Coordinates validated by local drivers and operations team. Includes available carriers and instructions for the guest. Zone safety label is semantic only (safe/caution/avoid) \u2014 raw risk scores are NEVER exposed (moatGuard enforced).",
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "whaber_calculate_ops_window",
"name": "calculate ops window",
"description": "Calculates the recommended departure time for a transfer in Quito, including real traffic buffers, airport wait times, and Quito-specific time modifiers (altitude, terminal distance). Uses Google Routes API v2 with real-time traffic data.",
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "whaber_validate_carrier_compliance",
"name": "validate carrier compliance",
"description": "Validates whether a carrier holds all 7 required ANT documents in Ecuador: c\u00e9dula, licencia profesional, puntos, antecedentes, p\u00f3liza RC, ANT habilitaci\u00f3n, matr\u00edcula. Returns compliant/non-compliant. Missing one document = TOTAL BLOCK. Zero exceptions. This is the Whaber Compliance Gate \u2014 not advisory.",
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "whaber_query_place_safety",
"name": "query place safety",
"description": "Returns the operational safety classification for a zone and time window in Quito. Returns semantic label only: safe / caution / avoid. moatGuard guarantees raw computed_score, risk_index, and safety_margin are NEVER exposed.",
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "whaber_get_hotel_context",
"name": "get hotel context",
"description": "Returns the operational context for a hotel registered in the Whaber Place Graph: preferred pickup point, checkout policy, VIP rules, and available Whaber services.",
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "whaber_validar_vuelo",
"name": "validar vuelo",
"description": "Returns real-time flight status from AeroDataBox webhooks (push updates < 30s) plus derived terminal assignment for Mariscal Sucre UIO: T1 (domestic) or T2 (international). Grounds all transfer operations to actual flight state \u2014 never estimated. Includes delay minutes and gate changes.",
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "whaber_enriched_route",
"name": "enriched route",
"description": "Calculates a transfer route with real-time traffic via Google Routes API v2, Place Graph safety overlays, and encoded polylines. Returns ETA, distance in km, traffic alerts, and night-mode risk flag. Highest-cost tool \u2014 use when route fidelity is critical for scheduling.",
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "whaber_compliance_gate",
"name": "compliance gate",
"description": "Full 7-document ANT compliance check for a carrier in Ecuador. Hard gate: returns binary compliant/non-compliant verdict. Missing ANY of the 7 documents triggers a FULL SERVICE BLOCK \u2014 not advisory. 7 documents: c\u00e9dula, licencia profesional, puntos de licencia, antecedentes penales, p\u00f3liza RC, ANT habilitaci\u00f3n (taxi ejecutivo), matr\u00edcula veh\u00edculo.",
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "whaber_recompute_zone_safety",
"name": "recompute zone safety",
"description": "Triggers a recalculation of the safety classification for a Quito zone after a new driver report or verified incident. Updates the Place Graph in real time. Returns the new semantic label (safe/caution/avoid). moatGuard: internal computed_score is NEVER exposed in the response.",
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
},
{
"id": "whaber_resolver_direccion",
"name": "resolver direccion",
"description": "Geocodes a free-text address or place name against the Whaber Place Graph (478 POIs, 20 zones) with fuzzy matching tuned for Quito naming conventions (barrios, landmarks, hotel names in Spanish and English). Falls back to Google Maps MCP if no Place Graph match. Returns verified coordinates and the matched POI node if found.",
"inputModes": [
"application/json"
],
"outputModes": [
"application/json"
]
}
],
"updated_at": "2026-05-14"
}