Configuration du projet
Avant de construire notre serveur et notre client MCP, nous devons configurer l’environnement de projet. Ce cours utilise Python avec le SDK MCP officiel, et uv comme gestionnaire de paquets.
Prérequis
- Python 3.10 ou supérieur
- uv installé (guide d’installation)
Structure du projet
Le projet que nous allons construire est une interface CLI (ligne de commande) qui permet à Claude d’interagir avec un système de gestion de documents via MCP.
mon-projet-mcp/
├── mcp_server.py ← Le serveur MCP (outils, ressources, prompts)
├── mcp_client.py ← Le client MCP
├── main.py ← L'interface CLI principale
├── pyproject.toml ← Dépendances
└── README.md
Installation des dépendances
Avec uv, créez votre environnement et installez les dépendances :
# Créer un nouveau projet
uv init mon-projet-mcp
cd mon-projet-mcp
# Ajouter les dépendances
uv add mcp anthropic
Fichier pyproject.toml
Votre pyproject.toml contiendra les dépendances suivantes :
[project]
name = "mon-projet-mcp"
version = "0.1.0"
requires-python = ">=3.10"
dependencies = [
"mcp>=1.0.0",
"anthropic>=0.40.0",
]
Activer l’environnement
# Activer l'environnement virtuel
source .venv/bin/activate # Linux/macOS
# ou
.venv\Scripts\activate # Windows
Données du projet
Notre serveur MCP gérera des documents en mémoire. Pour cet exemple, nous utilisons un dictionnaire Python simple :
docs = {
"deposition.md": "Ce document couvre le témoignage d'Angela Smith.",
"rapport.pdf": "Ce rapport détaille l'état d'une tour de condensation.",
"finances.docx": "Ces finances décrivent le budget et les dépenses du projet.",
"perspectives.pdf": "Ce document présente les performances futures projetées.",
"plan.md": "Ce plan décrit les étapes de mise en œuvre du projet.",
"spec.txt": "Ces spécifications définissent les exigences techniques."
}
Dans une application réelle, ces documents pourraient provenir d’une base de données, d’un système de fichiers, ou d’une API externe.
Prochaines étapes
Une fois l’environnement configuré, nous allons :
- Définir les outils dans le serveur MCP
- Tester avec l’inspecteur intégré
- Implémenter le client
- Ajouter des ressources et des prompts