Astrocade Creator MCP — pull and edit your Astrocade games locally over MCP (stdio).
Project description
Astrocade Creator MCP
A local (stdio) MCP server that lets a creator pull, edit, push, and publish the games already on their Astrocade account — as ordinary local files.
Add to your MCP client
Point your MCP client (Claude Code, Claude Desktop, …) at it — no install step, uvx fetches it
from PyPI on demand:
{
"mcpServers": {
"astrocade": {
"command": "uvx",
"args": ["astrocade-creator-mcp@latest"]
}
}
}
Or via the Claude Code CLI: claude mcp add astrocade -- uvx astrocade-creator-mcp@latest.
Targets prod by default — a creator sets nothing. To point at stage instead, add
"env": { "ASTROCADE_CREATOR_MCP_ENV": "stage" } to the entry.
Sign-in
Nothing to configure. The first tool call opens a browser to sign in with Google or
Apple, caches the tokens under ~/.astrocade, and silently refreshes them afterward. Login is
lazy (not at startup) so the browser flow never blocks the MCP stdio handshake.
Username/password Astrocade accounts aren't supported yet.
Optional — sign in ahead of time so the first call has no delay:
uvx astrocade-creator-mcp login
uvx astrocade-creator-mcp logout clears the cached tokens (e.g. to switch accounts).
Token cache dir: ~/.astrocade (override with ASTROCADE_TOKEN_CACHE_DIR).
Tools
list_my_games— your games (drafts included).pull_game/push_game— check a game out (files + metadata, as JSON), save edits back as a draft.push_gamecan also update metadata (title,description,thumbnail_url).publish_game— first-time publishing submits the game for review; on an already-published game it pushes the saved draft live. Returns the play URL.upload_asset— upload a local image/audio/3D file to the Astrocade CDN and get its URL. Asset URLs inasset_map.jsonmust come from here — external /data:URLs are rejected on push.check_wish_status— poll an AI "wish" that's in flight (wishes are submitted on astrocade.com;push_game/pull_gamesurface the request id when one is running).list_lib_apis/get_lib_api— browse the AstrocadelibAPI reference.
The editing session
The first pull_game is a checkout: write the returned files (game_code.html,
game_config.json, asset_map.json, plus persistent_storage_config.json when the game uses
persistent storage) to a local folder together with a .astrocade.json session
file ({game_id, sync_token, env}). Add .astrocade.json to the folder's .gitignore — it's
per-machine session state, not project content. Edit the files with your normal tools, then
push_game the changed ones, passing the session's sync_token as expected_version so a
concurrent change upstream is usually caught (a stale write surfaces as a conflict to reconcile,
rather than silently overwriting the other change). Every successful push returns a new
sync token — update .astrocade.json with it.
Note: an MCP client may cap the size of an inline tool argument (roughly tens of KB), so a very
large game_code string can be rejected by the client before it reaches the server. When that
happens, drive this package's stdio server from a short script instead — read the file off disk and
send push_game over the server's stdin (reusing the ~/.astrocade login), so the payload never
passes through the client's inline-argument path. config / asset / metadata edits are unaffected.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file astrocade_creator_mcp-0.1.2.tar.gz.
File metadata
- Download URL: astrocade_creator_mcp-0.1.2.tar.gz
- Upload date:
- Size: 77.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
47c4c369eb24c50f7240c394a95d60f531846dc711fb28c5cf15403e1613dc30
|
|
| MD5 |
cb3836801e76c8cfc39c644d80b40000
|
|
| BLAKE2b-256 |
01bcfa1008a9a79d5e358141ff5302cd5fe36bb27ea2ee337ba9ff0352d5662e
|
Provenance
The following attestation bundles were made for astrocade_creator_mcp-0.1.2.tar.gz:
Publisher:
creator-mcp-publish.yml on astroblox-tech/astro-code
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
astrocade_creator_mcp-0.1.2.tar.gz -
Subject digest:
47c4c369eb24c50f7240c394a95d60f531846dc711fb28c5cf15403e1613dc30 - Sigstore transparency entry: 2239215166
- Sigstore integration time:
-
Permalink:
astroblox-tech/astro-code@6788b7d586690af84d07a70726a7bd12fb462fa1 -
Branch / Tag:
refs/heads/tmp-oob-publish - Owner: https://github.com/astroblox-tech
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
creator-mcp-publish.yml@6788b7d586690af84d07a70726a7bd12fb462fa1 -
Trigger Event:
push
-
Statement type:
File details
Details for the file astrocade_creator_mcp-0.1.2-py3-none-any.whl.
File metadata
- Download URL: astrocade_creator_mcp-0.1.2-py3-none-any.whl
- Upload date:
- Size: 53.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7fc34192599db53fbb8e162fd647d35bacf756fea9aa0329f2095d8a7d72b39f
|
|
| MD5 |
f02e87339559761a8b7c50836366afc5
|
|
| BLAKE2b-256 |
04efcf113eb69e64a24c51994f7cdf38b7d4aea19ad829fbb25fdf24e1f794e6
|
Provenance
The following attestation bundles were made for astrocade_creator_mcp-0.1.2-py3-none-any.whl:
Publisher:
creator-mcp-publish.yml on astroblox-tech/astro-code
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
astrocade_creator_mcp-0.1.2-py3-none-any.whl -
Subject digest:
7fc34192599db53fbb8e162fd647d35bacf756fea9aa0329f2095d8a7d72b39f - Sigstore transparency entry: 2239215602
- Sigstore integration time:
-
Permalink:
astroblox-tech/astro-code@6788b7d586690af84d07a70726a7bd12fb462fa1 -
Branch / Tag:
refs/heads/tmp-oob-publish - Owner: https://github.com/astroblox-tech
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
creator-mcp-publish.yml@6788b7d586690af84d07a70726a7bd12fb462fa1 -
Trigger Event:
push
-
Statement type: