db-mcp
db-mcp
Ein schreibgeschützter MCP-Server, der einem KI-Agenten sicheren Zugriff auf eine kleine SQLite-Shop-Datenbank (shop.db) bietet: Schema-Erkundung, frei formuliertes, schreibgeschütztes SQL und vorgefertigte Analyseberichte.
Installation
npm installRelated MCP server: SQLite Read-Only MCP Server
Konfiguration
Der Server liest SHOP_DB_PATH aus der Prozessumgebung, um die Datenbankdatei zu finden. Die Variable ist optional – ist sie nicht gesetzt, verwendet der Server shop.db im Projektverzeichnis. .env-Dateien werden nicht automatisch gelesen (es gibt weder eine dotenv-Abhängigkeit noch ein --env-file-Flag in den Skripten von package.json); .env.example ist nur als Erinnerung an den Variablennamen angegeben. Setzen Sie SHOP_DB_PATH in der tatsächlichen Umgebung, in der der Server läuft – bei einem stdio-MCP-Client entspricht das dem env-Schlüssel seiner Konfiguration (siehe „Client verbinden“ unten).
Build
npm run buildAusführen
npm start
# or directly:
node dist/index.jsDer Server spricht MCP über stdio – er wird also als Kindprozess von einem MCP-Client/-Host gestartet und nicht interaktiv ausgeführt.
Client verbinden
Allgemeine stdio-MCP-Client-Konfiguration:
{
"mcpServers": {
"db-mcp": {
"command": "node",
"args": ["/absolute/path/to/db-mcp/dist/index.js"],
"env": { "SHOP_DB_PATH": "/absolute/path/to/shop.db" }
}
}
}Claude Desktop: Fügen Sie denselben Block unter mcpServers in claude_desktop_config.json ein (die Position der Konfigurationsdatei je Betriebssystem finden Sie in MCP.md) und starten Sie Claude Desktop anschließend neu.
Tools
Tool | Beschreibung |
| Listet alle Tabellen mit einer kurzen Beschreibung und Zeilenanzahl auf. Zuerst aufrufen. |
| Spaltendefinitionen, Schlüssel, Zeilenanzahl und Beispielzeilen für eine Tabelle ( |
| Führt eine einzelne schreibgeschützte |
| Top-Kunden nach Gesamtausgaben oder Bestellanzahl. Stornierte Bestellungen sind ausgeschlossen. |
| Angebotene Bestseller nach verkauften Einheiten, mit Umsatz. Stornierte Bestellungen sind ausgeschlossen. |
| Umsatz nach Kategorie, Jahr oder Monat, optional auf ein Jahr gefiltert. Stornierte Bestellungen sind ausgeschlossen. |
Sicherheitshinweise
Die Datenbankverbindung wird mit
{ readonly: true, fileMustExist: true }geöffnet – die SQLite-Engine verweigert physisch jede Schreiboperation, unabhängig davon, welches SQL gesendet wird.Das
query-Tool validiert zusätzlich, dass die Eingabe eine einzelneSELECT-Anweisung (oderWITH ... SELECT) ist, bevor sie überhaupt die Datenbank erreicht;INSERT/UPDATE/DELETE/DROP/ALTER/CREATE/PRAGMA/ATTACH/DETACH/REPLACE/VACUUM/REINDEX/TRIGGERund Mehrfachanweisungen werden mit einer freundlichen Fehlermeldung abgelehnt.Fehler werden an der Grenze jedes Tools abgefangen und als MCP-Tool-Ergebnis mit
isError: trueund einer kurzen Meldung zurückgegeben – es werden niemals Stack-Traces oder Dateisystempfade an den Client gesendet.Alle Logs gehen auf
stderr(console.error) –stdoutist ausschließlich für den JSON-RPC-Protokollstream reserviert.
Tests
npm testFührt node --test (über tsx) für jede *.test.ts-Datei aus: Unit-Tests für die SQL-Prüfung, die Datenbankverbindung und die Abfragelogik jedes Tools gegen die echte shop.db, zusätzlich ein End-to-End-Test, der den kompilierten Server startet und ihn über stdio mit einem echten MCP-Client ansteuert.
Docker
docker build -t db-mcp .
docker run -i db-mcpFür den lokalen Betrieb des Servers nicht erforderlich (die obige Client-Konfiguration erwartet einen lokalen node-Prozess), aber als alternative Möglichkeit zur Überprüfung bzw. Ausführung bereitgestellt.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityCmaintenanceExposes Shopify store data from SLAM Gadget SQLite databases to AI tools through 60 specialized tools for products, orders, inventory, customers, and reporting. Provides read-only access with automatic schema validation and security protections.6041MIT
- AlicenseAqualityCmaintenanceEnables safe, read-only SQL access to SQLite databases for AI agents, allowing schema exploration and SELECT queries with defense-in-depth protections.3MIT
- FlicenseNot gradedqualityBmaintenanceEnables AI agents to query Shopify analytics with ShopifyQL via the Admin GraphQL endpoint, executing queries and interpreting results like 'show me the products with the highest margins'.
- FlicenseNot gradedqualityCmaintenanceEnables AI assistants like Claude to query, analyze, and summarize local SQLite e-commerce databases using natural language through 11 tools, schema resources, and pre-built analytical prompts.
Related MCP Connectors
Explore, query, and inspect SQLite databases with ease. List tables, preview results, and view det…
Manage your NanoCart store from any AI agent: products, orders, coupons, subscribers, reports.
Manage your Savanto store from your AI: catalog, content, prompts, and analytics, by chat.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/denezhkinia/shop-db-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server