Skip to main content
Glama
hwqlet

MCP Product Search Server

by hwqlet

MCP製品検索サーバー

Model Context Protocol (MCP) に基づいた製品検索サーバーです。Claudeがキーワードに基づいて製品カタログを検索し、構造化データを取得できるようにします。

機能

Claudeが呼び出せる3つのツールを提供します:

ツール

説明

search

キーワードで製品を検索。カテゴリ、価格、評価によるフィルタリングをサポート

list_categories

すべての製品カテゴリと件数を一覧表示

get_product

IDを指定して単一製品の完全な情報を取得

クイックスタート

1. プロジェクトのクローン

git clone <your-repo-url>
cd mcp-product-search

2. 仮想環境の作成と依存関係のインストール

macOS / Linux:

python3 -m venv .venv
source .venv/bin/activate
pip install "mcp[cli]"

Windows:

python -m venv .venv
.venv\Scripts\activate
pip install "mcp[cli]"

Python 3.10以上が必要です。python3 --version で確認してください。

3. ブラウザでのテスト

mcp dev server.py

ブラウザが自動的にMCP Inspectorを開きます。開かない場合は、ターミナルに出力されたアドレス(通常は http://localhost:6274)に手動でアクセスしてください。

接続手順:

  1. 左側の Command を仮想環境内のPythonの絶対パスに変更します:

    • macOS/Linux:/絶対パス/mcp-product-search/.venv/bin/python

    • Windows:C:\絶対パス\mcp-product-search\.venv\Scripts\python.exe

  2. Argumentsserver.py を入力します

  3. Connect をクリックし、左下に Connected と表示されれば成功です

  4. 上部の Tools タブをクリックし、ツールを選択してパラメータを入力し、Run Tool をクリックします

MCP Inspector 接続成功の様子

4. Claude Desktopへの接続

設定ファイルを見つけます:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

以下の内容を追加します(実際の絶対パスに置き換えてください):

{
  "mcpServers": {
    "product-search": {
      "command": "/绝对路径/mcp-product-search/.venv/bin/python",
      "args": ["/绝对路径/mcp-product-search/server.py"]
    }
  }
}

現在のディレクトリの絶対パスを確認する方法:

# macOS / Linux
pwd

# Windows
cd

設定ファイルを保存した後、Claude Desktopを完全に終了して再起動してください。

5. Claude Code(コマンドライン)への接続

claude mcp add product-search \
  /绝对路径/mcp-product-search/.venv/bin/python \
  /绝对路径/mcp-product-search/server.py

使用例

Claudeに接続後、以下のように質問できます:

帮我搜索苹果品牌的笔记本电脑
找一款评分 4.8 以上、价格不超过 300 美元的耳机
列出所有产品分类
查询产品 P003 的详细信息

Claudeは自動的にどのツールを呼び出すべきか判断し、返された構造化データに基づいて回答します。

ツールパラメータの説明

パラメータ

必須

デフォルト値

説明

keyword

string

はい

製品名、説明、ブランド、カテゴリ、タグをマッチング

category

string

いいえ

カテゴリでフィルタリング(例: "Laptops", "Headphones"

max_price

float

いいえ

最高価格(USD)

min_rating

float

いいえ

最低評価(0–5)

limit

int

いいえ

10

結果の最大件数(最大50)

結果は評価の高い順、価格の安い順にソートされます。

戻り値の例:

{
  "keyword": "apple",
  "filters": { "category": "Laptops", "max_price": null, "min_rating": null },
  "total_results": 1,
  "products": [
    {
      "id": "P001",
      "name": "Apple MacBook Pro 14-inch M3",
      "category": "Laptops",
      "brand": "Apple",
      "price": 1999.0,
      "currency": "USD",
      "stock": 42,
      "rating": 4.8,
      "description": "14-inch Liquid Retina XDR display, M3 chip, 18GB RAM, 512GB SSD.",
      "tags": ["laptop", "apple", "macbook", "m3", "professional", "portable"]
    }
  ]
}

list_categories

パラメータなし。すべてのカテゴリ名と対応する製品数を返します。

get_product

パラメータ

必須

説明

product_id

string

はい

製品ID(例: "P001"、大文字小文字を区別しない)

プロジェクト構造

mcp-product-search/
├── server.py        # MCP 服务器,定义工具
├── products.py      # 产品目录与搜索逻辑
├── pyproject.toml   # 项目依赖
└── README.md

製品データの拡張

現在の製品カタログは products.py に記述された12件のサンプルデータです。実際のデータに置き換えるには search_products() 関数を修正するだけでよく、server.py を変更する必要はありません。

データソース

修正方法

ローカル JSON/CSV

起動時にファイルを読み込んで CATALOG を埋める

SQLite / PostgreSQL

ループ処理をSQLクエリに置き換える

EC API

関数内でHTTPリクエストを送信する

Elasticsearch

ESの全文検索インターフェースを呼び出す

Install Server
F
license - not found
A
quality
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

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/hwqlet/mcp-product-search'

If you have feedback or need assistance with the MCP directory API, please join our Discord server