Game Forge
MCP server that builds single-file browser games teaching one concept through play. Provides tools to generate game prompts, save and list games, and self-verify before shipping.
README
Game Forge — Educational Game MCP
Builds single-file browser games that teach one concept through play.
The design doctrine lives in prompts/system_prompt.md — edit it, restart, done.
Run
pip install -r requirements.txt
python app.py
- MCP endpoint:
http://127.0.0.1:8000/mcp - Health:
http://127.0.0.1:8000/health - Saved games:
http://127.0.0.1:8000/games/<name>.html
MCP surface
| Kind | Name | Purpose |
|---|---|---|
| Tool | build_game_prompt(topic, audience, session_minutes) |
Full parameterized generation prompt |
| Tool | save_game(name, html) |
Save generated HTML → playable URL |
| Tool | list_games() |
All saved games |
| Tool | review_checklist() |
Self-verification gate before shipping |
| Resource | game-forge://system-prompt |
The raw design doctrine |
| Prompt | forge_game(topic, audience) |
One-shot "build a game about X" |
Generate a game
game.py ties the MCP to a local Ollama model (gemma4:12b):
# Terminal 1: MCP server (still required)
python app.py
# Terminal 2: generate a game
python game.py # prompts for topic
python game.py "equivalent fractions" # one-shot
python game.py --topic gravity --audience "ages 10-12" --session 10
python game.py "photosynthesis" --checklist # + auto self-fix pass
Prints the playable URL on success. Requires app.py to be running and
Ollama to have gemma4:12b pulled.
Test it
python test_client.py # exercises every MCP tool + the web endpoints
MCP Inspector (visual testing)
Option A — stdio (Inspector spawns the server itself):
npx @modelcontextprotocol/inspector python server.py
Option B — HTTP (Inspector connects to your running app; preferred here because it tests the real deployment surface, including /games/ hosting):
python app.py # terminal 1
npx @modelcontextprotocol/inspector # terminal 2, no args
# In the Inspector UI: Transport = "Streamable HTTP", URL = http://127.0.0.1:8000/mcp
Agent workflow (what an LLM client does)
build_game_prompt("photosynthesis")→ system prompt for the game-brief- LLM generates the single-file HTML game from that prompt
save_game("photosynthesis", html)→/games/photosynthesis.htmlreview_checklist()→ self-verify, fix, re-save
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.