Le serveur MCP démarre, mais aucun outil n’apparaît dans DeepSeek Harness.

La solution la plus rapide consiste à connecter un seul MCP Server en lecture seule, à valider successivement le transport, la découverte des outils et la chaîne de permissions, puis seulement à ajouter les outils d’écriture et l’exécution distante.

Dernière mise à jour : 18 août 2026. Informations vérifiées à partir du dépôt officiel de DeepSeek Harness, de la spécification officielle des transports MCP, de la documentation de sécurité MCP et des pages de paquets publiées le même jour.

Cette procédure s’adresse à trois profils : les développeurs d’AI Agent qui doivent appeler la recherche de code, une base de données, un navigateur ou des outils internes ; les ingénieurs de plateforme responsables des droits, des secrets et des journaux ; ainsi que les équipes d’exploitation qui veulent maintenir cette chaîne sur un Mac distant pour DeepSeek Harness.

Préparer le périmètre des outils

La connexion MCP de DeepSeek Harness ne doit pas commencer par l’ajout de tous les outils disponibles. Vous devez d’abord établir une frontière opérationnelle, car un serveur capable de lire un dépôt n’a pas le même risque qu’un serveur capable de modifier une base de données ou de lancer une commande système.

Classez chaque outil dans l’une des trois catégories suivantes :

  • Lecture seule : recherche dans le code, lecture de schéma, consultation d’un ticket, interrogation d’une base sans modification ou récupération de métadonnées.
  • Écriture contrôlée : création d’une branche, mise à jour d’un ticket, modification limitée d’un fichier ou envoi d’une requête qui doit encore être approuvée.
  • Commande exécutable : terminal, scripts de déploiement, installation de dépendances, accès aux fichiers sensibles ou actions pouvant modifier l’environnement.
Pour le premier test, retenez une action sans effet de bord, avec une entrée simple et un résultat facile à conserver. Par exemple : rechercher un symbole dans un dépôt de test, lire la liste des tables non sensibles ou obtenir le titre d’une page interne. Évitez une tâche qui mélange recherche, écriture et commande shell, car un échec ne permettrait pas de savoir quelle couche est responsable.

DeepSeek Harness est encore présenté comme un logiciel en préversion développeur, avec des changements de compatibilité possibles. Le dépôt officiel indique également que la méthode de lancement et la configuration doivent être consultées dans la version utilisée, plutôt que copiées depuis un ancien exemple. (github.com)

Notez avant toute modification :

  1. la version de DeepSeek Harness et celle du MCP Server ;
  2. le répertoire depuis lequel chaque processus doit démarrer ;
  3. le nom logique attendu pour le serveur ;
  4. la tâche minimale à reproduire ;
  5. la preuve de réussite : nom d’outil découvert, paramètre accepté, résultat produit et journal associé.

**Attention :** un MCP Server n’est pas l’API du modèle DeepSeek. Le premier fournit des outils, des ressources ou des invites à l’agent ; le second fournit l’accès au modèle. Tester l’API seule ne prouve donc pas que la découverte et l’appel MCP fonctionnent.

Comparer les modes avant la première connexion

Le protocole MCP définit notamment le transport stdio, où le client lance le serveur comme sous-processus, et le transport Streamable HTTP, où le serveur fonctionne comme un processus indépendant accessible via un point d’entrée HTTP. Le choix du transport modifie directement la supervision, la gestion des secrets et le diagnostic. (modelcontextprotocol.io)

<
Situation de déploiementTransport à examiner en premierAvantage principalRisque ou limite à contrôlerScore pour un premier test
Test local isoléstdioPeu de réseau à configurer et cycle de vie directement lié au clientMauvais répertoire, dépendance absente ou sortie standard invalide5/5
Agent et serveur sur le même Mac distantstdio ou HTTP localExécution proche des fichiers et outils internesResponsabilité de redémarrage et héritage des variables d’environnement4/5
Plusieurs agents ou équipe partagéeHTTP avec authentificationServeur indépendant et mutualisableAuthentification, contrôle de l’origine, journalisation et isolation3/5
Serveur hébergé dans un autre réseauHTTP sécuriséSéparation claire entre client et serveurLatence, filtrage réseau, expiration de session et exposition excessive2/5
Pour une connexion MCP de DeepSeek Harness, choisissez donc le chemin le plus court qui conserve une preuve exploitable. Si vous êtes encore en phase de validation, ne commencez pas par publier un port MCP ou une interface Web. Le transport stdio réduit le nombre de variables, alors que le transport HTTP doit intégrer l’authentification et les protections réseau prévues par la spécification.

Effectuer le premier branchement

1. Geler la version et la documentation

