Building an AI fighter pipeline with MCP while keeping the match runtime authoritative
An AI-generated fighter may look convincing and still be a bad game asset: it can lack a required motion, contain mismatched metadata, or arrive after a newer version was chosen. A valid fighter also needs a runtime that can say exactly who won.
ODDBOUT’s public Twitch Cup client makes one half of this system concrete. It is a TypeScript/Vite app with a Phaser battle host: four participants form two semifinals and a final, played automatically. Viewers can join with !join <fighter> . Approved creator fighters may be loaded from a public service. The creator workflow and MCP server are separate; this Cup repository does not implement fighter generation or MCP tools.
That distinction gives us a useful engineering boundary: an agent can help make and prepare a fighter, while the game remains responsible for the result.
Concept diagram.…