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 install2. Настройка
При использонании влючённого 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 installed
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 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…
Run SOQL queries to explore and retrieve Salesforce data. Inspect records, fields, and relationshi…
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/ndovnar/shop-database-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server