Skip to main content

Player MCP

The player server acts for you as a player. It can recommend games and say why, search the catalog, review games you own and report bugs, see your account, wallet, and library, top up your balance, buy games and donate within the spending limit you set, fetch download links, and hand installs and launches to the Blazium launcher. It cannot touch game pages, builds, crash reports, analytics, or keys; those are on the developer server.

Developer serverPlayer server
URLhttps://mcp.blazium.games/mcphttps://mcp.blazium.games/player
Scopesmcp:read, mcp:writeplayer:read, player:write, player:buy
API key prefixbgames_mcp_bgames_play_
Server card/.well-known/mcp/server-card.json/.well-known/mcp/player-server-card.json

A token belongs to exactly one server. A developer key or token is refused by /player, and a player key or token is refused by /mcp. A token can't hold both mcp:* and player:* scopes (4032).

Add the server to your client with no token:

{
"mcpServers": {
"blazium-games-player": {
"url": "https://mcp.blazium.games/player"
}
}
}

Your client discovers OAuth from https://mcp.blazium.games/.well-known/oauth-protected-resource/player (authorization server metadata at /.well-known/oauth-authorization-server/player) and opens the Blazium Games consent page, which lists what the player tools can do. There is no project picker. Tick Allow purchases only if the agent should buy for you; without it the token has player:read player:write and every purchase call returns 4212. Tick Read-only access to grant player:read only.

Connect with a player key​

Create a player key at blazium.games/settings/mcp under Player MCP. Untick Allow purchases to create a key without player:buy. The key is shown once; send it as Authorization: Bearer bgames_play_.... Rotating revokes all your player keys and leaves your developer keys alone.

Scopes​

ScopeAllows
player:readAccount, wallet, ledger, payment options, top-up status, quotes, purchase status, library, download links, approvals, agent policy, the files you can see for a game, recommendations, your review, friends and what they're playing
player:writeEmail verification, play time, confirming an approval with the emailed code, joining or leaving a beta, reviews, taste feedback, bug reports, friend requests, presence and activity sharing
player:buyCard and x402 top-ups, purchase_game, donate_to_game

A route outside this list returns 4033. A missing player:buy returns 4212; any other missing scope returns 4031.

Spending limits and approval​

Purchases always come from your stored balance. Set a limit per agent at blazium.games/settings/mcp: ask every time, unlimited, monthly, yearly, or a one-time budget. Anything beyond the limit waits for you to approve it by email link or code. See Agent purchases.

Tools​

