Gamealia

io.github.gamealia由 GitHub 帳號 gamealia 發布v0.1.24更新於 Nov 6, 2026

Publish web games on Gamealia from your AI coding assistant: SDK, autotest, listing, upload.

概覽

AI 產生的概覽

Gamealia 讓程式設計助理把網頁遊戲發佈到 Gamealia 平台:整合 SDK、本機自動測試、建立頁面、上傳版本並提交審核。

可以做什麼
  • 檢查、產生與改造本機遊戲專案:辨識引擎與建置方式、建立含 SDK 的起始專案、整合或移轉 Poki/CrazyGames 呼叫、靜態檢查整合狀況
  • 本機建置、測試與預覽:執行建置、在無頭 Chromium 中進行桌機與行動版自動測試、本機入口網站預覽、附截圖的互動式試玩
  • 管理遊戲頁面:建立或編輯遊戲資訊、用截圖產生封面與縮圖、上傳建置成果為新版本、提交審核
  • 查看帳號與結果:登入、查看目前使用者、列出或切換開發者帳號、列出遊戲與版本、查看審核狀態與退回原因、每日數據與收益
  • 搜尋內建的 Gamealia 開發者文件,並為支援的程式設計助理安裝技能與設定
適用情境
適合網頁遊戲開發者希望由助理把一個本機遊戲專案一路做到在 Gamealia 上發佈,包含 SDK 整合、瀏覽器測試與提交審核。也適合把遊戲從 Poki 或 CrazyGames 移轉過來。
執行需求
透過 npx gamealia-mcp 執行的本機 stdio 程序,需要 Node.js 22 或更新版本。需要 Gamealia 開發者帳號,透過瀏覽器裝置碼流程登入(或設定 GAMEALIA_API_KEY 環境變數)。自動測試、預覽與封面工具需要安裝 playwright-core 及無頭 Chromium。僅支援桌機。
安裝前請注意
登入後會把 API 金鑰存放在本機憑證檔案中;登出只會刪除本機檔案,不會在伺服器端撤銷金鑰。發佈類操作會寫入帳號:建立遊戲、上傳版本、提交審核,編輯頁面會取代現有欄位值。上傳與提交前應先由使用者確認。工具失敗時會傳送匿名錯誤報告(工具名稱、去識別化後的錯誤、版本、作業系統),可用 GAMEALIA_TELEMETRY=0 或 DO_NOT_TRACK=1 關閉。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Gamealia,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Gamealia MCP server

Publish your web game on Gamealia from your AI coding assistant, and keep 60–70% of the ad revenue (100% from the players you bring), with no exclusivity.

Tell Claude Code, Cursor, Codex, VS Code, Gemini CLI, Windsurf, Cline, Zed or Claude Desktop:

Publish this game on Gamealia. It's in ./my-game.

The server analyzes the project, integrates the Gamealia SDK (or swaps Poki / CrazyGames calls through the compatibility layers), builds it, tests it in a real browser on desktop and mobile, writes the listing and the cover, uploads the build and submits it for review after you confirm. You approve one sign-in in your browser. A person reviews every version before it goes live.

Works with any engine that exports to the web: plain HTML5 and JavaScript, Phaser, PixiJS, three.js, Unity WebGL, Godot, GameMaker, Construct.

Install

Node.js 22 or newer.

sh
# Claude Codeclaude mcp add gamealia -- npx -y gamealia-mcp

Any other MCP client (stdio):

json
{  "mcpServers": {    "gamealia": { "command": "npx", "args": ["-y", "gamealia-mcp"] }  }}

The local autotest, preview and cover tools also use playwright-core with a headless Chromium (npx playwright-core install chromium).

Ready-made skills and configs for each assistant: gamealia.app/developers.

Tools

ToolWhat it does
gamealia_analyze_projectDetects the engine, the build and what the game needs
gamealia_integrate_sdkAdds the SDK and lifecycle calls, or migrates Poki / CrazyGames calls
gamealia_run_autotestRuns the game in a headless browser, desktop and mobile, with screenshots
gamealia_create_gameCreates the game page: title, description, controls, cover, translations
gamealia_upload_versionUploads the build and submits it for review
gamealia_get_statusReview state and live version
gamealia_get_earningsEstimated and confirmed earnings
gamealia_playtestPlays the game in a browser and reports what it sees

Full reference: Publish with AI.

