supercell-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@supercell-mcpget Clash of Clans player #2PP0JCVL"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
supercell-mcp
One MCP server covering three Supercell game APIs — Clash of Clans, Clash Royale, and Brawl Stars. They share an auth model and response style, so a single server with prefixed tool names beats three near-identical ones.
Read-only. These APIs expose no write or messaging endpoints at all, so there is nothing here that can change game state.
Runs over stdio, registered in ~/.claude.json as supercell.
Tools
Prefixes: coc_ Clash of Clans, cr_ Clash Royale, bs_ Brawl Stars.
Clash of Clans | Clash Royale | Brawl Stars |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Related MCP server: Clash Royale MCP Server
Layout
src/client.js shared auth + fetch, one base URL per game
src/clashofclans.js coc_* tools
src/clashroyale.js cr_* tools
src/brawlstars.js bs_* tools
src/index.js McpServer construction + stdio transportThe IP allowlist gotcha
Supercell API keys are bound to the IP address they were created for. When
the home IP changes, every call starts returning 403 accessDenied even though
the key is perfectly valid and unexpired.
That failure mode looks like an auth bug and isn't one. To fix it, mint a new key for the current IP at the relevant developer portal:
Check the current public IP with curl -s https://api.ipify.org (already an
allowed command in ~/.claude/settings.json).
Setup
Requires Node 20+. Mint a key per game at the portal listed above, for your
current public IP, then save each one as credentials/<game>.json:
credentials/clashofclans.json
credentials/clashroyale.json
credentials/brawlstars.jsonEach holds {"token": "..."} — see the matching *.example.json.
credentials/ is git-ignored. A game whose key file is absent simply fails on
first call with a message naming the file and its portal; the other games keep
working.
npm ci
npm start
claude mcp add supercell -- node <path>/supercell-mcp/src/index.jsTests
npm testRegistration across all three games, tag encoding, and the missing-key error message. No network and no credentials.
Notes
Player and clan tags start with
#(e.g.#2PP0JCVL). The#is URL-encoded before the request — pass tags with the#included.Tags are unambiguous across games but not portable between them; a Clash Royale tag won't resolve against the Clash of Clans API.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/brettadams0/supercell-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server