This MCP server aggregates and searches used car listings from multiple automotive marketplaces (Cars.com, Autotrader, and KBB) with advanced filtering capabilities.
Key capabilities:
Multi-source search: Query all sources simultaneously or selectively with parallel processing for fast results
Comprehensive filtering: Search by make, model, year range, maximum price, maximum mileage, and ZIP code location
CARFAX-style filters: Filter for 1-owner vehicles, no accidents/damage reported, and personal use only (excludes rental/fleet vehicles)
Deal quality assessment: Receive heuristic-based deal ratings to identify good values
Detailed listing information: Extract price, mileage, dealer info, deal ratings, and direct links to each listing
Customizable results: Control maximum results per source (default: 10) and overall search scope
AI assistant integration: Works seamlessly with MCP-compatible tools like Claude Desktop, VS Code, and GitHub Copilot
Stealth scraping: Uses Puppeteer with anti-bot detection techniques to reliably access listing sites
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Car Deals Search MCP Serverfind used Toyota Camrys under $25k with no accidents"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Car Deals Search MCP
Search used car listings from Cars.com, Autotrader, and KBB with AI assistants
An MCP (Model Context Protocol) server that aggregates and searches car listings from multiple sources. Scrapes listings in parallel, extracts price, mileage, dealer info, and applies optional CARFAX-style filters (1-owner, no accidents, personal use).
๐ Quick Start
Prerequisites
Node.js (v16 or higher)
Chrome/Chromium browser installed (required by Puppeteer)
If Chrome is not in the default location, set
PUPPETEER_EXECUTABLE_PATHenvironment variable to point to your Chrome/Chromium binary
Installation
Using with MCP Clients
Configure your MCP client (Claude Desktop, VS Code, GitHub Copilot, etc.) to use this server:
For Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
For other MCP clients, refer to their documentation and use:
Command:
nodeArgs:
["<absolute-path-to-repo>/src/server.js"]
Testing Standalone
โจ Features
Multi-source aggregation: Search Cars.com, Autotrader, and KBB simultaneously
Smart filtering: CARFAX-style filters (1-Owner, No Accidents, Personal Use)
Deal ratings: Heuristic-based deal quality assessment
Parallel scraping: Fast concurrent queries across sources
Stealth mode: Puppeteer with anti-bot detection techniques
๐ Supported Sources
Source | Price | Mileage | Deal Rating | Dealer Info | CARFAX Filters |
Cars.com | โ | โ | โ | โ | โ |
Autotrader | โ | โ | โ ๏ธ Limited | โ | โ ๏ธ Limited |
KBB | โ | โ | โ | โ ๏ธ Limited | โ ๏ธ Limited |
๐ง MCP Tool: search_car_deals
Parameters
Parameter | Type | Required | Description |
| string | โ | Car manufacturer (e.g., "Toyota", "Honda") |
| string | โ | Car model (e.g., "Camry", "Accord") |
| string | โ | ZIP code for local search (default: "90210") |
| integer | โ | Minimum model year |
| integer | โ | Maximum model year |
| integer | โ | Maximum price in USD |
| integer | โ | Maximum mileage |
| integer | โ | Max results per source (default: 10) |
| array | โ | Sources to query: |
| boolean | โ | Filter for CARFAX 1-owner vehicles only |
| boolean | โ | Filter for no accidents reported |
| boolean | โ | Filter for personal use only (not rental/fleet) |
Example Response
๐ ๏ธ Technical Details
Scraping: Puppeteer (headless Chromium) with stealth plugin to bypass bot detection
Concurrency: Parallel scraper workers for simultaneous multi-source queries
Protocol: Implements MCP (Model Context Protocol) for AI assistant integration
Data extraction: Source-specific parsers normalize listings into a common schema
Chrome/Chromium Requirement
This project uses Puppeteer, which requires Chrome or Chromium to be installed:
macOS: Chrome is typically at
/Applications/Google Chrome.app/Contents/MacOS/Google ChromeLinux: Usually auto-detected by Puppeteer or at
/usr/bin/chromium-browserWindows: Typically at
C:\Program Files\Google\Chrome\Application\chrome.exe
If Puppeteer cannot find your browser, set the environment variable:
๐งช Development & Testing
๐ค Contributing
Contributions are welcome! Please follow this workflow:
Fork the repository
Create a feature branch (
git checkout -b feature/amazing-feature)Add tests for new functionality
Commit your changes (
git commit -m 'Add amazing feature')Push to the branch (
git push origin feature/amazing-feature)Open a Pull Request
Please include test coverage for scraping/parsing changes to avoid regressions when source sites update.
๐ License
MIT License - see LICENSE file for details