Consultez le dépôt officiel, le guide utilisateur et les paquets correspondant à votre installation le 18 août 2026. Recherchez la configuration réellement attendue par la version installée : nom de la clé, emplacement du fichier, commande de lancement, transport accepté et mécanisme d’enregistrement des outils.

Ne mélangez pas un exemple provenant d’une ancienne branche avec une version récente du programme. En préversion, une configuration qui paraît correcte peut être ignorée sans produire une erreur suffisamment explicite.

2. Préparer un MCP Server de lecture

Utilisez un serveur dont la fonction peut être vérifiée sans toucher à la production. Donnez-lui un répertoire de travail explicite et, si nécessaire, une identité limitée à un projet de test. Ne lui transmettez pas encore les identifiants de production.

La sortie standard doit rester réservée aux messages du protocole lorsque le transport stdio est utilisé. Les journaux de diagnostic doivent être envoyés vers la sortie d’erreur ou vers un fichier séparé, conformément aux règles du transport MCP. (modelcontextprotocol.io)

3. Charger la configuration au bon endroit

La configuration d’un MCP Server doit appartenir au composant qui lance ou référence ce serveur. Ne supposez pas qu’une configuration placée dans le répertoire du projet sera automatiquement lue par DeepSeek Harness, ni qu’une configuration d’un autre client sera reprise telle quelle.

Vérifiez séparément :

  • le fichier réellement chargé ;
  • l’utilisateur qui lance DeepSeek Harness ;
  • le répertoire courant ;
  • le chemin absolu du programme ou du script ;
  • les variables d’environnement transmises au processus.
À ce stade, vous ne cherchez pas encore à exécuter une tâche complexe. Vous vérifiez uniquement que le processus existe et qu’il répond au protocole.

4. Confirmer le transport

Un processus visible dans la liste des tâches ne signifie pas que la connexion est établie. Recherchez un signal de démarrage propre, une initialisation acceptée et une réponse de découverte. Pour un transport HTTP, testez également la résolution du nom, le chemin exact du point d’entrée, l’authentification et la validation de l’origine.

La spécification MCP recommande, pour une utilisation locale, de limiter l’écoute à l’interface locale plutôt que de l’exposer à toutes les interfaces réseau. Elle demande également de valider l’en-tête Origin et de mettre en place une authentification appropriée pour les connexions HTTP. (modelcontextprotocol.io)

5. Vérifier l’enregistrement des outils

Après l’initialisation, contrôlez que le nom de l’outil apparaît dans la liste de DeepSeek Harness, avec sa description et son schéma de paramètres. Si le serveur répond mais que la liste reste vide, le problème se situe probablement dans la couche d’enregistrement ou dans la configuration du client, pas dans la logique métier de l’outil.

Conservez une copie désensibilisée de :

  • la commande de lancement ;
  • la version des composants ;
  • la réponse de découverte ;
  • le nom et le schéma de l’outil ;
  • le journal d’erreur sans secret ;
  • le résultat de la tâche minimale.

6. Exécuter une requête sans effet de bord

Demandez à l’AI Agent d’utiliser uniquement l’outil de lecture, avec un paramètre volontairement simple. Vérifiez que l’agent comprend le type attendu, les champs obligatoires, les valeurs par défaut et le format de retour.

Un retour vide n’est pas nécessairement une panne : il peut signaler une recherche sans correspondance, un filtre trop strict ou un mauvais répertoire. En revanche, une erreur de validation des paramètres indique que la description de l’outil, le schéma déclaré ou l’appel généré ne correspondent pas.

7. Appliquer le retour arrière

Si le serveur ne démarre pas, si le transport échoue ou si l’outil n’est pas enregistré, retirez temporairement la configuration MCP et relancez DeepSeek Harness sans serveur externe. Ce test sépare une panne générale du fonctionnement du socle.

Le retour arrière est validé seulement si la tâche de base fonctionne à nouveau, avec le même répertoire, la même identité d’utilisateur et les mêmes paramètres de modèle. Sans cette étape, vous ne saurez pas si l’intégration MCP a simplement déplacé le problème.

Diagnostiquer la découverte et les résultats

Les pannes se répartissent généralement en trois familles. Cette distinction évite de modifier simultanément le serveur, le client et le réseau.

Erreur propre au MCP Server. Le processus quitte immédiatement, une dépendance manque, le répertoire de travail est faux, une variable est absente ou le serveur renvoie un message non conforme. Reproduisez le lancement hors de DeepSeek Harness et examinez son code de sortie ainsi que sa sortie d’erreur.

Interruption du transport. Le processus existe, mais la session est interrompue, le point d’entrée HTTP est filtré, l’authentification expire ou le serveur n’accepte pas la méthode utilisée. Ici, la description des outils peut être correcte : c’est la liaison qui ne tient pas.

