MCP Commerce Server Starter について
MCP Commerce Server Starterは、コマースサーバー構築用のFastMCPひな形です。商品カタログ、検索、チェックアウト機能を必要とする開発者向けで、任意のAPIキー認証とVercel用設定を備えています。
主な機能
- 01商品カタログのリソース
- 02フィルター付き商品検索
- 03チェックアウト概要とURL
- 04任意のAPIキー認証
- 05Vercelデプロイ設定
活用シーン
- 01MCP商品カタログの作成
- 02エージェントによるカテゴリ・価格別の商品絞り込み
- 03コマースサーバーからのチェックアウト情報返却
- 04コマースサーバーのVercelへのデプロイ
MCP 対応
MCP対応クライアントに商品カタログのリソースと、検索・チェックアウト用ツールを公開します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp-commerce-starter.vercel.app/mcpclaude mcp add --transport http newplanetww-mcp-commerce-starter https://mcp-commerce-starter.vercel.app/mcp{"mcpServers":{"newplanetww-mcp-commerce-starter":{"type":"http","url":"https://mcp-commerce-starter.vercel.app/mcp"}}}Cursor で開く{"servers":{"newplanetww-mcp-commerce-starter":{"type":"http","url":"https://mcp-commerce-starter.vercel.app/mcp"}}}VS Code で開く{"mcpServers":{"newplanetww-mcp-commerce-starter":{"type":"http","url":"https://mcp-commerce-starter.vercel.app/mcp"}}}{"mcpServers":{"newplanetww-mcp-commerce-starter":{"serverUrl":"https://mcp-commerce-starter.vercel.app/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
MCP コマースサーバーのスターター
コマース MCP サーバー向けのクローンしてデプロイできるボイラープレートです。5 分で Vercel に公開できます。Claude、ChatGPT、Gemini、Cursor、その他すべての MCP 互換クライアントからアクセスできます。
完全な構築ガイド(各行の背景にある理由も解説): 2026 年版 MCP サーバーの構築方法
含まれるもの
- 商品カタログのリソース — エージェントは操作の前にカタログ全体を読み込みます
search_productsツール — キーワード、カテゴリ、上限価格による絞り込みinitiate_checkoutツール — 注文概要とチェックアウト URL を返します- オプションの API キー認証 —
X-API-Keyヘッダーを使用し、REQUIRE_AUTH=trueで切り替えます /healthのヘルスエンドポイント- Vercel 対応 — 1 つのコマンドでデプロイでき、無料の Hobby プランを利用できます
技術スタック:Python · FastMCP · FastAPI · Vercel
クイックスタート(ローカル)
git clone https://github.com/NewPlanetWW/mcp-commerce-starter
cd mcp-commerce-starter
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
python server.py
# Server running at http://localhost:8000
# MCP endpoint: http://localhost:8000/mcp
# Health check: http://localhost:8000/health
ヘルスエンドポイントをテストします:
curl http://localhost:8000/health
# {"status":"ok","server":"Commerce MCP Server","version":"1.0.0"}
Vercel にデプロイ(無料)
Vercel CLI の実行には Node 18 以降が必要です。GitHub は不要です。CLI が直接アップロードします。
npm i -g vercel
vercel login
vercel --prod
CLI に本番環境の URL が表示されます。MCP エンドポイントは次の場所にあります:
https://your-project.vercel.app/mcp
Vercel ダッシュボードの「Settings → Environment Variables」で環境変数を設定します:
| 変数 | デフォルト | 備考 |
|---|---|---|
API_KEY | dev-secret-key | 公開前に変更してください |
REQUIRE_AUTH | false | キーを必須にするには true を設定します |
Claude Desktop に接続する
オプション A — ローカル stdio(構築中の高速な反復作業向け):
macOS では ~/Library/Application Support/Claude/claude_desktop_config.json を編集します(Windows/Linux のパスは完全なガイドを参照してください):
{
"mcpServers": {
"commerce-catalog": {
"command": "uvicorn",
"args": ["server:app", "--host", "127.0.0.1", "--port", "8001"],
"env": {
"REQUIRE_AUTH": "false"
},
"cwd": "/path/to/mcp-commerce-starter"
}
}
}
オプション B — リモート(Vercel へのデプロイ後)、mcp-remote を使用:
{
"mcpServers": {
"commerce-catalog-remote": {
"command": "npx",
"args": [
"-y", "mcp-remote@latest",
"https://your-project.vercel.app/mcp",
"--header", "Authorization: Bearer ${MCP_API_KEY}"
],
"env": { "MCP_API_KEY": "your-secret-key" }
}
}
}
Claude Desktop を完全に終了してから、再起動します。「100 ドル未満の商品は何ですか?」と尋ねると、Claude が search_products を呼び出し、カタログにある商品を回答します。
カスタマイズ
サンプル商品を置き換える
server.py の PRODUCTS リストを編集します。各商品には sku、name、price、description、availability、category、image_url が必要です。
実際の在庫データを使う場合は、リストをデータベース呼び出しに置き換えます:
# server.py — swap PRODUCTS for a live query
import psycopg2 # or SQLAlchemy, Supabase, etc.
def get_products():
# your DB query here
return [...]
PRODUCTS = get_products()
Stripe のチェックアウトを追加する
initiate_checkout のスタブを、実際の Stripe セッションに置き換えます:
import stripe
stripe.api_key = os.getenv("STRIPE_SECRET_KEY")
session = stripe.checkout.Session.create(
line_items=[{"price": price_id, "quantity": quantity}],
mode="payment",
success_url="https://yourstore.com/success",
cancel_url="https://yourstore.com/cancel",
)
return {"success": True, "checkout_url": session.url, ...}
発生しやすい 5 つのエラー(と解決方法)
完全なガイドで解説しています:30daypivot.com/agentmall_spoke_mcp
MCP error -32600— 初期化順序の違反422 Unprocessable Entity— Pydantic モデルと通常の引数の不一致405 Method Not Allowed— CORS の許可メソッドに DELETE がないstateless_http not set— サーバーレスの Vercel ではstateless_http=Trueが必要ModuleNotFoundError: mcp— パッケージ名が違います(fastmcpではなくmcp[cli])
プロジェクト構成
mcp-commerce-starter/
├── server.py # FastMCP app — resource, tools, middleware, FastAPI mount
├── requirements.txt # Pinned dependencies
├── vercel.json # Vercel deployment config
├── mcp.json # MCP server manifest
├── .env.example # Environment variable template
└── README.md
さらに詳しく
このスターターは、30DayPivot の AgentMall スポークシリーズに対応するコードです:
- MCP サーバー構築ガイド — このリポジトリを作成するための完全な手順
- エージェントが読み取れる商品データ — エージェントがサーバーを呼び出さずに商品を見つけられるようにする Schema.org マークアップ
- FastAPI コマース API — MCP サーバーと並行して動作する REST レイヤー
- 無料から有料へ/Stripe の従量課金 — 構築したサーバーを収益化
- AgentMall ロードマップ — エージェント型コマースインフラの全体像を示す包括的なロードマップ
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。