Aller au contenu
ReviewRamble

La lettre hebdomadaire

L’IA, évaluée, dans votre boîte mail.

  • Les nouveaux tests d’outils, de modèles, de serveurs MCP et de dépôts, avec le verdict en premier
  • Les prix et les notes revérifiés quand quelque chose change
  • Les nouvelles analyses dès leur publication

Modèles, agents, serveurs MCP et les outils qui méritent vraiment votre temps.

Un e-mail par semaine. Désinscrivez-vous avec le lien présent dans chaque lettre. Comment nous utilisons votre e-mail

database-mcp (cocaxcode)

Serveur stdio d'un développeur unique pour PostgreSQL, MySQL et SQLite, avec connexions enregistrées, instantanés d'annulation, dumps et historique des requêtes.

Avis de ReviewRamble editors · Mis à jour

Guide d’installation Open source

Notre note

2.9/5

Des fonctions d'atelier bien pensées reposent sur des promesses de sécurité que le code ne tient pas : sa place est sur une base de portable, jamais près de la production.

Qu’est-ce que database-mcp (cocaxcode) ?

database-mcp, publié sur npm sous le nom @cocaxcode/database-mcp par l'utilisateur GitHub cocaxcode, transforme un client MCP en petit atelier de bases de données pour PostgreSQL, MySQL et SQLite. Les connexions sont enregistrées une fois et regroupées par répertoire de projet, si bien qu'un agent qui travaille dans un dépôt ne voit que les bases de ce projet. Autour des outils de requête, il ajoute une recherche de schéma sur trois niveaux, EXPLAIN, un historique des requêtes par projet, des instantanés avant chaque modification qui génèrent le SQL inverse pour l'annuler, des dumps SQL avec restauration, et une compression des résultats qui tronque les cellules volumineuses pour économiser du contexte.

Le code enregistre 34 outils et 2 ressources de schéma (le README en annonce 33, la fiche du registre MCP 19). Il fonctionne uniquement en stdio et charge le pilote postgres, mysql2 ou sql.js que vous installez globalement. Le dépôt a été créé en mars 2026, compte 3 étoiles sur GitHub et 41 commits, et a été modifié pour la dernière fois le 26 août 2026 ; la dernière version sur npm est la 0.3.4 du 21 avril 2026, et le paquet a été téléchargé 330 fois sur le mois clos le 10 novembre.

Installer database-mcp (cocaxcode)

npx -y @cocaxcode/database-mcp@latest

database-mcp (cocaxcode) vaut-il le coup ?

Les fonctions sont bien choisies pour la machine d'un développeur. Les connexions persistent d'une session à l'autre et suivent le répertoire du projet, les requêtes de lecture reçoivent un LIMIT 100, les cellules de plus de 500 octets sont tronquées avec un repère, et un cache de 20 emplacements permet à l'agent de récupérer plus tard le résultat complet sans relancer la requête. Chaque INSERT, UPDATE ou DELETE capture d'abord les lignes concernées pour que rollback_apply puisse l'annuler ; le DDL est journalisé mais ne peut pas être annulé.

Le modèle de sécurité est plus faible que ne le dit le README. Le README promet que les opérations destructrices exigent un confirm: true explicite, mais d'après notre lecture du code source, execute_mutation n'a pas ce paramètre et exécute immédiatement un DELETE ou un DROP ; seuls conn_delete, rollback_apply et db_restore demandent une confirmation, et c'est le modèle lui-même qui positionne cet indicateur. Les nouvelles connexions sont bien en lecture seule par défaut, ce qui est le bon choix, mais conn_set permet à l'agent de passer une connexion en lecture-écriture en un seul appel d'outil.

