AI tool comparison
DOOM MCP vs Vera
Which one should you ship with? Here is the side-by-side panel verdict, pricing read, reviewer split, and community vote comparison.
Developer Tools
DOOM MCP
Play DOOM inline inside Claude or ChatGPT — full game, no browser needed
75%
Panel ship
—
Community
Free
Entry
Chris Nager built a fully playable DOOM that runs as an MCP (Model Context Protocol) app, rendering inline inside Claude and ChatGPT without a separate browser tab. The architecture uses two MCP tools — create_doom_session for inline-capable hosts and get_doom_launch_url as a browser fallback — combined with cloudflare/doom-wasm for the game runtime and a signed token system that maintains session state across both surfaces. The result is the same session whether you're playing inline or in a tab. The key technical challenge was avoiding iframe and CSP (Content Security Policy) issues. Rather than embedding a browser page inside the MCP iframe, the DOOM canvas runs directly inside the host's iframe — a subtle but critical distinction that resolved a class of rendering and input-handling bugs. The final implementation is intentionally stripped down: no save/load, no persistence adapters, just stable playable DOOM. Beyond the novelty, this project is a concrete demonstration that MCP apps are interactive surfaces, not just tool-calling JSON endpoints. The progressive enhancement pattern — same signed-token foundation serving both inline and browser modes — is a reusable architecture for any game or interactive experience that wants to live inside an AI assistant. Nager open-sourced the implementation and the blog post is a detailed technical breakdown.
Developer Tools
Vera
A programming language designed for machines, not humans
50%
Panel ship
—
Community
Paid
Entry
Vera is a programming language built from the ground up for LLMs to write — not humans. Named after the Latin word for truth, it compiles to WebAssembly and runs in both the CLI and browser. Its most radical design choice: it eliminates variable names entirely, replacing them with typed De Bruijn structural references (like `@Int.0` for the most recent integer binding). Research suggests naming confusion is one of the biggest failure modes in AI-generated code — Vera removes the problem at the language level. Every function in Vera must declare `requires()` preconditions, `ensures()` postconditions, and `effects()` side-effect declarations. The compiler uses Z3 formal verification to check contracts at every call site, meaning the AI can't ship code that violates its own preconditions. Error messages are structured JSON with stable codes — written as instructions for AI systems to parse and fix, not human developers to read. Benchmark results are striking: on VeraBench, Kimi K2.5 achieves 100% correctness writing Vera code, outperforming both Python (86%) and TypeScript (91%) implementations. At v0.0.127 with 810+ commits, 127 releases, 3,638 tests, and a 13-chapter spec, this is a serious project — not a weekend experiment. If AI is going to write most of our code, perhaps the code should be designed for AI to write.
Reviewer scorecard
“The signed-token progressive enhancement pattern is the part worth stealing. This is a clean reference architecture for MCP interactive apps, and DOOM just happens to be the demo case.”
“The contracts-first approach is genuinely compelling — I've spent too many hours debugging AI-generated code that violated implicit invariants. Having the compiler enforce preconditions at every call site is the kind of guardrail I'd actually trust. The WASM compilation target means you can run this anywhere, and 3,638 tests suggests this isn't vaporware.”
“Fun proof of concept but let's be honest: if your AI assistant is hosting a DOOM session, something has gone wrong with your productivity. The MCP-as-interactive-surface insight is real, but this specific app has no utility.”
“A language with no variable names sounds like an academic exercise, not something that'll ship real software. Even if LLMs do great on VeraBench, the ecosystem is zero — no libraries, no community, no integrations. You'd be asking your team to maintain code written in a language nobody else on Earth can read. That's a hard sell even if the AI loves it.”
“Every major compute platform's pivot point is when it runs DOOM. MCP running DOOM means MCP is a real platform now. The implications for interactive AI-embedded experiences are significant.”
“Vera represents a fundamental rethink: what if programming languages were designed for their actual authors in 2026 — which are predominantly AI systems? The formal verification backbone means AI-generated code carries a proof of correctness, not just a vibe. This is early, but the trajectory points to a world where AI writes formally verified software by default.”
“As someone who thinks about interactive experiences, the idea of game-like UI living inside an AI context is genuinely exciting. This is a crude ancestor of what interactive AI-native media could become.”
“I love the philosophical angle — a language where the 'author' is the machine. But until there's a visual toolchain, a debugger humans can read, and something I can demo to a client, this lives in research territory. The JSON error messages designed for AI systems are clever but leave human reviewers completely out of the loop.”
Weekly AI Tool Verdicts
Get the next comparison in your inbox
New AI tools ship daily. We compare them before you waste an afternoon.