Wyświetl kategorie

Jak połączyć SQLite z Claude/Cursor przez MCP (Konfiguracja serwera SQLite MCP)

26 minut czytania

SERWER MCP SQLITE

Zapytanie SQLite za pomocą Claude lub Kursor poprzez MCP.

Zadaj proste pytania na dowolny temat .db, .sqlite, lub .sqlite3 plik — pamięć podręczna aplikacji, dzienniki IoT, wyposażenie testowe/deweloperskie, wbudowana analityka — przez bezpieczne łącze w chmurze przeznaczone wyłącznie do połączeń wychodzących, z wbudowaną w łącznik SQLite MCP funkcją Schema Intelligence, dzięki której sztuczna inteligencja zapisuje poprawne dane SQL za pierwszym razem.

Brak luk w zaporze sieciowej Jeden klucz, każde złącze Dane na żywo, bez opóźnień w pamięci podręcznej Przynieś własne narzędzie AI

Query Streams to bezpieczna platforma integracji danych w czasie rzeczywistym, która umożliwia integrację wszystkich baz danych i interfejsów API SaaS na Twoim koncie z Claude, Cursor, ChatGPT i Grok — za pośrednictwem jednego klucza MCP bez konieczności wprowadzania zmian w zaporze sieciowej. W tym przewodniku szczegółowo opisano sposób podłączania złącza SQLite MCP, dzięki czemu narzędzie AI może odpowiadać na pytania w języku prostym dotyczące dowolnego .db, .sqlite, lub .sqlite3 plik, który masz na dysku — dzienniki zdarzeń aplikacji, pamięci podręczne czujników IoT, sklepy synchronizacji aplikacji mobilnych, urządzenia testowe/deweloperskie, osadzone analizy — bez konieczności kopiowania i wklejania eksportów CSV z przeglądarki DB dla SQLite, DBeaver lub sqlite3 Interfejs wiersza poleceń. Więcej informacji można znaleźć na stronie QueryStreams.com. oraz zarejestruj się za darmo aby zacząć zadawać narzędziu AI prawdziwe pytania dotyczące SQLite.

Co oferuje Query Streams MCP dla SQLite

Inne serwery „SQLite MCP” w środowisku open-source łączą narzędzie AI bezpośrednio z lokalnym .db ścieżka do pliku na tej samej maszynie. Działa to w przypadku dewelopera, który jest właścicielem tego jednego pliku, ale wiąże narzędzie AI z jednym procesem na jednej maszynie, nie zapewnia żadnego śladu audytu tego, o co prosiła AI, i całkowicie się psuje, gdy plik SQLite znajduje się na serwerze, bramie IoT, urządzeniu wbudowanym lub w dowolnym środowisku, w którym klient AI nie ma dostępu do lokalnego systemu plików. Serwer Query Streams MCP dla SQLite rozwiązuje szerszy problem: jeden klucz dociera do wszystkich .db plik, który może zobaczyć Agent Sieciowy, narzędzie AI nigdy nie przechowuje ścieżki do pliku, a każdy odczyt jest kontrolowany.

Zero luk w zaporze sieciowej

Agent sieciowy otwiera pojedyncze szyfrowane łącze wychodzące do strumieni zapytań w chmurze. Twój klient AI łączy się z chmurą, a nie z hostem, na którym znajduje się Twój serwer. .db Pliki żyją. Żadnego portu do otwarcia, żadnego adresu IP do dodania do listy dozwolonych, żadnego VPN-u, żadnego pliku SQLite udostępnianego przez SMB/NFS tylko po to, aby LLM mógł go odczytać.

Jeden klucz, każde złącze

Ten sam klucz MCP dociera do każdej bazy danych i interfejsu API SaaS, z którymi Twoje konto jest połączone. Zarejestruj wiele plików SQLite (aplikacja.db, analytics.sqlite, pamięć podręczna.sqlite3) a narzędzie AI wybiera właściwy po nazwie — obok dowolnego innego łącznika dodanego później, bez konieczności ponownego wprowadzania danych.

Wbudowana inteligencja schematów

Sztuczna inteligencja widzi opracowane przez nią opisy, typy semantyczne, listy wartości wyliczeniowych i odkryte klucze obce dla każdej kolumny SQLite — nie tylko PRAGMA table_info Wyjście. Krytyczne dla SQLite, gdzie znaczniki czasu Unix zakodowane jako liczby całkowite, wartości logiczne 0/1 i bloby JSON w TEKST Studenci LLM mogą łatwo błędnie odczytać kolumny.

Tylko do odczytu wymuszone przez agenta

Nawet mający halucynacje LLM nie może wydać USUWAĆ, AKTUALIZACJA, lub USUŃ TABELĘ przez Query Streams MCP. Agent sieciowy otwiera Twój .db plik w trybie tylko do odczytu i odrzuca wszystko, co nie jest SELECT, Z, lub WYJAŚNIĆ — można go bezpiecznie uruchamiać obok dowolnej aplikacji, która jest właścicielem pliku w trybie WAL.

Limity stawek za klucz

Domyślnie 60 żądań na minutę i 10 wywołań wykonania na minutę, konfigurowalne dla każdego klucza. Niekontrolowana pętla wywołań narzędzia AI trafia do kontenera tokenów, a nie do dysku, na którym znajduje się plik SQLite, ani do aplikacji, która na nim zapisuje.

Jak to działa bez otwierania portów zapory sieciowej

Agent sieciowy Query Streams instaluje się raz na komputerze, który może odczytać plik SQLite (laptop, serwer lokalny, brama IoT lub dowolny host z wychodzącym protokołem HTTPS) i wybiera jedno wychodzące łącze TLS do chmury — żadne dane przychodzące nie są nigdy ujawniane, a narzędzie AI nigdy nie widzi .db ścieżka pliku. jak działa połączenie tylko wychodzące →

