Inspiration

Every year, an estimated €4 billion in flight compensation goes unclaimed under EC261 and UK261. The legal framework already exists — it has since 2004 — but it's buried under industry friction.

Industry incumbents take up to 35% commission, operate in only one jurisdiction at a time, and rarely fight back when airlines deny claims with vague "extraordinary circumstances" language. Passengers give up, settle for a £30 voucher, or pay legal fees they can't recover. Most never realise they're entitled to up to €600 per disrupted flight.

We built SkyClaim Watchtower because modern AI can translate, cite, and forensically annotate at zero marginal cost. Combined with MeDo's no-code agentic surface, an aviation rights advocate that matches a £300/hour solicitor becomes possible in 14 hours of build time. Free. Multilingual. Cited. Forensic.

What it does

SkyClaim Watchtower is a live global aviation rights observatory. Five pages, one mission: turn flight disruptions into recovered compensation.

The live experience. Open the app and a real-time disruption radar shows aircraft from a four-source live ADS-B cascade (adsb.lol → adsb.fi → airplanes.live → OpenSky), with current aviation news scrolling from MeDo's News plugin. A Verify Live panel surfaces seven data feeds with freshness timestamps — users and judges can verify what's running in real time.

Multi-modal claim input.

  • Drop a boarding pass image → MeDo's OCR plugin extracts flight number, route, date, and passenger name automatically
  • Speak your claim → MeDo's Speech-to-Text transcribes; Text-to-Speech reads it back for confirmation
  • Or pick a pre-loaded demo case

The agentic verdict. ERNIE 5.0 identifies the applicable regulation (EC261, UK261, or US DOT), computes great-circle distance via Haversine, consults an embedded case-law table, and cross-references live NOAA METAR weather to test the airline's extraordinary-circumstances defence. Returns: regulation cited, compensation amount in three currencies via MeDo ExchangeRate (with ECB static fallback when upstream returns 502), confidence score, and detailed caveats. A Web Audio API tone confirms eligibility.

The multilingual demand letter. One toggle translates the letter into the airline's home-country language — 13 languages supported via MeDo's Google Text Translation, three seconds. French for Air France. Japanese for ANA. German for Lufthansa. Italian for ITA Airways. The kind of legal drafting that costs €300 from a translation agency.

Letter actions (the full pipeline):

  • Save as PDF with print-CSS
  • Open in email — the airline's customer-relations contact is automatically resolved via MeDo AI Search when not in the embedded directory of 35 carriers
  • Generate a shareable receipt card via MeDo Image Generation
  • Class-action group letter when Supabase realtime detects multiple passengers on the same flight

The Bluff Detector (/decode). Paste the airline's denial email. Every misleading sentence is annotated against the case law that refutes it. Vague "operational reasons" → underlined and challenged on burden of proof. Technical-fault excuses → flagged unless manufacturing-defect proven. Voucher "full and final settlement" → struck through (statutory rights cannot be waived). Forensic AI for consumer-rights — the kind of analysis a £300/hour aviation solicitor delivers, free.

The AI Lawyer Roleplay. Practise rebutting the airline's defence counsel across five rounds. The system scores rebuttal strength against the embedded case-law table — preparation for an actual small-claims hearing or ADR submission.

Persistent case lookup. Every case stored anonymously with an 8-character ID. A 4-milestone follow-up timeline (Day 0, 14, 30, 60) guides users from initial claim through ADR escalation to small-claims court.

How we built it

Zero custom backend code. Zero DevOps. Zero API keys for the core flow. Built entirely on MeDo's no-code surface in 14 hours via 18 PRD-driven iterations.

14 integrations composed end-to-end

9 MeDo native plugins:

Plugin Where it fires
Google Text Translation Letter translation toggle on /letter
Web Search Live verification card on /verdict
AI Search Airline customer-relations contact resolution
The News Live disruption headlines + dynamic-marker extraction
OCR Boarding-pass image to structured fields
ExchangeRate Multi-currency verdict display with ECB static fallback
Speech-to-Text Voice claim input with field extraction
Text-to-Speech Voice confirmation readback
Image Generation Shareable receipt cards via Kling AI Lite

