RealSight
Passive AI-video detection, right on the player, as you browse.
Inspiration
AI-generated video is flooding YouTube and Instagram, and every existing detector makes the viewer do the work: right-click a thumbnail, paste a URL into a web tool, hope someone crowd-flagged it. Detection that requires effort protects nobody at scale. We asked: what if checking were as passive as watching?
What it does
RealSight is a Chrome extension that automatically analyzes every video you watch on YouTube (including Shorts) and Instagram Reels. Within ~5 seconds of playback, a badge appears on the player: ๐ค AI Generated (87%), โ Likely Real (95%), or โ Uncertain โ with the model's specific visual reasoning (e.g., "over-smooth, plastic-looking skin", "repetitive, unnatural patterns on clothing") one click away in the popup. No clicks, no copy-paste, no manual checks. The toolbar icon mirrors state in real time: gray off-page, pulsing blue while analyzing, verdict-colored when done.
How we built it (Technological Implementation)
- Google ADK 2.x agent + Gemini (
gemini-2.5-flash) hosted on Google Cloud Run. The agent receives 3โ4 JPEG frames extracted client-side from the playing<video>via canvas (content scripts run same-origin, so the canvas never taints โ this also works on Instagram's MSE blob streams). - Official MongoDB MCP Server (
mongodb-mcp-server) as the agent's tool โ the partner integration. The agent's first action on every request is afindagainst therealsight.detectionscollection in MongoDB Atlas, keyed on a normalized video URL (watch pages, Shorts, youtu.be links, and Reels permalinks all canonicalize to one key). A cache hit returns the verdict in under a second without invoking Gemini at all โ cheaper, faster, and verdicts are consistent for every user who watches the same video. On a miss, Gemini performs forensic frame analysis (texture smearing, anatomy errors, lighting/shadow physics, temporal inconsistency between frames) and the agent writes the verdict back through the MCP server'sinsert-manytool. - Engineering details judges can check in the repo: strict-JSON agent output with validation and clamping; Pydantic request limits (โค5 frames, โค1MB each); 503-retry with exponential backoff to survive Gemini load spikes; the Docker image pre-bakes Node + the MCP server so Cloud Run cold starts never hit the npm registry; the extension is vanilla MV3 JavaScript with zero dependencies and zero build step.
Design / UX
The product goal was zero-interaction detection: the verdict appears where your eyes already are (the player), in glanceable color (red/green/gray), with confidence stated as a percentage and reasons in plain language. Failures degrade gracefully โ an unreachable backend yields a dismissable "analysis failed" badge, never a broken page. The animated toolbar icon communicates state even when the badge is dismissed.
Potential Impact
Deepfake detection tools today serve journalists and researchers โ people who already suspect something. RealSight targets the other 99%: passive viewers who never think to check. Ambient, automatic labeling is how media literacy scales. The MongoDB cache makes this economically viable: each video is analyzed once globally, then served from Atlas for every subsequent viewer.
Honest limitations & what's next
Verdicts are Gemini-based visual heuristics, not watermark forensics, and we present them as confidence levels, not facts. The detector sits behind an interface designed for Google's SynthID Content Detection API (currently partner-preview) to slot in when publicly available. Also next: frame-hash dedup to catch re-uploads under new URLs, sensitivity settings, and a Chrome Web Store listing.
Hackathon compliance checklist (for judges)
- โ Agent built with Google ADK + Gemini, hosted on Google Cloud Run
- โ Partner MCP server: official MongoDB MCP Server wired into the agent as its data tool โ MongoDB partner bucket
- โ Public repo, MIT license ยท hosted URL ยท ~3 min demo video
Demo video script (~3 min)
- The problem (20s) โ AI video is flooding feeds; existing detectors need manual checks.
- Live detection (60s) โ browse YouTube: AI-generated video gets ๐ค badge, real video gets โ , popup shows Gemini's reasons.
- The MongoDB moment (30s) โ revisit the same video: instant cached verdict via MongoDB MCP Server
findagainst Atlas. Linger here. - Architecture (45s) โ Chrome MV3 extension โ Cloud Run โ Google ADK agent โ Gemini (frame forensics) + MongoDB MCP Server (cache) โ Atlas.
- Impact (15s) โ passive media literacy for everyone; SynthID Content Detection API as the upgrade path.
Log in or sign up for Devpost to join the conversation.