Klient AI

Kursor, Claude,
ChatGPT, Grok

Serwer QS MCP

HTTP z możliwością przesyłania strumieniowego
Autoryzacja kluczem X-MCP

Agent sieciowy

W Twojej sieci
Połączenie z chmurą

Baza danych SQLite

.db / .sqlite /
.sqlite3 plik

Nie jest wymagany żaden port przychodzący — to agent wybiera numer wychodzący, a nie odwrotnie

Klucz MCP, który podajesz Cursorowi lub Claude'owi, ma zakres (Czytać / analizować / wykonać), odwoływalne w dowolnym momencie i ograniczone szybkością dla każdego klucza. Narzędzie AI korzysta z następujących narzędzi MCP do wykonania swojej pracy:

querystreams-mcp · katalog narzędzi
qs_list_organizationsCzytać
Zwraca organizację powiązaną z wywołującym klawiszem.
lista_agentów_qsCzytać
Wyświetla listę agentów sieciowych i stan online.
qs_list_connectorsCzytać
Wyświetla listę łączników danych (jeden wpis na serwer bazy danych lub interfejs API).
qs_get_connector_schemaCzytać
Zwraca tabele, widoki i kolumny SQLite, do których sztuczna inteligencja może wykonać zapytanie, z uwzględnieniem wzbogacenia Schema Intelligence, jeśli jest ono dostępne.
tabela_profili_qsanalizować
Wartości próbek, rozkłady, wykrywanie wyliczeń, typy semantyczne — na żądanie.
lista_zapisanych_zapytańCzytać
Wstępnie skonfigurowane, sparametryzowane szablony SQL, którym zespół ufa. Sztuczna inteligencja uruchamia je, nie widząc kodu SQL.
qs_run_saved_querywykonać
Wykonuje zapisane zapytanie przez klucz_wzorca z opcjonalnymi nadpisaniami parametrów.
qs_run_querywykonać
Wykonuje SELECT na łączniku. Walidator tylko do odczytu uruchamia się na agencie przed .db plik jest kiedykolwiek otwierany.

Dlaczego Schema Intelligence wyróżnia Query Streams MCP

Większość serwerów „MCP dla SQLite” w środowisku open-source udostępnia Twojemu narzędziu AI gołe PRAGMA table_info Wyjście SQLite daje nieznajomego. Nazwy kolumn. Klasy pamięci masowej (LICZBA CAŁKOWITA, TEKST, PRAWDZIWY, KROPELKA). Być może klucz podstawowy. LLM musi zgadywać, wydarzenia.znacznik czasu jest liczbą całkowitą epoki Unix (nie datą ISO), która feature_flags.is_enabled jest wartością logiczną 0/1 (nie tinyint) lub że wydarzenia.typ_wydarzenia jest w rzeczywistości pięciowartościowym enumem ukrytym w TEKST kolumna. Permisywne powinowactwo typów SQLite sprawia, że jest to gorsze niż w przypadku jakiejkolwiek innej bazy danych — klasa pamięci masowej nie mówi, co tak naprawdę znajduje się w kolumnie.

Query Streams MCP zwraca ten sam schemat wzbogacony o Inteligencja schematów (SI) — Metadane wyselekcjonowane przez sztuczną inteligencję, profilowane na podstawie rzeczywistych danych SQLite, dzięki czemu każde narzędzie schematów wywoływane przez sztuczną inteligencję zwraca sześć warstw wyselekcjonowanej wiedzy na bazie podstawowego schematu, a LLM przestaje zgadywać. jak Schema Intelligence wzbogaca każde wywołanie schematu →

Aby to uściślić, oto co klient AI otrzymuje z jednego qs_get_table_schema wywołanie typowej bazy danych analityki aplikacji SQLite (wydarzenia, użytkownicy, sesje, flagi_funkcji) — najpierw bez Schema Intelligence, potem z nią.