Erreur d’enregistrement dans DeepSeek Harness. Le serveur répond et expose ses outils, mais le client ne les ajoute pas à son registre, les masque à cause d’un conflit de nom ou rejette un schéma. Comparez la réponse brute de découverte avec ce que DeepSeek Harness affiche.

Pour un résultat exploitable, votre tâche de référence doit contenir une entrée connue et une sortie attendue. Dans un flux audio ou vidéo, cela peut être la lecture des métadonnées d’un fichier de test, sans conversion ni écrasement. Dans un projet de design, il peut s’agir de retrouver un fichier source et son format, sans ouvrir la possibilité de supprimer ou de remplacer l’original.

Encadrer les secrets et les écritures

Séparez trois responsabilités qui sont souvent confondues :

  • la configuration décrit quel serveur lancer et avec quels arguments non sensibles ;
  • les identifiants donnent accès à une ressource ;
  • la politique d’autorisation définit ce que l’outil a le droit de faire.
Ne mettez jamais une clé réelle dans un exemple, une instruction destinée à l’agent, un dépôt Git ou un journal. Préférez une variable injectée au démarrage, un coffre de secrets ou le mécanisme de gestion des services de votre environnement. Sur un Mac distant, vérifiez qu’un redémarrage non interactif peut retrouver le secret sans dépendre d’un terminal personnel ouvert.

Un outil d’écriture doit, au minimum, limiter sa cible, décrire l’action d’approbation et préciser le retour arrière. Pour une base de données, utilisez un compte limité à un schéma ou à des opérations déterminées. Pour un dépôt, limitez le chemin et séparez la création d’une proposition de modification de son application effective.

Les serveurs MCP sont considérés comme des composants auxquels le client accorde sa confiance, et ils disposent des ressources accessibles dans leur environnement d’exécution. La documentation de sécurité officielle recommande donc d’évaluer les serveurs, leurs capacités et leur niveau d’isolation comme n’importe quel logiciel installé localement. (github.com)

**Expérience de terrain :** si une tâche déclenchée par une entrée externe peut écrire, publier ou supprimer, ajoutez une confirmation humaine explicite et une vérification indépendante du résultat. L’agent ne doit pas être l’unique contrôle de sécurité.

FAQ opérationnelle

Quelles méthodes de connexion MCP sont disponibles avec DeepSeek Harness ?

Vous devez distinguer le transport utilisé par le client de la manière dont DeepSeek Harness enregistre les outils. Le transport stdio lance généralement le serveur MCP comme sous-processus, tandis que le transport HTTP permet un serveur indépendant. La compatibilité exacte, les clés de configuration et les valeurs par défaut doivent toutefois être vérifiées dans le dépôt officiel au moment du déploiement.

Pourquoi un outil MCP connecté n’apparaît-il pas dans DeepSeek Harness ?

Les causes fréquentes sont un processus qui s’arrête au démarrage, une sortie standard polluée par des journaux, un répertoire de travail incorrect, une configuration chargée par le mauvais composant ou un échec pendant la phase de découverte. Vérifiez d’abord le lancement du serveur, puis le transport, la réponse de découverte et enfin l’enregistrement dans DeepSeek Harness.

Comment gérer les secrets d’un MCP Server sur un Mac distant ?

Conservez les secrets dans le mécanisme prévu par l’environnement d’exécution, par exemple un coffre, un gestionnaire de services ou des variables injectées au démarrage. Évitez de les placer dans les instructions de l’agent, les journaux, le dépôt Git ou une configuration partagée. Le processus doit recevoir uniquement les droits et les secrets nécessaires à sa fonction.

Faut-il installer plusieurs MCP Server dans le même environnement ?

Pas systématiquement. Regroupez-les seulement si leurs dépendances, leurs niveaux de confiance et leurs exigences de disponibilité sont compatibles. Séparez les serveurs qui exécutent des commandes, accèdent à des données sensibles ou utilisent des versions conflictuelles. Un point d’entrée commun peut simplifier l’administration, mais il augmente aussi le rayon d’impact d’une panne ou d’une compromission.

Déplacer l’exécution vers un Mac distant

Une session locale lancée depuis un terminal ouvert n’est pas encore une architecture exploitable par une équipe. Sur un Mac distant, attribuez explicitement la responsabilité de chaque processus :

  • DeepSeek Harness : lancement, journal principal, arrêt et mise à jour ;
  • MCP Server : commande, environnement, accès aux données et validation du protocole ;
  • dépendances : base locale, navigateur, index de code, moteur audio ou outil de design ;
  • supervision : détection de l’arrêt, redémarrage, conservation des journaux et alerte.
