MCP server/search

eBay MCP Server

A Model Context Protocol (MCP) server for interacting with eBay's APIs.

★ 1hanku4u/ebay-mcp-server ↗by hanku4uupdated
1

Add it to Claude Code

claude mcp add -e "EBAY_APP_ID=${EBAY_APP_ID}" -e "EBAY_CERT_ID=${EBAY_CERT_ID}" -e "EBAY_DEV_ID=${EBAY_DEV_ID}" ebay-mcp-server -- python -m ebay_mcp
Required:EBAY_APP_IDEBAY_CERT_IDEBAY_DEV_ID
2

Make your agent remember this setup

ebay-mcp-server's config, env vars, and the gotchas you hit — recalled in every future Claude Code, Cursor, and Codex session.

npx conare@latest

Free · one command · indexes the sessions already on disk. Set up in the browser instead →

What it does

  • Search eBay listings with advanced filters
  • Track item prices over time using a SQLite database
  • Identify bargains priced 15% or more below market average
  • Retrieve comprehensive item details and seller reputation
  • View price trends including min, max, average, and median statistics

Tools 5

search_ebaySearch listings with filters including keywords, price, condition, and category.
get_item_detailsGet detailed information about a specific listing.
track_priceAdd an item to price tracking.
get_price_historyView historical price data for tracked items.
find_dealsSearch for items below market value based on historical data.

Environment Variables

EBAY_APP_IDrequiredeBay Developer Application ID
EBAY_CERT_IDrequiredeBay Developer Certificate ID
EBAY_DEV_IDrequiredeBay Developer ID

Try it

Search eBay for Dell PowerEdge R720 servers under $500.
Find the best deals for vintage cameras that are at least 15% below market value.
Get the price history for the item with ID 123456789.
Track the price of this specific listing and alert me if it drops.
Original README from hanku4u/ebay-mcp-server

eBay MCP Server

A Model Context Protocol (MCP) server for interacting with eBay's APIs. Enables AI assistants to search eBay listings, track prices, and find deals on homelab equipment and other items.

Features

✅ Implemented (8 tools)

  • 🔍 Search eBay listings - Basic and advanced search with all filters
  • 💰 Price tracking - SQLite database tracks prices over time
  • 📊 Deal detection - Analyzes market data to find bargains (15%+ below average)
  • 📦 Item details - Comprehensive info including seller reputation
  • 📈 Price history - View trends with statistics (min/max/avg/median)
  • 📋 Watchlist - Track multiple items with custom alerts

🚧 Planned (12 tools)

  • 🏷️ Category browsing - Navigate eBay's category hierarchy
  • 🆕 New listings - Fresh deals (last 6-24 hours)
  • Ending soon - Auction sniper helper
  • 📊 Market value - Price research tool

Status

🟢 MVP Complete - 8 core tools implemented and ready for testing!

See IMPLEMENTATION_STATUS.md for detailed progress.

Planned Tools

  • search_ebay - Search listings with filters (keywords, price, condition, category)
  • get_item_details - Get detailed information about a specific listing
  • track_price - Add an item to price tracking
  • get_price_history - View historical price data for tracked items
  • find_deals - Search for items below market value based on historical data

Requirements

  • Python 3.10+
  • eBay Developer Account (for API credentials)
  • MCP-compatible client (Claude Desktop, Cline, etc.)

Quick Start

  1. Get eBay API Credentials

  2. Install

    git clone https://github.com/hanku4u/ebay-mcp-server.git
    cd ebay-mcp-server
    pip install -e .
    
  3. Configure

    cp .env.example .env
    # Edit .env and add your EBAY_APP_ID
    
  4. Test

    python -m ebay_mcp
    # Server will start in stdio mode (MCP standard)
    

Configuration

Set your eBay API credentials as environment variables:

export EBAY_APP_ID="your-app-id"
export EBAY_CERT_ID="your-cert-id"
export EBAY_DEV_ID="your-dev-id"

Or create a .env file:

EBAY_APP_ID=your-app-id
EBAY_CERT_ID=your-cert-id
EBAY_DEV_ID=your-dev-id

Usage

With Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "ebay": {
      "command": "python",
      "args": ["-m", "ebay_mcp"],
      "env": {
        "EBAY_APP_ID": "your-app-id",
        "EBAY_CERT_ID": "your-cert-id",
        "EBAY_DEV_ID": "your-dev-id"
      }
    }
  }
}

Alternatively, use the FastMCP CLI:

```json
{
  "mcpServers": {
    "ebay": {
      "command": "fastmcp",
      "args": ["run", "path/to/ebay_mcp/server.py:mcp"],
      "env": {
        "EBAY_APP_ID": "your-app-id",
        "EBAY_CERT_ID": "your-cert-id",
        "EBAY_DEV_ID": "your-dev-id"
      }
    }
  }
}

With OpenClaw

Coming soon - will integrate with OpenClaw's MCP client capabilities.

HTTP Server (Remote Access)

Run as an HTTP server for remote access:

python -m ebay_mcp
# Or with FastMCP CLI:
fastmcp run src/ebay_mcp/server.py:mcp --transport http --port 8000

Then connect from any MCP client:

from fastmcp import Client

async with Client("http://localhost:8000/mcp") as client:
    result = await client.call_tool("search_ebay", {
        "keywords": "Dell PowerEdge R720",
        "max_price": 500
    })
    print(result)

eBay API Access

To use this server, you'll need eBay API credentials:

  1. Sign up for the eBay Developers Program
  2. Create a new application
  3. Generate your App ID, Cert ID, and Dev ID
  4. Choose the appropriate API: Finding API (for search) or Trading API (for account management)

Recurring Searches with OpenClaw

Example cron job for daily homelab equipment searches:

{
  "schedule": { "kind": "cron", "expr": "0 9 * * *", "tz": "America/Chicago" },
  "payload": {
    "kind": "agentTurn",
    "message": "Search eBay for homelab servers under $500 and summarize the best deals"
  },
  "sessionTarget": "isolated"
}

Architecture

Built using FastMCP - the fast, Pythonic way to build MCP servers. FastMCP powers 70% of MCP servers and makes it easy to create production-ready integrations with minimal boilerplate.

Example: Adding a Tool

Adding new tools is as simple as decorating a function:

from fastmcp import FastMCP

mcp = FastMCP("eBay MCP Server")

@mcp.tool
def search_ebay(
    keywords: str,
    max_price: float = None,
    condition: str = "New"
) -> dict:
    """Search eBay listings with filters"""
    # Implementation here
    return {...}

if __name__ == "__main__":
    mcp.run()  # Supports stdio and HTTP transports

Frequently Asked Questions

What are the key features of eBay MCP Server?

Search eBay listings with advanced filters. Track item prices over time using a SQLite database. Identify bargains priced 15% or more below market average. Retrieve comprehensive item details and seller reputation. View price trends including min, max, average, and median statistics.

What can I use eBay MCP Server for?

Automating the search for affordable homelab equipment. Monitoring price fluctuations for high-value collectibles. Identifying undervalued items for resale or personal purchase. Tracking multiple eBay listings for custom price alerts.

How do I install eBay MCP Server?

Install eBay MCP Server by running: git clone https://github.com/hanku4u/ebay-mcp-server.git && cd ebay-mcp-server && pip install -e .

What MCP clients work with eBay MCP Server?

eBay MCP Server works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Conare · memory for coding agents

Turn this server into reusable context

Keep eBay MCP Server docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Set up free$npx conare@latest