Bez inteligencji schematu źródło_danych: przechwycony_schemat
// co widzi LLM == TABELA: wydarzenia == – identyfikator LICZBA CAŁKOWITA [PK, NIE NULL] – identyfikator użytkownika LICZBA CAŁKOWITA NIE NULL – typ_wydarzenia TEKST NIE NULL – znacznik czasu LICZBA CAŁKOWITA NIE NULL – właściwości TEKST == TABELA: użytkownicy == – identyfikator LICZBA CAŁKOWITA [PK] – e-mail TEKST – created_at TEKST == TABELA: sesje == – identyfikator LICZBA CAŁKOWITA [PK] – identyfikator użytkownika LICZBA CAŁKOWITA – czas_trwania_sekund LICZBA CAŁKOWITA == TABELA: flagi_funkcji == – identyfikator LICZBA CAŁKOWITA [PK] – nazwa_flagi TEKST – jest_włączony LICZBA CAŁKOWITA Klucze obce: (nie zadeklarowano) si_recommendation: państwo: „nie_uruchomiony” czego_ci_brakuje_do_tego_wywołania: – klucze obce odkryte przez sztuczną inteligencję – wartości próbek dla każdej kolumny + wykrywanie wyliczeń – data zakodowana w postaci liczb całkowitych i flagi logiczne – opisy tabel i kolumn – klasyfikacje typów semantycznych uwaga: „tylko klasa pamięci masowej, bez kontekstu semantycznego”
Z inteligencją schematów źródło_danych: inteligencja_schematu
// co widzi LLM == TABELA: wydarzenia [FAKT, domena:analiza_produktu] == „Dane telemetryczne dotyczące działań użytkownika; jeden wiersz na zdarzenie. Znak czasu: sekundy epoki Unix”. – identyfikator LICZBA CAŁKOWITA [PK] identyfikator – identyfikator użytkownika LICZBA CAŁKOWITA identyfikator FK -> users.id (100% nakładania się, konfiguracja 0,99) – typ_wydarzenia TEKST kod_statusu (wyliczenie) rejestracja (8%) | logowanie (41%) | przeglądanie (38%) | zakup (9%) | wylogowanie (4%) – znacznik czasu LICZBA CAŁKOWITA data_unix_epoki Użyj datetime(timestamp,'unixepoch'). Zakres: 2025-11-01 do 2026-05-06 – właściwości TEKST json_blob (dopuszczający wartość null) Przykład: {“page”:”/pricing”,”ref”:”google”} == TABELA: użytkownicy [DIM, domena:tożsamość] == – e-mail TEKST e-mail Przykład: [email protected], [email protected] – created_at TEKST date_iso (ciąg) Próbka: '2026-02-14T09:31:08Z' == TABELA: sesje [FAKT, domena:analiza_produktu] == – identyfikator użytkownika LICZBA CAŁKOWITA identyfikator FK -> users.id (97% nakładania się, konf. 0,94) – czas_trwania_sekund LICZBA CAŁKOWITA czas_trwania_sekund Zakres: 3 – 7210 · średnia 412 == TABELA: flagi_funkcji [WYSZUKAJ, domena:konfiguracja] == – nazwa_flagi TEKST identyfikator Przykład: ['new_checkout','dark_mode','beta_search'] – jest_włączony LICZBA CAŁKOWITA wartość logiczna (0/1) Dystrybucja: 0 (62%) | 1 (38%) — traktuj jako wartość logiczną

Sześć warstw, które dodaje Schema Intelligence

Każda warstwa odnosi się do klasy pytań, na które LLM w innym przypadku by zgadł. Profilowanie SI z opcją opt-in jest przeprowadzane na danych SQLite bez zmiany schematu — otwiera .db plik jest tylko do odczytu i nigdy nie zapisuje do niego danych. co dodaje Schema Intelligence i jak pozostaje ona aktualna →

Opisy tworzone przez sztuczną inteligencję

Prosty opis każdej bazy danych, tabeli i kolumny — generowany raz, odświeżany po zmianie schematu. Punktacja wiarygodności; opisy tworzone przez użytkowników zawsze wygrywają.

wydarzenia: „Telemetria działań użytkownika;
jeden wiersz na każde zarejestrowane zdarzenie.”

Klasyfikacje tabel

Każda tabela oznaczona jest tagiem FACT (wydarzenia transakcyjne), DIM (odniesienie opisowe) lub LOOKUP (małe mapy kodu), a także domeną biznesową — product_analytics, identity, configuration, sales, finance i 14 innych.

zdarzenia [FAKT, domena:analiza_produktu]
feature_flags [WYSZUKAJ, domena:konfiguracja]

Typy semantyczne na kolumnę

Osiemnaście typów — waluta, e-mail, date_iso, date_unix_epoch, kod statusu, wartość logiczna, json_blob, identyfikator i inne. Krytyczne dla SQLite, gdzie klasa pamięci masowej nie informuje, czy INTEGER to liczba, epoka Unix, czy flaga 0/1.

znacznik czasu: date_unix_epoch
is_enabled: wartość logiczna (0/1)

Przykładowe wartości z rzeczywistych danych

Losowe wiersze są przekazywane do LLM, co pozwala mu rozpoznawać wzorce, których żaden schemat nie jest w stanie pokazać — kształty JSON wewnątrz kolumn TEXT, kodowanie dat epoki ISO-8601 w porównaniu z Unix oraz rzeczywiste wartości zapisywane przez aplikację.

właściwości: {“strona”:”/cennik”,
„ref”:”google”}

Wykrywanie wyliczeń z dystrybucjami

Kolumny o niskiej kardynalności (50 lub mniej odrębnych wartości, maksymalnie 5% wierszy unikatowych) mapowane na pełną listę wartości z liczbą wierszy. Sztuczna inteligencja nigdy nie zgaduje wielkości liter ani pisowni w tagach typu zdarzenia ani nazwach flag.

typ_wydarzenia: rejestracja (8%) | logowanie (41%)
| zobacz (38%) | kup (9%) | wyloguj się (4%)

Niejawne wykrywanie klucza obcego

Analiza nakładania się danych między tabelami pozwala na znalezienie połączeń, które nie są zadeklarowane jako ograniczenia DDL — typowe w przypadku SQLite, gdzie PRAGMA klucze_obce jest często wyłączony, a klucze obce są wymuszane przez kod aplikacji, a nie przez bazę danych.

events.user_id -> users.id
(100% nakładania się, konf. 0,99)

Ten sam monit, inny kod SQL

Dowód znajduje się w kodzie SQL, który narzędzie AI faktycznie zapisuje. Ta sama sesja Cursora, ten sam model Claude'a, ten sam monit — „Którzy użytkownicy byli najbardziej aktywni w tym tygodniu i z jakich funkcji korzystali?” Bez Schema Intelligence, LLM musi zgadywać. Dzięki niej, LLM wie.

