Quickstart
Publishing a game takes three commands and one click.
1. Connect your machine
claude mcp add taploka -- npx -y taploka-mcp@latest
npx -y taploka-mcp@latest login
Any MCP-speaking agent works the same way: Cursor, Codex CLI, Windsurf, Gemini CLI, VS Code Copilot: by adding the
same server as a mcpServers JSON entry in that tool's config. The snippets live on the
MCP server page.
login prints a short code such as RT2H-Z46S and opens the arcade's admin console in your browser. An administrator
approves that code, and the key lands in ~/.taploka/credentials.json. No token is ever copied by hand.
Check it worked:
npx -y taploka-mcp@latest whoami
2. Push the game
Point push_game at the folder your build produced. It is zipped on the way out.
push_game { title: "Rosok Garage", zip: "/path/to/rosok-garage" }
The first push creates the game and derives the slug from the title. The response tells you what happened:
rosok-garage v1 released · rollout 100% · sdk_min 1 · 5 files · game created
Later pushes address the game by slug, so they add a version instead of creating a second game:
push_game { game: "rosok-garage", zip: "/path/to/rosok-garage", changelog: "fixed hitboxes" }
3. Look at it
game_status { game: "rosok-garage" }
You get the version ladder, the rollout of each version, score counts and the play URL.
Releasing carefully
Push as a draft, check it, then decide:
push_game { game: "rosok-garage", zip: "…", draft: true }
A draft is stored and validated but not served; the live version keeps running. Push with rollout: 20 to serve a new
version to a fifth of players while the rest stay on the previous one.
Without MCP
The same upload is a plain HTTP request, which is what a CI job usually wants. See the Harness API.