Que fait GMod-MCP-Server ?
Pont Model Context Protocol pour Garry's Mod — permet à un assistant IA d'exécuter du Lua et d'inspecter l'état d'une session de jeu en direct.
Fonctionnalités
- Exécution de code Lua : l'IA peut écrire et exécuter des scripts Lua directement dans le serveur Garry's Mod.
- Inspection d'état : l'IA peut lire des variables globales, des entités et d'autres données du jeu.
- Conforme MCP : suit le standard Model Context Protocol, compatible avec des clients comme Claude Desktop.
- Déploiement facile : s'exécute localement avec Node.js ou via Docker.
Installation
Prérequis
- Node.js 18+ ou Docker
- Un serveur Garry's Mod avec accès console et
lua_runactivé
Démarrage rapide
-
Clonez le dépôt :
git clone https://github.com/AmyJeanes/GMod-MCP-Server.git cd GMod-MCP-Server -
Installez les dépendances :
npm install -
Configurez votre fichier
.envavec les informations de connexion à votre serveur Garry's Mod :GMOD_RCON_HOST=localhost GMOD_RCON_PORT=27015 GMOD_RCON_PASSWORD=mon_mot_de_passe_rcon MCP_PORT=3000 -
Lancez le serveur MCP :
npm start
Avec Docker
docker run -d \
-e GMOD_RCON_HOST=localhost \
-e GMOD_RCON_PORT=27015 \
-e GMOD_RCON_PASSWORD=mon_mot_de_passe_rcon \
-p 3000:3000 \
amyjeanes/gmod-mcp-server
Utilisation
Une fois le serveur en cours d'exécution, connectez votre client MCP (par exemple Claude Desktop) à http://localhost:3000/mcp.
Outils exposés
execute_lua— exécute du code Lua arbitraire sur le serveur Garry's Mod.get_state— récupère l'état actuel du jeu (entités, variables, etc.).
Exemple avec Claude Desktop
Ajoutez ceci à la configuration de Claude Desktop :
{
"mcpServers": {
"gmod": {
"url": "http://localhost:3000/mcp"
}
}
}
Puis demandez à Claude : "Crée un script Lua qui fait apparaître un modèle de chat."
Dépannage
- Erreur de connexion : vérifiez que RCON est activé sur votre serveur Garry's Mod (
rcon_passworddéfini). - Permissions : assurez-vous que l'utilisateur du serveur a les droits d'exécution de Lua.
- Ports : ouvrez le port MCP (3000 par défaut) dans votre pare-feu si nécessaire.
Licence
MIT