CUECUE Developers Code with AI
Guide

Code with AI

CUE Portal has an MCP server, which is how AI assistants like Claude Code, Codex and the Claude and ChatGPT desktop apps plug in outside tools. Install it and your assistant can create, upload, test and submit your game for you, while your files stay in a normal local folder.

You do not need to understand any of the words below to follow this (if you're anything like me, that's a relief...). Copy the commands as they are, in order, and your AI assistant does the rest. If a step looks unfamiliar, don't panic, just run it. IT'LL ALL BE FINE I'M SURE.

This process should get you from zero to a game anyone can play:

Let's break that down a bit further...

What you need

The MCP server is an npm package called @cueportal/make-a-game. You never install it permanently; the npx command fetches and runs it on demand.

Use an app you install on your computer, or a command line tool. The website versions of Claude and ChatGPT, and their phone apps, cannot run this: they only connect to tools that live on the internet, and this one runs on your machine so it can write your game files into your own folder.

1 · Accept the developer terms

This part happens in the browser, once. Sign in on the portal, go to Studio (under your avatar in the top bar), read the developer terms and agree. Your assistant cannot do this for you, on purpose: the terms are an agreement between you and CUE Portal.

2 · Add the MCP to your assistant

Register the MCP server with your assistant. Find yours below and do that one part only. You do this once per computer.

Claude Code

Run this in a terminal:

claude mcp add cue npx @cueportal/make-a-game

Codex on the command line

Run this in a terminal:

codex mcp add cue -- npx @cueportal/make-a-game

The Claude desktop app

Open Claude, go to Settings → Developer and press Edit Config. That opens a file called claude_desktop_config.json, making a new one if you don't have it yet. Put this inside:

{
  "mcpServers": {
    "cue": {
      "command": "npx",
      "args": ["-y", "@cueportal/make-a-game"]
    }
  }
}

If the file already lists other servers, add the "cue" block next to them inside the same "mcpServers" section, with a comma between the two.

Save the file, then quit Claude completely and open it again. That is what starts the server. The CUE tools then show up behind the + button next to the message box, under Connectors.

On Windows, if Claude says the server failed to start, npx usually needs two things: run npm install -g npm once in a terminal, and add your own user folder to the block, like this:

{
  "mcpServers": {
    "cue": {
      "command": "npx",
      "args": ["-y", "@cueportal/make-a-game"],
      "env": { "APPDATA": "C:\\Users\\your-name\\AppData\\Roaming\\" }
    }
  }
}

The ChatGPT desktop app

Open ChatGPT, go to Settings → MCP servers and press Add server. Name it cue, pick STDIO as the type (that means a tool running on your own computer), and give it this command:

npx -y @cueportal/make-a-game

Save, then press Restart. If it complains that the server took too long to start, that is the first download being slower than the 10 second default, so give it longer. The same settings live in a file at ~/.codex/config.toml, which the app shares with the Codex command line tool and the Codex editor extensions, so you can also write them there by hand:

[mcp_servers.cue]
command = "npx"
args = ["-y", "@cueportal/make-a-game"]
startup_timeout_sec = 30

Anything else

Other assistants that speak MCP want the same command in their own config format, for example:

# most TOML-based clients
[mcp_servers.cue]
command = "npx"
args = ["@cueportal/make-a-game"]

3 · Log in

The MCP server needs to act as you, so give it a login. This step is a terminal command even if you use a desktop app: you run it once, and the app picks up the login from then on.

npx -y @cueportal/make-a-game login

It shows a short code and opens the portal in your browser. Sign in if you need to (Google or your email both work), check that the code on the page matches the one in your terminal, and press Approve.

No password ever touches the terminal. The MCP server keeps a sign-in token on your machine and uses that from then on. If it ever expires, any tool call will tell you to run the login command again.

On a machine with no browser (a server, or a script), add --password to sign in with your email and password directly. That only works for accounts that have a password; if you signed up with Google, use the normal flow and approve from any device, even your phone.

4 · Build your game

One thing to know before you start: a game only runs inside the portal. There is no local preview. @cue/sdk only works when the portal is on the other side, so opening index.html from disk, or serving the folder yourself, gives you a page that waits forever. Your assistant cannot run the game either, but it is not blind: every test run records the game's messages and errors, and your assistant can read that log after you play.

Start your assistant anywhere you like and ask for what you want. A good first prompt:

Make me a CUE Portal game: a simple memory-matching game using my card
collection. Read the CUE docs first, create the game, build it in this
folder, then upload it so I can test it.

A well-behaved (?!) assistant will read the SDK docs through the MCP, create the game (which also reserves its id and scaffolds the starter files), write index.html, main.js and style.css in your local folder, and push the folder to the Studio. The same rules apply as in the browser: plain JavaScript, no build step, and the only imports allowed are @cue/sdk, @cue/2d (see 2D games), @cue/3d, and your own files by relative path. Uploads that break the import rule are rejected with an explanation your assistant can read and fix.

5 · Test and submit

Ask your assistant for the test link. Open it in your browser while signed in and the game starts on its own, exactly as a player would see it. An unpublished game stays invisible to players, and if you want a friend to try it before you submit, the Studio's Share test link button (on the game's Details tab) copies a link that lets anyone play the test version for 7 days. While you play, the game's messages and errors are recorded; when something looks wrong, just tell your assistant you finished playing and it can read the log itself to work out what happened. Which we think is pretty cool.

When you're happy, tell your assistant to submit the game for review. The CUE Portal team will then play it (probably not immediately, and rarely at weekends... this is the problem with humans...) and either approve it, which will add it straight to the public Games list, or send it back with some notes on things to amend/improve. Your assistant can read the note, fix the game, and submit again.

Honestly, we are making zero promises around this moderation/review bit at the moment as we have no idea how complex it will be or how many games or tools will be submitted. All we can say is that we will do our best.

Assuming that all goes through though - you just shipped a game! Give yourself high fives, organise a launch party, and start worrying about what the critics will say.

If you later want/need to make changes, ask your assistant to edit the files and submit again. To make another, start from step 4 with a new idea. (Steps 1 to 3 are one-offs.)

What the MCP can and can't do

It can: list your games, create one, edit details (name, genre, description, max players), set the thumbnail and feature graphic, read and write files, upload and download assets, push a whole folder, submit for review, withdraw, and unpublish.

It also serves the developer docs and the card catalog to your assistant, so you can just say "read the CUE docs" or "find me some Space cards" in a prompt. And after you test a game, it can read the run's log (messages and errors) to debug what you saw.

If you share a game with other people, remember you are all editing the same copy. Your assistant can see when a file changed since it last looked, so ask it to check before it rewrites something one of your teammates has been working on. Saving over their work is easy to do and there is no undo. Yikes. Be careful.

It can't accept the developer terms (even if it could - you'd still be the one responsible), and it can't get around the platform's rules, like the import allow list.

If something goes wrong