Shop Analytics MCP
Shop Analytics MCP
TypeScript製のMCPサーバーで、オンラインストアのSQLiteデータベースを安全に分析します。stdioのみで動作し、6つの専門ツールを提供します。任意のSQLは受け付けません。
要件
Node.js 24.10以上
npm
sqlite3CLI(マイグレーションを再適用する場合のみ)
Related MCP server: mcp-analytics-server
インストールと起動
npm ci
npm run build
SHOP_DB_PATH=./shop.db npm startSHOP_DB_PATHが優先されます。この変数が設定されていない場合、サーバーは現在の作業ディレクトリでshop.dbを探します。データベースへのパスはソースコードに埋め込まれていません。
データ
リポジトリには、マイグレーション済みのshop.dbが含まれています。これには顧客の国と2025年のデータが含まれています。金額はEURとして解釈され、換算されません。
元のデータベースにマイグレーションを一度だけ適用するには:
npm run migrate元のスキーマはdatabase/schema.sqlにあり、決定的なマイグレーションはdatabase/001-add-analytics-data.sqlにあります。
クライアントへの接続
config/に既製の設定テンプレートがあります:
claude-code.mcp.jsoncodex.mcp.jsoncursor.mcp.json
選択したテンプレートの/absolute/path/to/mcp-serverを、このプロジェクトへのパスに置き換えてください。すべての設定は、stdioでdist/src/index.jsを起動し、SHOP_DB_PATHを介してshop.dbへのパスを渡します。
ツール
ツール | 目的 |
| テーブル、列、キー、リレーション。 |
| 特定の国の顧客数、または最多顧客国。 |
| 販売数量と売上による商品ランキング。 |
| 売上によるカテゴリランキング。 |
| UTC期間 |
| 最も支出が多い、または注文数が多い顧客。 |
財務・商品指標、および注文数にはcancelledは含まれません。金額はEurサフィックス付きのフィールドで返されます。ランキングはlimitを1〜100で受け付けます。期間はYYYY-MM-DD形式の日付を使用します。
動作例
以下は、MCPクライアントがget_database_schemaを呼び出してテーブルを説明し、次にget_customer_metricsを呼び出してドイツの顧客数をカウントする例です。

セキュリティ
SQLiteは
readOnly: trueとPRAGMA query_only = ONで開かれます。SQLiteオーソライザーは、書き込み、DDL、
ATTACH、DETACH、トランザクションを禁止します。すべての値はSQLパラメータとしてバインドされます。
ツールはSQLを受け付けないため、エージェントは破壊的なステートメントを渡すことができません。
バリデーションエラーは、SQL、絶対パス、スタックトレースを公開しません。
テスト
npm testテストは、8つの受け入れ質問の基準応答、国のパラメータへのSQLインジェクション、DELETEの禁止、一時データベースコピーのSHA-256不変性、stdioを介したMCPインタラクションをカバーしています。
受け入れ質問
利用可能なすべてのテーブルを表示し、各テーブルに含まれる情報を説明してください。
ドイツからの顧客は何人ですか?
最も多くの顧客がいる国はどこですか?
最も多くお金を使った顧客は誰ですか?
ベストセラー商品トップ5は何ですか?
売上上位3つの商品カテゴリは何ですか?
2025年に生み出した売上はいくらですか?
最も多くの注文をした顧客は誰ですか?
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
- FlicenseNot gradedqualityCmaintenanceEnables AI to query a business database for customers, orders, and revenue using natural language through safe, well-defined tools.
- AlicenseNot gradedqualityBmaintenanceEnables LLMs to interact with a SQLite e-commerce database via safe, typed MCP tools with read-only guards and auth-gated mutations, plus a Claude agent for answering business questions.1MIT
- AlicenseAqualityCmaintenanceEnables safe exploration and analysis of SQLite databases through guarded read-only queries, schema inspection, aggregations, and CSV imports.5MIT
- FlicenseNot gradedqualityCmaintenanceProvides read-only tools for querying a synthetic e-commerce dataset, including product categories, products, sales data, customer history, and order details.
Related MCP Connectors
Explore, query, and inspect SQLite databases with ease. List tables, preview results, and view det…
Query PostgreSQL databases in plain English — LLM-generated, safety-validated SQL.
Privacy-first web analytics. Query pageviews, referrers, trends, and AI insights.
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/Myrhoiazov/mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server