Voir les catégories

Comment connecter SQLite à Claude / Curseur via MCP (Configuration du serveur SQLite MCP)

26 min de lecture

SERVEUR MCP SQLITE

Interroger SQLite avec Claude ou Cursor via MCP.

Posez des questions en langage clair sur n'importe quel sujet. .db, .sqlite, ou .sqlite3 Fichiers (cache d'applications, journaux IoT, configurations de développement/test, analyses intégrées) via une liaison cloud sécurisée et sortante uniquement, avec Schema Intelligence intégrée au connecteur SQLite MCP afin que l'IA écrive du SQL correct dès la première tentative.

Pas de trous dans le pare-feu Une seule clé, tous les connecteurs Données en temps réel, sans délai de cache Apportez votre propre outil d'IA

Query Streams est une plateforme d'intégration de données sécurisée et en temps réel qui intègre toutes les bases de données et API SaaS de votre compte dans Claude, Cursor, ChatGPT et Grok, grâce à une seule clé MCP et sans modification du pare-feu. Ce guide explique en détail le câblage du connecteur SQLite MCP, afin que votre outil d'IA puisse répondre à des questions en langage clair sur n'importe quel sujet. .db, .sqlite, ou .sqlite3 Vous pouvez accéder aux fichiers stockés sur votre disque (journaux d'événements d'applications, caches de capteurs IoT, espaces de synchronisation d'applications mobiles, environnements de développement/test, analyses intégrées) sans avoir à copier-coller d'exports CSV depuis DB Browser pour SQLite, DBeaver ou autre. sqlite3 CLI. Pour en savoir plus, rendez-vous sur QueryStreams.com. et Inscrivez-vous gratuitement pour commencer à poser de vraies questions SQLite à votre outil d'IA.

Ce que Query Streams MCP vous offre pour SQLite

D'autres serveurs « SQLite MCP » disponibles en open source connectent directement l'outil d'IA à un serveur local. .db Le chemin d'accès au fichier se trouve sur la même machine. Cette solution convient au développeur propriétaire du fichier, mais elle lie l'outil d'IA à un seul processus sur une seule machine, ne fournit aucun historique des requêtes de l'IA et devient totalement inopérante lorsque le fichier SQLite se trouve sur un serveur, une passerelle IoT, un appareil embarqué ou dans tout environnement où le client d'IA n'a pas accès au système de fichiers local. Le serveur Query Streams MCP pour SQLite résout un problème plus global : une seule clé permet d'accéder à tous les fichiers. .db Le fichier est visible par l'agent réseau, mais l'outil d'IA ne conserve jamais le chemin d'accès au fichier, et chaque lecture est auditée.

Aucun trou dans le pare-feu entrant

L'agent réseau ouvre une seule liaison cloud chiffrée sortante vers Query Streams. Votre client IA se connecte au cloud, jamais à l'hôte où se trouve votre serveur. .db Le fichier est accessible. Aucun port à ouvrir, aucune adresse IP à autoriser, aucun VPN, aucun fichier SQLite partagé via SMB/NFS juste pour qu'un LLM puisse le lire.

Une seule clé, tous les connecteurs

La même clé MCP est accessible à toutes les bases de données et API SaaS auxquelles votre compte est connecté. Enregistrez plusieurs fichiers SQLite (app.db, analytics.sqlite, cache.sqlite3) et l'outil d'IA sélectionne le bon par son nom — ainsi que tout autre connecteur que vous ajouterez ultérieurement, sans avoir à le ressaisir.

L'intelligence schématique intégrée

L'IA prend en compte les descriptions, les types sémantiques, les listes de valeurs d'énumération et les clés étrangères découvertes pour chaque colonne SQLite, et pas seulement les descriptions, les types sémantiques, les listes de valeurs d'énumération et les clés étrangères découvertes par l'IA. PRAGMA table_info Sortie. Essentiel pour SQLite, où les horodatages Unix encodés en entiers, les booléens 0/1 et les objets JSON sont traités. TEXTE Les colonnes sont faciles à mal interpréter pour un LLM.

Accès en lecture seule appliqué à l'agent

Même un LLM halluciné ne peut pas délivrer SUPPRIMER, MISE À JOUR, ou TABLE DE DÉPOSE via Query Streams MCP. L'agent réseau ouvre votre .db fichier en mode lecture seule et rejette tout ce qui n'est pas SELECTIONNER, AVEC, ou EXPLIQUER — peut être exécuté en toute sécurité en parallèle de l'application propriétaire du fichier en mode WAL.

Limites de débit par clé

Par défaut, 60 requêtes et 10 exécutions par minute, configurables par clé. Une boucle d'appel d'outil d'IA incontrôlée affecte un compartiment de jetons, et non le disque où se trouve votre fichier SQLite ou l'application qui y écrit.

Comment cela fonctionne sans ouvrir les ports du pare-feu