La lecture seule elle-même repose sur un classificateur qui n'examine que le premier mot-clé de l'instruction. Le pilote PostgreSQL envoie le SQL sans paramètres par le protocole simple de postgres.js et le pilote SQLite utilise exec de sql.js ; tous deux exécutent plusieurs instructions en un appel, de sorte qu'une chaîne commençant par SELECT peut transporter un DELETE après un point-virgule. explain_query avec analyze à true contourne entièrement le contrôle de lecture seule, et sous PostgreSQL, EXPLAIN ANALYZE exécute l'instruction qu'il explique. Une injection de prompt cachée dans une ligne que l'agent vient de lire pourrait exploiter l'une ou l'autre voie. Le pilote MySQL utilise des requêtes préparées et n'accepte pas les requêtes empilées.

Les identifiants restent en local, dans des fichiers JSON à permissions propriétaire sous ~/.database-mcp, et conn_get masque les mots de passe ; conn_export avec include_secrets les renvoie en clair dans le contexte du modèle. L'historique, les instantanés contenant les anciennes valeurs des lignes et les dumps complets sont écrits dans le dossier .database-mcp du projet, qui doit rester hors du contrôle de version. Les descriptions des outils et les instructions du serveur sont rédigées en espagnol, ce que les modèles gèrent sans peine mais pas forcément les relecteurs anglophones des journaux de l'agent.

Notre avis : pour un fichier SQLite ou un Postgres local jetable, les outils d'annulation et d'historique améliorent agréablement un simple exécuteur SQL. Pour tout ce qui compte, DBHub ou le serveur Postgres de Microsoft derrière un utilisateur de base limité à SELECT reste la solution la plus sûre, car c'est alors la base de données, et non un contrôle de mots-clés, qui dit non.

Là où il fait la différence

  • Un développeur seul qui construit un projet personnel sur SQLite

    Injecter des données de test, essayer des changements de schéma et annuler les erreurs depuis Claude Code

    Créez une connexion en lecture-écriture vers le fichier .db local, laissez l'agent insérer et modifier des lignes, et appelez rollback_apply quand un changement tourne mal. Gratuit ; lancez db_dump avant tout DDL, car les changements de schéma ne peuvent pas être annulés.

  • Un développeur backend indépendant qui jongle avec plusieurs projets clients

    Laisser l'agent choisir la bonne base locale pour chaque dépôt sans tout reconfigurer

    Créez un groupe de connexions par client, avec le répertoire de ce projet comme périmètre et une base de développement par défaut. L'agent ne voit que les connexions de ce client ; mieux vaut laisser les connexions de production entièrement hors de l'outil.

Avant de vous engager

Mise en route
claude mcp add --scope user database -- npx -y @cocaxcode/database-mcp@latest, plus npm install -g postgres, mysql2 ou sql.js pour le moteur utilisé ; Node 20 ou plus récent. Configurations documentées pour Claude Code, Claude Desktop, Cursor, Windsurf, VS Code, Codex CLI et Gemini CLI. Les connexions se créent en le demandant à l'agent, donc une première requête prend quelques minutes.
Intégrations
34 outils dans le code : 13 pour les connexions, 7 pour les groupes, search_schema, execute_query, execute_mutation, explain_query, inspect_last_query, trois pour les dumps, deux pour l'annulation, deux pour l'historique et deux pour la configuration, plus les ressources db://schema et db://tables/{tableName}/schema. stdio uniquement ; pas de transport HTTP, donc aucun port réseau.
Données et confidentialité
Tout s'exécute en local ; les résultats des requêtes partent chez votre fournisseur de modèle. Les identifiants sont stockés en clair dans des fichiers JSON sous ~/.database-mcp/connections avec des permissions propriétaire ; conn_export peut les renvoyer en clair. Le dossier .database-mcp de chaque projet contient l'historique (jusqu'à 5 000 entrées), des instantanés avec données de lignes (jusqu'à 1 000) et des dumps SQL complets ; les résultats récents sont mis en cache sur disque pendant une heure. Les lignes lues par l'agent peuvent contenir une injection de prompt, et la lecture seule n'empêche pas de façon fiable l'écriture qui en résulterait sous PostgreSQL ou SQLite.
Coût à grande échelle
Gratuit ; les coûts sont la charge sur la base et le contexte. Le LIMIT 100 par défaut et le plafond de 500 octets par cellule gardent les résultats courants petits ; ce n'est pas le cas d'EXPLAIN ANALYZE ni des requêtes UNION sans limite, qui échappent à ce plafond.
Limites
Aucun réglage propre pour les tunnels SSH ou les certificats, aucun délai maximal de requête et seulement trois moteurs. La version 0.3.5 du dépôt n'est pas sur npm. La lecture seule et la confirmation dépendent de la coopération du modèle, pas des droits de la base de données.

