E-Commerce Product Hunt
šļø 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-MCP2. Create Virtual Environment
# Create virtual environment
python -m venv venv
# Activate virtual environment
venv\Scripts\activate3. 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.txtIf you don't have uv installed:
# Install uv first
pip install uv
# Then install dependencies
uv install4. 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.json3. 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": {
"PYTHONPATH": "/path/to/your/project"
}
}
}
}Once configured, you can directly ask Claude things like:
"Find me the cheapest Ronin Earbuds"
Claude will automatically use these MCP tools to scrape the websites and provide results!
š® Usage
Method 1: Claude Desktop Integration
After setting up Claude Desktop configuration (see section above)
Method 2: Streamlit Web Interface
streamlit run app.pyMethod 3: MCP Inspector (Development & Testing)
Use the official MCP Inspector to test and debug your server:
uv run mcp dev mcp_server.pyThis will:
Launch a web interface
Test all your tools interactively
View tool schemas and parameters
š Learning Outcomes
This project demonstrates:
MCP Protocol: Understanding of server/client architecture
AI Integration: LangChain + LLM tool orchestration
Async Programming: Non-blocking operations
š¤ Author
Syed Hussain Ahmad
GitHub: @SyedHussainAhmad
LinkedIn: Syed Hussain Ahmad
Special Thanks
Syed Fassih Shah: @FassihShah
ā Star this repository if you found it helpful!
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/SyedHussainAhmad/e-Commerce-Product-Hunt'
If you have feedback or need assistance with the MCP directory API, please join our Discord server