Skip to main content
Glama

Bargainer MCP Server

PROJECT_SUMMARY.mdβ€’7.1 kB
# πŸ›οΈ Bargainer MCP Client - Project Summary ## πŸ“‹ What Was Created I've successfully created a comprehensive **Model Context Protocol (MCP) client** for shopping deals from Slickdeals and similar websites. This is a fully functional TypeScript-based MCP server that can be integrated with Claude Desktop or any MCP-compatible client. ## πŸ—οΈ Project Structure ``` c:\Users\kmurugesan\OneDrive\Apps\Bargainer\ β”œβ”€β”€ πŸ“ src/ β”‚ β”œβ”€β”€ πŸ“„ types.ts # TypeScript definitions for deals and API responses β”‚ β”œβ”€β”€ πŸ“„ index.ts # Main entry point β”‚ β”œβ”€β”€ πŸ“„ server.ts # MCP server implementation β”‚ β”œβ”€β”€ πŸ“ providers/ # Deal source providers β”‚ β”‚ β”œβ”€β”€ πŸ“„ base.ts # Base provider class β”‚ β”‚ β”œβ”€β”€ πŸ“„ slickdeals.ts # Slickdeals API provider β”‚ β”‚ β”œβ”€β”€ πŸ“„ rapidapi.ts # RapidAPI deals provider β”‚ β”‚ β”œβ”€β”€ πŸ“„ webscraping.ts # Web scraping provider β”‚ β”‚ └── πŸ“„ index.ts # Provider exports β”‚ β”œβ”€β”€ πŸ“ services/ β”‚ β”‚ └── πŸ“„ aggregator.ts # Deal aggregation service β”‚ └── πŸ“ config/ β”‚ └── πŸ“„ constants.ts # Configuration constants β”œβ”€β”€ πŸ“ docs/ # Comprehensive documentation β”œβ”€β”€ πŸ“ examples/ # Usage examples β”œβ”€β”€ πŸ“ test/ # Test files β”œβ”€β”€ πŸ“ client/ # Sample MCP client β”œβ”€β”€ πŸ“ scripts/ # Utility scripts └── πŸ“ dist/ # Compiled JavaScript (after build) ``` ## πŸš€ Key Features ### 1. **Multi-Source Deal Aggregation** - **Slickdeals API**: Community-driven deals with ratings - **RapidAPI**: Multiple deal aggregators - **Web Scraping**: Support for DealNews, RetailMeNot, and other sites - **Extensible**: Easy to add new deal sources ### 2. **Powerful Search & Filtering** - Text-based deal search - Category filtering (electronics, home, clothing, etc.) - Price range filtering - Rating-based filtering - Store-specific filtering - Smart sorting (price, rating, popularity, date) ### 3. **MCP Tools Available** | Tool | Description | Key Parameters | |------|-------------|----------------| | `search_deals` | Search deals across sources | query, category, price range, rating | | `get_top_deals` | Get trending/popular deals | limit, sources | | `filter_deals` | Filter existing deals | categories, stores, price/rating ranges | | `get_deal_details` | Get detailed deal information | dealId, source | | `compare_deals` | Compare similar deals | deals array | | `get_available_sources` | List active deal sources | none | ### 4. **Smart Deal Processing** - **Price normalization**: Handles different price formats - **Deal comparison**: Groups similar deals and finds best options - **Rating aggregation**: Normalizes ratings from different sources - **Discount calculation**: Automatically calculates discount percentages ## πŸ”§ Setup & Configuration ### 1. **Quick Start** ```bash cd "c:\Users\kmurugesan\OneDrive\Apps\Bargainer" npm install npm run build npm test # Verify setup ``` ### 2. **API Keys Setup** Create `.env` file from `.env.example`: ```bash SLICKDEALS_API_KEY=your_slickdeals_key RAPIDAPI_KEY=your_rapidapi_key ``` ### 3. **Claude Desktop Integration** Add to `claude_desktop_config.json`: ```json { "mcpServers": { "bargainer": { "command": "node", "args": ["C:/Users/kmurugesan/OneDrive/Apps/Bargainer/dist/index.js"], "env": { "SLICKDEALS_API_KEY": "your_key", "RAPIDAPI_KEY": "your_key" } } } } ``` ## 🎯 Usage Examples ### Basic Deal Search ```json { "tool": "search_deals", "arguments": { "query": "gaming laptop", "category": "electronics", "maxPrice": 1500, "minRating": 4.0, "limit": 20 } } ``` ### Advanced Filtering ```json { "tool": "search_deals", "arguments": { "query": "wireless headphones", "stores": ["amazon", "best buy"], "priceRange": {"min": 50, "max": 200}, "sortBy": "rating", "sources": ["slickdeals", "rapidapi"] } } ``` ## 🌐 Supported Deal Sources ### **Primary APIs** 1. **Slickdeals** - Community deals with user ratings 2. **RapidAPI Marketplace** - Multiple deal aggregators - Deals Scraper API - Product Hunt Deals - Coupon APIs ### **Web Scraping Sources** 1. **DealNews** - Hand-picked expert deals 2. **RetailMeNot** - Coupons and cashback 3. **Woot!** - Daily deals and limited offers ### **Extensible Framework** Easy to add new sources: - Best Buy API - Amazon Product API - eBay Browse API - Walmart Open API - Groupon API ## πŸ” Example User Interactions Once integrated with Claude Desktop, users can ask: - *"Find me the best gaming laptop deals under $1500"* - *"Show me top electronics deals from Amazon and Best Buy"* - *"Compare iPhone 15 prices across different stores"* - *"Find wireless headphones with 4+ star ratings under $200"* - *"What are the trending deals right now?"* ## πŸ› οΈ Technical Architecture ### **Provider Pattern** - `BaseDealProvider`: Abstract base class - Specific providers for each deal source - Consistent interface for all sources ### **Aggregation Service** - Combines results from multiple providers - Deduplicates similar deals - Applies cross-source filtering and sorting ### **MCP Server** - Standard MCP protocol implementation - Tool registration and request handling - Error handling and response formatting ### **Type Safety** - Full TypeScript implementation - Zod schemas for validation - Comprehensive type definitions ## πŸ“š Documentation - **πŸ“– [Setup Guide](docs/setup-guide.md)** - Complete installation instructions - **πŸ”§ [Claude Desktop Config](docs/claude-desktop-config.md)** - Integration guide - **🌐 [API Sources](docs/api-sources.md)** - Supported deal APIs - **πŸ’‘ [Usage Examples](examples/usage-examples.ts)** - Code examples ## βœ… Current Status **βœ… COMPLETED:** - Full MCP server implementation - Multi-source deal aggregation - TypeScript build system - Comprehensive documentation - Claude Desktop integration guide - Test setup and verification **πŸ”„ READY FOR:** - API key configuration - Claude Desktop integration - Production deployment - Additional deal source integration ## πŸš€ Next Steps 1. **Get API Keys**: - Register at https://slickdeals.net/api - Sign up at https://rapidapi.com 2. **Configure Environment**: - Copy `.env.example` to `.env` - Add your API keys 3. **Integrate with Claude**: - Follow the Claude Desktop configuration guide - Restart Claude Desktop 4. **Start Shopping**: - Ask Claude to find deals! ## πŸŽ‰ Success! You now have a fully functional MCP client that can: - Search deals across multiple platforms - Filter and compare deals intelligently - Integrate seamlessly with Claude Desktop - Extend easily with new deal sources The project is production-ready and waiting for your API keys to unlock its full potential! πŸ›οΈβœ¨

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/karthiksivaramms/bargainer-mcp-client'

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