Car Deals Search MCP
Car Deals Search MCP
Ищите объявления о подержанных автомобилях на Cars.com, Autotrader и KBB с помощью ИИ-ассистентов
Сервер MCP (Model Context Protocol), который агрегирует и выполняет поиск объявлений об автомобилях из нескольких источников. Парсит объявления параллельно, извлекает цену, пробег, информацию о дилере и применяет опциональные фильтры в стиле CARFAX (1 владелец, без аварий, личное использование).
🚀 Быстрый старт
Предварительные требования
Node.js (v16 или выше)
Chrome/Chromium браузер должен быть установлен (требуется Puppeteer)
Если Chrome не находится в стандартном расположении, задайте переменную окружения
PUPPETEER_EXECUTABLE_PATH, указывающую на ваш исполняемый файл Chrome/Chromium
Установка
# Clone the repository
git clone https://github.com/SiddarthaKoppaka/car_deals_search_mcp.git
cd car_deals_search_mcp
# Install dependencies (includes Puppeteer)
npm installИспользование с MCP-клиентами
Настройте ваш MCP-клиент (Claude Desktop, VS Code, GitHub Copilot и т. д.) для работы с этим сервером:
Для Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json на macOS):
{
"mcpServers": {
"car-deals": {
"command": "node",
"args": ["/absolute/path/to/car_deals_search_mcp/src/server.js"]
}
}
}Для других MCP-клиентов обратитесь к их документации и используйте:
Команда:
nodeАргументы:
["<absolute-path-to-repo>/src/server.js"]
Автономное тестирование
# Run the test command
npm test
# Or test manually with a specific search
node -e "
const { scrapeCarscom } = require('./src/scraper.js');
scrapeCarscom({
make: 'Toyota',
model: 'Camry',
oneOwner: true,
noAccidents: true,
personalUse: true
}, 5).then(listings => listings.forEach(l => console.log(l.format())));
"Related MCP server: MarketCheck MCP Apps
✨ Возможности
Агрегация из нескольких источников: одновременный поиск по Cars.com, Autotrader и KBB
Умная фильтрация: фильтры в стиле CARFAX (1 владелец, без аварий, личное использование)
Оценка предложений: эвристическая оценка качества сделки
Параллельный скрапинг: быстрые одновременные запросы к нескольким источникам
Скрытый режим: Puppeteer с техниками обхода обнаружения ботами
📊 Поддерживаемые источники
Источник | Цена | Пробег | Оценка предложения | Информация о дилере | Фильтры CARFAX |
Cars.com | ✅ | ✅ | ✅ | ✅ | ✅ |
Autotrader | ✅ | ✅ | ⚠️ Ограниченная | ✅ | ⚠️ Ограниченная |
KBB | ✅ | ✅ | ✅ | ⚠️ Ограниченная | ⚠️ Ограниченная |
🔧 MCP-инструмент: search_car_deals
Параметры
Параметр | Тип | Обязателен | Описание |
| string | ✅ | Производитель автомобиля (например, "Toyota", "Honda") |
| string | ✅ | Модель автомобиля (например, "Camry", "Accord") |
| string | ❌ | Почтовый индекс для локального поиска (по умолчанию: "90210") |
| integer | ❌ | Минимальный год выпуска |
| integer | ❌ | Максимальный год выпуска |
| integer | ❌ | Максимальная цена в USD |
| integer | ❌ | Максимальный пробег |
| integer | ❌ | Максимальное количество результатов на источник (по умолчанию: 10) |
| array | ❌ | Источники для запроса: |
| boolean | ❌ | Фильтр только для автомобилей CARFAX с одним владельцем |
| boolean | ❌ | Фильтр для автомобилей без аварий |
| boolean | ❌ | Фильтр только для личного использования (не аренда/автопарков) |
Пример ответа
🚗 2021 Toyota Camry XSE
💰 Price: $23,491
📏 Mileage: 52,649 mi
⭐ Deal Rating: Good Deal
🏆 CARFAX: 1-Owner | No Accidents | Personal Use
🏪 Dealer: Valencia BMW
🌐 Source: Cars.com
🔗 https://www.cars.com/vehicledetail/...🛠️ Технические детали
Скрапинг: Puppeteer (безголовый Chromium) со stealth-плагином для обхода обнаружения ботами
Параллельность: параллельные задачи скрапинга для одновременных запросов к нескольким источникам
Протокол: реализует MCP (Model Context Protocol) для интеграции с ИИ-ассистентами
Извлечение данных: парсеры для каждого источника нормализуют объявления в единую схему
Требования к Chrome/Chromium
Этот проект использует Puppeteer, для которого требуется установленный Chrome или Chromium:
macOS: Chrome обычно находится в
/Applications/Google Chrome.app/Contents/MacOS/Google ChromeLinux: обычно определяется Puppeteer автоматически или находится в
/usr/bin/chromium-browserWindows: обычно находится в
C:\Program Files\Google\Chrome\Application\chrome.exe
Если Puppeteer не может найти ваш браузер, задайте переменную окружения:
export PUPPETEER_EXECUTABLE_PATH="/path/to/chrome"🧪 Разработка и тестирование
# Run tests
npm test
# Test individual scrapers
node src/scraper.js
# View code structure
ls -la src/🤝 Участие в разработке
Мы приветствуем ваш вклад! Пожалуйста, следуйте этому рабочему процессу:
Сделайте форк репозитория
Создайте ветку для изменений (
git checkout -b feature/amazing-feature)Добавьте тесты для новой функциональности
Зафиксируйте изменения (
git commit -m 'Add amazing feature')Отправьте изменения в ветку (
git push origin feature/amazing-feature)Откройте пул-реквест
Пожалуйста, добавляйте тестовое покрытие для изменений в скрапинге/парсинге, чтобы избежать регрессий при обновлении сайтов-источников.
📄 Лицензия
Лицензия MIT — подробности в файле LICENSE.
🔗 Ссылки
Available Tools
1 toolsearch_car_dealsA
Search for car deals across multiple sources (Cars.com, Autotrader, KBB). Returns listings with prices, mileage, deal ratings, and links.
| Name | Required | Description | Default |
|---|---|---|---|
| zip | No | ZIP code for location-based search (default: 90210) | |
| make | Yes | Car manufacturer (e.g., Toyota, Honda, Ford) | |
| model | Yes | Car model (e.g., Camry, Civic, F-150) | |
| sources | No | Sources to search: "cars.com", "autotrader", "kbb". Default: all | |
| yearMax | No | Maximum model year | |
| yearMin | No | Minimum model year | |
| oneOwner | No | Filter for CARFAX 1-Owner vehicles only | |
| priceMax | No | Maximum price in dollars | |
| maxResults | No | Maximum results per source (default: 10) | |
| mileageMax | No | Maximum mileage | |
| noAccidents | No | Filter for vehicles with no accidents or damage reported | |
| personalUse | No | Filter for vehicles used for personal use only (not rental/fleet) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the tool searches across multiple sources and returns listings with specific fields. However, it does not mention any limitations, rate limits, authentication requirements, or what happens if no results are found. It does not contradict anything, but it lacks depth in behavioral disclosure beyond the basic function.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the primary action and result. Every part is informative with no waste. It efficiently communicates the tool's purpose without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite 12 parameters and no output schema, the description provides enough context by mentioning the return fields (prices, mileage, deal ratings, links). It does not explain ordering, pagination, or error handling, but the schema covers parameter semantics. Given the tool's complexity, it is reasonably complete, though slightly more detail on result behavior would justify a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% coverage with descriptions for every parameter. The tool description does not add additional parameter-specific semantics beyond what the schema already states, such as the use of 'maxResults' or 'oneOwner'. Per the baseline rule, since schema coverage is high, a score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Search'), a specific resource ('car deals'), and names the sources (Cars.com, Autotrader, KBB) and return types (prices, mileage, deal ratings, links). It is clear and distinct, though there are no sibling tools to differentiate from. The purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies usage: search for car deals using the provided filters. Since no sibling tools are listed, there is no need to specify alternatives or exclusions. The context is clear, but it does not explicitly state when not to use or what alternatives exist. Given the absence of siblings, this is adequate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v1.0.0- First observed
search_car_deals
TDQS
Scored across 1 tool
With only a single tool, there is no potential for confusion or misselection. The tool's purpose is clear and unambiguous within the server.
The single tool name 'search_car_deals' follows a consistent verb_noun convention, making it predictable and readable. No other tools exist to create inconsistency.
The server has only one tool, which is borderline thin. While the narrow scope of 'car deals search' might justify this, users might expect additional related tools (e.g., filtering, saving deals) to make the server feel more complete.
The tool covers the primary search functionality across multiple sources, returning comprehensive listing data. Minor gaps exist such as lack of detailed deal views or comparison tools, but the core use case is well-served.
Maintenance
Related MCP Connectors
Automotive inventory search for AI assistants: vehicles, dealers, deals, and market data.
AI-native used car marketplace. 145K+ vehicles, 4300+ dealers, 13 US states, 20 MCP tools.
Search live US dealership inventory, get market prices, and send buyer inquiries. Free, no API key.
Cars.com listings, VIN lookups, and dealer inventory for car-buying assistants.
Related MCP Servers
- AlicenseAqualityDmaintenanceAggregates and searches used car listings from multiple sources (Cars.com, Autotrader, KBB) with price, mileage, dealer info, and optional CarFax-style filters (1-owner, no accidents, personal use).214MIT
- FlicenseNot gradedqualityDmaintenanceProvides 25 interactive automotive intelligence tools for real-time market data, including VIN decoding, price predictions, and inventory analytics. It enables AI assistants to perform car searches, trade-in estimations, and market trend analysis using the Model Context Protocol.2-

Vincario MCP Serverofficial
FlicenseNot gradedqualityDmaintenanceEnables AI assistants to decode VINs, check stolen vehicle databases, and retrieve market valuations through natural language.2-- AlicenseAqualityBmaintenanceEnables AI assistants to search and retrieve used and new car listings from carsales.com.au, with support for various filters and detailed listing information including images. It uses a real browser to bypass bot protection and integrates with MCP-compatible clients like Claude Desktop and Claude Code.192MIT