loading…
Search for a command to run...
loading…
Enables 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 categ
Enables 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.
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.
🟢 MVP Complete - 8 core tools implemented and ready for testing!
See IMPLEMENTATION_STATUS.md for detailed progress.
search_ebay - Search listings with filters (keywords, price, condition, category)get_item_details - Get detailed information about a specific listingtrack_price - Add an item to price trackingget_price_history - View historical price data for tracked itemsfind_deals - Search for items below market value based on historical dataGet eBay API Credentials
Install
git clone https://github.com/hanku4u/ebay-mcp-server.git
cd ebay-mcp-server
pip install -e .
Configure
cp .env.example .env
# Edit .env and add your EBAY_APP_ID
Test
python -m ebay_mcp
# Server will start in stdio mode (MCP standard)
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
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"
}
}
}
}
Coming soon - will integrate with OpenClaw's MCP client capabilities.
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)
To use this server, you'll need eBay API credentials:
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"
}
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.
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
FastMCP automatically:
MIT
Contributions welcome! This is an early-stage project focused on homelab deal hunting.
Created by @hanku4u with AI assistance from RockLobster 🦞
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"ebay-mcp-server": {
"command": "npx",
"args": []
}
}
}