
Laisser Claude interroger Postgres
Les collègues demandent à l'équipe technique des chiffres qui se trouvent dans la base de données.
Comment ça se connecte
Cette configuration s'adresse aux équipes techniques et data qui répondent sans cesse aux mêmes questions de leurs collègues sur la base de données. Claude se connecte à Postgres via un serveur MCP avec un rôle en lecture seule, écrit et exécute le SQL, et publie les chiffres récurrents dans Slack. Vous obtenez un moyen sûr de poser des questions en langage courant, sans donner accès à la production.
Mise en place
1Créer un rôle en lecture seule
Créez un rôle Postgres dédié avec LOGIN et accordez-lui USAGE sur les schémas nécessaires et SELECT uniquement sur les tables nécessaires. Définissez default_transaction_read_only et un statement_timeout sur ce rôle pour que les requêtes longues ou en écriture échouent rapidement. Ne réutilisez jamais l'utilisateur de base de données de votre application.
Astuce: Exécutez SET ROLE vers le nouveau rôle et essayez un INSERT pour vérifier qu'il échoue.
2Le connecter à un réplica
Connectez l'agent à un réplica en lecture, ou à une base de reporting copiée depuis la production. Si vous n'avez qu'une base principale, utilisez le rôle en lecture seule avec une limite de connexions basse. Restreignez l'accès réseau pour que seule la machine qui exécute le serveur MCP puisse l'atteindre.
Astuce: Un statement_timeout de quelques secondes empêche une jointure incontrôlée d'accaparer les ressources.
3L'enregistrer dans Claude
Ajoutez un serveur MCP Postgres, comme Postgres MCP Pro en mode restreint ou un autre serveur en lecture seule, avec la chaîne de connexion en lecture seule. Enregistrez-le dans la configuration de Claude Desktop, dans les paramètres MCP de Cursor ou avec claude mcp add dans Claude Code. Conservez la chaîne de connexion dans une variable d'environnement plutôt que dans un fichier versionné.
Astuce: Cherchez dans la documentation du serveur une option read-only ou restricted et activez-la.
4Décrire le schéma
Rédigez un court fichier de notes qui explique les tables clés, ce que représente une ligne, comment les tables se joignent et quelles colonnes contiennent des montants ou des dates. Ajoutez-le à un projet Claude, à CLAUDE.md ou aux règles de Cursor. Demandez à Claude d'afficher le SQL exécuté avec chaque réponse pour que quelqu'un puisse le vérifier.
Astuce: Incluez la définition des termes métier, comme client actif, pour que les chiffres correspondent à vos tableaux de bord.
5Partager les réponses
Connectez le serveur MCP de Slack et limitez-le à un seul canal pour les indicateurs. Demandez à Claude de publier la question, le chiffre et le SQL utilisé. Pour des chiffres planifiés, lancez Claude Code depuis cron ou la CI avec la même configuration.
Astuce: Publiez le SQL avec la réponse pour que chacun puisse la reproduire.
Ensuite, demandez
Bon à savoir
Ce qu'il vous faut
- Une base Postgres où vous pouvez créer des rôles et des droits
- Idéalement un réplica en lecture ou une copie de reporting
- Claude Desktop, Claude Code ou Cursor
- Un canal Slack pour les indicateurs partagés
Limites
- Claude peut écrire un SQL qui s'exécute mais répond à la mauvaise question : les chiffres importants doivent être vérifiés par une personne.
- Les gros résultats sont tronqués ou résumés ; demandez des agrégats plutôt que des lignes brutes.
- L'agent ne connaît que le schéma et vos notes ; la logique métier non documentée dans le code applicatif lui reste invisible.
Restez en sécurité
- Uniquement un rôle de base de données en lecture seule.
- Excluez les tables contenant des données personnelles, sauf nécessité stricte.
- Préférez un réplica à la base principale.