The deal for developers

  • 60% of your game's ad revenue; launch partners (first game live by December 31, 2026) get 70% on all their games until June 30, 2027.
  • 100% of the ads seen by players who arrive through your own link.
  • Monthly payouts once your balance passes USD 50: PayPal, Payoneer, Wise or Mercado Pago.
  • No exclusivity: keep your game on Poki, CrazyGames, itch.io or your own site.

More: gamealia.app/developers · Revenue and payouts · Migrate from Poki · Migrate from CrazyGames

Contact

[email protected]

Error reports

When a tool fails, the server sends an anonymous report so we can fix it: the tool's name, the error message with file paths, emails, keys and other sites' addresses removed, the server version and the OS. Never your account, code, files or conversation. Turn it off with GAMEALIA_TELEMETRY=0 (or DO_NOT_TRACK=1). Details: privacy policy.

來源:README.md,提交 5814175

工具

26

gamealia_login

Log in to Gamealia

Logs in to Gamealia with a device code; call it first, since every tool that talks to Gamealia needs it. Returns a URL and a code at once for the user to open and approve (Google, or email and password; creates the developer profile if needed), then polls in the background and stores the API key in ~/.config/gamealia/credentials.json (mode 600). Call again with wait:true to wait for the approval (up to 50 s per call; repeat while still pending). When already logged in it only returns the username, unless force:true.

輸入參數waitforce

gamealia_whoami

Who am I

Shows who is signed in: user id and username, whether a developer profile exists, the active developer account with the user's role, the API URL and where the key came from (environment or credentials file; never the key itself). Read-only. Use it to confirm the login before creating or publishing games; to list or switch accounts use gamealia_accounts. Fails with a hint to call gamealia_login when not logged in.

無需輸入參數。

gamealia_logout

Log out

Logs out on this machine: deletes the local credentials file (every stored account key) and cancels a pending login. Local only, the key is not revoked on the server; safe to repeat. If GAMEALIA_API_KEY is set in the environment, calls stay authenticated with it. To change account, use gamealia_accounts instead.

無需輸入參數。

gamealia_accounts

Developer accounts

Lists or switches the user's Gamealia developer accounts (their own and studios they joined). API keys are bound to one account and every other tool acts on the active one, so when the user has several, confirm the right one before creating or publishing games. action "list" (read-only) returns each account (id, name, individual/business, role: owner, admin, developer or finance), which is active and pending invites. action "switch" makes another account active with a stored key, or starts a device login bound to it (show the URL and code, then call gamealia_login with wait:true).

輸入參數action必填account

gamealia_analyze_project

Analyze a game project

Inspects a local game folder (read-only, runs nothing, no login): engine (HTML5 + framework, Unity WebGL, Godot web, GameMaker, Construct), build command, output dir and entry html; existing CrazyGames/Poki SDK usage; policy problems (external ads, trackers, purchase UI, own login) with exact files and lines; localStorage keys; size; and the microphone/camera permissions to declare in the listing when the build calls getUserMedia. Call it first on an existing game (gamealia_create_project when there is none); the result names the next step, usually gamealia_integrate_sdk.

輸入參數dir必填

gamealia_create_project

Create a new game

Scaffolds a new minimal game, already integrated with the Gamealia SDK, into an empty or new folder (local files only, no login). Use it when there is no game yet, instead of gamealia_analyze_project + gamealia_integrate_sdk. Never overwrites: fails if the folder has any file. Returns the files written. Templates: vanilla (Canvas game in plain JavaScript; no build step, upload the folder as is.); phaser (Phaser 3 + Vite; `npm install && npm run build` -> dist/.); pixi (PixiJS 8 + Vite; `npm install && npm run build` -> dist/.); multiplayer (Room example (publish, invite link, join) with a BroadcastChannel stand-in for your server; no build step.)

輸入參數dir必填title必填template

gamealia_integrate_sdk

Integrate the Gamealia SDK

Patches a local project to use the Gamealia SDK, after gamealia_analyze_project: adds the SDK script tag (or import) and a lifecycle adapter, swaps CrazyGames/Poki SDKs for the Gamealia shims, adds the Unity .jslib / Godot addon. Deterministic and idempotent. Dry run by default (returns a unified diff, changes nothing); write:true edits the project's files. Returns TODOs (file:line) for the calls only you can place: gameplayStart/Stop, happyTime and ad breaks; then run gamealia_check_integration.

輸入參數dir必填write

gamealia_check_integration

Lint the SDK integration and policies

