Sales Analytics MCP Server
Sales Analytics MCP Server
カスタム Model Context Protocol (MCP) サーバー。Claude Desktop にライブな販売データベースへの直接的かつ安全なアクセスを提供し、Python 製アナリティクスバックエンドを、MCP 互換の AI アシスタントならどれでも使える再利用可能なツールに変えます。アプリケーションごとに統合を書く必要はありません。
MCP とは何か、そしてなぜサーバーを構築するのか
Model Context Protocol は、AI アシスタントが外部ツールやデータソースに共通のインターフェースを通じて接続できるようにするオープンスタンダード(Anthropic が作成)です。アシスタントごとにツールごとのカスタム統合を構築する必要はありません。MCP サーバーを書くということは、データソースごとに接続を一度だけ構築することを意味し、あらゆる MCP 互換クライアント(Claude Desktop、Claude Code、その他の MCP 対応アプリケーション)が、アプリケーションごとの作り直しなしですぐに利用できます。
このプロジェクトは、実際の PostgreSQL 販売データベース(ai-analytics-agent と同じもの)を MCP ツール群として公開し、Claude がスキーマの調査、クエリ実行、異常検知を、通常の会話の中で直接行えるようにします。
Related MCP server: pg-mcp
アーキテクチャ
graph LR
A[Claude Desktop] -->|MCP protocol| B[Sales Analytics<br/>MCP Server]
B --> C[get_database_schema]
B --> D[run_sql_query]
B --> E[find_sales_anomalies]
C --> F[(Supabase / PostgreSQL)]
D --> F
E --> F公開されているツール
ツール | 説明 |
| 利用可能なテーブルとカラムを返し、クエリ実行前に Claude がどんなデータが存在するかを把握できるようにします |
| 読み取り専用の SQL クエリを実行して結果を返します。 |
| 日次販売履歴に対してロバストな中央値/MAD ベースの異常検知処理を実行し、フラグが付いた日付とその統計的な偏差を返します |
技術スタック
レイヤー | ツール |
プロトコル | Model Context Protocol (MCP) Python SDK |
クライアント | Claude Desktop |
データベース | PostgreSQL (Supabase) |
クエリ層 | SQLAlchemy |
異常検知 | Pandas(中央値 + MAD、ローリングウィンドウ) |
シークレット | python-dotenv |
エンジニアリングノート
開発中に SDK の破壊的変更を発見: MCP Python SDK は、このプロジェクトの構築中にメジャーバージョン(2.0.0)をリリースし、
FastMCPをMCPServerにリネームしてインポートパスも変更しました。サーバーは古いバージョンに固定せず新しい API に更新されたため、コードは現在の SDK の表面を反映しています。Claude は独自のツール戦略を選ぶ:
find_sales_anomaliesが存在する前に異常を探すよう依頼されたとき、Claude は独自にrun_sql_queryを使って調査しました — 重複行、負の金額、カテゴリ別の内訳を自らの判断でチェックし、専用ツールが後に確認したのと同じ根本原因に到達しました。これは、LLM クライアントが汎用ツールと専用ツールのどちらを選ぶか、必ずしも「明白な」専用関数を優先するわけではないことを示す有益な例です。Text-to-SQL エージェントと同じ安全モデル:
run_sql_queryは、Python ベースの Text-to-SQL プロジェクトと同じ読み取り専用ガードレールのアプローチを再利用しています。これは、安全性ロジックを一度だけ慎重に構築することが、独立した 2 つ目のツールで再利用されたときに報われる良い例です。
セットアップ
依存関係をインストールします: pip install -r requirements.txt
.envファイルを作成します: DATABASE_URL=your_postgresql_connection_stringサーバーを Claude Desktop の設定ファイル(
claude_desktop_config.json)に追加します:
{
"mcpServers": {
"sales-analytics": {
"command": "python",
"args": ["/full/path/to/server.py"]
}
}
}Claude Desktop を完全に再起動します(ウィンドウを閉じるだけでなく、タスクマネージャー / アクティビティモニターから終了します)
新しいチャットを開始して、Claude に次のような質問をします:
"What tables are available, and are there any sales anomalies I should know about?"
対話の例

