MCP Hub
Back to servers

Clash Royale MCP Server

An MCP server that integrates with the official Clash Royale API to provide real-time data on players, clans, cards, and tournaments. It enables users to query battle logs, chest cycles, and global rankings directly through Claude Desktop or Claude Code.

glama
Updated
Mar 17, 2026

Clash Royale MCP Server

A Model Context Protocol (MCP) server that wraps the official Clash Royale API. Exposes player, clan, card, tournament, and ranking data as MCP tools usable from Claude Desktop or Claude Code.

Prerequisites

  • Python 3.11+
  • uv (recommended) or pip
  • A Clash Royale developer API token

Getting an API Token

  1. Go to https://developer.clashroyale.com and sign in.
  2. Click My Account → Create New Key.
  3. Enter a name and your current public IP address — tokens are IP-locked.
  4. Copy the token.

IP locking gotcha: If your IP changes (home network, VPN, etc.) your token will return 403 errors. Either create a new key or use the RoyaleAPI community proxy (see below).

Using the RoyaleAPI Proxy (recommended for local dev)

The proxy at https://proxy.royaleapi.dev/v1 forwards requests to the official API without IP locking. Set it via the env var:

CLASH_ROYALE_BASE_URL=https://proxy.royaleapi.dev/v1

Installation

git clone <repo>
cd clash-royale-mcp

# Copy and fill in your token
cp .env.example .env
# Edit .env: set CLASH_ROYALE_API_TOKEN=your_token_here

# Install with uv
uv sync

# Or with pip
pip install -e .

Running Locally

# Test the server directly (exits immediately — use fastmcp dev for interactive testing)
python -m clash_royale_mcp.server

# Interactive MCP inspector (recommended for development)
fastmcp dev src/clash_royale_mcp/server.py

Claude Desktop Integration

Add to your claude_desktop_config.json (usually at ~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "clash-royale": {
      "command": "uv",
      "args": ["run", "clash-royale-mcp"],
      "env": {
        "CLASH_ROYALE_API_TOKEN": "your_token_here"
      }
    }
  }
}

Or if running without uv:

{
  "mcpServers": {
    "clash-royale": {
      "command": "python",
      "args": ["-m", "clash_royale_mcp.server"],
      "cwd": "/path/to/clash-royale-mcp",
      "env": {
        "CLASH_ROYALE_API_TOKEN": "your_token_here"
      }
    }
  }
}

Available Tools

Player

ToolDescription
get_playerFull player profile: trophies, level, wins/losses, clan, card collection
get_player_battlelogRecent battle history (up to 25 battles) with decks and outcomes
get_player_upcoming_chestsUpcoming chest sequence in the player's cycle
get_player_recent_decksDeduplicated deck analysis with win rates and usage counts

Clan

ToolDescription
get_clanFull clan profile and member roster
search_clansSearch clans by name, location, or score thresholds
get_clan_membersPaginated clan member list
get_clan_warlogClan war history
get_clan_current_warCurrent active war state

Cards

ToolDescription
get_cardsFull card catalog (~100+ cards); cached after first call

Tournaments

ToolDescription
search_tournamentsSearch open tournaments by name
get_tournamentTournament details by tag
get_global_tournamentsAll currently active global tournaments

Locations & Rankings

ToolDescription
get_locationsList locations/regions with their IDs
get_clan_rankingsTop clan rankings for a location or globally
get_player_rankingsTop player trophy rankings for a location or globally
get_clanwar_rankingsTop clan war rankings for a location or globally

Environment Variables

VariableDefaultDescription
CLASH_ROYALE_API_TOKEN(required)Your API token from developer.clashroyale.com
CLASH_ROYALE_BASE_URLhttps://api.clashroyale.com/v1API base URL; override for proxy

Reviews

No reviews yet

Sign in to write a review