Game Predictor MCP Server

Game Predictor MCP Server

Predicts video game scores (0-100 scale, similar to Metacritic ratings) using machine learning based on game characteristics like price, release month, tags, genres, and platforms, trained on Steam game data.

Category
Visit Server

README

Game-predictor MCP Server

A Model Context Protocol (MCP) server that predicts video game scores using machine learning based on game characteristics like price, release month, tags, genres, and platforms.

Purpose

This MCP server provides AI assistants with the capability to predict game scores (similar to Metacritic ratings) by analyzing various game attributes. It uses a Random Forest regression model trained on Steam game data to make predictions.

Features

  • Score Prediction: Predicts game scores (0-100 scale) based on game characteristics
  • Steam Data Integration: Automatically collects game data from Steam API and SteamSpy
  • RAWG API Integration: Retrieves additional platform information
  • Machine Learning: Uses scikit-learn's Random Forest algorithm for predictions
  • MCP Protocol: Compatible with Claude Desktop and other MCP clients

Requirements

Dependencies

Install the required packages:

pip install -r requirements.txt

API Keys

You'll need a RAWG API key for platform data:

  1. Sign up at RAWG.io
  2. Create a .env file in the project root:
RAWG_KEY=your_rawg_api_key_here

Installation & Setup

  1. Clone/Download the project
  2. Install dependencies:
    pip install -r requirements.txt
    
  3. Set up environment variables:
    echo "RAWG_KEY=your_api_key" > .env
    
  4. Run the server:
    python mcp_server/main.py
    

How It Works

Data Collection

  • On first run, the server automatically creates a dataset by fetching game information from:
    • SteamSpy: Player statistics and tags
    • Steam Store API: Game details and pricing
    • RAWG API: Platform information and ratings
  • Data is saved to data/games_dataset.csv

Model Training

  • Uses Random Forest regression with 200 estimators
  • Features include: price, release month, encoded tags/genres/platforms, and player statistics
  • Target variable: Game score (Metacritic or RAWG rating converted to 0-100 scale)

Available Tools

make_prediction

Predicts a game's score based on its characteristics.

Parameters:

  • price (float): Game price in USD
  • release_month (int): Month of release (1-12)
  • tags (list[str]): List of game tags (e.g., ["Action", "Multiplayer"])
  • genres (list[str]): List of game genres (e.g., ["Action", "Adventure"])
  • platforms (list[str]): List of platforms (e.g., ["PC", "PlayStation 5"])

Returns: Predicted score (float, 0-100 scale)

Usage Examples

Here are some example queries you can use with the MCP server:

Basic Prediction

"Predict the score for a $29.99 action game releasing in December with tags 'Action' and 'Singleplayer', genre 'Action', on PC platform"

Indie Game Prediction

"What score would you predict for an indie puzzle game costing $14.99, releasing in March, with tags ['Indie', 'Puzzle', 'Casual'], genres ['Indie', 'Casual'], and available on ['PC', 'Nintendo Switch']?"

AAA Game Prediction

"Predict the score for a $59.99 AAA RPG releasing in November with tags ['RPG', 'Open World', 'Multiplayer'], genres ['Action', 'RPG'], on ['PC', 'PlayStation 5', 'Xbox Series X/S']"

Free-to-Play Game

"What would be the predicted score for a free-to-play battle royale game (price: 0) releasing in June with tags ['Free to Play', 'Battle Royale', 'Multiplayer'], genres ['Action'], on ['PC', 'Mobile']?"

File Structure

mcp_server/
├── main.py                 # Entry point
├── server.py              # FastMCP server setup
├── tools/
│   └── predict_tool.py    # Prediction tool definition
├── utils/
│   ├── game.py           # Game data collection utilities
│   └── predict_model.py  # ML model setup and prediction
├── data/                 # Generated dataset storage
│   └── games_dataset.csv # Game data (auto-generated)
├── requirements.txt      # Python dependencies
└── .env                 # Environment variables (you create this)

Configuration with Claude Desktop

To use this server with Claude Desktop, add it to your claude_desktop_config.json:

{
  "mcpServers": {
    "game-predictor": {
      "command": "python",
      "args": ["/path/to/your/mcp_server/main.py"],
      "env": {
        "RAWG_KEY": "your_rawg_api_key_here"
      }
    }
  }
}

Limitations

  • Dataset Size: Initially limited to 1000 games to avoid API rate limits
  • API Dependencies: Requires internet connection for RAWG API
  • Rate Limiting: Includes 1-second delays between API calls
  • Data Quality: Predictions depend on the quality of training data
  • Regional Variations: Scores may not reflect regional preferences

Troubleshooting

Common Issues

  1. "games_dataset.csv not found":

    • This is normal on first run. The server will automatically create the dataset.
  2. API Rate Limiting:

    • The server includes built-in delays to respect API limits
    • If you encounter rate limits, wait before retrying
  3. Model Not Trained Error:

    • Ensure setup_model() is called before making predictions
    • Check that the CSV file was created successfully
  4. Missing RAWG API Key:

    • Verify your .env file exists and contains the correct API key
    • Ensure the key is valid and active

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured