Skip to main content
Glama
Socami

Game Platforms MCP

by Socami

Game Platforms MCP

Serveur MCP (Model Context Protocol) exposant une base de jeux vidéo enrichie par IA, pour savoir sur quelles plateformes un jeu est disponible et s'il est exclusif à un constructeur (Sony, Microsoft, Nintendo, PC, Mobile), plus deux enrichissements IA inédits : le style visuel et le pays du studio.

Projet réalisé dans le cadre du cours "Projet IA" (Nathanaël Khodl). Écrit en JavaScript pur (aucune étape de compilation nécessaire).

Architecture du projet

Le projet suit les 3 parties demandées dans la consigne :

  1. Collecte de données (sans IA)src/scripts/fetchData.js interroge l'API publique RAWG (base de données de jeux vidéo, gratuite) et sauvegarde une liste de jeux avec leurs plateformes, développeurs et image dans data/raw-games.json.

  2. Traitement des données avec IAsrc/scripts/structureData.js enrichit ces données avec 3 informations qui n'existent PAS dans RAWG :

    • Familles de constructeurs : regroupe les plateformes brutes (ex: "PlayStation 5", "Xbox Series S/X") en familles standardisées (Sony, Microsoft, Nintendo, PC, Mobile, Autre). L'exclusivité est ensuite calculée en code à partir de ce résultat, pour rester fiable à 100%.

    • Style visuel (artStyle) : Réaliste, Cartoon, Pixel Art, Anime, Rétro ou Autre, déduit par analyse d'image réelle (Claude Vision) sur la capture d'écran du jeu — pas une supposition à partir du nom.

    • Pays du studio (studioCountry) : déduit de la connaissance générale de Claude sur l'industrie du jeu vidéo. Répond "Inconnu" quand l'IA n'est pas sûre plutôt que d'inventer une réponse.

    Le résultat est sauvegardé dans data/games.json.

  3. Serveur MCPsrc/mcp/server.js expose ces données via 6 outils, utilisables par n'importe quel client compatible MCP (Claude Desktop, etc.) :

    • search_games — recherche par nom, genre et/ou plateforme

    • games_by_platform — tous les jeux disponibles sur une plateforme donnée

    • exclusive_games — tous les jeux exclusifs à un constructeur donné

    • is_exclusive — statut d'exclusivité complet d'un jeu précis

    • games_by_art_style — jeux par style visuel

    • games_by_studio_country — jeux développés par des studios d'un pays donné

Related MCP server: Polyglot DB MCP

Prérequis

Installation

npm install
cp .env.example .env
# Puis remplir .env avec tes deux clés API

Utilisation en local

# 1. Collecter les données brutes depuis RAWG
npm run fetch-data

# 2. Structurer les données avec l'IA (familles, style visuel, pays)
npm run structure-data

# 3. Lancer le serveur MCP en local
npm run dev

Le serveur écoute sur http://localhost:3000, avec l'endpoint MCP sur POST /mcp.

Le dépôt contient un data/games.json d'exemple avec 3 jeux, pour que le serveur démarre sans erreur avant d'avoir lancé les scripts de collecte. Lance npm run fetch-data puis npm run structure-data pour le remplacer par de vraies données.

À savoir sur structure-data : l'analyse du style visuel envoie une vraie image à Claude pour chaque jeu (par lots de 4), ce qui prend plus de temps et coûte un peu plus cher que du texte pur. Avec la configuration par défaut (~240 jeux), compte quelques minutes et un coût de l'ordre de quelques dizaines de centimes sur ta clé API Anthropic. Pour un premier test rapide, tu peux réduire PAGES_TO_FETCH dans fetchData.js (ex: 1 page = 40 jeux).

Déploiement en ligne (Render)

  1. Pousse ce projet sur un dépôt GitHub.

  2. Sur render.com, crée un nouveau Web Service connecté à ton dépôt.

  3. Configuration :

    • Build command : npm install

    • Start command : npm start

  4. Dans l'onglet "Environment", ajoute tes variables RAWG_API_KEY et ANTHROPIC_API_KEY.

  5. Avant de déployer (ou juste après), lance npm run fetch-data et npm run structure-data en local, puis commit le fichier data/games.json généré dans ton dépôt (le serveur en ligne le lira directement, pas besoin de refaire les appels API à chaque démarrage).

  6. Une fois déployé, ton URL publique sera de la forme https://ton-projet.onrender.com, et l'endpoint MCP : https://ton-projet.onrender.com/mcp.

Le plan gratuit de Render met le service en veille après 15 minutes d'inactivité (premier appel plus lent le temps qu'il redémarre). C'est normal et attendu pour un projet de ce type.

Connecter le serveur à un client IA

Dans Claude Desktop, ajoute un connecteur personnalisé pointant vers ton URL /mcp. Une fois connecté, tu peux demander par exemple :

  • "Quels jeux sont exclusifs à PlayStation ?"

  • "Est-ce que Grand Theft Auto V est exclusif à une plateforme ?"

  • "Montre-moi les jeux disponibles sur Nintendo Switch."

  • "Quels jeux ont un style cartoon ?"

  • "Quels jeux viennent de studios japonais ?"

Structure des fichiers

game-mcp-project/
├── src/
│   ├── scripts/
│   │   ├── fetchData.js       # Partie 1 : collecte (sans IA)
│   │   └── structureData.js   # Partie 2 : structuration IA
│   └── mcp/
│       └── server.js          # Partie 3 : serveur MCP
├── data/
│   ├── raw-games.json         # Généré par fetch-data
│   └── games.json             # Généré par structure-data (lu par le serveur)
├── package.json
└── .env.example

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables natural language interaction with heterogeneous databases (MySQL and PostgreSQL) for CRUD operations across customer, product, and sales data with intelligent query routing and visualization capabilities.
  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables interaction with 20+ databases (PostgreSQL, MongoDB, Neo4j, Elasticsearch, Redis, and more) through a single unified interface, allowing cross-database queries and operations via natural language.
    1
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides database interaction through natural language, enabling query execution and content processing.
    7
    Apache 2.0
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables natural-language querying of historical NBA game data from a read-only SQLite database.

Latest Blog Posts

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/Socami/first-mcp-project'

If you have feedback or need assistance with the MCP directory API, please join our Discord server