Clash Royale MCP Server
LocalAbout Clash Royale MCP Server
Clash Royale MCP Server exposes Clash Royale data tools for agents, including player, clan, card, and ranking information. It is part of Chat Royale, whose backend connects the tools to Gemini.
Key features
- 01Look up player and clan data
- 02Retrieve card information
- 03Check game rankings
- 04Invoke tools through Gemini
Use cases
- 01Find player or clan details
- 02Review card information
- 03Retrieve game rankings
MCP support
The MCP server exposes tools backed by the Clash Royale API for MCP clients to access player, clan, card, and ranking data.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEChat Royale
AI-powered Clash Royale agent using Gemini 2.0 with MCP tools for real-time game data access.
Full Technical Deep Dive
I recently wrote a technical breakdown on the architecture, my building process and other cool things about this project. You can read it on my websites here:
Architecture
Three containerized services:
MCP Server (src/mcp/) - Python FastMCP server exposing Clash Royale API tools:
- Players, Clans, Cards, Rankings
Backend API (src/backend/) - Node.js/Express server:
- Integrates Gemini with MCP client via
@modelcontextprotocol/sdk - Standard JSON request/response (no streaming)
- Tool execution handled internally with iterative Gemini calls
Frontend (src/frontend/) - React/TypeScript UI:
- Simple chat interface with markdown support
- Standard HTTP requests to backend API
How It Works
- User sends message to frontend
- Frontend posts to backend
/api/chat - Backend connects to MCP server and discovers tools
- Gemini processes message with available tools
- If tools needed: backend executes via MCP, feeds results back to OpenAI
- Final response returned as JSON to frontend
Deployment
Production: AWS Lightsail with Cloudflare CDN
CI/CD: GitHub Actions auto-deploy on main branch push/merge
# Deploy
docker-compose -f docker-compose.prod.yml up -d --build
Development
# Environment setup
# Backend: src/backend/.env - GEMINI_API_KEY
# MCP: src/mcp/.env - CR_API_KEY
# Run all services
docker-compose up -d
Tech Stack
- MCP Server: Python 3.12, FastMCP, Clash Royale API
- Backend: Node.js, Express, TypeScript, Gemini SDK
- Frontend: React, TypeScript, Vite, TailwindCSS
- Deployment: Docker, AWS Lightsail, Cloudflare, GitHub Actions
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.