Find lowest-priced products with 4+ star ratings on Pakistani e-commerce sites.
šļø E-Commerce Product Hunt
A Model Context Protocol (MCP) implementation that finds the lowest-priced products with good ratings (4+ stars) across major Pakistani e-commerce platforms including Daraz, Telemart, and iShopping.
MCP
Model Context Protocol (MCP) is a standardized protocol that enables AI applications to securely connect to external data sources and tools. It acts as a bridge between AI models (like Gemini) and various services, databases, APIs, and applications.
MCP Architecture Components:
- MCP Servers - Provide specific tools, resources, or data to clients
- MCP Clients - AI applications that want to access external resources
- Transport Layer - Communication mechanism between clients and servers
šÆ Project Overview
This project demonstrates MCP implementation by creating:
- MCP Server: Provides three tools for scraping Pakistani e-commerce sites
- MCP Client: Uses LangChain + Google Gemini to orchestrate tool calls
- Streamlit Frontend: User-friendly web interface for product searches
Note: In this project both server and client run on the same host for learning purposes.
⨠Features
- š Multi-Platform Search: Scrapes Daraz, Telemart, and iShopping simultaneously
- ā Quality Filtering: Prioritizes products with 4+ star ratings
- š° Price Search: Finds the lowest-priced genuine products
- š¤ AI-Powered: Uses Google Gemini for intelligent product matching
- š¬ Chat Interface: Conversational UI with memory
- š Async Processing: Non-blocking operations for better performance
šļø MCP Architecture
This Project's MCP Implementation:
āāāāāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāāāāā
ā Streamlit ā ā MCP Client ā ā MCP Server ā
ā Frontend āāāāāŗā (LangChain + āāāāāŗā (FastMCP) ā
ā (app.py) ā ā Gemini) ā ā ā
āāāāāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāāāāā
ā
ā¼
āāāāāāāāāāāāāāāāāāā
ā E-commerce ā
ā Websites ā
ā ⢠Daraz.pk ā
ā ⢠Telemart.pk ā
ā ⢠iShopping.pk ā
āāāāāāāāāāāāāāāāāāā
MCP Tools Defined:
get_daraz_products(query)- Scrapes Daraz with 4+ rating filterget_telemart_products(query)- Scrapes Telemart search resultsget_ishopping_products(query)- Scrapes iShopping catalog
š Project Structure
PriceHunt-MCP/
āāā project/ # Client-side code
ā āāā app.py # Streamlit web interface
| āāā mcp_client.py # MCP Client with LangChain integration
| āāā mcp_server.py # MCP Server with 3 e-commerce tools
āāā python-version # Python version specification
āāā pyproject.toml # Python project configuration
āāā README.md # This file
āāā uv.lock # UV dependency lock file
š Installation & Setup
1. Clone the Repository
git clone https://github.com/FassihShah/PriceHunt-MCP.git
cd PriceHunt-MCP
2. Create Virtual Environment
# Create virtual environment
python -m venv venv
# Activate virtual environment
venv\Scripts\activate
3. Install Dependencies
Since we're using uv, install dependencies with:
# If using uv (recommended)
uv install
# Or using pip with requirements.txt
pip install -r requirements.txt
If you don't have uv installed:
# Install uv first
pip install uv
# Then install dependencies
uv install
4. Set Up Environment Variables
Create a .env file in the project root:
GOOGLE_API_KEY=your_google_gemini_api_key_here
š„ļø Using with Claude Desktop
This MCP server can also be integrated directly with Claude Desktop application, allowing to use the e-commerce tools directly in your conversations with Claude!
Setup for Claude Desktop:
1. Install Claude Desktop:
- Download from Claude Desktop
- Make sure you have the latest version
2. Configure Claude Desktop: Open the Claude Desktop configuration file:
Windows:
code %APPDATA%\Claude\claude_desktop_config.json
3. Add Your MCP Server:
Create or update the claude_desktop_config.json file:
{
"mcpServers": {
"ecommerce-scraper": {
"command": "python",
"args": ["/path/to/your/project/mcp_server.py"],
"env": {
"PYTHONPA
Tools (3)
get_daraz_productsScrapes Daraz with 4+ rating filterget_telemart_productsScrapes Telemart search resultsget_ishopping_productsScrapes iShopping catalogEnvironment Variables
GOOGLE_API_KEYrequiredAPI key for Google Gemini integrationConfiguration
{"mcpServers": {"ecommerce-scraper": {"command": "python", "args": ["/path/to/your/project/mcp_server.py"]}}}