Fast static lint of a local project's source or build (read-only, no browser, no login): SDK loaded and called, loadingStop/gameplayStart/gameplayStop present, portal language used (locale/localeChange), no external ads/trackers/miners, no purchase UI, no own login, build security rules, sizes. Use it after gamealia_integrate_sdk and before the slower gamealia_run_autotest. Returns ok plus each check as pass/warn/fail with a message (how to fix it) and file:line.

輸入參數dir必填backendHosts

gamealia_build

Build the project

Runs the project's detected build command locally (e.g. npm run build; may take minutes, sends progress notifications) and returns the output folder and the last lines of the log, or an error with the end of the build log on failure. With no build step it runs nothing and returns the folder to upload. Usually optional: gamealia_run_autotest, gamealia_preview and gamealia_upload_version build first by themselves; use it to debug a failing build.

輸入參數dir必填

gamealia_run_autotest

Run the autotest locally

Builds (unless build:false) and runs the full Gamealia autotest locally in headless Chromium, desktop 1280x720 and mobile 390x844, the same checks as the server: SDK lifecycle, blank screen, input response, ads (mock), console errors, static security analysis. Run it before gamealia_upload_version, which repeats it on the server. No login; writes screenshots and report.json to a temp folder; takes a while (progress notifications). Returns pass/warn/fail, the failed checks with fixes, the screenshot paths and key screenshots as images.

輸入參數dir必填buildimagesbackendHosts

gamealia_preview

Preview in a portal replica

Serves the build (built first unless build:false) inside a local replica of the Gamealia game page (the real portal frame plus mock ads) on 127.0.0.1 and returns the page URL and the bare game URL for the user (or you) to open. No login, nothing is uploaded. It keeps running until stop:true or the MCP server exits; calling it again for the same folder restarts it. For automated checks use gamealia_run_autotest; to play it yourself, gamealia_playtest.

輸入參數dir必填stopbuildtitle

gamealia_playtest

Start a playtest (you play)

Starts the game (built first unless build:false) in headless Chromium inside the autotest harness so you can play it yourself, e.g. to check gameplay the automatic gamealia_run_autotest cannot judge. Returns a session id plus the first screenshot. Then call gamealia_playtest_act with one action at a time (click x,y | key | drag | wait) and end with gamealia_playtest_stop for the verdict. Up to 40 actions per session and 2 sessions at once; idle sessions close after a few minutes. Local, no login.

輸入參數dir必填buildprofile

gamealia_playtest_act

Playtest action

Performs one action (click, key, drag or wait) in a session started by gamealia_playtest; actions of one session run one at a time, in order. Returns the new screenshot, the step number and steps left, the SDK calls since the last step, new console errors, ad requests and how much the frame changed (0% often means the input did nothing). Fails if the session ended or expired; when steps run out, call gamealia_playtest_stop.

輸入參數action必填sessionId必填

gamealia_playtest_stop

Stop a playtest

Ends a session started by gamealia_playtest (waits for its pending action, then closes the browser page; the session id stops working) and returns the summary: verdict pass/warn/fail with a message, steps and how many got a response, whether gameplay started, happy times, ad requests and ads shown, console errors and whether it crashed. Call it when done playing, so the session does not hold a browser until it expires.

輸入參數sessionId必填

gamealia_create_game

Create the game listing

Creates a new game listing in the active developer account (needs login; not idempotent: a taken slug fails): slug, title/description/controls in es and en, tags, orientation, multiplayer, ads on/off, backend hosts, permissions; optionally uploads a cover and thumbnail (make them with gamealia_generate_cover). The game stays a draft, not public, until a version is approved. Call it once per game, after gamealia_run_autotest passes; to change an existing listing use gamealia_update_listing. Returns the game (id, slug, status); next gamealia_upload_version.

輸入參數slug必填tags必填textstitle必填controlscoverPathisolationthumbPathadsEnableddescription必填multiplayerorientation另有 2 個

gamealia_update_listing

Update the game listing

Edits an existing game's listing (needs login): only the fields given change and they replace the current values; coverPath/thumbPath upload a new cover or thumbnail. texts writes developer-authored title/description/controls for one or many locales in one call (validated against the limits; they always win over machine translation): translate the listing yourself (gamealia-translate-listing skill) and save every locale at once. A permissions change only takes effect with the next approved version. Returns the updated game and the permission changes.

輸入參數game必填slugtagstextstitlecontrolscoverPathisolationthumbPathadsEnableddescriptionmultiplayer另有 3 個

gamealia_generate_cover

Generate cover and thumbnail

