shopping-mcp
shopping-mcp
Сервер MCP, который позволяет Claude (или любому MCP-клиенту) искать объявления eBay через официальный Browse API.
Спросите «найди мне механическую клавиатуру дешевле 100 долларов, только „Купить сейчас“, бесплатная доставка» — и ассистент действительно сможет пойти и поискать.
eBay results for "mechanical keyboard" — showing 3 of about 41,208 matches
1. Keychron K8 Pro Wireless Mechanical Keyboard - Brown Switches — $79.99
total $79.99 · free shipping · New · was $99.00 (19% off)
seller keeb_supply · 99.6% positive (8421 ratings) · top rated, ships from US
Item v1|335894120043|0 · https://www.ebay.com/itm/335894120043
2. Ducky One 3 TKL Mechanical Keyboard RGB Hot-Swappable — $84.50
total $92.45 · $7.95 shipping · New
seller pc_parts_direct · 98.9% positive (3310 ratings) · accepts offers
Item v1|326770118254|0 · https://www.ebay.com/itm/326770118254Что он делает — и чего осознанно не делает
Каждый инструмент доступен только для чтения. Этот сервер ищет и читает объявления. Он не может сделать ставку, добавить товар в корзину, оформить заказ или потратить деньги. Когда вы захотите купить, он выдаст вам ссылку на объявление, а оформление заказа вы возьмёте на себя.
Он построен на официальном eBay Browse API — никакого скрейпинга, автоматизации браузера или повтора cookie. Он не сломается при изменении макета и не нарушит условия использования eBay.
Related MCP server: ebay-mcp
Инструменты
Инструмент | Назначение |
| Поиск по ключевым словам с фильтрами по цене, состоянию, формату покупки, доставке и местоположению. |
| Полная запись об одном объявлении: характеристики товара, продавец, возврат, время окончания аукциона. |
| Только объявления со скидкой не менее N % от исходной цены, сначала самые дешёвые. |
| Показать текущую конфигурацию и выполнить тестовый вызов. Запустите это первым, если что-то не работает. |
Две вещи, которые стоит знать о search_ebay, потому что именно так устроен eBay, а не фиксированный каталог:
buying_optionфильтрует поauction,buy_it_nowилиaccepts_offers.sort: "ending_soonest"— в сочетании сbuying_option: "auction"так можно найти аукционы, которые вот-вот завершатся.
Получение ключей API
Войдите на developer.ebay.com/my/keys.
Создайте приложение и откройте набор ключей Production.
Скопируйте App ID (Client ID) и Cert ID (Client Secret).
Вот и всё. Этот сервер использует поток учётных данных клиента OAuth, поэтому вам не нужен пользовательский токен, URI перенаправления или «RuName».
Новым аккаунтам разработчиков, возможно, придётся пройти проверку eBay, прежде чем откроется страница ключей, — обычно это занимает около рабочего дня.
Установка
git clone https://github.com/Kirat5690/shopping-mcp.gitcd shopping-mcp && npm install && npm run buildПодключение к клиенту
Claude Code
claude mcp add shopping --env EBAY_CLIENT_ID=your-app-id --env EBAY_CLIENT_SECRET=your-cert-id -- node /absolute/path/to/shopping-mcp/dist/index.jsClaude Desktop
Отредактируйте claude_desktop_config.json:
macOS —
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows —
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"shopping": {
"command": "node",
"args": ["C:\\path\\to\\shopping-mcp\\dist\\index.js"],
"env": {
"EBAY_CLIENT_ID": "your-app-id",
"EBAY_CLIENT_SECRET": "your-cert-id",
"EBAY_MARKETPLACE_ID": "EBAY_US"
}
}
}
}Перезапустите клиент, затем попросите его выполнить check_ebay_connection, чтобы убедиться, что учётные данные работают.
Справочник по конфигурации
Переменная | Обязательно | По умолчанию | Примечания |
| да | — | App ID из набора ключей Production. |
| да | — | Cert ID из того же набора ключей. |
| нет |
|
|
| нет |
| Установите |
| нет | — | Возвращает ссылки на объявления с партнёрскими метками. |
| нет | — | Повышает точность расчёта стоимости доставки. |
| нет | — | Код страны в формате ISO, например |
| нет |
| Тайм-аут на запрос. |
Примечания о цифрах
Учитывается итоговая цена. При сортировке по цене учитывается цена товара плюс доставка, так что дешёвый товар с дорогой пересылкой не выигрывает по случайности. Собственная сортировка eBay по цене не всегда так делает.
У некоторых объявлений нет итоговой суммы. Если eBay указывает доставку как рассчитываемую при оформлении заказа, итоговая цена неизвестна до указания адреса доставки, и в объявлении об этом сказано, а не угадывается.
Без конвертации валют. Цены указаны в валюте торговой площадки ровно так, как их возвращает eBay.
Объявления — это отдельные продажи, а не позиции каталога. Два результата с почти одинаковыми названиями могут отличаться по состоянию, комплекту поставки или региону. Прежде чем считать их одним и тем же товаром, стоит проверить.
find_dealsвидит только заявленные скидки. Он фильтрует по зачёркнутой «старой» цене eBay, поэтому действительно дешёвое объявление без заявленной скидки в нём не появится.
Разработка
npm testНабор тестов запускается без каких-либо учётных данных eBay. Он охватывает логику денежных расчётов и итоговой цены, форматирование вывода, а также сквозной тест протокола MCP, который запускает сервер через stdio и проверяет регистрацию инструментов, валидацию схемы и пути с не настроенными учётными данными.
npm run watch # recompile on change
npm run typecheck # types only, no emitСтруктура:
src/
index.ts server entry point and stdio wiring
tools.ts MCP tool definitions
ebay.ts Browse API client and OAuth token cache
config.ts environment parsing and marketplace table
money.ts price parsing, landed totals, ranking
format.ts human-readable output
http.ts fetch with timeout and retryПримечание о границах
В более ранних версиях также поддерживалась Amazon через Product Advertising API. Это было удалено в v0.2.0: PA-API требует одобренную учётную запись Amazon Associates, а Amazon отзывает доступ, если аккаунт не совершает соответствующих продаж, — слишком высокий порог для большинства, кто хочет просто запустить сервер.
Клиент Amazon и его подпись AWS SigV4 сохранены в истории git в теге v0.1.0-amazon, если у вас есть одобренный аккаунт и вы хотите их вернуть.
Лицензия
MIT — см. LICENSE.
Не аффилирован с eBay, не одобрен и не спонсируется eBay. Ваше использование eBay API регулируется Лицензионным соглашением eBay API.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to search eBay listings, track item prices over time, and identify deals below market value using eBay's APIs. It provides tools for category browsing and retrieving detailed information for specific listings.1MIT
- AlicenseAqualityDmaintenanceEnables interaction with eBay APIs for account verification, item search, and browsing via OAuth 2.0 authentication, with support for token refresh and sandbox/production environments.4MIT
- AlicenseNot gradedqualityDmaintenanceMinimal MCP server for searching eBay listings via the Browse API, enabling keyword search with filters, sorting, pagination, and retrieving full item details.1MIT
- AlicenseNot gradedqualityBmaintenanceEnables searching eBay for auctions by providing a query and number of results, returning auction listings from eBay's Browse REST API.MIT
Related MCP Connectors
Federated commerce search across independent WooCommerce merchants. Keyless, read-only MCP server.
Remote MCP connector for eBay, Shopify, Best Buy & Etsy marketplace data via the Commerce API
Search YouTube and read video, channel and transcript data as JSON. No Google Cloud project.
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/Kirat5690/shopping-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server