# Wyvern&Castle Ceci est un projet de **modèle MCP** ([Model Context Protocol](https://modelcontextprotocol.io/docs/getting-started/intro)) pour le cours de **Natural Language Programming** de l'année 2025-2026. L'objectif du projet a été de concevoir une **version simplifié du jeu Donjon & Dragon** avec un LLM capable de générer des parties et des scénarios qui n'ont de limite que votre imagination (et celles du LLM aussi!). Le projet contient un serveur (`server.py`) qui intéragit avec notre API de jeu (`game.py`). ## Initialisation du projet Pour lancer une partie de notre jeu, nous vous conseillons d'installer **[Claude Desktop](https://claude.com/fr-fr/download)** (disponible sur Windows et Mac) qui va servir de LLM. Nous n'avons pas essayé mais il serait aussi possible d'utiliser la **version Desktop de ChatGPT** 1. Installer l'utilitaire python UV : ```bash # Mac/Linux curl -LsSf https://astral.sh/uv/install.sh | sh # Windows, l'ajouter au Path powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" ``` 2. Initialiser le dossier pour l'installation Creer un dossier et cloner le projet : ```bash mkdir wyvern_castle cd wyvern_castle git clone "https://gitea.galaxynoliro.fr/KuMiShi/Wyvern-Castle.git" ``` 3. Creation de l'environnement virtuel ```bash uv venv ``` Mac/Linux ```bash source .venv/bin/activate ``` Windows ```Powershell .\.venv\Scripts\activate ``` 4. Installation des dependances/requirements ```bash # Synchronise l'environnement virtuel du dossier avec les dependances du projet uv pip sync pyproject.toml # Si cela ne fonctionne pas correctement, vous pouvez le générer un fichier de dependances avec la commande suivante à partir du .toml: uv pip compile --upgrade pyproject.toml -o uv.lock # Puis synchroniser à nouveau (avec le nouveau fichier cette fois) uv pip sync uv.lock ``` 5. Changement de la config de Claude Desktop Modifier le fichier `claude_desktop_config.json` ```json { "mcpServers": { "wyvern_castle": { "command": "uv", "args": [ "--directory", "C:\\ABSOLUTE\\PATH\\TO\\PARENT\\FOLDER\\wyvern_castle", "run", "server.py" ] } } } ``` ## Utilisation Le projet est assez simple d'utilisation car une fois le serveur lancé, il vous suffit d'écrire des prompts à l'aide de votre application Desktop de LLM. Il est aussi possible d'avoir accès à une aide de génération de prompt intégrée. ## Documentation ### Tools Les outils implementes sont :