Aller au contenu

MCP Inspector - Guide pour déboguer les serveurs Model Context Protocol

MCP Inspector - Guide pour déboguer les serveurs Model Context Protocol

MCP Inspector est l’outil officiel de test visuel et de débogage pour les serveurs Model Context Protocol. Quand vous construisez un serveur MCP, vous devez voir ce qu’il expose réellement et comment il répond — Inspector se connecte à votre serveur, liste ses outils, ressources, et prompts, vous permet d’invoquer chacun avec des arguments arbitraires, et montre les messages JSON-RPC bruts circulant dans les deux directions. C’est le moyen le plus rapide de vérifier qu’un serveur fonctionne avant de le câbler dans Claude, Cursor, ou un autre client.

L’exécuter

MéthodeCommande
npx (pas d’installation)npx @modelcontextprotocol/inspector
Avec votre serveurnpx @modelcontextprotocol/inspector node build/index.js
Serveur Pythonnpx @modelcontextprotocol/inspector uv run server.py
Serveur distante/SSElancer, puis entrer l’URL dans l’UI
UIs’ouvre dans le navigateur (défaut http://localhost:6274)

Types de connexion

TransportUtiliser
STDIOServeur local exécuté en tant que sous-processus (le plus courant)
SSEServeur distant sur Server-Sent Events
HTTP streamableTransport distant moderne
# Inspecter un serveur stdio local, en passant des args et env
npx @modelcontextprotocol/inspector \
  -e API_KEY=abc123 \
  node build/index.js --verbose

L’interface

OngletMontre
OutilsChaque outil, son schéma JSON, et un formulaire pour l’appeler
RessourcesRessources exposées et leur contenu
PromptsModèles de prompt et leurs arguments
NotificationsMessages/logs initiés par le serveur
HistoriqueChaque paire request/response

Tester les outils

ÉtapeAction
1Ouvrir l’onglet Outils ; confirmer que votre outil est listé
2Vérifier que le schéma d’entrée se rend correctement (types, champs requis)
3Remplir le formulaire généré et cliquer pour invoquer
4Inspecter le contenu retourné et n’importe quel flag isError
5Lire le JSON-RPC brut dans Historique pour déboguer les problèmes de forme

Cette boucle attrape les bugs MCP les plus courants : un schéma malformé, un outil qui retourne la mauvaise forme de contenu, ou une erreur non-gérée.

Ce qu’il faut vérifier avant de déployer

VérificationPourquoi
Les noms d’outils sont uniques/descriptifsLes clients les surfacent au modèle
Les descriptions expliquent quand utiliser l’outilDirige la sélection correcte du modèle
Le schéma d’entrée est précisPrévient les appels malformés
Les erreurs retournent isError avec un messageLe modèle peut récupérer
Les sorties importantes sont paginées/tronquéesÉvite de faire exploser la fenêtre de contexte
Les ressources ont des URIs stablesLes clients les mettent en cache/référence

Astuces de débogage

SymptômeRegarder
Le serveur ne se connecte pasCommande/args ; stderr dans le terminal de lancement
Outil manquantCode d’enregistrement ; redémarrer le serveur
Schéma se rend bizarrementTypes de schéma JSON dans la définition de l’outil
Le client se comporte différemmentComparer le JSON-RPC brut dans Historique
Bug dépendant d’envRelancer Inspector avec -e KEY=value

Flux de travail courants

# Boucle développer-et-tester pour un serveur MCP TypeScript
npm run build && npx @modelcontextprotocol/inspector node build/index.js

# Tester un serveur Python avec uv
npx @modelcontextprotocol/inspector uv run my_server.py

# Vérifier un serveur SSE distant avant de l'ajouter à un client
npx @modelcontextprotocol/inspector   # choisir SSE, coller l'URL

MCP Inspector vs alternatives

ApprocheTrade-off
MCP InspectorConstruit pour cela, visuel, montre le protocole brut
Câbler dans un client réelRéaliste mais boucle feedback lente
JSON-RPC écrit à la mainContrôle complet, fastidieux
Tests unitairesRapide et répétable ; associer avec Inspector pour l’exploration

Utiliser Inspector pendant la construction, puis ajouter des tests automatisés ; voir MCP servers pour les patterns d’implémentation du serveur.

Ressources