Inspecter la configuration MCP et les sessions JSON-RPC capturées

Collez une configuration de serveur MCP ou une session JSON-RPC capturée. L’analyse ne lit que le texte fourni : elle reconnaît les formes stdio et Streamable HTTP, vérifie l’ordre d’initialisation stable 2025-11-25, apparie les identifiants de requête et de réponse, inspecte les schémas tools/list et les arguments tools/call, et signale les identifiants en clair. Aucun processus n’est lancé et aucun serveur n’est contacté.

Fonctionne localement dans votre navigateur
Inspection statique uniquement : cette page ne démarre jamais un processus, ne se connecte jamais à un serveur, ne suit jamais une URL ou n'envoie jamais d'informations d'identification.
Entrée MCP

Inspecter la configuration et la forme du protocole sans vous connecter

Le vérificateur suit le cycle de vie et les champs d'outils stables du 2025-11-25. Il reconnaît les modèles de configuration stdio et Streamable HTTP, mais ne prouve pas l'interopérabilité, ne fait pas confiance à une description d'outil ou n'implémente pas le comportement de la version candidate.

Comment examiner une configuration MCP ou une session JSON-RPC capturée

La page propose deux modes. Le mode configuration lit un objet mcpServers — ou un seul serveur — et signale le transport, la forme de args, env et headers, le schéma de l’URL et toute valeur qui ressemble à un identifiant en clair. Le mode transcription lit une session capturée sous forme de tableau JSON ou d’un message par ligne.

Les deux modes sont statiques : le texte est inspecté, jamais exécuté. Les règles suivent la spécification stable 2025-11-25 : une session validée présente donc l’ordre de messages et les formes de champs attendus — ce n’est pas une preuve d’interopérabilité entre un serveur et un client, et le comportement des release candidates instables reste volontairement exclu.

  1. Collez la configuration ou la session capturée dans le champ, ou chargez un exemple pour remplir le mode courant avec une base fonctionnelle.
  2. Appuyez sur Inspecter l’entrée. En mode configuration, le pipeline liste chaque serveur avec son transport détecté ; en mode transcription, chaque message dans l’ordre.
  3. Lisez les métriques : serveurs, ou requêtes et réponses, notifications, définitions d’outils et identifiants sans correspondance, avec les compteurs d’erreurs et d’avertissements.
  4. Parcourez la liste des constats. Chaque entrée a une sévérité, un code, un chemin JSON tel que $.mcpServers.docsApi.url et une phrase qui nomme le champ à corriger.
  5. Corrigez l’entrée et relancez, ou appuyez sur Effacer. Une entrée vide ou illisible efface le résultat précédent au lieu de le laisser à l’écran.

Ce que l’inspecteur vérifie, et ce qu’il ne peut pas prouver

Ce que vérifie le mode configuration

Transport : exactement un parmi command (stdio) et url (Streamable HTTP) par serveur. Une URL doit être une adresse absolue http ou https ; une URL distante en http simple est signalée comme avertissement, et une commande contenant des métacaractères de shell aussi, car la valeur peut atteindre un shell.

Champs et secrets : args doit être un tableau, env et headers doivent être des objets, et un nom sous env ou headers correspondant à token, secret, password, api_key, authorization ou credential avec une valeur non vide est signalé comme identifiant en clair. Un nom de serveur n’accepte que lettres, chiffres, point, souligné et tiret.

Ce que vérifie le mode transcription

Cycle de vie : chaque message doit être un objet JSON avec jsonrpc "2.0" ; une requête initialize exige protocolVersion, capabilities et clientInfo, une réponse initialize exige protocolVersion, capabilities et serverInfo, et notifications/initialized ne doit pas précéder une réponse initialize réussie. Le trafic tools/list ou tools/call avant ce point est signalé comme avertissement.

Messages et outils : une requête ou notification exige une méthode texte ; une réponse exige un id, et un id sans requête correspondante — ou une requête sans réponse capturée — est signalé. tools/call exige params.name et un objet params.arguments ; tools/list exige un tableau tools, et chaque outil un nom valide et unique et un inputSchema objet.

Ce que la page ne fait pas

Elle ne lance aucun processus, n’ouvre aucune connexion, ne suit aucune URL et n’envoie aucun identifiant : le texte collé reste dans le navigateur et n’est jamais téléversé. Elle ne vérifie pas non plus qu’une description d’outil est fiable.

Elle ne peut pas prouver l’interopérabilité à l’exécution et n’implémente pas le comportement des versions candidates instables. Considérez un rapport propre comme une entrée vérifiée parmi les tests que vous menez contre un vrai client et serveur MCP.

Outils récents :