Amazon Product Search
An AI-powered server for Amazon product search and recommendations.
Amazon Product Search MCP Server
The site is live here ! : https://shopassist-sharavana.streamlit.app/
An MCP (Model Context Protocol) server that provides AI-powered Amazon product search and recommendations using FastMCP.
Features
- 🔍 Smart product search with Amazon API
- 🤖 AI-powered product recommendations using Hugging Face
- 💰 Price range filtering
- 📋 Feature-based matching
- 🎯 Tailored recommendations for Small/Medium Enterprises
Installation
- Clone this repository and navigate to the project directory
- Install dependencies:
# Using uv (recommended) uv sync # Or using pip pip install -r requirements.txt
Server Setup
Running the MCP Server
# Activate your virtual environment
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Run the server
python main.py
The server exposes one main tool:
getdata: Search Amazon products with AI recommendations
Client Options
We provide multiple client implementations to interact with your MCP server:
1. Python Interactive Client (client.py)
A full-featured Python client with examples and interactive mode.
python client.py
Features:
- Pre-built examples (laptops, smartphones)
- Interactive search mode
- Real-time communication with MCP server
2. Command Line Interface (cli_client.py)
Quick command-line searches for automation and scripting.
# Basic search
python cli_client.py "laptop"
# With features and price range
python cli_client.py "laptop" --features "8GB RAM, SSD storage" --min-price 30000 --max-price 80000
# Smartphone search
python cli_client.py "smartphone" --features "good camera, 5G" --min-price 15000 --max-price 50000
Arguments:
product: Product to search for (required)--features,-f: Specific features to look for--min-price,-min: Minimum price in rupees--max-price,-max: Maximum price in rupees
3. Web Interface (web_client.py)
A beautiful web interface with REST API backend.
# Install additional dependencies
pip install fastapi uvicorn
# Run the web server
python web_client.py
Then open http://localhost:8000 in your browser for a user-friendly interface.
API Endpoints:
GET /: Web interfacePOST /search: REST API for product searchGET /health: Health check
4. MCP CLI Integration
You can also use the MCP CLI to interact with your server:
# Install MCP CLI if not already installed
pip install mcp
# Connect to your server
mcp connect stdio -- python main.py
Usage Examples
Example 1: Laptop Search
{
"product": "laptop",
"specific_features": "8GB RAM, SSD storage, good for programming",
"min_price": 30000,
"max_price": 80000
}
Example 2: Smartphone Search
{
"product": "smartphone",
"specific_features": "good camera, long battery life, 5G support",
"min_price": 15000,
"max_price": 50000
}
Example 3: Budget Headphones
{
"product": "wireless headphones",
"specific_features": "noise cancellation, comfortable",
"min_price": 1000,
"max_price": 5000
}
Configuration
API Keys Required
Make sure you have:
- Hugging Face API Token: Update
HF_API_TOKENinserver/buy.py - RapidAPI Key: Update the
x-rapidapi-keyinserver/buy.py
Customization
You can customize the AI recommendation prompt in the decision_agent function in server/buy.py.
Integration with Claude Desktop
To use this MCP server with Claude Desktop, add this configuration to your claude_desktop_config.json:
{
"mcpServers": {
"amazon-search": {
"command": "python",
"args": ["path/to/your/main.py"],
"env": {}
}
}
}
Troubleshooting
Common Issues
- Import errors: Make sure you're in the correct virtual environment
- API failures: Check your API keys and internet connection
- Connection issues: Ensure the MCP server is running before starting clients
Error Messages
- "No result": Usually indicates API issues or no products found
- "Connection refused": MCP server is not running
- "Tool not found": Server initialization issue
Development
Adding New Features
- Add new tools in
server/buy.pyusing the@mcp.tool()decorator - Update client code to use new tools
- Test with the interactive client first
Testing
# Test the server directly
python -c "from server.buy import mcp; print('Server loads successfully')"
# Test with the interactive client
python client.py
Architecture
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ MCP Client │◄──►│ MCP Server │◄──►│ External APIs │
│ (Your Choice) │ │ (FastMCP) │ │ (Amazon/HF AI) │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│ │ │
▼ ▼ ▼
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ • client.py │ │ • Tool: getdata │ │ • Amazon Search │
│ • cli_client │ │ • AI Agent │ │ • HuggingFace │
│ • web_client │ │ • FastMCP │ │ • Recommendations│
│ • Claude │ │ │ │ │
└─────────────────┘ └─────────────────┘ └─────────────────┘
License
This project is open source. Please ensure you comply with the terms of service of the APIs used (Amazon, RapidAPI, Hugging Face).
Serveurs connexes
Fabric Marketplace
An agent-native marketplace API where any participant ("Node") can publish allocatable resources, search for what they need, negotiate structured offers, and exchange contact details after mutual acceptance.
Perplexity
An MCP server that connects to Perplexity's Sonar API, enabling real-time web-wide research in conversational AI.
Naver Map Direction MCP
Provides geographical and directional data from the Naver Map API.
Perplexity Search
Access the Perplexity search API for real-time information and answers.
Manalink MCP Server
An MCP server implementation for Manalink that allows AI assistants to use functions like teacher search.
Serper Search and Scrape
Web search and webpage scraping using the Serper API.
Korea Tourism API MCP Server
Search for South Korean tourism information, including festivals, temples, and restaurants, using the official Korea Tourism Organization API.
Docs MCP Server
Creates a personal, always-current knowledge base for AI by indexing documentation from websites, GitHub, npm, PyPI, and local files.
Coupang MCP
Search Korean e-commerce (Coupang) products with Rocket Delivery filtering, price sorting, and affiliate link generation
Joblyst MCP
One search to get german projects and jobs from different plattforms