Le premier contrôle consiste à fermer votre connexion distante sans arrêter volontairement les services. Reconnectez-vous ensuite et vérifiez si les processus sont toujours présents, si leur répertoire de travail est intact et si les secrets ont été réinjectés correctement. Un serveur qui ne fonctionne que dans votre session interactive n’est pas prêt pour une utilisation continue.

Le deuxième contrôle consiste à provoquer un redémarrage maîtrisé du MCP Server. La récupération doit être observable : nouveau processus, nouvelle initialisation, outils à nouveau découverts et tâche de référence exécutée sans modifier la configuration à la main.

Pour une équipe qui travaille sur de la vidéo, du son ou du design, le Mac distant peut également conserver les dépendances graphiques et les fichiers de travail dans un environnement stable, tout en laissant l’AI Agent piloter uniquement les opérations autorisées. Vous pouvez préparer cette étape avec le guide de déploiement de DeepSeek Harness sur un Mac distant, puis vérifier la disponibilité de l’environnement avant d’y transférer un serveur MCP.

N’ouvrez pas par défaut l’interface Web, le port MCP ou un service de débogage sur Internet. Utilisez un réseau privé, un tunnel administré ou un proxy authentifié, appliquez une liste d’origines autorisées et limitez les utilisateurs capables d’atteindre le service. L’authentification réseau ne remplace pas l’autorisation outil par outil.

Valider le scénario de bout en bout

Votre recette de livraison doit reproduire une tâche complète, et non simplement prouver qu’un processus écoute. Utilisez la séquence suivante :

  1. DeepSeek Harness démarre dans le répertoire prévu.
  2. Le MCP Server est lancé avec l’environnement attendu.
  3. Le transport est initialisé sans erreur.
  4. L’outil de lecture est découvert avec son schéma.
  5. L’AI Agent appelle l’outil avec un paramètre valide.
  6. Le résultat est interprété et conservé dans un artefact identifiable.
  7. Une écriture éventuelle reste bloquée jusqu’à l’approbation.
  8. Le serveur est redémarré et la même tâche peut être rejouée.
  9. La configuration MCP est retirée et le fonctionnement de base est restauré.
Utilisez trois niveaux de décision :
  • Réussi : découverte, appel, résultat, journalisation et récupération après redémarrage sont tous vérifiés.
  • Réussi sous conditions : la lecture fonctionne, mais l’écriture, l’authentification distante ou la supervision doit encore être traitée.
  • Non validé : le serveur ne démarre pas, l’outil n’est pas découvert, le résultat est ambigu ou le retour arrière échoue.

Conditions de choix

  • Si vous testez un seul outil de lecture sur une machine de développement, choisissez le transport le plus local et conservez la configuration minimale.
  • Si l’outil apparaît mais que son appel échoue, revenez au schéma de paramètres et à une requête sans effet de bord avant de modifier le réseau.
  • Si plusieurs utilisateurs doivent partager le serveur, passez à un environnement indépendant avec authentification, journalisation et responsabilité de redémarrage.
  • Si un serveur exécute des commandes ou touche des données sensibles, séparez-le des serveurs de lecture et imposez une approbation.
  • Si le retour arrière sans MCP ne fonctionne pas, arrêtez la migration distante et rétablissez d’abord le socle DeepSeek Harness.
  • Si une mise à jour modifie la configuration, le transport ou le mécanisme d’enregistrement, rejouez toute la recette avant de remettre l’outil à la disposition des utilisateurs.
Ajoutez ces conditions à votre document de passation avec la version utilisée, la date de vérification, le propriétaire de chaque processus, la procédure de rotation des secrets et les preuves attendues après redémarrage. La préversion de DeepSeek Harness impose cette discipline : les compatibilités peuvent évoluer sans que votre ancienne configuration reste un contrat durable. ([github.com](https://github.com/deepseek-ai/deepseek-harness))

Si votre montage actuel repose sur un ordinateur personnel, il présente généralement trois limites : le processus dépend d’une session interactive, les secrets sont souvent dispersés entre fichiers et variables locales, et personne ne sait clairement qui doit relancer le serveur après une coupure. Une machine virtuelle généraliste peut ajouter une couche de maintenance, une latence réseau et des dépendances graphiques difficiles à reproduire pour les workflows audio, vidéo ou design. Après la validation d’un seul MCP Server, louer un environnement Mac isolé auprès de MACGPU peut donc offrir un cadre plus lisible pour tester la continuité, la récupération des processus et la remise d’un environnement reproductible, sans prétendre garantir la compatibilité de tous les serveurs MCP.

Pour comparer les profils disponibles avant une location temporaire, consultez les environnements Mac dédiés aux agents et aux outils de développement. L’objectif n’est pas de déplacer prématurément un empilement instable, mais de disposer d’un environnement séparé lorsque votre scénario de référence est déjà validé localement et que la question devient celle de l’exploitation continue.