eBay数据交互服务器

一个用于与eBay API交互的模型上下文协议服务器,支持AI助手搜索商品、跟踪价格并发现优惠。

  • by hanku4u
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 hanku4u/ebay-mcp-server

使用说明

易趣MCP服务器

用于与eBay API交互的模型上下文协议(MCP)服务器。使人工智能助手能够搜索易趣列表、跟踪价格,并找到家庭实验室设备和其他物品的交易。

特性

✅ 已实施(8个工具)

  • 🔍 搜索易趣商品 -使用所有过滤器进行基本和高级搜索
  • 💰 价格跟踪 -SQLite数据库随时间跟踪价格
  • 📊 交易检测 -分析市场数据以寻找便宜货(低于平均水平15%以上)
  • 📦 物品详情 -包括卖家声誉在内的全面信息
  • 📈 价格历史 -使用统计数据查看趋势(最小/最大/平均/中值)
  • 📋 观察名单 -使用自定义警报跟踪多个项目

🚧 计划中(12个工具)

  • 🏷️ 类别浏览 -浏览易趣的类别层次结构
  • 🆕 上市量 -最新优惠(最近6-24小时)
  • ⏰ 即将结束 -拍卖狙击手助手
  • 📊 市场价值 -价格研究工具

状态

🟢 MVP完成 -8个核心工具已实施并准备好进行测试!

看 IMPLEMENTATION_STATUS.md 详细进展。

计划工具

  • search_ebay -使用过滤器(关键字、价格、条件、类别)搜索列表
  • get_item_details -获取特定列表的详细信息
  • track_price -将商品添加到价格跟踪
  • get_price_history -查看跟踪项目的历史价格数据
  • find_deals -根据历史数据搜索低于市场价值的项目

需求

  • Python 3.10+
  • 易趣开发人员帐户(用于API凭证)
  • MCP兼容客户端(Claude Desktop、Cline等)

快速开始

  1. 获取易趣API凭据

    • 注册地址:https://developer.ebay.com/
    • 创建应用程序
    • 复制您的应用程序ID
  2. 安装

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

    cp .env.example .env
    # Edit .env and add your EBAY_APP_ID
    
  4. 测试

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

配置

将您的易趣API凭证设置为环境变量:

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

或者创建一个 .env 文件:

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

用法

使用克劳德桌面

添加到您的Claude桌面配置(~/Library/Application Support/Claude/claude_desktop_config.json 在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"
      }
    }
  }
}

使用OpenClaw

即将推出-将与OpenClaw的MCP客户端功能集成。

HTTP服务器(远程访问)

作为HTTP服务器运行以进行远程访问:

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

然后从任何MCP客户端连接:

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)

易趣API访问

要使用此服务器,您需要易趣API凭据:

  1. 注册 eBay开发者计划
  2. 创建一个新应用
  3. 生成您的应用程序ID、证书ID和开发人员ID
  4. 选择合适的API:查找API(用于搜索)或交易API(用于帐户管理)

使用OpenClaw进行重复搜索

用于日常家庭实验室设备搜索的cron作业示例:

{
  "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"
}

建筑

使用 FastMCP -构建MCP服务器的快速Python方法。FastMCP为70%的MCP服务器提供支持,并使创建生产就绪的集成变得容易,只需要最少的样板。

示例:添加工具

添加新工具就像装饰功能一样简单:

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自动:

  • 根据类型提示生成JSON模式
  • 使用Pydantic验证输入
  • 处理MCP协议序列化
  • 提供stdio和HTTP传输

许可证

麻省理工学院

贡献

欢迎投稿!这是一个早期项目,专注于在家实验室寻找交易。

作者

由...创建 @ 汉库4U 在RockLobster的人工智能协助下🦞