Makes a 1200x630 cover and a 512x512 thumbnail from a gameplay screenshot (e.g. desktop-input.png from gamealia_run_autotest): center-cropped with the title on a gradient. Writes cover and thumb files to outDir (refuses to replace existing ones unless overwrite:true) and returns their paths plus the cover as an image. Without game it is local only; with game (needs login) it also uploads both to that listing, replacing its current images. Otherwise pass the files to gamealia_create_game or gamealia_update_listing.

輸入參數gametitle必填outDiroverwritescreenshot必填

gamealia_upload_version

Upload a new version

Builds (unless noBuild), zips and uploads the local build as a new version of an existing game (needs login; multipart, retried), then waits for the server autotest and returns the version state and its report. Use it after gamealia_run_autotest passes locally and gamealia_create_game. Each call creates a new version; interrupted uploads that block it are aborted automatically. Can take minutes (progress notifications). submit:true also submits it for review when the autotest passes: only after the user confirmed; otherwise use gamealia_submit_for_review later.

輸入參數dir必填game必填notessubmitnoBuildwaitForPrevious

gamealia_submit_for_review

Submit for review

Submits a game's newest version that passed the server autotest (state tested) for manual review by Gamealia, with release notes. Call it only after the user has confirmed they want to submit this version, and after gamealia_upload_version (skip it if that ran with submit:true). Needs login; fails if no version is tested, or if newly requested permissions lack a justification. Returns the version, normally awaiting_review; if permissions changed since its autotest the server re-tests it first. Then check gamealia_get_status later.

輸入參數game必填notes

gamealia_get_status

Game and version status

Shows where one game stands (read-only, needs login): listing status (draft, live, unlisted, banned), the live version, requested vs live permissions, the latest version's state, its server autotest report, the reviewer's reject reasons with how to fix each, and the previous versions' states. Use it after uploading or submitting, and to read a rejection. texts:true instead returns the listing text of every supported locale with its status (developer-written, machine-translated, missing), the source text to translate from and the field limits.

輸入參數game必填texts

gamealia_list_games

List my games

Lists every game of the active developer account (read-only, needs login): slug, title, status (draft, live, unlisted, banned), live version id and cover/thumbnail URLs. Use it to find the slug the other tools take, or to check that a game exists before gamealia_create_game; for one game's versions and review state use gamealia_get_status.

無需輸入參數。

gamealia_list_versions

List versions

Lists all versions of one game, newest first (read-only, needs login): number, state (uploading, testing, tested, test_failed, awaiting_review, approved, rejected, archived, ...), which one is live, release notes, size, autotest status, reject reasons with fixes and dates. For the latest version's full autotest report and the next step use gamealia_get_status.

輸入參數game必填

gamealia_get_stats

Game stats

Returns one game's daily stats for the last N days plus totals (read-only, needs login): plays, players, playtime in seconds, mobile/desktop split, ad requests and ad impressions. Use it to see how a live game performs; for money use gamealia_get_earnings, for review state gamealia_get_status.

輸入參數daysgame必填

gamealia_get_earnings

Earnings

Returns the active developer account's earnings (read-only, needs login; a role-forbidden error means the user's role cannot see finances): balance, then per month the estimated and confirmed amounts, adjustments and revenue share %, and the payouts made (date, amount, method). Amounts are USD; structured values are in micro-dollars (balanceMicros). Account-wide, not per game; for plays and ad impressions per game use gamealia_get_stats.

無需輸入參數。

gamealia_install_agent_kit

Register Gamealia in coding agents

One-time setup, not part of publishing: registers this MCP server and installs the Gamealia skills/rules in coding agents (claude-code, claude-desktop, codex, gemini, cursor, vscode, windsurf, cline, zed, opencode, agents-md). Dry run by default (write:true applies); returns the planned file changes plus copy-paste snippets (claude mcp add, Codex TOML, Cursor/VS Code install links). Project scope writes agent config files into dir (.mcp.json, .claude/skills, .cursor/, .vscode/, .codex/, AGENTS.md/GEMINI.md blocks, ...); global scope edits the user's own agent configs (~/.claude.json, ~/.codex/config.toml, Claude Desktop, ...). Merges idempotently, backs up every changed file first and leaves unparsable files alone; `gamealia agents uninstall` reverts it.

輸入參數dirscopewritetargetsserverPath

版本歷史

3
  1. v0.1.24最新Nov 6, 2026
  2. v0.1.22Nov 6, 2026
  3. v0.1.18Nov 4, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分
  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分