Les points forts

  • Connexions enregistrées et regroupées par répertoire de projet
  • Instantanés avant chaque modification, avec annulation par SQL inverse
  • LIMIT 100 automatique et troncature des cellules pour économiser du contexte
  • Les connexions sont en lecture seule par défaut

Les points faibles

  • Aucune confirmation sur execute_mutation, contrairement au README
  • Lecture seule contournable par instructions empilées et EXPLAIN ANALYZE
  • L'agent peut passer lui-même une connexion en lecture-écriture
  • Trois étoiles, un développeur, aucune version npm depuis avril 2026

Idéal pour

Les développeurs indépendants qui veulent qu'un agent explore et modifie une base SQLite locale ou un Postgres de développement, avec annulation et historique.

Alternatives à database-mcp (cocaxcode)

database-mcp (cocaxcode) : questions fréquentes

database-mcp (cocaxcode) vaut-il le coup ?
Des fonctions d'atelier bien pensées reposent sur des promesses de sécurité que le code ne tient pas : sa place est sur une base de portable, jamais près de la production. Nous lui donnons 2.9 sur 5.
Combien coûte database-mcp (cocaxcode) ?
Gratuit et open source (MIT).
Quels sont les inconvénients de database-mcp (cocaxcode) ?
Aucune confirmation sur execute_mutation, contrairement au README; lecture seule contournable par instructions empilées et EXPLAIN ANALYZE; l'agent peut passer lui-même une connexion en lecture-écriture; trois étoiles, un développeur, aucune version npm depuis avril 2026.
À qui s’adresse database-mcp (cocaxcode) ?
Les développeurs indépendants qui veulent qu'un agent explore et modifie une base SQLite locale ou un Postgres de développement, avec annulation et historique.
Combien coûte database-mcp (cocaxcode) pour une équipe ou en production ?
Gratuit ; les coûts sont la charge sur la base et le contexte. Le LIMIT 100 par défaut et le plafond de 500 octets par cellule gardent les résultats courants petits ; ce n'est pas le cas d'EXPLAIN ANALYZE ni des requêtes UNION sans limite, qui échappent à ce plafond.
database-mcp (cocaxcode) est-il sûr pour les données de l’entreprise ?
Tout s'exécute en local ; les résultats des requêtes partent chez votre fournisseur de modèle. Les identifiants sont stockés en clair dans des fichiers JSON sous ~/.database-mcp/connections avec des permissions propriétaire ; conn_export peut les renvoyer en clair. Le dossier .database-mcp de chaque projet contient l'historique (jusqu'à 5 000 entrées), des instantanés avec données de lignes (jusqu'à 1 000) et des dumps SQL complets ; les résultats récents sont mis en cache sur disque pendant une heure. Les lignes lues par l'agent peuvent contenir une injection de prompt, et la lecture seule n'empêche pas de façon fiable l'écriture qui en résulterait sous PostgreSQL ou SQLite.
Quelles sont les meilleures alternatives à database-mcp (cocaxcode) ?
Les alternatives les plus proches que nous avons testées sont DBHub, Postgres MCP Server (Microsoft), Faucet et MCP Toolbox for Databases.

Réponses vérifiées le 11 nov. 2026.