Bez inteligencji schematu
— Pierwsza próba LLM przeciwko pustemu schematowi: SELECT identyfikator_użytkownika, typ_wydarzenia, COUNT(*) AS n Z wydarzenia GDZIE znacznik czasu >= '2026-04-29' GROUP BY identyfikator_użytkownika, typ_wydarzenia ORDER BY n DESC LIMIT 10 znacznik czasu jest liczbą całkowitą (epoka Unix), a nie tekstem ciąg porównawczy do „2026-04-29” nie zwraca niczego brak JOIN — wynik zawiera identyfikatory, a nie adresy e-mail użytkowników „w tym tygodniu” zakodowane na stałe — nie dynamiczne brak świadomości wyliczeń — może brakować prawidłowych typów zdarzeń po cichu zwraca 0 wierszy; LLM nie ma pojęcia dlaczego
Z inteligencją schematów
— Pierwsza próba LLM z włączoną funkcją SI: Z aktywny AS ( SELECT e.user_id, e.event_type, COUNT(*) AS n Z wydarzenia e GDZIE e.znacznik czasu >= strftime('%S',data i godzina('Teraz',„-7 dni”)) GROUP BY e.user_id, e.event_type ) SELECT u.email, a.event_type, an AS wydarzenia_w_tym_tygodniu Z aktywny a JOIN użytkownicy u ON u.id = a.user_id ORDER BY jakiś DESC LIMIT 10 10 rzędów. Poprawne za pierwszym razem. znacznik czasu widziany jako date_unix_epoch Odkrycie FK ujawniło zdarzenia.user_id -> users.id z uwzględnieniem wyliczeń: zachowano wszystkie 5 wartości event_type SQLite-idiomatic datetime('now','-7 days')
Nie chcesz uruchamiać Schema Intelligence? MCP nadal działa — narzędzia schematów zwracają gołe metadane (typy, klucze podstawowe, formalne klucze obce, indeksy), a każda zdegradowana odpowiedź niesie ze sobą si_recommendation blok informujący sztuczną inteligencję o tym, czego jej brakuje, w tym opcja jednorazowego połączenia umożliwiająca SI w trakcie rozmowy za pośrednictwem qs_request_si_analysis. jak działa Schema Intelligence i ile czasu to zajmuje →
Nova AI

MCP nie jest dla Ciebie? Wypróbuj Nova AI.

Całkowicie pomiń konfigurację JSON: Nova AI jest wbudowana w portal internetowy Query Streams i zadaje te same proste pytania w całym łączniku SQLite i każdym innym łączniku na Twoim koncie — ten sam agent, to samo wymuszanie trybu tylko do odczytu, ta sama inteligencja schematu, brak obsługi MCP.

Poznaj Nova AI

Wymagania wstępne

Zanim zaczniesz, upewnij się, że masz:

  1. Bezpłatne konto Query Streams na stronie my.querystreams.com.
  2. Agent sieciowy Query Streams zainstalowany na komputerze, który może odczytać Twoje dane .db plik — zobacz Pobierz agenta strumieni zapytań.
  3. Łącznik SQLite skonfigurowany dla agenta — zobacz istniejący konfiguracja złącza przewodniki wskazujące agentowi drogę do Ciebie .db, .sqlite, lub .sqlite3 plik. Agent przechowuje ścieżkę do pliku; narzędzie AI nigdy jej nie widzi.
  4. Dowolny klient AI obsługujący MCP. W tym przewodniku omówimy Cursor, Claude Desktop, ChatGPT i Grok; jeśli używasz Windsurf, Zed, Continue, Cline, VS Code Copilot, Codex lub Goose, blok konfiguracyjny jest zasadniczo taki sam.
  5. Pięć minut.
Agenta konfiguruje się tylko raz. Ten sam agent, który obsługuje dodatki Query Streams do Excela i Arkuszy Google, internetowy kreator zapytań oraz Nova AI, obsługuje również MCP. Dodanie MCP do istniejącego konta Query Streams polega jedynie na wygenerowaniu klucza — agent i łącznik SQLite są już uruchomione.
1

Wygeneruj klucz MCP

Z /mcp strona w Query Streams, utwórz klucz z zakresami, których potrzebujesz.

2

Wrzuć to do swojego klienta AI

Jeden fragment kodu JSON dla Cursor, Claude, ChatGPT lub Grok. Ten sam klucz wszędzie.

3

Zadaj pytanie

„Jakich 10 klientów było najbardziej wartościowych pod względem cyklu życia klienta?” — sztuczna inteligencja dzwoni do odpowiednich narzędzi, a Ty otrzymujesz odpowiedź.

Krok 1: Wygeneruj klucz MCP w strumieniach zapytań

