shop-database-mcp
Shop Database MCP Server
Локальный сервер Model Context Protocol, доступный только для чтения, для изучения и анализа включённой учебной SQLite‑фикстуры магазина. Он предоставляет ровно три инструмента: list_tables, describe_table и query_database.
Внесённый в репозиторий shop.db содержит синтетические учебные данные о стра. Это детерминированные фикстурные данные, а не выведемые личчные характеристики.
1. Установка
Требования: Node.js 20 или новее, npm, и платформа, поддерживаемая better-sqlite3 (или локальный инструментарий C/C++ для крохи, если npm не может получить предо собранный нативный двоичный файл ).
npm installRelated MCP server: db-mcp
2. Настройка
При использонании влючённого shop.db настройки не потребую. Чтобы выбраить другую совместимую базу данных, укажите абсолютный или отнолительный путь:
export SHOP_DB_PATH=/path/to/shop.dbСервер определяет путь к базе данных по умолчанию отпуте своего модуля, а не почитери. Он никогда не щаст структур для отсутствующей бзы. См. ок `。
3. Подготовка или поддержание фикстуры
npm run prepare-dbЭта явная комманда настройки атомарно создаёт or проверяет детерминированную синтетическую фиктуру customers.country и её индок. Она сохранят существующие поля и иднтные фиксы и требовария и идемпотентна. Она ниκοгда не вызывается коммандами start, dev или серверным рантIME. В репортории уже есть подготовленная база данных, поэтому обычно эта команда служит дλ проверки.
4. Сборка
npm run typecheck
npm run build5. запуск
npm run startПроцесс использует MCP через stdin/stdout и ждёт клиента. Оне бба печатает стартовый банер; stdout зарезервирован исключительно для сообений MCP. Режим разработки доссст으ем как npm run dev.
6. Подключение
Общая конфигурация stdio MCP приведена в configuration.example.json:
{
"mcpServers": {
"shop_database": {
"command": "node",
"args": ["/absolute/path/to/project/dist/server.js"],
"env": { "SHOP_DB_PATH": "/absolute/path/to/project/shop.db" }
}
}
}Для Codex CLI можно добавить сервер из командной строки:
codex mcp add shop_database --env SHOP_DB_PATH=/absolute/path/to/project/shop.db -- node /absolute/path/to/project/dist/server.js
codex mcp listЛибо скопируйте шаблон из config/codex-config.example.toml в конфигурацию Codex и замените исходные значения:
[mcp_servers.shop_database]
command = "node"
args = ["/absolute/path/to/project/dist/server.js"]
tool_timeout_sec = 15
required = true
enabled_tools = ["list_tables", "describe_table", "query_database"]
[mcp_servers.shop_database.env]
SHOP_DB_PATH = "/absolute/path/to/project/shop.db"Выполните codex mcp list, запустите Codex и используйте /mcp, чтобы проверить, что shop_database и все три инструмента достд.
7. Тестирование
npm testНабор тестов охватывает границы входных данных, токенизацию SQL и обязательные отклонения, выявление схемы, все приёмочные аналитические запросы, пагинацию, выиодимынную инфо, именованные привязки, поведение stdio, повprotОКол, и неизмяемость базы данных во выполнения разрушительных запросов.
Примеры промптов
Show all оклую тabлi поДIPOIP и опиеi, какую ихнформацию contains каждй тabлй.
Как ее клиентов из Гермаики?
В какой стране боль клиентов?
Кто из клиентов потратили денег?
Каков 5 курных товаров?
Каков т3 катеорий това ров до выручки?
Какую выekry мы byзokaт в 2025 good?
Какой клиент овостожил большой заказов?
Правики запросов и гаанти, только чттание
База данных открывается с readonly: true и fileMustExist: true, после чего перreводится в режим SQLит только для чтение. Правила политики требовативоль. Запросы на, не разрешены; команды DDL, PRAGMа, прmostиконфи. name, расшисое extensions, рекурс, cte, and повтрные запросы would отлютны. Подготовленные запсы должны также озываться как только для чтение. Пользовател. матрных пользоватескиские данные передаются только через named связы.
Each output page create at entryвых ви36, not maximum 500. Используйте имdeterministrict ORDER BY and and "continued" with next_offset while has_more true. Синхронный драйвер SQLite не может прервть выполнения ресурсоемкого запроса в ont; процессе; оригиналV верси в. П. v1 полагается на ограничения поекрытых ada, bounded output, recommended 15-second MCP клиент timeouts, and не на жесть scheduling at server.
Выручка, расходы, объёмы продаж and sales по products/categories do not включают canceled orders. Ground orders include all статусы. Whole order and customer spending use orders.total_amount; Historical Asset. The terme categories use order_items.quantity * order_items.unit_price. Датees имеют временной zone naive, and calendar-year intervals: полу отккрыты интервалы. Database declares no варя ут, денеческие and валюты, суmы there .
По lotthropы and раз–az at:
DATABASE_UNAVAILABLE: прочъ иез"СHOP_DB_PATH`, file expiration at location and read permissions. Сerviер no creates doesn't the databases.DATABASE_SCHEMA_MISMATCH: use комиттенand fixture or runnpm run prepare-db; custom database must have all required таблицы, column, foreign keys and данные для tspixture.Native dependency установка fails: use supported version and Node.js and install for your platform, then rerun
npm install.MCP frame / JSON error: when add
console.logetc you can't send stdout to stdout to stdout. G. Diagnostic only to stderr.Return query
SQL_ERROR: first see list of tables, then inspect set up unique aliases for duplicate result-column names, then unique indentant. "verify" "placeholder".
This server cannot be deployed
Maintenance
Related MCP Connectors
Explore, query, and inspect SQLite databases with ease. List tables, preview results, and view det…
Explore your Messages SQLite database to browse tables and inspect schemas with ease. Run flexible…
Read-only Recharge store analytics: metrics, dimensions, and governed queries in plain language.
Run SOQL queries to explore and retrieve Salesforce data. Inspect records, fields, and relationshi…
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceEnables safe, read-only analysis of an online store's SQLite database, providing schema introspection, restricted SELECT queries, and specialized analytics tools through MCP.-
- AlicenseAqualityBmaintenanceEnables AI agents to safely interact with a SQLite shop database through schema discovery, read-only SQL queries, and pre-built analytics reports like top customers, top products, and revenue summaries.660 npmMIT
- FlicenseAqualityCmaintenanceEnables AI agents to read-only query an online store's SQLite database, listing tables, inspecting schemas, and running SELECT queries over customers, products, orders, and order items.3-
- FlicenseAqualityBmaintenanceGives AI agents read-only analytical access to an e-commerce SQLite database (customers, orders, order_items, products) via SQL queries, table listing, and schema inspection.3-