Wait, I need to check if the last line is prose or just an image. It's an image with alt text "Claude Desktop using the MCP server" - I should translate it to Japanese: "Claude Desktop が MCP サーバーを使用している様子"
Let me also check the question in the setup section: "What tables are available, and are there any sales anomalies I should know about?" - this should be translated.# Sales Analytics MCP Server
カスタム Model Context Protocol (MCP) サーバー。Claude Desktop に実稼働中の販売データベースへの直接的かつ安全なアクセスを提供し、Python 製アナリティクスバックエンドを、MCP 互換の AI アシスタントならどれでも利用できる再利用可能なツールに変えます。アプリケーションごとの統合を書く必要はありません。
MCP とは何か、なぜサーバーを構築するのか
Model Context Protocol は、AI アシスタントが外部ツールやデータソースに共通のインターフェースを通じて接続できるようにするオープンスタンダード(Anthropic が作成)です。アシスタントごとにツールごとのカスタム統合を構築する必要はありません。MCP サーバーを書くということは、データソースごとに接続を一度だけ構築することを意味し、MCP 互換のクライアント(Claude Desktop、Claude Code、その他の MCP 対応アプリケーション)ならどれでも、アプリケーションごとの作り直しなしに即座に利用できます。
このプロジェクトは、実際の PostgreSQL 販売データベース(ai-analytics-agent で使われているものと同じ)を一連の MCP ツールとして公開するため、Claude は通常の会話の中で直接、スキーマの調査、クエリの実行、異常検知を行うことができます。
アーキテクチャ
graph LR
A[Claude Desktop] -->|MCP protocol| B[Sales Analytics<br/>MCP Server]
B --> C[get_database_schema]
B --> D[run_sql_query]
B --> E[find_sales_anomalies]
C --> F[(Supabase / PostgreSQL)]
D --> F
E --> F公開ツール
ツール | 説明 |
| 利用可能なテーブルとカラムを返します。これにより Claude はクエリ実行前にデータの内容を把握できます |
| 読み取り専用の SQL クエリを実行して結果を返します。 |
| 日次販売履歴に対して中央値/MAD ベースのロバストな異常検知を実行し、フラグが付いた日付とその統計的偏差を返します |
技術スタック
レイヤー | ツール |
プロトコル | Model Context Protocol (MCP) Python SDK |
クライアント | Claude Desktop |
データベース | PostgreSQL (Supabase) |
クエリ層 | SQLAlchemy |
異常検知 | Pandas(中央値 + MAD、ローリングウィンドウ) |
シークレット | python-dotenv |
エンジニアリングノート
SDK の破壊的変更を発見: MCP Python SDK が、このプロジェクトの開発中にメジャーバージョンをリリースし、
FastMCPをMCPServerに改名してインポートパスを変更しました。サーバーは古いバージョンに固定するのではなく新しい API に更新されたため、現在の SDK サーフェスに準拠しています。Claude は独自にツールを選択:
find_sales_anomaliesが存在する前に異常を探すよう依頼された Claude は、汎用ツールであるrun_sql_queryを自ら選択し、重複レコード、マイナス金額、カテゴリ別の内訳を調査しました。専用ツールが後に確認したのと同じ根本原因に、自ら到達したのです。これは、LLM が汎用ツールと専用ツールのどちらを選ぶのか、そして「専用関数があるからといって必ずそれを使うわけではない」ことを示す良い例です。Text-to-SQL エージェントと同じ安全性モデル:
run_sql_queryは、Text-to-SQL プロジェクトと同じ読み取り専用の安全ロジックを再利用しています。一度しっかりと安全ロジックを構築しておけば、独立した別のツールでも同じ安全性が活きるという好例です。
セットアップ
依存関係をインストール: pip install -r requirements.txt
.envファイルを作成: DATABASE_URL=your_postgresql_connection_stringサーバーを Claude Desktop の設定ファイル(
claude_desktop_config.json)に追加:
{
"mcpServers": {
"sales-analytics": {
"command": "python",
"args": ["/full/path/to/server.py"]
}
}
}Claude Desktop を完全に再起動します(タスクマネージャー / アクティビティモニターから終了し、ウィンドウを閉じるだけでは不十分)
新しいチャットを開始し、Claude に次のような質問をします:
「利用可能なテーブルは何ですか?注意すべき売上異常はありますか?」
対話の例

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 Servers
- FlicenseDqualityDmaintenanceA secure Model Context Protocol server that allows Claude to execute read-only SQL queries against a PostgreSQL database, enabling natural language interaction with database data.1
- FlicenseNot gradedqualityDmaintenanceEnables natural language querying of PostgreSQL databases through the Model Context Protocol. It translates user questions into validated SQL, executes read-only queries safely, and returns results to MCP-compatible clients like Claude Desktop.
- AlicenseAqualityAmaintenanceQuery and manage PostgreSQL databases from Claude Code, Cursor, and any MCP client, with read-only by default and built-in schema introspection, EXPLAIN, and performance diagnostics.211,8093MIT
- AlicenseAqualityBmaintenanceExposes PostgreSQL query execution, EXPLAIN, and schema inspection tools to MCP-compatible clients like Claude Desktop.31MIT
Related MCP Connectors
Query PostgreSQL databases in plain English — LLM-generated, safety-validated SQL.
Analytical memory for AI agents: a real Postgres queried in plain English over MCP. One command.
Hosted Amazon Seller Central and Amazon Ads MCP server for Claude, ChatGPT, Cursor, and agents.
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/AleksandrGeraskov/mcp-sales-analytics-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server