4 external live data sources (no API keys — public endpoints with Edge Function proxies):

  • adsb.loladsb.fiairplanes.liveOpenSky Network — four-source ADS-B Exchange cascade with automatic failover and demonstration-aircraft fallback
  • NOAA Aviation Weather METAR — extraordinary-circumstances defence evidence cross-reference

Infrastructure:

  • Supabase Postgres with realtime channels for class-action aggregation
  • Supabase Edge Functions (opensky-proxy, metar-proxy, exchange-rate proxy, speech-to-text proxy)
  • Leaflet + CartoDB DarkMatter dark-mode aviation control-tower map
  • Web Audio API verdict tones (440 Hz / 392 Hz / 220 Hz)
  • ERNIE 5.0 as the agentic reasoning core

Embedded legal substrate (verified against EUR-Lex and legislation.gov.uk)

  • EC261, UK261, and US DOT eligibility logic with jurisdiction routing
  • Compensation tiers (€250 / €400 / €600 by great-circle distance)
  • 3-hour delay rule, codified into UK261 by SI 2023/1404 (in force 14 December 2023)
  • Extraordinary-circumstances case-law table with reason-classification logic
  • EC261 reform caveat (June 2025 EU Council general approach acknowledged)
  • US DOT correction — explicitly excludes the September 2025 withdrawn compensation rule from US flight logic

Live-first / demo-fallback architecture

Every external data source degrades gracefully. When upstream APIs are unreachable from the Supabase Edge runtime (OpenSky is geo-blocked, NOAA occasionally returns timeouts), the system displays clearly-labelled demonstration data rather than hiding the failure. The Verify Live panel surfaces this transparently — a trust-signal pattern matching the Anthropic Opus 4.6 PostVisit.ai winner.

Challenges we ran into

MeDo Custom Plugin OpenAPI import was temporarily disabled during the hackathon. We restructured everything around MeDo's native plugin surface. This turned out to be a feature — using nine native plugins composed end-to-end made the implementation more MeDo-native than any custom-wrapped third-party API would have been.

Two confirmed MeDo platform infrastructure outages mid-build:

  1. The appmedo.com management API returned HTTP 500 (trace IDs db15c95..., 799fa3b..., 4e329ec...) during our publish window
  2. The CI/CD pipeline didn't auto-rebuild the production S3 path on subsequent commits

We worked around both by deploying to MeDo's alternative S3 release path. Both root causes confirmed by MeDo's internal diagnostics.

OpenSky API geo-blocking: The Supabase Edge runtime couldn't reach opensky-network.org (HTTP 000 connection timeout). We replaced it with a four-source ADS-B Exchange cascade with automatic failover, plus a final demonstration-aircraft simulation that interpolates positions along true_track bearings every 5 seconds.

Citation hallucination risk for legal text: ERNIE 5.0 has a known tendency to invent case names and statute numbers. We solved this by embedding the case-law table directly in the system prompt rather than relying on the LLM's recall, then verified every citation against EUR-Lex and legislation.gov.uk.

Chinese-character leakage: ERNIE occasionally produced Chinese placeholder text. We engineered the system prompt to explicitly forbid Chinese output and added post-generation audit steps.

Voice STT pipeline: The MeDo Speech-to-Text plugin's audio-upload format was incompatible with browser MediaRecorder defaults. We diagnosed it through MeDo's automated Quality Analysis agent and restored the feature in v17.

ExchangeRate plugin 502 errors: The upstream FX gateway intermittently returned non-2xx responses. We added a two-layer fix: edge-function-level try/catch with structured error logging, plus frontend ECB static-rate fallback so the multi-currency row always renders.

Accomplishments that we're proud of

14 integrations composed in 14 hours, with zero custom code. Nine native MeDo plugins + four external ADS-B sources + NOAA weather + Supabase realtime. Implementation depth that matches enterprise SaaS submissions to the same hackathon — built in a no-code chat surface.

