Varven

Vérificateur de point de terminaison MCP

Pointez-le vers un serveur MCP distant. Il parcourt la chaîne de découverte comme le ferait un client IA et nomme l'étape qui a échoué.

Enter a URL and run the checks.

    Ceci s'exécute depuis votre navigateur, c'est donc soumis au CORS. Un serveur qui n'envoie pas Access-Control-Allow-Origin bloquera la requête et paraîtra injoignable même s'il est en bonne santé. C'est en soi une information utile — certains clients ont aussi besoin de ces en-têtes — mais ne prenez pas un échec CORS pour la preuve que le serveur est cassé.

    Ce qu'il vérifie, et pourquoi chaque étape compte

    1. Le challenge non authentifié

    Une requête non authentifiée doit renvoyer 401 avec un en-tête WWW-Authenticate portant resource_metadata. Sans cet en-tête, un client n'a aucun moyen de découvrir où s'authentifier et échoue sur une erreur de connexion opaque. C'est de loin la raison la plus fréquente pour laquelle un connecteur refuse de fonctionner sans rien dire.

    2. Métadonnées de ressource protégée (RFC 9728)

    Le champ resource doit correspondre exactement à l'URI canonique du serveur. Les clients le comparent littéralement : une barre oblique finale, ou un http face à un https, provoque un échec net accompagné d'un message inutile.

    3. Métadonnées du serveur d'autorisation (RFC 8414)

    Doit annoncer les endpoints authorization, token et registration, et doit lister S256 dans code_challenge_methods_supported. OAuth 2.1 impose PKCE et interdit la méthode plain ; un serveur qui propose plain n'est pas conforme à la spec et certains clients le refuseront.

    4. Transport

    Les nouveaux connecteurs sont censés parler Streamable HTTP. L'ancien transport HTTP+SSE autonome est déprécié et n'est plus accepté pour les soumissions à l'annuaire.

    Pourquoi nous avons fait cet outil

    Varven est lui-même un serveur MCP distant, et réussir le handshake OAuth a pris plus de temps que le moteur de recherche. Le mode de défaillance est brutal : le client signale seulement qu'il n'a pas pu se connecter, sans indiquer laquelle des sept étapes a échoué. Cet outil les parcourt dans l'ordre et nomme celle qui a cassé.

    Comment Varven se connecte à Claude

    Questions fréquentes

    Mon serveur fonctionne dans Claude mais échoue ici.

    Presque certainement CORS. Les navigateurs l'appliquent ; les clients natifs non.

    Ai-je besoin de l'enregistrement dynamique des clients ?

    Si vous voulez que les clients se connectent sans que vous les enregistriez un par un, oui. Sans lui, chaque client a besoin d'identifiants délivrés à la main.

    Quelle révision de la spec viser ?

    Visez la spec d'autorisation actuelle et attendez-vous à du mouvement — elle a été révisée plusieurs fois, et la migration de SSE vers Streamable HTTP est assez récente pour que certains clients soient encore en retard.