L'agent réseau Query Streams s'installe une seule fois sur une machine capable de lire votre fichier SQLite (un ordinateur portable, un serveur sur site, une passerelle IoT ou tout hôte disposant d'un protocole HTTPS sortant) et établit une liaison TLS sortante vers le cloud ; aucune donnée entrante n'est exposée et l'outil d'IA ne voit jamais le trafic entrant. .db chemin du fichier. Comment fonctionne une connexion sortante uniquement ?

Client IA

Curseur, Claude,
ChatGPT, Grok

Serveur QS MCP

HTTP en continu
Authentification par clé X-MCP

Agent de réseau

Sur votre réseau
Sortie de liaison cloud

Base de données SQLite

.db / .sqlite /
.sqlite3 déposer

Aucun port entrant requis — l'agent compose les numéros sortants, jamais l'inverse.

La touche MCP que vous donnez à Cursor ou Claude est limitée (lire / analyser / exécuter), révocable à tout moment et limitée en nombre d'utilisations par clé. L'outil d'IA fait appel à ces outils MCP pour fonctionner :

querystreams-mcp · catalogue d'outils
qs_list_organisationslire
Renvoie l'organisation liée à la clé appelante.
qs_list_agentslire
Liste les agents du réseau et leur état en ligne.
qs_list_connectorslire
Liste les connecteurs de données (une entrée par serveur de base de données ou API).
qs_get_connector_schemalire
Renvoie les tables, vues et colonnes SQLite que l'IA peut interroger, avec enrichissement Schema Intelligence lorsque disponible.
table de profils qsanalyser
Valeurs d'échantillon, distributions, détection d'énumérations, types sémantiques — à la demande.
qs_list_saved_querieslire
Des modèles SQL paramétrés préconfigurés, approuvés par l'équipe. L'IA les exécute sans jamais voir le code SQL.
qs_run_saved_queryexécuter
Exécute une requête enregistrée par clé_de_modèle avec des paramètres optionnels de remplacement.
qs_run_queryexécuter
Exécute une requête SELECT sur un connecteur. Le validateur en lecture seule s'exécute au niveau de l'agent, avant le .db Le fichier n'est jamais ouvert.

Pourquoi Schema Intelligence rend Query Streams MCP différent

La plupart des serveurs « MCP pour SQLite » de l'écosystème open source fournissent à votre outil d'IA les éléments de base. PRAGMA table_info La sortie SQLite donne un résultat inconnu. Noms de colonnes. Classes de stockage (ENTIER, TEXTE, RÉEL, GOUTTEPeut-être une clé primaire. Le LLM doit alors deviner que événements.horodatage est un entier Unix de l'époque (et non une date ISO), qui feature_flags.is_enabled est un booléen 0/1 (et non un tinyint), ou que événements.type_événement est en fait une énumération à cinq valeurs cachée à l'intérieur d'un TEXTE colonne. L'affinité de type permissive de SQLite rend cela pire que pour toute autre base de données : la classe de stockage ne vous indique pas ce qui se trouve réellement dans la colonne.

Query Streams MCP renvoie ce même schéma enrichi de Intelligence schématique (IS) — Des métadonnées organisées par l'IA, profilées à partir de vos données SQLite réelles, permettent à chaque outil de schéma appelé par l'IA de renvoyer six couches de connaissances organisées en plus du schéma de base, et le LLM cesse de deviner. Comment l'intelligence schématique enrichit chaque appel de schéma →

Pour concrétiser cela, voici ce que le client IA récupère d'une seule requête. qs_get_table_schema appel à une base de données d'analyse d'applications SQLite typique (événements, utilisateurs, séances, indicateurs de fonctionnalités) — d'abord sans intelligence schématique, puis avec.

Sans intelligence schématique source_de_données : schéma_capturé
// ce que voit le LLM == TABLEAU : événements == – id ENTIER [PK, NON NUL] - ID de l'utilisateur ENTIER NON NUL – type_événement TEXTE NON NUL – horodatage ENTIER NON NUL - propriétés TEXTE == TABLEAU : utilisateurs == – id ENTIER [PK] - e-mail TEXTE – créé_à TEXTE == TABLEAU : sessions == – id ENTIER [PK] - ID de l'utilisateur ENTIER – durée_secondes ENTIER == TABLEAU : indicateurs de fonctionnalités == – id ENTIER [PK] – nom_du_flag TEXTE – est_activé ENTIER Clés étrangères : (aucun déclaré) si_recommandation : État: « not_run » Ce qui manque pour cet appel : – Clés étrangères découvertes par l’IA – Valeurs d’exemple par colonne + détection d’énumération – Date encodée en entier et indicateurs booléens – Descriptions des tables et des colonnes – Classifications sémantiques des types Remarque : « Classe de stockage uniquement, aucun contexte sémantique »
Avec l'intelligence schématique source de données : intelligence du schéma
// ce que voit le LLM == TABLEAU : événements [FAIT, domaine:analyse_produit] == « Télémétrie des actions de l'utilisateur ; une ligne par événement. L'horodatage est en secondes Unix. » - identifiant ENTIER [PK] identifiant - ID de l'utilisateur ENTIER identifiant FK -> users.id (100% de chevauchement, conf 0,99) – type_événement TEXTE code_statut (énumération) Inscription (8 %) | Connexion (41 %) | Consultation (38 %) | Achat (9 %) | Déconnexion (4 %) – horodatage ENTIER date_unix_epoch Utilisez datetime(timestamp,'unixepoch'). Plage : du 1er novembre 2025 au 6 mai 2026. - propriétés TEXTE json_blob (nullable) Exemple : {“page”:”/pricing”,”ref”:”google”} == TABLEAU : utilisateurs [DIM, domaine:identité] == – courriel TEXTE courriel Exemple : [email protected], [email protected] – créé_à TEXTE date_iso (chaîne de caractères) Exemple : '2026-02-14T09:31:08Z' == TABLEAU : sessions [FAIT, domaine:analyse_produit] == – identifiant_utilisateur ENTIER identifiant FK -> users.id (chevauchement de 97 %, confiance de 0,94) – durée_secondes ENTIER durée_secondes Étendue : 3 – 7 210 · moyenne : 412 == TABLEAU : indicateurs de fonctionnalités [RECHERCHE, domaine:configuration] == – nom_du_flag TEXTE identifiant Exemple : ['new_checkout','dark_mode','beta_search'] – est_activé ENTIER booléen (0/1) Distribution : 0 (62 %) | 1 (38 %) — à traiter comme booléen

Les six couches de l'intelligence schématique ajoutent

Chaque couche traite une catégorie de questions à laquelle le LLM devrait normalement répondre par estimation. Le profilage SI optionnel s'effectue sur vos données SQLite sans modifier votre schéma ; il ouvre le .db fichier en lecture seule, il n'écrit jamais dedans. Ce que Schema Intelligence apporte et comment elle reste à jour →

Descriptions sélectionnées par l'IA

Description claire et concise de chaque base de données, table et colonne — générée une seule fois et mise à jour lors de toute modification de votre schéma. Évaluation de la fiabilité : les descriptions rédigées par les utilisateurs sont toujours privilégiées.

événements : « Télémétrie des actions de l'utilisateur ;
« Une ligne par événement enregistré. »

Classification des tableaux

Chaque table est étiquetée FACT (événements transactionnels), DIM (référence descriptive) ou LOOKUP (petites tables de correspondance), plus un domaine métier — product_analytics, identity, configuration, sales, finance et 14 autres.

événements [FAIT, domaine : analyse_produit]
feature_flags [RECHERCHE, domaine:configuration]

Types sémantiques par colonne

Dix-huit types : devise, email, date_iso, date_unix_epoch, status_code, boolean, json_blob, identifier, etc. Essentiel pour SQLite, où la classe de stockage ne précise pas si un entier représente un nombre, une époque Unix ou un indicateur binaire (0/1).

horodatage : date_unix_epoch
is_enabled : booléen (0/1)

Valeurs d'exemple issues de données réelles

Des lignes aléatoires sont apparues au LLM afin qu'il reconnaisse des modèles qu'aucun schéma ne peut montrer : des formes JSON à l'intérieur de colonnes TEXT, des encodages de date ISO-8601 vs Unix epoch et les valeurs réelles écrites par votre application.

propriétés : {« page » : « /pricing »,
« ref » : « google »}

Détection d'énumérations avec distributions

Les colonnes à faible cardinalité (50 valeurs distinctes ou moins, soit au maximum 5 % de lignes uniques) sont associées à leur liste complète de valeurs, avec le nombre de lignes correspondantes. L'IA ne tient jamais compte de la casse ni de l'orthographe des étiquettes de type d'événement ou des noms de drapeaux.

type d'événement : inscription (8 %) | connexion (41 %)
| Afficher (38 %) | Acheter (9 %) | Se déconnecter (4 %)

Découverte implicite de clés étrangères

L'analyse du chevauchement des données entre les tables détecte les jointures qui ne sont pas déclarées comme des contraintes DDL, ce qui est fréquent dans SQLite. PRAGMA clés_étrangères est souvent désactivé et les clés étrangères sont appliquées par le code de l'application, et non par la base de données.

événements.user_id -> utilisateurs.id
(100 % de chevauchement, conf 0,99)

Même invite de commande, requête SQL différente

La preuve se trouve dans le code SQL que l'outil d'IA écrit réellement. Même session Cursor, même modèle Claude, même invite. « Quels utilisateurs ont été les plus actifs cette semaine, et quelles fonctionnalités ont-ils utilisées ? » Sans l'intelligence schématique, le LLM doit deviner. Avec elle, il sait.

Sans intelligence schématique
— Première tentative de LLM contre un schéma nu : SELECTIONNER identifiant_utilisateur, type_événement, PAYS(*) AS n DE événements horodatage >= '2026-04-29' GROUPE PAR identifiant_utilisateur, type_événement ORDER BY n DESC LIMITE 10 L'horodatage est un entier (époque Unix), et non du texte. La comparaison de chaînes avec '2026-04-29' ne renvoie rien Pas de jointure — le résultat contient des identifiants, pas les adresses e-mail des utilisateurs. « cette semaine » est codé en dur — non dynamique Absence de prise en compte des énumérations — risque de manquer des types d'événements valides Renvoie silencieusement 0 lignes ; LLM ignore pourquoi.
Avec l'intelligence schématique
— Première tentative de LLM avec SI activé : AVEC actif AS ( SELECTIONNER e.user_id, e.event_type, PAYS(*) AS n DE événements e e.timestamp >= strftime('%s',date et heure('maintenant',-7 jours)) GROUPE PAR e.user_id, e.event_type ) SELECTIONNER u.email, a.event_type, un AS événements_cette_semaine DE actif a JOINDRE utilisateurs u ON u.id = a.user_id ORDER BY un DESC LIMITE 10 10 lignes. Réussi du premier coup. horodatage vu comme date_unix_epoch La découverte de la clé étrangère a fait apparaître events.user_id -> users.id enum-aware : a conservé les 5 valeurs event_type datetime idiomatique SQLite('now','-7 days')
Vous ne souhaitez pas exécuter Schema Intelligence ? MCP fonctionne toujours — les outils de schéma renvoient des métadonnées brutes (types, clés primaires, clés étrangères formelles, index) et chaque réponse dégradée contient un si_recommandation bloquer l'information à l'IA sur ce qui lui manque, y compris une option d'appel unique pour activer l'intégration de systèmes en cours de conversation via qs_request_si_analyse. Comment fonctionne Schema Intelligence et combien de temps cela prend-il ?
Nova AI

MCP ne vous convient pas ? Essayez plutôt Nova AI.

Ignorez complètement la configuration JSON : Nova AI est intégré au portail web Query Streams et pose les mêmes questions en langage clair à travers votre connecteur SQLite et tous les autres connecteurs de votre compte — même agent, même application de la règle de lecture seule, même intelligence de schéma, aucune plomberie MCP.

Découvrez Nova AI

Conditions préalables

Avant de commencer, assurez-vous d'avoir :

  1. Un compte Query Streams gratuit sur mon.querystreams.com.
  2. L'agent réseau Query Streams installé sur une machine capable de lire votre .db fichier — voir Téléchargez l'agent Query Streams.
  3. Un connecteur SQLite configuré avec l'agent — voir la configuration existante configuration du connecteur guides pour orienter l'agent vers votre .db, .sqlite, ou .sqlite3 Le fichier. L'agent détient le chemin d'accès au fichier ; l'outil d'IA ne le voit jamais.
  4. Tout client d'IA compatible MCP. Ce guide présente Cursor, Claude Desktop, ChatGPT et Grok ; si vous utilisez Windsurf, Zed, Continue, Cline, VS Code Copilot, Codex ou Goose, la configuration reste globalement la même.
  5. Cinq minutes.
Vous ne configurez l'agent qu'une seule fois. Le même agent qui gère les modules complémentaires Excel et Google Sheets de Query Streams, le générateur de requêtes web et Nova AI est également utilisé par MCP. L'ajout de MCP à un compte Query Streams existant se résume à la génération d'une clé : l'agent et le connecteur SQLite sont déjà opérationnels.
1

Générer une clé MCP

De la part de /mcp Dans la page Flux de requêtes, créez une clé avec les étendues souhaitées.

2

Déposez-le dans votre client IA

Un seul extrait JSON pour Cursor, Claude, ChatGPT ou Grok. La même clé partout.

3

Poser une question

« Quels étaient nos 10 meilleurs clients en termes de valeur à vie ? » — l’IA utilise les outils appropriés, et vous obtenez la réponse.

Étape 1 : Générer une clé MCP dans les flux de requêtes

Connectez-vous à Query Streams et ouvrez le page MCP (ou connectez-vous d'abord à mon.querystreams.com et cliquez MCP (dans le menu de navigation de gauche). Cliquez Générer une clé, donnez à la clé un nom reconnaissable (quelque chose comme curseur-ordinateur portable ou bureau de Claude), et choisissez les portées que vous souhaitez associer à cette clé :

  • lire — L'IA peut parcourir les connecteurs et lire les schémas. Indispensable pour tout le reste.
  • analyser L'IA peut profiler les tables et découvrir les relations (exemples de valeurs, distributions, types sémantiques). Cette fonctionnalité est optionnelle, mais fortement recommandée pour les opérations SQLite, où la compréhension des dates encodées en entiers, des booléens 0/1 et des colonnes JSON-in-TEXT est essentielle avant que le LLM n'effectue les jointures.
  • exécuter — L'IA peut effectivement exécuter des requêtes SQL. Sans cela, elle ne peut lire que les métadonnées du schéma.

Pour un flux de travail classique du type « laisser Claude analyser mes données SQLite », les trois étendues sont appropriées. Pour une clé que vous transmettez à un collègue ou à un client moins digne de confiance, supprimez-la. exécuter et autorisez-les uniquement à consulter. Vous pouvez révoquer n'importe quelle clé à tout moment depuis cette même page ; le client IA le verra. CLÉ_MCP_RÉVOQUÉE Lors de son prochain appel, le fonctionnement s'arrête immédiatement. Il n'y a pas de délai de propagation.

Copiez la clé maintenant : Query Streams l’affiche une seule fois, puis ne conserve qu’un hachage. Si vous la perdez, générez-en une nouvelle. La clé ressemble à ceci : qsmcp_ suivi de 48 caractères aléatoires, ce que votre client IA envoie dans le Clé X-MCP En-tête de requête.

Étape 2 : Ajoutez Query Streams MCP à votre client d’IA

La configuration est identique pour tous les clients compatibles MCP : une entrée de serveur MCP pointant vers https://mcp.querystreams.com avec votre clé dans le Clé X-MCP En-tête. Choisissez votre client ci-dessous.

Curseur
Curseur ~/.cursor/mcp.json
// Modifier ~/.cursor/mcp.json
{
  "mcpServers": {
    "flux de requêtes": {
      "url": "https://mcp.querystreams.com",
      "en-têtes": {
        "Clé X-MCP": "qsmcp_CLÉ_PASSER_ICI"
      }
    }
  }
}
Claude Desktop
Claude Desktop claude_desktop_config.json
// Paramètres → Développeur → Modifier la configuration
{
  "mcpServers": {
    "flux de requêtes": {
      "url": "https://mcp.querystreams.com",
      "en-têtes": {
        "Clé X-MCP": "qsmcp_CLÉ_PASSER_ICI"
      }
    }
  }
}
ChatGPT
ChatGPT Applications et connecteurs
// Paramètres → Applications et connecteurs → Ajouter un MCP
URL du serveur  https://mcp.querystreams.com
En-tête d'authentification Clé X-MCP
Valeur d'en-tête qsmcp_COLLER_LA_CLÉ_ICI

Nécessite un abonnement ChatGPT payant
// (Plus / Pro / Team / Enterprise).
Grok
Grok Outils MCP distants
// Grok → Paramètres → Outils
{
  "mcp_servers": [{
    "nom": "flux de requêtes",
    "url": "https://mcp.querystreams.com",
    "auth_header": "Clé X-MCP",
    "auth_value": "qsmcp_..."
  }]
}

Redémarrez votre client IA. Au prochain démarrage, il détectera les huit outils Query Streams MCP mentionnés ci-dessus et les affichera dans sa palette d'outils. Dans Cursor et Claude Desktop, vous pouvez le vérifier en saisissant : « liste des connecteurs » — l'IA devrait appeler qs_list_connectors et renvoyez votre connecteur SQLite ainsi que tout autre élément que vous avez configuré.

Étape 3 : Poser une question SQLite à l’IA

Vous n'écrivez pas de requêtes SQL : c'est l'IA qui s'en charge. Vous posez une question, l'IA choisit l'outil MCP approprié, l'agent ouvre le .db Le fichier est ouvert en lecture seule, la requête est exécutée et la réponse est renvoyée sous forme de texte et de tableaux. Voici trois exemples de requêtes à essayer :

« Affichez-moi le nombre d'utilisateurs actifs quotidiens des 30 derniers jours. »
Engagement
L'IA appellera qs_get_connector_schema découvrir le événements, utilisateurs, et séances tables, puis qs_run_query avec une requête SELECT utilisant les calculs de dates idiomatiques de SQLite — date(timestamp, 'unixepoch') pour le seau de la journée, datetime('maintenant', '-30 jours') pour la limite inférieure — COUNT(identifiant_utilisateur_DISTINCT) par jour. L'intelligence schématique lui a appris cela. événements.horodatage Il s'agit d'un entier Unix (type INTEGER), et non d'une chaîne de caractères ; le filtre de date renvoie donc bien des lignes. Vous verrez la tendance des utilisateurs actifs quotidiens (DAU) directement dans le tableau, accompagnée d'une interprétation écrite signalant la baisse du week-end et les pics inhabituels.
« Quelles sont les fonctionnalités qui affichent le taux d'engagement le plus élevé ? »
Produit
L'IA rejoint événements à indicateurs de fonctionnalités sur le JSON propriétés colonne (en utilisant json_extract(propriétés, '$.feature')), filtres feature_flags.is_enabled = 1 via la détection booléenne de Schema Intelligence sur la colonne INTEGER 0/1, et calcule le taux d'engagement comme COUNT(DISTINCT user_id avec événement) / COUNT(DISTINCT user_id total)Le résultat est une liste de fonctionnalités classées par ordre de priorité : l’IA identifie généralement les fonctionnalités à mettre en avant et celles qui semblent superflues. La détection d’énumérations de SI sur type_événement Cela signifie qu'il n'exclut pas accidentellement des noms d'événements valides en devinant la casse.
« Afficher la liste des utilisateurs qui ne se sont pas connectés depuis 60 jours. »
Rétention
L'IA génère une CTE qui retrouve la dernière connexion de chaque utilisateur. se connecter événement - MAX(horodatage) FILTRER (OÙ type_événement = 'connexion') groupés par ID de l'utilisateur — puis filtre les utilisateurs où datetime(last_login, 'unixepoch') < datetime('now', '-60 days'), rejoint à utilisateurs pour obtenir l'adresse e-mail et la date d'inscription. Le résultat est une liste ciblée, triée par date de dernière connexion (la plus ancienne), accompagnée d'une analyse écrite signalant les groupes les plus susceptibles de se désabonner. Vous pouvez approfondir en posant des questions. « Comment cela se compare-t-il à notre délai de 30 jours ? » et l'IA relance le processus avec la nouvelle limite.

Lors du premier appel à un outil par l'IA, votre client peut afficher une fenêtre de confirmation vous demandant d'approuver cet appel. Il s'agit du flux de consentement standard de MCP, et non d'une fonctionnalité ajoutée par Query Streams. Une fois l'approbation donnée, l'IA poursuivra la conversation sans problème. Vous pouvez modifier ce consentement à tout moment dans les paramètres de votre client.

Avis de facturation transparent : l’utilisation de MCP est facturée en octets non compressés.

Les modules complémentaires Excel et Google Sheets de Query Streams, ainsi que son générateur de requêtes web et Nova AI, fonctionnent tous via notre connexion cloud compressée ; nous mesurons et facturons en conséquence. octets compressés par rapport à votre environnement de données. Le transport MCP (HTTP en flux continu, conformément à la spécification MCP officielle) ne prend pas en charge de manière fiable la compression de bout en bout sur tous les clients et proxys intermédiaires. C'est pourquoi nous mesurons et facturons. octets non compressés pour le trafic MCP.

  • Ce que cela signifie : Une requête de journal d'événements SQLite de 500 Ko occupe environ 500 Ko de votre espace de données lorsqu'elle est récupérée via MCP, contre environ 80 à 120 Ko via Excel, Sheets, Nova ou le générateur de requêtes. Un agrégat d'événements de 5 000 lignes, restitué sous forme de JSON d'environ 750 Ko via MCP, aurait représenté environ 120 à 150 Ko d'octets compressés LZ4 via les clients Excel, Sheets, Nova ou le générateur de requêtes. Les données d'application SQLite contenant des chaînes de caractères répétées de type événement sont compressées environ 5 fois avec LZ4. Mêmes données, transport différent, taille facturable différente.
  • Ce que ceci n'est pas : Nous ne facturons aucune majoration ni pénalité pour l'utilisation de MCP. Nous facturons le volume réel de données transmises. Les autres clients sont moins chers car la compression fonctionne de manière fiable sur ces protocoles ; nous ne vous pénalisons pas pour le choix du protocole, mais nous devons être transparents quant à l'impact sur les coûts.
  • Ce que vous pouvez faire : pour les requêtes récurrentes très volumineuses (par exemple, l'exportation complète) événements Pour les données archivées (tableau), privilégiez Excel/Sheets/Nova. Pour les requêtes d'outils d'IA interactifs (réponse SQLite typique de 100 à 5 000 lignes, adaptée à un contexte LLM), MCP est la solution idéale, et la différence de coût est négligeable.

Foire aux questions

Dois-je ouvrir des ports ou utiliser un VPN pour cela ? +
Aucune règle entrante, redirection de port, NAT punchthrough ou VPN : l’agent réseau établit une seule connexion TLS sortante (port 443) et votre client IA atteint https://mcp.querystreams.com depuis l'internet public, donc si le protocole HTTPS sortant fonctionne sur l'hôte de l'agent, MCP fonctionne. Découvrez comment fonctionne une connexion sortante uniquement →
Quels outils d'IA puis-je utiliser avec Query Streams MCP ? +
Tout client compatible avec le protocole MCP (Model Context Protocol) ouvert — Claude Desktop, Claude Code, Cursor, ChatGPT (payant), Grok, Gemini CLI, Windsurf, Zed et plus de 500 autres. Utilisez votre outil d'IA habituel ; vous n'avez pas besoin d'en changer. Liste complète des clients d'IA pris en charge →
Puis-je révoquer une clé MCP ? +
Oui — trois interrupteurs d'arrêt d'urgence indépendants (un par touche à partir du /mcp page, par organisation via les paramètres du plan et au niveau de la plateforme), aucune de ces opérations ne nécessitant une rotation du mot de passe de la base de données ou un redémarrage de l'agent. Plus d'informations sur la sécurité des clés MCP →
Comment l'utilisation de MCP est-elle facturée en fonction de mon espace de données ? +
Les appels d'exécution MCP déduisent du même budget de domaine de données que celui utilisé par Excel, Google Sheets, Web Query Builder et Nova AI — un seul budget de consommation pour chaque méthode d'accès. La taille mesurée pour MCP diffère. Les autres clients utilisent notre connexion cloud compressée (nous facturons). octets compressésMCP fonctionne via Streamable HTTP, qui ne prend pas en charge de manière fiable la compression de bout en bout pour tous les clients et proxys. Par conséquent, nous facturons octets non compressésUne requête SQLite de 500 Ko extraite du journal des événements et renvoyée à Excel consomme généralement entre 80 et 120 Ko de votre espace de données ; le même résultat de 500 Ko renvoyé à Cursor via MCP consomme environ 500 Ko. Nous préférons être transparents à ce sujet afin que vous en soyez informés dès le départ plutôt que d'avoir une mauvaise surprise à la fin de votre cycle de facturation.
Est-ce que Query Streams MCP fonctionne avec mon .db / .sqlite / .sqlite3 fichier ? Qu’en est-il du mode WAL et de l’accès multiprocessus ? +
Oui, l'agent réseau ouvre n'importe quel fichier SQLite 3.x (quelle que soit son extension). .db, .sqlite, .sqlite3, ou aucune extension du tout) via la norme sqlite3 pilote. Le connecteur est le chemin de fichierIl ne s'agit pas d'une URL de serveur, donc tout ce que l'utilisateur de l'agent peut lire sur le disque est susceptible d'être lu. Le mode WAL (Write-Ahead Logging) est pris en charge nativement. L'agent ouvre le fichier en mode lecture seule par défaut (mode = ro L'URI étant spécifiée, l'agent peut s'exécuter en toute sécurité en parallèle de l'application propriétaire du fichier : votre application peut continuer à écrire pendant que l'IA lit, et inversement. Dans les environnements multiprocessus, l'agent utilise le mode cache partagé de SQLite ainsi qu'un délai d'attente configurable (5 secondes par défaut) afin d'éviter que de brèves interruptions d'écriture ne provoquent des erreurs de type « base de données verrouillée ». Conseil : enregistrer chaque .db Créez un fichier en tant que connecteur séparé et vous pourrez exécuter plusieurs bases de données SQLite à partir d'une seule clé MCP. app.db, analytics.sqlite, cache.sqlite3, session.db, tous visibles par le LLM par leur nom. L'agent prend également en charge les systèmes de fichiers réseau (SMB, NFS, EFS), mais pour des performances optimales, conservez le .db fichier local à l'hôte de l'agent.
En quoi cela diffère-t-il du fait d'exécuter moi-même un serveur SQLite MCP open-source ? +
Un serveur SQLite MCP direct (des projets communautaires existent sur GitHub, principalement des wrappers légers autour de SQLite) sqlite3) est un MCP par .db Le chemin d'accès au fichier se trouve sur le système de fichiers local du client IA. Cela fonctionne sur l'ordinateur portable d'un développeur, mais ne fonctionne plus dès que le fichier SQLite se trouve sur une autre machine, une passerelle IoT ou tout environnement où le client IA n'a pas accès au système de fichiers local. Pour que Claude puisse lire les journaux de votre application SQLite, Google Search Console, votre compte Stripe et votre entrepôt Snowflake, vous auriez besoin de quatre serveurs MCP configurés séparément sur chaque client IA, chacun avec son propre modèle de portée et son propre historique d'audit. Query Streams MCP est une solution clé, accessible à tous les connecteurs associés à votre compte : le fichier SQLite se trouve sur la machine où l'agent s'exécute, et non sur celle du client IA. Vous bénéficiez également de Schema Intelligence (essentielle pour l'affinité de type permissive de SQLite), de l'application du mode lecture seule au niveau de l'agent, des limites de débit par clé et d'un journal d'audit. journaux d'événements, et le même pipeline de facturation de domaine de données que vous utilisez déjà — autant d'éléments qu'un MCP SQLite direct ne vous offre pas.
Que se passe-t-il si l'IA tente d'écrire ou de supprimer des données ? +
Elle est rejetée par l'agent avant le .db Le fichier est toujours ouvert en écriture. qs_run_query L'appel est analysé par un validateur en lecture seule codé en dur qui n'autorise que SELECTIONNER, AVEC, et EXPLIQUER instructions ; tout autre retour VIOLATION EN LECTURE SEULE et n'atteint jamais SQLite. Le validateur s'exécute dans le processus agent sur votre machine, et non dans le cloud ; par conséquent, une surface d'accès au cloud compromise ne pourrait pas le contourner. Ceinture et bretelles SQLite : l'agent ouvre également le fichier avec ?mode=ro Dans l'URI de connexion, même si un appelant malveillant parvenait à contourner l'analyseur syntaxique pour une écriture, la bibliothèque SQLite elle-même refuserait l'opération. Deux niveaux indépendants de contrôle d'accès en lecture seule : l'un au niveau du validateur, l'autre au niveau du descripteur de fichier.
Puis-je voir la question exacte posée par l'IA ? +
Oui. Chaque appel d'outil MCP écrit une ligne dans le flux de requêtes. journaux d'événements Tableau contenant l'organisation, l'utilisateur, la clé, la portée, la latence et le code de résultat. L'administrateur de l'organisation peut ainsi répondre à la question « Qui a utilisé MCP la semaine dernière, quel connecteur et quelle requête a-t-il posée ? » en une seule requête. Veuillez noter que nous enregistrons les informations suivantes : nom et métadonnées de l'outil, et non le texte SQL ou les lignes renvoyées — ceux-ci transitent par la connexion cloud et n'apparaissent jamais dans les journaux du cloud. Avertissement relatif aux audits spécifiques à SQLite : SQLite ne dispose pas de journal d'audit natif côté serveur (il s'agit d'une bibliothèque intégrée, et non d'un serveur). Par conséquent, pour une capture complète du texte SQL, deux options pratiques s'offrent à vous : (a) activer journalisation au niveau de l'application dans l'application propriétaire du fichier — la plupart des ORM et des wrappers SQLite peuvent générer un journal de débogage pour chaque requête préparée ; ou (b) encapsulez le handle SQLite de votre application avec le sqlite3_trace_v2 ou hook de mise à jour sqlite3 Rappels de l'API C (et leurs équivalents en Python) sqlite3.set_trace_callback, Node's better-sqlite3 (hooks, etc.) pour consigner chaque instruction dans un fichier. Pour Query Streams MCP en particulier, le journaux d'événements La piste est généralement suffisante — elle est liée à l'identité, à la portée et à la clé de l'IA, ce qui est exactement ce dont un audit a généralement besoin.
Dois-je exécuter Schema Intelligence pour utiliser Query Streams MCP ? +
Non - Schema Intelligence est optionnel par (connecteur, base de données) paireet MCP fonctionne parfaitement sans cela. L'IA reçoit un schéma minimal (classes de stockage, clés primaires, clés étrangères formelles) lorsque PRAGMA foreign_keys = ON, indexe) et rédige des requêtes de base. Avec l'intégration système activée, l'IA reçoit six couches supplémentaires de métadonnées organisées : (1) Descriptions générées par IA pour chaque tableau et chaque colonne ; (2) classifications de tables (FACT pour les événements transactionnels, DIM pour les références descriptives, LOOKUP pour les petits mappages de code) plus une balise de domaine métier (product_analytics, identity, configuration, sales, finance, et 14 autres) ; (3) un type sémantique sur chaque colonne — particulièrement précieux pour SQLite, où la même classe de stockage INTEGER peut être un nombre, une époque Unix, un booléen 0/1 ou une clé étrangère, et où TEXT peut contenir une chaîne de date ISO-8601, un email, un UUID ou un blob JSON ; (4) valeurs d'exemple issues de vos données réelles afin que le LLM reconnaisse la forme JSON à l'intérieur d'une colonne TEXT ; (5) Détection d'énumérations avec distribution complète des valeurs sur des colonnes à faible cardinalité comme type_événement ou nom_du_flag; et (6) Les clés étrangères découvertes par l'IA à partir du chevauchement des données entre les tables ont été mises en évidence par qs_get_relationships — particulièrement important pour les bases de données SQLite où l'application formelle des clés étrangères est souvent désactivée. Sans SI, chaque réponse de l'outil de schéma contient également un si_recommandation En listant précisément ce qui manque à l'appel, l'IA peut lire cela et proposer de déclencher l'intégration de l'IA en cours de conversation via qs_request_si_analyseLe temps d'exécution varie en fonction du nombre de tables : une petite base de données de moins de 100 tables est analysée en une dizaine de minutes ; une base de données de taille moyenne (quelques centaines de tables) en 15 à 25 minutes ; une grande base de données d'entreprise avec plus de 1 500 tables peut nécessiter entre 45 et 60 minutes pour une analyse complète. La plupart des fichiers SQLite applicatifs (moins de 50 tables) sont analysés en moins de 10 minutes. SI s'exécute via votre agent réseau sur vos données (jamais dans le cloud), sans jamais écrire sur votre système. .db Le fichier, ne modifie jamais votre schéma et s'actualise de manière incrémentale lorsque celui-ci change. Résultat : avec l'intégration système activée, votre client d'IA génère des requêtes SQL correctes du premier coup bien plus souvent qu'avec n'importe quel serveur « MCP pour X » se contentant de fournir le LLM. PRAGMA table_info.
Et si j'ajoute un autre connecteur plus tard, comme Stripe ou PostgreSQL ? +
Rien ne change côté client — la même clé atteint le nouveau connecteur dès que l'agent l'appaire (qs_list_connectors (Il le récupère automatiquement). Un seul bloc de configuration couvre l'intégralité de votre compte, actuel et futur. Pourquoi une seule touche couvre tous les connecteurs →
Dois-je configurer MCP juste pour discuter avec mes données ? +
Non - Nova AI est intégré au portail Query Streams et fonctionne avec tous les connecteurs (y compris SQLite) sans installation ni fichier de configuration MCP. Utilisez Nova pour interagir avec vos données dans Query Streams ; utilisez MCP lorsque vous souhaitez que votre propre client d’IA (Claude, Cursor, ChatGPT, etc.) accède aux mêmes données : même agent, mêmes connecteurs, même intelligence schématique sous-jacente. En savoir plus sur Nova AI →

Commencer

Connectez votre outil d'IA à vos données SQLite en cinq minutes.

Une seule clé MCP permet d'atteindre chaque .db Le fichier accessible à l'agent, toutes les autres bases de données et tous les connecteurs API de votre compte Query Streams sont pris en charge, avec un journal d'audit complet, des limites de débit par clé et aucune modification du pare-feu. Claude, Cursor, ChatGPT et Grok sont opérationnels immédiatement.

Guides associés : Téléchargez l'agent Query Streams | Configuration du connecteur de base de données | Tous les guides du serveur MCP | Nova AI text-to-SQL

Catégorie : Serveur MCP

Mots-clés : mcp, Claude, curseur, SQLite, base de données, outils de développement, base de données embarquée

Description méta : Connectez SQLite (.db / .sqlite / .sqlite3) à Claude ou Cursor via Query Streams MCP. Sortie, lecture seule, 5 min.

Updated on 16 juin 2026

Powered by BetterDocs