Zaloguj się do Query Streams i otwórz Strona MCP (lub zaloguj się najpierw na my.querystreams.com i kliknij MCP (w nawigacji po lewej stronie). Kliknij Wygeneruj klucz, nadaj kluczowi rozpoznawalną nazwę (coś w stylu kursor-laptop lub claude-desktop) i wybierz zakresy, jakie ma mieć ten klucz:

  • Czytać — sztuczna inteligencja może przeglądać złącza i odczytywać schematy. Wymagane do wszystkich innych zadań.
  • analizować — sztuczna inteligencja może profilować tabele i odkrywać relacje (wartości próbek, rozkłady, typy semantyczne). Opcjonalne, ale zdecydowanie zalecane do pracy z bazą danych SQLite, gdzie zrozumienie dat zakodowanych w postaci liczb całkowitych, wartości logicznych 0/1 i kolumn JSON-in-TEXT ma znaczenie przed zapisaniem łączeń przez LLM.
  • wykonać — sztuczna inteligencja może faktycznie uruchamiać SQL. Bez tego, sztuczna inteligencja jest w stanie odczytywać jedynie metadane schematu.

W przypadku typowego przepływu pracy „pozwól Claude'owi przeanalizować moje dane SQLite” wszystkie trzy zakresy są odpowiednie. W przypadku klucza, który przekazujesz członkowi zespołu lub klientowi o mniejszym zaufaniu, pomiń wykonać i pozwól im tylko przeglądać. Możesz w każdej chwili odwołać dowolny klucz z tej samej strony; klient AI zobaczy MCP_KEY_REVOKED przy następnym wywołaniu i natychmiast przestaje działać. Nie ma opóźnienia propagacji.

Skopiuj klucz teraz — Query Streams wyświetla go raz, a następnie przechowuje tylko skrót. Jeśli go zgubisz, wygeneruj nowy. Klucz wygląda tak: qsmcp_ po którym następuje 48 losowych znaków i to jest to, co wysyła Twój klient AI Klucz X-MCP nagłówek żądania.

Krok 2: Dodaj MCP Query Streams do swojego klienta AI

Konfiguracja ma taki sam kształt dla każdego klienta obsługującego MCP — wpis serwera MCP wskazujący na https://mcp.querystreams.com z kluczem w środku Klucz X-MCP nagłówek. Wybierz swojego klienta poniżej.

Kursor
Kursor ~/.kursor/mcp.json
// Edytuj ~/.cursor/mcp.json
{
  „serwery mcp”: {
    „strumienie zapytań”: {
      "adres URL": "https://mcp.querystreams.com",
      „nagłówki”: {
        „Klucz X-MCP”: "qsmcp_WKLEJ_KLUCZ_TUTAJ"
      }
    }
  }
}
Claude Desktop
Claude Desktop claude_desktop_config.json
// Ustawienia → Deweloper → Edytuj konfigurację
{
  „serwery mcp”: {
    „strumienie zapytań”: {
      "adres URL": "https://mcp.querystreams.com",
      „nagłówki”: {
        „Klucz X-MCP”: "qsmcp_WKLEJ_KLUCZ_TUTAJ"
      }
    }
  }
}
ChatGPT
ChatGPT Aplikacje i łączniki
// Ustawienia → Aplikacje i łączniki → Dodaj MCP
Adres URL serwera  https://mcp.querystreams.com
Nagłówek autoryzacji Klucz X-MCP
Wartość nagłówka qsmcp_WKLEJ_KLUCZ_TUTAJ

// Wymaga płatnego planu ChatGPT
// (Plus / Pro / Team / Enterprise).
Grok
Grok Narzędzia MCP Remote
// Grok → Ustawienia → Narzędzia
{
  „serwery_mcp”: [{
    "nazwa": „strumienie zapytań”,
    "adres URL": "https://mcp.querystreams.com",
    „nagłówek_auth”: „Klucz X-MCP”,
    „wartość_autoryzacji”: "qsmcp_..."
  }]
}

Uruchom ponownie klienta AI. Przy kolejnym uruchomieniu wykryje on osiem narzędzi MCP Query Streams wymienionych powyżej i wyświetli je w palecie narzędzi. W programach Cursor i Claude Desktop możesz to sprawdzić, wpisując: „lista łączników” — sztuczna inteligencja powinna zadzwonić qs_list_connectors i zwróć łącznik SQLite wraz ze wszystkim innym, co skonfigurowałeś.

Krok 3: Zadaj sztucznej inteligencji pytanie dotyczące SQLite

Nie piszesz SQL – robi to sztuczna inteligencja. Zadajesz pytanie, sztuczna inteligencja wybiera odpowiednie narzędzie MCP, agent otwiera .db Plik w trybie tylko do odczytu, uruchamia zapytanie, a odpowiedź jest zwracana w postaci tekstu i tabel. Trzy przykładowe polecenia do wypróbowania na początek:

„Pokaż mi liczbę aktywnych użytkowników dziennie w ciągu ostatnich 30 dni”.
Zaangażowanie
Sztuczna inteligencja zadzwoni qs_get_connector_schema odkryć wydarzenia, użytkownicy, oraz sesje stoły, a następnie qs_run_query z instrukcją SELECT wykorzystującą idiomatyczną matematykę dat SQLite — data(znacznik czasu, 'unixepoch') na wiadro dzienne, datetime('teraz', '-30 dni') dla dolnej granicy — LICZBA(ODMIENNY identyfikator użytkownika) dziennie. Inteligencja schematów nauczyła go, że wydarzenia.znacznik czasu To liczba całkowita epoki Unix, a nie ciąg znaków, więc filtr daty faktycznie zwraca wiersze. Trend DAU zobaczysz w formie tabeli oraz pisemną interpretację, która wskazuje weekendowe spadki i wszelkie nietypowe skoki.
„Które funkcje mają najwyższy wskaźnik zaangażowania?”
Produkt
Dołącza AI wydarzenia do flagi_funkcji na JSON właściwości kolumna (używając json_extract(właściwości, '$.feature')), filtry feature_flags.is_enabled = 1 za pomocą wykrywania wartości logicznych Schema Intelligence w kolumnie 0/1 INTEGER i oblicza współczynnik zaangażowania jako LICZBA(DISTINCT user_id ze zdarzeniem) / LICZBA(DISTINCT user_id suma)W rezultacie powstaje lista funkcji z rankingiem — sztuczna inteligencja zazwyczaj wskazuje funkcje, które wymagają promocji, a które wydają się zbędne. Wykrywanie wyliczeń SI typ_wydarzenia oznacza, że nie wyklucza przypadkowo prawidłowych nazw zdarzeń poprzez odgadywanie wielkości liter.
„Wyświetl listę użytkowników, którzy nie logowali się przez 60 dni”.
Zatrzymanie
Sztuczna inteligencja pisze CTE, który znajduje ostatnią aktywność każdego użytkownika login wydarzenie - MAX(znacznik czasu) FILTR (GDZIE typ_zdarzenia = 'logowanie') pogrupowane według identyfikator użytkownika — następnie filtruje użytkowników, gdzie datetime(last_login, 'unixepoch') < datetime('teraz', '-60 dni'), dołącza z powrotem do użytkownicy Aby uzyskać adres e-mail i datę rejestracji. Rezultatem jest skoncentrowana lista posortowana według daty najstarszej do ostatniej, a także pisemna interpretacja, która wskazuje kohorty najbardziej narażone na odejście. Możesz przejść do szczegółów, pytając „Jak to się ma do naszego 30-dniowego okna?” a sztuczna inteligencja powtarza działanie z nowym ograniczeniem.

Gdy sztuczna inteligencja po raz pierwszy wywoła narzędzie, Twój klient może wyświetlić monit o potwierdzenie z prośbą o zatwierdzenie wywołania narzędzia — to standardowy proces uzyskiwania zgody w MCP, a nie coś, co dodaje Query Streams. Zatwierdź raz, a sztuczna inteligencja swobodnie kontynuuje rozmowę. Możesz w dowolnym momencie powrócić do zgody w ustawieniach klienta.

Uczciwa informacja o rozliczeniach: opłaty za korzystanie z MCP są naliczane za nieskompresowane bajty

Dodatek do programu Excel firmy Query Streams, dodatek do Arkuszy Google, kreator zapytań internetowych i Nova AI działają w oparciu o nasze skompresowane łącze w chmurze — mierzymy i rozliczamy skompresowane bajty względem Twojego obszaru danych. Transport MCP (strumieniowy protokół HTTP zgodnie z oficjalną specyfikacją MCP) nie obsługuje niezawodnej kompresji end-to-end dla każdego klienta i pośredniczącego serwera proxy, dlatego mierzymy i rozliczamy nieskompresowane bajty dla ruchu MCP.

  • Co to oznacza: Zapytanie do dziennika zdarzeń SQLite o rozmiarze 500 KB kosztuje około 500 KB obszaru danych pobranego przez MCP, w porównaniu z około 80–120 KB przez Excela/Arkusze/Nova/Kreatora zapytań. Agregacja zdarzeń o długości 5000 wierszy, która zajmuje około 750 KB w formacie JSON przez MCP, zajęłaby około 120–150 KB bajtów skompresowanych metodą LZ4 przez klientów Excela/Arkuszy/Nova/Kreatora zapytań — dane aplikacji SQLite z powtarzającymi się ciągami zdarzeń są kompresowane około 5-krotnie przez LZ4. Te same dane, inny transport, inny rozmiar do rozliczenia.
  • Czym to nie jest: narzut lub kara za korzystanie z protokołu MCP. Przekazujemy faktycznie wysłane bajty. Inni klienci są tańsi, ponieważ kompresja działa niezawodnie w tych transportach; nie karzemy za wybór protokołu, ale musimy być transparentni co do kształtu kosztów.
  • Co możesz zrobić: w przypadku bardzo dużych, powtarzających się zapytań (np. zrzucanie całego wydarzenia tabela do archiwizacji), preferuj ścieżkę Excel/Arkusze/Nova. W przypadku interaktywnych wywołań narzędzi AI (typowa odpowiedź SQLite o długości 100–5000 wierszy, pasująca do kontekstu LLM), MCP jest właściwym wyborem, a różnica w kosztach jest mierzona w centach.

Często zadawane pytania

Czy muszę otworzyć porty lub uruchomić sieć VPN, aby z tego korzystać? +
Brak reguł przychodzących, przekierowania portów, NAT Punchthrough lub VPN — agent sieciowy tworzy jedno połączenie wychodzące TLS (port 443), a Twój klient AI osiąga https://mcp.querystreams.com z publicznego Internetu, więc jeśli wychodzący protokół HTTPS działa na hoście agenta, MCP działa. Zobacz jak działa połączenie tylko wychodzące →
Jakich narzędzi AI mogę używać z Query Streams MCP? +
Każdy klient obsługujący otwarty protokół Model Context Protocol — Claude Desktop, Claude Code, Cursor, ChatGPT (płatny), Grok, Gemini CLI, Windsurf, Zed i ponad 500 innych. Zabierz własne narzędzie AI; nie musisz się przesiadać. Pełna lista obsługiwanych klientów AI →
Czy mogę unieważnić klucz MCP? +
Tak — trzy niezależne wyłączniki bezpieczeństwa (na każdy klawisz z /mcp (strona, organizacja za pośrednictwem ustawień planu i platforma), z których żadna nie wymaga rotacji hasła bazy danych ani ponownego uruchomienia agenta. Więcej o bezpieczeństwie kluczy MCP →
W jaki sposób korzystanie z MCP jest rozliczane w oparciu o mój obszar danych? +
Wywołania MCP korzystają z tego samego budżetu danych, z którego korzystają aplikacje Excel, Arkusze Google, Web Query Builder i Nova AI — jednego budżetu zużycia dla każdej metody dostępu. Rozmiar mierzony dla MCP jest różny. Pozostali klienci korzystają z naszego skompresowanego łącza w chmurze (wystawiamy faktury skompresowane bajty); MCP działa w oparciu o protokół Streamable HTTP, który nie obsługuje kompresji end-to-end przez każdego klienta i serwer proxy, dlatego wystawiamy faktury nieskompresowane bajtyZapytanie o 500 KB w dzienniku zdarzeń SQLite zwrócone do Excela zazwyczaj kosztuje około 80–120 KB obszaru danych; ten sam wynik o rozmiarze 500 KB zwrócony do Cursor przez MCP kosztuje około 500 KB. Jesteśmy o tym transparentni, ponieważ wolimy, abyś wiedział o tym z góry, niż był zaskoczony pod koniec cyklu rozliczeniowego.
Czy Query Streams MCP działa z moim .db / .sqlite / .sqlite3 Plik? A co z trybem WAL i dostępem wieloprocesowym? +
Tak — Agent sieciowy otwiera każdy plik SQLite 3.x (niezależnie od rozszerzenia — .db, .sqlite, .sqlite3(lub bez żadnego rozszerzenia) poprzez standard sqlite3 sterownik. Złącze jest ścieżka pliku, a nie adres URL serwera, więc wszystko, co użytkownik agenta może odczytać na dysku, jest dozwolone. Tryb WAL (Write-Ahead Logging) jest obsługiwany domyślnie. Domyślnie agent otwiera plik w trybie tylko do odczytu (tryb = ro w URI), więc można go bezpiecznie uruchamiać równolegle z dowolną aplikacją będącą właścicielem pliku — aplikacja może zapisywać dane, podczas gdy sztuczna inteligencja odczytuje je i odwrotnie. W scenariuszach wieloprocesowych agent korzysta z trybu współdzielonej pamięci podręcznej SQLite oraz konfigurowalnego limitu czasu zajętości (domyślnie 5 sekund), dzięki czemu krótkie blokady zapisu nie powodują błędów „baza danych jest zablokowana”. Wskazówka: zarejestruj każdy .db plik jako osobny łącznik i możesz uruchomić wiele baz danych SQLite z jednego klucza MCP — aplikacja.db, analytics.sqlite, pamięć podręczna.sqlite3, sesja.db, wszystkie widoczne dla LLM według nazwy. Agent obsługuje również sieciowe systemy plików (SMB, NFS, EFS), ale dla uzyskania najlepszej wydajności należy zachować .db plik lokalny dla hosta agenta.
Czym to się różni od samodzielnego uruchamiania serwera SQLite MCP opartego na otwartym kodzie źródłowym? +
Bezpośredni serwer MCP SQLite (projekty społecznościowe na GitHub istnieją, głównie cienkie wrappery) sqlite3) to jeden MCP na .db ścieżka pliku w lokalnym systemie plików klienta AI. Działa to na laptopie programisty, ale rozpada się w momencie, gdy plik SQLite znajduje się na innej maszynie, bramie IoT lub w dowolnym środowisku, w którym klient AI nie ma dostępu do lokalnego systemu plików. Aby Claude mógł odczytać dziennik aplikacji SQLite + Google Search Console + konto Stripe + magazyn Snowflake, potrzebne byłyby cztery serwery MCP skonfigurowane osobno dla każdego klienta AI, każdy z własnym modelem zakresu i własną historią audytu. Query Streams MCP to jeden klucz docierający do każdego konektora sparowanego z Twoim kontem — plik SQLite znajduje się na dowolnej maszynie, na której działa agent, a nie na maszynie klienta AI. Uzyskujesz również dostęp do Schema Intelligence (kluczowej dla dozwolonego powinowactwa typów SQLite), egzekwowania trybu tylko do odczytu na poziomie agenta, limitów szybkości dla każdego klucza i ścieżki audytu w dzienniki_zdarzeńoraz ten sam proces rozliczeń w obrębie obszaru danych, z którego już korzystasz — żadnej z tych funkcji nie oferuje bezpośredni pakiet SQLite MCP.
Co się stanie, jeśli sztuczna inteligencja spróbuje zapisać lub usunąć dane? +
Zostało odrzucone przez agenta przed .db plik jest kiedykolwiek otwierany do zapisu. Każdy qs_run_query połączenie jest analizowane przez zakodowany na stałe walidator tylko do odczytu, który pozwala tylko SELECT, Z, oraz WYJAŚNIĆ oświadczenia; cokolwiek innego zwraca NARUSZENIE TYLKO DO ODCZYTU i nigdy nie dociera do SQLite. Walidator działa w procesie agenta na Twoim komputerze, a nie w chmurze, więc zainfekowana powierzchnia chmury nie mogłaby go ominąć. Pasy i szelki SQLite: agent dodatkowo otwiera plik za pomocą ?tryb=ro w URI połączenia, więc nawet jeśli złośliwy użytkownik przemyciłby zapis przez parser, sama biblioteka SQLite odrzuciłaby operację. Dwie niezależne warstwy wymuszania trybu tylko do odczytu — jedna w walidatorze, druga w uchwycie pliku.
Czy mogę zobaczyć, o co właściwie zapytała sztuczna inteligencja? +
Tak. Każde wywołanie narzędzia MCP zapisuje wiersz do własnych strumieni zapytań. dzienniki_zdarzeń Tabela z organizacją, użytkownikiem, kluczem, zakresem, opóźnieniem i kodem wyniku. Administrator organizacji może odpowiedzieć na pytanie „kto korzystał z MCP w zeszłym tygodniu, który łącznik i o co pytał?” jednym zapytaniem. Należy pamiętać, że rejestrujemy nazwa i metadane narzędzia, nie tekst SQL ani zwrócone wiersze — te przepływają przez łącze w chmurze i nigdy nie trafiają do logów w chmurze. Zastrzeżenie dotyczące audytu specyficzne dla SQLite: SQLite nie ma natywnego dziennika audytu po stronie serwera (jest to osadzona biblioteka, a nie serwer), więc w celu przechwytywania całego tekstu SQL masz dwie praktyczne opcje: (a) włącz rejestrowanie na poziomie aplikacji w dowolnej aplikacji, która jest właścicielem pliku — większość ORM-ów i opakowań SQLite może wygenerować dziennik debugowania każdego przygotowanego polecenia; lub (b) opakować uchwyt SQLite swojej aplikacji za pomocą sqlite3_trace_v2 lub sqlite3_update_hook Wywołania zwrotne C-API (i ich odpowiedniki w Pythonie) sqlite3.set_trace_callback, Węzeł lepszy-sqlite3 haki itp.) do rejestrowania każdego polecenia w pliku. W przypadku MCP Query Streams, dzienniki_zdarzeń zazwyczaj wystarczający jest ślad — jest on powiązany z tożsamością, zakresem i kluczem sztucznej inteligencji, a to właśnie są dane, których zazwyczaj wymaga audyt.
Czy muszę uruchomić Schema Intelligence, aby używać Query Streams MCP? +
NIE - Schema Intelligence jest usługą opcjonalną (łącznik, baza danych) para, a MCP działa bez niego dobrze. Sztuczna inteligencja otrzymuje goły schemat (klasy pamięci masowej, klucze podstawowe, formalne klucze obce, gdy PRAGMA klucze_obce = WŁ.(indeksy) i zapisuje podstawowe zapytania. Po włączeniu SI, sztuczna inteligencja otrzymuje sześć dodatkowych warstw wyselekcjonowanych metadanych: (1) Opisy każdej tabeli i kolumny opracowane przez sztuczną inteligencję; (2) klasyfikacje tabel (FACT dla zdarzeń transakcyjnych, DIM dla odniesień opisowych, LOOKUP dla małych map kodu) oraz tag domeny biznesowej (product_analytics, identity, configuration, sales, finance i 14 innych); (3) typ semantyczny w każdej kolumnie — szczególnie cenny w przypadku SQLite, gdzie ta sama klasa pamięci masowej INTEGER może być liczbą, epoką Unix, wartością logiczną 0/1 lub kluczem obcym, a TEXT może przechowywać ciąg daty ISO-8601, adres e-mail, UUID lub obiekt blob JSON; (4) przykładowe wartości z Twoich rzeczywistych danych, aby LLM rozpoznał kształt JSON wewnątrz kolumny TEXT; (5) wykrywanie wyliczeń z pełnymi rozkładami wartości w kolumnach o niskiej kardynalności, takich jak typ_wydarzenia lub nazwa_flagi; I (6) Klucze obce odkryte przez sztuczną inteligencję na podstawie nakładania się danych między tabelami, ujawnione za pomocą qs_get_relationships — szczególnie ważne w przypadku baz danych SQLite, w których formalne wymuszanie kluczy obcych jest często wyłączone. Bez SI każda odpowiedź narzędzia schematu również niesie ze sobą si_recommendation blok zawierający dokładną listę brakujących elementów połączenia — sztuczna inteligencja może to odczytać i zaproponować uruchomienie SI w trakcie rozmowy za pośrednictwem qs_request_si_analysisCzas wykonania skaluje się wraz z liczbą tabel: mała baza danych poniżej 100 tabel kończy się w około 10 minut; typowa baza danych średniej wielkości (kilkaset tabel) kończy się w 15–25 minut; duża baza danych przedsiębiorstwa z ponad 1500 tabelami może wymagać 45–60 minut na pełne skanowanie. Większość plików SQLite klasy aplikacyjnej (poniżej 50 tabel) kończy się w znacznie mniej niż 10 minut. SI działa za pośrednictwem agenta sieciowego na Twoich danych (nigdy w chmurze) i nigdy nie zapisuje ich w Twoim systemie. .db Plik, nigdy nie zmienia schematu i odświeża się przyrostowo po jego zmianie. Efekt kompleksowy: z włączoną funkcją SI, Twój klient AI zapisuje poprawny kod SQL za pierwszym razem znacznie częściej niż na jakimkolwiek serwerze „MCP dla X”, który po prostu przekazuje LLM. PRAGMA table_info.
Co się stanie, jeśli później dodam inny łącznik, np. Stripe lub PostgreSQL? +
Po stronie klienta nic się nie zmienia — ten sam klucz dociera do nowego łącznika w momencie, gdy agent go sparuje (qs_list_connectors (podnosi je automatycznie). Jeden blok konfiguracyjny kupuje całe Twoje konto, obecne i przyszłe. Dlaczego jeden klucz pasuje do każdego złącza →
Czy muszę skonfigurować MCP tylko po to, aby móc czatować przy użyciu swoich danych? +
NIE - Nova AI jest wbudowana w portal Query Streams i działa z każdym łącznikiem (w tym SQLite) bez instalacji ani plików konfiguracyjnych MCP. Użyj Nova do komunikacji z danymi w strumieniach zapytań; użyj MCP, gdy chcesz, aby Twój własny klient AI (Claude, Cursor, ChatGPT itp.) miał dostęp do tych samych danych — tego samego agenta, tych samych łączników, tej samej Schema Intelligence. Dowiedz się więcej o Nova AI →

Zacznij

Podłącz swoje narzędzie AI do danych SQLite w pięć minut.

Jeden klucz MCP dociera do każdego .db Plik widoczny dla agenta, każda inna baza danych i każdy łącznik API na Twoim koncie Query Streams — z pełnym śladem audytu, limitami przepustowości dla każdego klucza i zerowymi zmianami w zaporze. Claude, Cursor, ChatGPT i Grok działają od razu.

Powiązane przewodniki: Pobierz agenta strumieni zapytań | Konfiguracja łącznika bazy danych | Wszystkie przewodniki po serwerze MCP | Nova AI tekst-do-SQL

Kategoria: Serwer MCP

Tagi: mcp, claude, kursor, sqlite, baza danych, narzędzia programistyczne, wbudowana baza danych

Metaopis: Połącz SQLite (.db / .sqlite / .sqlite3) z Claude lub Cursor przez Query Streams MCP. Wychodzące, tylko do odczytu, 5 min.

Zaktualizowano na czerwiec 16, 2026

Powered by BetterDocs