ToolInputsScopeNotes
get_accountnonereadEmail verification, balances, and what the account may do
request_email_codenonewriteEmails a verification code to you
verify_emailcodewriteVerifies your email with the code
get_walletnonereadCredit, pending, and available balances plus fee and refund rules
list_wallet_transactionslimit (1-200), beforereadLedger entries, newest first
get_payment_optionsnonereadCard top-up and x402 USDC networks with fees
create_top_up_linkamount_centsbuyCard Checkout link for you to add balance
create_x402_top_upamount_cents, networkbuyx402 payment requirements for a USDC top-up
pay_with_x402top_up_id, payment_payloadbuySubmits the signed x402 payment
quote_purchaseuid, kind, amount_cents, skureadPrice, tax, and total. The agent shows you the total first. sku is an edition uid or slug from get_game_details; empty quotes the cheapest edition, and owners of a cheaper edition are quoted the upgrade price
purchase_gameuid, confirm_total_cents, idempotency_key, skubuyBuys a license (or an edition upgrade) from your balance, with the same sku as the quote. Beyond the limit it returns approval_required
donate_to_gameuid, amount_cents, confirm_total_cents, idempotency_keybuyDonates to a free game from your balance
get_approvalapproval_idreadpending, approved, denied, expired, or used
confirm_approvalapproval_id, codewriteApproves with the 6-digit code you read to the agent
get_librarynonereadGames you own, with refund windows and play time
get_download_linkfile_idread5-minute signed URL for a build file
get_agent_policynonereadThis agent's limit mode, limit, and spend in the period
search_catalogq, asset_type, genres, tags, tone, session_bucket, net, players, os, arch, engine, engine_version, renderer, license, authorship, sort, page, page_sizereadPublic games, tools, and assets with a score, scan state, platforms, made-with label, launch-health band, and a short reason for each match. See Listings and search
get_shelfkind (tonight or unheard_of), osreadA short curated shelf. tonight has short-session games with a healthy, clean build for os; unheard_of has recent listings few people have found. The order rotates daily. See Shelves
get_game_detailsuidreadDescription, taxonomy, price, editions (skus), made-with label, launch health, license kind, engine compatibility, what it uses and what uses it, files with scan state and checksum, similar titles, and whether you own it
install_builduid, build_id, os, arch, channelreadChecks your license and the virus scan, then returns the file checksum, a 5-minute download_url, and a blazium://install/<uid> link for the launcher. Uses the channel you follow unless you pass stable or beta. Refuses any file that isn't clean
launch_gameuidreadReturns the blazium://game/<uid> link that opens the game in the launcher, and whether you own it and a clean build exists
set_channeluid, channel (stable or beta)writeJoins or leaves a game's beta. Beta builds then show up in get_game_details and install_build
why_should_i_trust_thisuidreadThe developer, how each current file was uploaded, its scan history and checksum, and anything worth a second look (a file that isn't clean, no scan history, a beta build). It never calls a file safe; a clean scan only means no known malware was found
recommendintent, minutes, party_size, like_uid, os, arch, asset_type, include_owned, limit (1-10)readGames for right now, each with the reasons it was picked and any cautions. See Recommendations
why_thisuid, intent, minutes, party_size, like_uid, os, archreadOne game scored against the same inputs: reasons, cautions, and the blockers that keep it out of recommend
write_reviewuid, enjoyed, quality (1-5), would_play_with_friends, text, deletewriteCreates or updates your review of a game you own. One review per game; delete removes it
taste_feedbackuid, more_like, clearwriteMore (true) or less (false) like this game in recommend. clear removes it
report_buguid, message, build_id, os, arch, include_dump, include_logwriteFiles a bug ticket with the developers. include_dump and include_log return one-time upload URLs (PUT, 24 hours)
games_friends_playlive_onlyreadWhat your friends are playing now, then what they played in the last 14 days, with store links. See Friends
list_friendsnonereadFriends with their presence (playing, online, offline) and pending requests with their request_uid
send_friend_requestusernamewriteSends a friend request. If that person already asked you, it accepts theirs
respond_friend_requestrequest_uid, acceptwriteAccepts or declines an incoming request
redeem_keycodewriteRedeems a game key (XXXXX-XXXXX-XXXXX-XXXXX) or a gift link (the whole link or the code at its end) and adds the game to your library. If you already own it, the key stays unused (4084)

Games list the channels you can join in get_game_details (channels). A beta download link for a game whose beta you haven't joined returns 4074.

install_build and launch_game never install or run anything on the server or your machine; the agent gives you the blazium:// link, or your client opens it, and the Blazium launcher does the rest.

Recommendations​

recommend gives the same answer for the same inputs; no model picks the games. It only considers public games with a clean build for your platform (when you pass os), and skips games you own or already liked unless you pass include_owned. Each game is scored in this order:

  1. Session fit: its session length (15m, 1h, 3h, or endless) against the minutes you have.
  2. Friends: a friend playing it right now, or else friends who own it. Only friends who share their activity count.
  3. Intent: words from intent matched against the listing's genres, tags, tone, name, tagline, and description. When you give an intent, a game that matches none of its words is left out.
  4. Taste: tags and genres shared with games you liked (taste_feedback more like, a review where you enjoyed it, an hour or more of play time, or like_uid), and titles the developer lists as similar to them.
  5. Reviews: enough reviews, with most reviewers saying they enjoyed it.
  6. Crashes: games with many recent crash reports rank lower and get a caution.
  7. Freshness: a small, capped boost for recently updated listings. It never counts as a reason on its own.

Every result lists reasons, each naming the listing field it matched. A game with nothing to cite is left out rather than padded in. party_size keeps only games that support that many players. Games you marked less like this never appear. why_this explains any one game, including why it was left out.

Reviews and bug reports​

You can review and report bugs for games you own: games you bought, and free games you've downloaded (a free game counts once you download it, and stops counting if it later gets a price). You need a verified email, and developers can't review their own games (4077). Enjoyed and quality are separate: a well-made game you didn't enjoy can be quality 5 and enjoyed "no". Reviews appear on the store page, where the developer can reply. Review text is never used for ranking; recommend only counts whether reviewers enjoyed the game.

A bug report goes to the game's developers, up to 10 per day (4291). Attached dumps and logs can only be downloaded by the game's developers and our staff.

Friends​

Add friends by username from the agent or at blazium.games/friends. You need a verified email to send requests, and you can send up to 20 a day (4292). Sending a request to someone who already asked you makes you friends right away. Adding yourself returns 4228, and asking someone you're already friends with or already asked returns 4078.

Friends see whether you're online and which game you're playing, plus the public games you played in the last 14 days. "Playing" comes from the play-time heartbeat your launcher or game sends, and lasts 10 minutes after the last one; there is no separate presence tool. Unlisted and draft games are never shown. Turn off Activity sharing on the friends page to hide all of it; you then also drop out of your friends' recommendations.

Resources​

URIContents
blazium-games://meAccount status, verification, and what the account may do
blazium-games://walletStored balance and payment rules
blazium-games://libraryOwned games and licenses

Moving from the developer server​

Until 2026-10-28 the developer server still lists get_wallet, list_wallet_transactions, get_payment_options, create_top_up_link, create_x402_top_up, pay_with_x402, quote_purchase, purchase_game, donate_to_game, get_agent_policy, list_library, and get_download_link, marked deprecated. At the end of that day they disappear from /mcp, even on a server that is already running, and are only on /player; purchases or top-ups made with a developer token then return 4034. list_library is named get_library here. See Versioning.