Just Launched

Case File No. 001

A murder mystery
you play inside AI

We built Dead on Arrival — a full murder mystery game that runs natively inside Claude and ChatGPT. Investigate crime scenes, interrogate suspects, and catch the killer. All through conversation.

🤖Claude Desktop
💬ChatGPT
🌐Browser
🔗Any MCP Client
dead-on-arrival :: case_briefing
  ┌──────────────────────────────────────────────┐
  │          HARTWELL MANOR — 11:47 PM           │
  │                                              │
  │   ┌───────────┐     ┌───────────┐            │
  │   │ STUDY   │     │  GARDEN  │            │
  │   │ (crime   │─────│          │            │
  │   │  scene)  │     │          │            │
  │   └────┬─────┘     └──────────┘            │
  │        │                                    │
  │   ┌────▼─────┐     ┌───────────┐            │
  │   │ KITCHEN  │─────│ LIBRARY   │            │
  │   │          │     │           │            │
  │   └──────────┘     └───────────┘            │
  │                                              │
  │   = Crime scene    = Investigated          │
  └──────────────────────────────────────────────┘

VICTIM: Lord Edmund Hartwell, 67, industrialist

CAUSE: Poisoned whiskey (cyanide detected)

SUSPECTS: 5 persons of interest identified

STATUS: ACTIVE INVESTIGATION

> You have 12 actions to solve this case.

> What would you like to investigate, detective?

How It Works

The AI is your game master

Dead on Arrival runs as an MCP server. The AI calls game tools behind the scenes and narrates the results as atmospheric detective fiction.

Sample conversation

YOU

“I want to examine the study where the body was found”

CLAUDE calls examine_scene()

The study is dimly lit, heavy curtains drawn. Lord Hartwell slumps in his leather armchair, a half-empty whiskey glass on the side table. The air carries a faint almond scent...

NEW EVIDENCE: Fingerprints on decanter [FORENSIC]

YOU

“Interrogate James about his alibi — he said he was at the pub”

CLAUDE calls interrogate()

James shifts in his seat, avoiding your gaze. “I told you, I was at The Crown until midnight.” But the pub receipt you found shows he left at 10:15 PM — over an hour before the murder...

🎲

Procedural Cases

The killer is randomized each playthrough. Same case, different solution every time.

🗣️

AI Interrogation

Question suspects with natural language. Catch them in lies. Confront them with evidence.

🔍

Evidence System

Forensic, testimonial, and documentary evidence. 12 clues per case to discover.

🏆

Detective Rating

Scored on accuracy, efficiency, and evidence collected. Earn ratings from Rookie to Ace.

3 Scenarios

Three crimes. Five suspects each.

🏰Victorian Mansion

The Hartwell Affair

Lord Hartwell found poisoned in his study. Family secrets, inheritance disputes, and a stolen will.

SUSPECTS: Butler, Son, Doctor, Business Partner, Maid

🌃Rain-Soaked City

Neon & Noir

A jazz singer murdered backstage at The Blue Moon club. Jealousy, debt, and a mysterious note.

SUSPECTS: Club Owner, Ex-Lover, Rival Singer, Bartender, Manager

💻Tech Startup

Digital Graves

CTO found dead in the server room. Stolen code, a failed IPO, and corporate espionage.

SUSPECTS: CEO, Lead Dev, Investor, HR Director, Intern

Get Started

Two ways to play

🌐

Play in Browser

No setup needed

Open the game in your browser and start investigating immediately. No account, no downloads. Just click and play.

Play Now
🤖

Play in Claude / ChatGPT

Best experience — via MCP

Add this to your MCP config and the AI becomes your detective narrator:

{
"mcpServers": {
"dead-on-arrival": {
"command": "npx",
"args": ["promptplay-games"]
}
}
}
Full setup guide for all platforms →
Under the Hood

Built for developers, too

Open source. TypeScript. One codebase serves MCP (stdio) and web (HTTP). We think “games as MCP tools” is a pattern with legs.

8 MCP Tools
@modelcontextprotocol/sdk
ToolTypeCost
new_caseStartFree
examine_sceneAction1 action
interrogateAction1 action
review_evidenceReviewFree
review_suspectsReviewFree
accuseResolveTerminal
get_hintMetaScore -
game_statusReviewFree
TypeScriptMCP SDKNext.jsPostgreSQLZodVercelOpen Source

The case is open

Someone's been murdered.
Can you solve it?

No downloads. No accounts. No installs. Just open your AI and start investigating.