Production-grade trust signals. The Verify Live panel exposes seven data feeds with freshness timestamps. Where upstream APIs are unreachable, we label demonstration data honestly rather than hide it. This matches the architecture pattern that won bronze in Anthropic's Opus 4.6 hackathon (PostVisit.ai).

Forensic AI for legal-text analysis (the Bluff Detector). Annotating airline denial emails sentence-by-sentence with case-law refutations is novel for the consumer-rights vertical. No existing flight-compensation product does this.

Live-first / demo-fallback architecture across every external source. The disruption markers stay visible even when the News plugin can't return fresh articles. The 30 demonstration aircraft visibly move along true_track bearings every 5 seconds even when no live ADS-B source is reachable. The system never shows a frozen empty state.

Verified legal substrate. Every cited regulation and case is verifiable against primary sources (EUR-Lex, legislation.gov.uk, Federal Register). We acknowledge the pending EC261 reform (June 2025 EU Council general approach) and explicitly exclude the withdrawn September 2025 US DOT compensation rule from our US flight logic. Precision a real aviation solicitor would recognise.

Multi-modal claim input: text, OCR boarding-pass extraction, and voice with STT + TTS confirmation. All wired through MeDo's native plugins — three input modalities in one agentic surface.

Class-action coordination: Supabase realtime channels aggregate multiple claimants on the same flight into a single group letter. Collective leverage that no individual claim-letter generator offers.

What we learned

MeDo's native plugin composition is more powerful than the marketing implies. Translation + Web Search + AI Search + The News + OCR + ExchangeRate + STT + TTS + Image Generation covered virtually every external concern we had. We planned custom-plugin wrappers for AviationStack, PDFShift, Resend, and Companies House. We needed none of them.

The PRD-first generation workflow is the right discipline for complex apps. MeDo's two-stage flow (Requirements document → Generate App) lets you catch errors before burning Deep Build credits. Each PRD update cost ~15 credits versus 80-130 for a full Deep Build regeneration.

Honest engineering scores higher than overclaimed liveness. The Verify Live panel surfaces what's live versus demo. Most hackathon submissions hide their fallbacks. Per the 2025 Anthropic and Bolt hackathon winner patterns, explicit trust signals beat polished mockups.

Live-first / demo-fallback is the right architecture for demo-driven applications. Aircraft demonstration data interpolated along true_track bearings looks indistinguishable from live ADS-B at world zoom. When platform reach is limited, the demo never shows a blank state.

The legal framework already exists. EC261 was written in 2004. UK261 codified into statute in December 2023. Case law mature and unambiguous. The bottleneck has never been the law — it's been access. Language barriers, legal complexity, industry obfuscation. AI removes those bottlenecks at near-zero marginal cost.

What's next for SkyClaim Watchtower

Jurisdiction expansion: Brazil ANAC Resolution 400/2016, Canada APPR, Australia ACCC voluntary compensation, and EU rail rights (Regulation 1371/2007) for multi-modal disruption claims.

Auto-submission integration: Direct delivery to airline web-form APIs for carriers that no longer accept email claims (Ryanair, Wizz Air, IndiGo). Currently mailto:; next step is one-click submission against published airline endpoints.

Crowdsourced strike intelligence: Aggregate passenger-reported airline responses to expose inconsistent extraordinary-circumstances defences. When 47 passengers on the same flight all received different reasons for the same cancellation, that's evidentiary gold.

Class-action escalation: When a flight's claimant count exceeds 100, auto-generate a coordinated submission to the relevant National Enforcement Body for collective adjudication.

Lost-baggage claims under the Montreal Convention (up to ~£1,300 per passenger). Same legal-citation pattern, different regulatory framework.

Receipts mode: Photograph all your boarding passes throughout the year — our OCR pipeline proactively flags claimable disruptions you'd otherwise forget.

AI Tribunal: Extended AI Lawyer Roleplay that prepares users for actual ADR / CAA / small-claims hearings, scored against a learned model of which arguments succeed in each jurisdiction.

Mobile-native apps: Capacitor wrappers around the existing responsive H5 deployment, unlocking push notifications when MeDo's News plugin detects a disruption affecting one of the user's saved upcoming flights.

Built With

  • medo
Share this project:

Updates