arcadegnt MCP server
Make browser games by chatting with your AI assistant. The assistant writes a Godot 4.8 game; arcadegnt builds it, publishes it at its own web address, and plays it in a real browser on desktop and phone so the assistant sees screenshots and fixes what is wrong.
Details
- Server URL
https://arcadegnt.com/mcp- Transport
- Streamable HTTP: JSON-RPC 2.0 over POST, JSON responses, no session id
- Auth
- OAuth 2.1 with dynamic client registration and PKCE (S256); users sign in with an emailed code. Discovery:
https://arcadegnt.com/.well-known/oauth-protected-resource - API keys
- None. arcadegnt never runs a model: the user's own assistant does the work
- Protocol versions
2025-11-25,2025-06-18,2025-03-26,2024-11-05- Capabilities
- 29 tools, 1 resource (
arcadegnt://guide), 1 prompt (make_game) - Engine
- Godot 4.8 (GDScript), exported for the web; games play on desktop and phones
- Works with
- Claude, ChatGPT, Claude Code, Codex, Cursor, OpenCode, VS Code, Manus, OpenClaw, Hermes Agent and other remote-MCP clients
- Docs
- Build guide · llms.txt
- Gallery
- gallery.arcadegnt.com
- Privacy · Terms
- Privacy policy · Terms
- Support
- hello@arcadegnt.com
Connect your assistant
Claude (web and desktop)
- Open Settings, then Connectors.
- Choose Add custom connector, name it arcadegnt and paste the URL:
https://arcadegnt.com/mcp- Press Connect, enter the code we email you, and choose Allow.
- Ask: “Make me a one-button arcade game with arcadegnt.”
ChatGPT
- Open Settings, then Apps & Connectors, and turn on Developer mode under Advanced settings.
- Choose Create, name it arcadegnt, paste the URL and pick OAuth:
https://arcadegnt.com/mcp- Sign in with your email, choose Allow, then add arcadegnt to a chat from the tools menu.
ChatGPT moves these menus around; if a step looks different, look for custom connectors or MCP servers.
Claude Code
claude mcp add --transport http arcadegnt https://arcadegnt.com/mcpThen run /mcp in Claude Code, pick arcadegnt and sign in.
Codex
codex mcp add arcadegnt --url https://arcadegnt.com/mcp
codex mcp login arcadegntThe login opens a browser to sign in with your email.
Cursor
Add to ~/.cursor/mcp.json (or the project's .cursor/mcp.json), then sign in when Cursor asks:
{
"mcpServers": {
"arcadegnt": {
"url": "https://arcadegnt.com/mcp"
}
}
}OpenCode
Add to opencode.json in the project (or ~/.config/opencode/opencode.json), then sign in:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"arcadegnt": {
"type": "remote",
"url": "https://arcadegnt.com/mcp"
}
}
}opencode mcp auth arcadegntThe login opens a browser to sign in with your email.
VS Code
Add to .vscode/mcp.json, start the server from the file and sign in:
{
"servers": {
"arcadegnt": {
"type": "http",
"url": "https://arcadegnt.com/mcp"
}
}
}Manus
- Open Settings, then Connectors (in some versions, Integrations).
- Choose Add connectors, then Custom MCP. Name it arcadegnt, pick the HTTP transport and paste the URL:
https://arcadegnt.com/mcp- When Manus asks you to log in, enter the code we email you and choose Allow.
OpenClaw
openclaw mcp add arcadegnt --url https://arcadegnt.com/mcp --transport streamable-http --auth oauth
openclaw mcp login arcadegntThe login opens a browser to sign in with your email. openclaw mcp doctor arcadegnt --probe confirms the tools load.
Hermes Agent
Add to ~/.hermes/config.yaml; Hermes opens a browser to sign in the first time it connects
(/reload-mcp in a running session):
mcp_servers:
arcadegnt:
url: "https://arcadegnt.com/mcp"
auth: oauthAny other MCP client
Point a client that supports remote servers (Streamable HTTP) with OAuth at the URL; it registers itself and opens the sign-in page. No API key, header or token to paste.
https://arcadegnt.com/mcpTry asking
- “Make me a one-button arcade game where a ship dodges falling blocks, with arcadegnt.”
- “Add a high score board and a title screen to my arcadegnt game.”
- “Use the sprites I'm about to upload for the player and enemies in my arcadegnt game.”
- “Submit my game to the arcadegnt gallery with a description and screenshots.”
Tools
| Tool | What it does |
|---|---|
create_game | Start a new game from the arcadegnt starter: a Godot 4.8 project set up for the web (Compatibility renderer, 1280x720 stretched), with keyboard, gamepad and multitouch controls already wired and a tiny playable scene. |
list_games | The user's games with their ids, addresses and whether they are live. |
get_game | One game with its address and the result of its latest build. |
get_guide | How arcadegnt games are built: the starter project, the web rules the build and the browser enforce, touch and gamepad controls, getting high-fidelity art and sound (generators, CC0 packs, code), and how to work with these tools. |
list_files | Every file in the game's project with its size. |
read_files | The contents of up to 40 project files at once (text files up to 256 KB). |
write_files | Create or replace up to 60 files in one call (scripts, scenes, SVG art, project.godot), and optionally delete files. |
edit_file | Change part of one file by exact text replacement. |
build | Import the project, load every script and scene, run the game headless for a few seconds, export it for the web and publish it at its address. |
get_build | The status and errors of a build (the latest one by default). |
check_game | Play the game's latest build (its play address) in headless Chrome: on desktop (1280x720, keyboard and mouse) and on a phone held sideways (844x390, touch) by default. |
get_check | The result of a check_game that was still running. |
submit_to_gallery | Submit the game's latest build and its game page (set_gallery_page) to the public gallery (gallery.arcadegnt.com and random mode). |
set_gallery_page | The game's page in the gallery (arcadegnt.com/g/<slug>): a description for players and up to 6 screenshots chosen from this game's check_game results (by check_id and label, e.g. |
remove_from_gallery | Take the game out of the gallery, drop any pending submission and unlock it: the latest build goes back to its own address and builds publish there again. |
get_stats | Plays, players and players' ratings (1-5 stars) for a game (lifetime and the last 14 days, split by where plays started: gallery, random mode or its own address), plus its gallery status. |
get_game_scores | Every high score board of a game (VbgntScores): counted entries best first, one entry per player, top 100, and `held` entries: suspect scores (over the rules in vbgnt_scores.json, no timed run, or far ahead of the board) that only their sender sees until approved. |
delete_game_score | Remove one entry (entry_id from get_game_scores, counted or held) from a board, or with no entry_id reset the whole board (needs confirm=true). |
approve_game_score | Count a held score (entry_id from get_game_scores `held`): it joins the public board, replacing that player's counted entry when it beats it. |
get_asset_upload_link | A page where the user drops their OWN files into the game: art, sprite sheets, music and sound effects, fonts, 2D and 3D models (glTF/GLB, OBJ, FBX), whole folders or .zip asset packs. |
import_asset | Download a public https file or .zip asset pack (e.g. |
create_asset_upload | For agents that run commands (Claude Code, Codex): a one-hour upload slot for a file on this machine and the curl command that sends it (replace <LOCAL_FILE>). |
finish_asset_upload | After uploading a .zip with create_asset_upload: unpack it into assets/. |
list_assets | The game's media files with what is known about each: image size and alpha and a sprite-sheet hint, audio length, a 3D model's meshes, rig and animation names and lengths, a font's name; plus recent imports and how much of the 150 MB is used. |
view_asset | See a file you cannot open yourself: an image (pixel art scaled up), a font sample, or a 3D model rendered from four sides with Godot's -Z (forward) marked, so you can tell which way it faces and how big it is. |
set_game_images | Use an image in the project as the loading screen (splash: PNG/JPG/WebP/SVG, best 1280x720 or larger, shown while the game downloads and starts; the build converts it to PNG), or splash_from_check: a check_game screenshot (e.g. |
download_source | A one-hour link to a zip of the Godot project (opens in the Godot 4.8 editor, 4.8-dev7 or newer). |
delete_game | Permanently delete a game, its files and its web page. |
whoami | The signed-in account's email, its game count and limits. |
Plus the resource arcadegnt://guide (the build guide the assistant reads first) and
the prompt make_game (describe a game; the assistant builds it and puts it online).
For directory listings
A one-paragraph description, ready to paste:
arcadegnt (https://arcadegnt.com) - Make browser games by chatting with Claude, ChatGPT, Claude Code or Codex. The assistant writes a Godot 4.8 game; arcadegnt builds it, hosts it at its own address and plays it in headless Chrome on desktop and phone, returning screenshots. High scores, bring-your-own assets, a public gallery. Remote server, OAuth, no API keys.