关于 secondhand-mcp
secondhand-mcp 是本地运行的二手商品搜索 MCP 服务,面向需要跨平台查找商品的 AI 助手。它支持 Facebook Marketplace、eBay、Depop 和 Poshmark 的筛选搜索及商品详情查询。
主要功能
- 01搜索四个二手交易平台
- 02按价格、类别和商品状况筛选
- 03支持尺码、颜色及品牌筛选
- 04获取商品详情、照片和卖家信息
- 05提供深度研究 search 与 fetch 工具
适用场景
- 01跨平台寻找指定价格范围的二手商品
- 02按尺码和颜色筛选 Depop 或 Poshmark 商品
- 03查看搜索结果中的完整商品详情
MCP 相关
该本地 MCP 服务向客户端提供跨平台搜索、商品详情和平台状态工具,也提供适用于深度研究客户端的 search 与 fetch 工具。README称它适用于运行本地 MCP 服务的客户端,不支持 ChatGPT。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y secondhand-mcpEBAY_CLIENT_ID密钥eBay API client ID (only needed for eBay search)EBAY_CLIENT_SECRET密钥eBay API client secret (only needed for eBay search)EBAY_MARKETPLACE_IDeBay regional marketplace, e.g. EBAY_US (default)本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
5收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| sort | string | 否 | 排序方式(Depop、Poshmark)。选项:relevance、newest、most_popular、price_low_to_high、price_high_to_low |
| brand | string | 否 | 按品牌筛选(仅限 Poshmark)。例如:"Nike"、"Levi's"、"Gucci" |
| limit | number | 否 | 返回结果的最大数量(默认值:20)。eBay 会自动翻页以获取超过 200 条结果(eBay 将 offset + limit 限制为 10,000)。 |
| query | string | 是 | 搜索查询(例如:"stroller"、"iPhone 14"、"vintage couch") |
| sizes | array | 否 | 按尺码筛选(Depop、Poshmark)。示例:["S", "M", "L"] 或 ["US 9", "US 10"] |
| colors | array | 否 | 按颜色筛选(Depop、Poshmark)。选项:black、white、red、blue、green、yellow、orange、pink、purple、brown、grey、cream、multi、silver、gold |
| offset | number | 否 | 分页的起始结果偏移量(默认值:0)。仅限 eBay;其他平台会忽略此参数。 |
| category | string | 否 | 商品类别。Depop:tops、bottoms、dresses、coats-jackets、footwear、accessories、bags、jewellery、activewear、swimwear。Poshmark:使用下划线分隔的名称,例如 Jackets_&_Coats、Dresses、Shoes、Accessories 等。 |
| location | string | 否 | 用于 Facebook Marketplace 搜索的城市和州,格式为 "City, ST",例如 "Austin, TX"、"Portland, OR"。调用前,将社区、邮政编码、都市区和 "near me" 解析为城市和州;仅提供城市名称可能有歧义,并可能返回错误的州。美国以外:传入城市和国家/地区。仅限 Facebook——其他平台会忽略此参数。 |
| maxPrice | number | 否 | 最高价格筛选(可选) |
| minPrice | number | 否 | 最低价格筛选(可选) |
| showSold | boolean | 否 | 在结果中包含已售出/不可用的商品(默认值:false) |
| condition | string | 否 | 商品状况筛选。eBay:new、like_new、good、fair。Depop:new、like_new、excellent、good、fair、used。Poshmark:new(NWT)、like_new(NWOT)、good、fair。无需筛选时使用 "any"。 |
| department | string | 否 | 按部门筛选(仅限 Poshmark)。选项:Women、Men、Kids |
| marketplace | string | 否 | 要搜索的交易平台。选项:facebook,或使用 "all" 搜索所有交易平台 |
| includeImages | boolean | 否 | 在结果中包含完整图片 URL(默认:false)。获取完整照片请使用 get_listing_details。 |
详细介绍
Secondhand MCP
一个 Model Context Protocol(MCP)服务,可让 AI 助手搜索二手交易平台。搜索 Facebook Marketplace、eBay、Depop 和 Poshmark 上的二手商品——按价格、类别、商品状况、尺码和颜色筛选,然后获取包含照片、描述和卖家信息的完整商品详情。
可与 Claude Desktop、Claude Code、Cursor 以及其他可在本地运行 MCP 服务的客户端配合使用。
提示
使用 ChatGPT?这个版本无法在那里运行。
它运行在你的电脑上,因此只能在你的电脑上使用——Claude Desktop、Claude Code、Cursor。Secondhand MCP Cloud 提供相同的搜索功能,始终在线,你实际使用的任何助手都能访问。提供免费套餐,无需信用卡。
| 此仓库 | 云端 | |
|---|---|---|
| Claude Desktop、Code、Cursor | ✅ | ✅ |
| ChatGPT、Claude 和其他助手 | — | ✅ |
| 使用手机搜索 | — | ✅ |
| Chrome 在后台运行 | 需要 | 不需要 |
| 价格 | 永久免费 | 免费套餐,然后每月 $4.99 |
支持的交易平台
| 交易平台 | 是否需要身份验证 | 备注 |
|---|---|---|
| Facebook Marketplace | 否 | 基于位置的搜索 |
| eBay | 是(API 密钥) | 官方 Browse API |
| Depop | 否 | 需要安装 Chrome |
| Poshmark | 否 | 需要安装 Chrome |
设置
Claude Desktop
添加到 ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"secondhand": {
"command": "npx",
"args": ["-y", "secondhand-mcp"],
"env": {
"EBAY_CLIENT_ID": "your-ebay-client-id",
"EBAY_CLIENT_SECRET": "your-ebay-client-secret",
"EBAY_MARKETPLACE_ID": "EBAY_US"
}
}
}
}
Claude Code
添加到 ~/.claude/.mcp.json:
{
"mcpServers": {
"secondhand": {
"command": "npx",
"args": ["-y", "secondhand-mcp"],
"env": {
"EBAY_CLIENT_ID": "your-ebay-client-id",
"EBAY_CLIENT_SECRET": "your-ebay-client-secret",
"EBAY_MARKETPLACE_ID": "EBAY_US"
}
}
}
}
eBay、Depop 和 Poshmark 都是可选项——如果缺少 eBay API 密钥或未安装 Chrome,系统会自动禁用这些交易平台,其他平台仍可正常使用。
Depop 和 Poshmark / Chrome 要求
Depop 和 Poshmark 需要无头浏览器。如果系统已安装 Google Chrome 或 Chromium,这两个平台都会自动启用,无需配置。如果找不到 Chrome,系统会自动跳过这两个平台,且不会提示。
在 macOS 上,首次搜索 Depop 或 Poshmark 时,系统可能会提示你允许 Node.js 控制 Chrome。这是正常情况——puppeteer 需要以无头模式启动 Chrome。允许一次后,系统就不会再询问。
浏览器会在后台隐形运行,只在你实际搜索 Depop 或 Poshmark 时启动。
配置
选择交易平台
默认情况下,所有交易平台均已启用。若要限制启用的平台,请设置 MARKETPLACES 环境变量(以逗号分隔):
{
"env": {
"MARKETPLACES": "facebook,ebay"
}
}
有效值:facebook、ebay、depop、poshmark
eBay API 密钥
eBay 使用官方 Browse API。你需要一个免费的 eBay 开发者账户:
- 在 developer.ebay.com 创建账户
- 创建应用以获取 Client ID 和 Client Secret
- 将它们作为
EBAY_CLIENT_ID和EBAY_CLIENT_SECRET添加到 MCP 配置中
eBay 交易平台 / 地区
默认情况下,该服务面向 eBay 美国站点。若要搜索其他地区的交易平台,请设置 EBAY_MARKETPLACE_ID 环境变量:
{
"env": {
"EBAY_MARKETPLACE_ID": "EBAY_DE"
}
}
常见值:
| 值 | 站点 |
|---|---|
EBAY_US | ebay.com(默认) |
EBAY_DE | ebay.de |
EBAY_GB | ebay.co.uk |
EBAY_AU | ebay.com.au |
EBAY_FR | ebay.fr |
EBAY_IT | ebay.it |
EBAY_ES | ebay.es |
EBAY_CA | ebay.ca |
完整列表请参阅 eBay API 文档。
工具
search_marketplace
搜索各个交易平台上的商品。
| 参数 | 必填 | 默认值 | 说明 |
|---|---|---|---|
query | 是 | 搜索词 | |
marketplace | 否 | facebook | facebook、ebay、depop、poshmark 或 all |
location | 否 | san francisco | 搜索所在城市(仅限 Facebook) |
radiusMiles | 否 | 25 | 搜索半径(英里),最大为 500(仅限 Facebook) |
maxPrice | 否 | 最高价格 | |
minPrice | 否 | 最低价格 | |
limit | 否 | 20 | 结果数量上限 |
showSold | 否 | false | 是否包含已售商品(仅限 Facebook) |
includeImages | 否 | false | 是否在输出中包含图片 URL |
sort | 否 | relevance | 排序方式(Depop、Poshmark):relevance、newest、most_popular、price_low_to_high、price_high_to_low |
condition | 否 | 商品状况。eBay:new、like_new、good、fair。Depop:new、like_new、excellent、good、fair、used。Poshmark:new(带吊牌),like_new(无吊牌),good、fair | |
category | 否 | 商品类别。Depop:tops、bottoms、dresses、coats-jackets、footwear、accessories、bags、jewellery、activewear、swimwear。Poshmark:Jackets_&_Coats、Dresses、Shoes、Accessories 等。 | |
brand | 否 | 品牌筛选(仅限 Poshmark):例如 "Nike"、"Levi's"、"Gucci" | |
department | 否 | 部门筛选(仅限 Poshmark):Women、Men、Kids | |
sizes | 否 | 尺码筛选(Depop、Poshmark):例如 ["S", "M", "L"] 或 ["US 9", "US 10"] | |
colors | 否 | 颜色筛选(Depop、Poshmark):black、white、red、blue、green、yellow、orange、pink、purple、brown、grey、cream、multi、silver、gold |
各交易平台返回的数据:
| 字段 | eBay | Depop | Poshmark | |
|---|---|---|---|---|
| 标题 | 是 | 是 | 是 | 是 |
| 价格 | 是 | 是 | 是 | 是 |
| 位置 | 城市 | 城市、州 | — | — |
| 状况 | — | 是 | — | — |
| 照片数量 | 1 张缩略图 | 1 张缩略图 | 1 张缩略图 | 1 张缩略图 |
| 卖家 | 是 | 是 | — | — |
get_listing_details
使用搜索结果中的 ID 获取指定商品的完整详情。
| 参数 | 必填 | 默认值 | 说明 |
|---|---|---|---|
listingId | 是 | 搜索结果中的商品 ID | |
marketplace | 否 | facebook | facebook、ebay、depop 或 poshmark |
各交易平台返回的数据:
| 字段 | eBay | Depop | Poshmark | |
|---|---|---|---|---|
| 描述 | 是 | 是 | 是 | 是 |
| 所有照片 | 是 | 是 | 是 | 是 |
| 位置 | 城市 | 城市、州、国家/地区 | — | — |
| 卖家 | 姓名 | 用户名 | 用户名 | 用户名 |
| 配送类型 | 是 | — | — | — |
| 配送 | 是/否 | 服务代码 | 是/否 | 始终包含 |
list_marketplaces
列出所有已启用的交易平台及其状态。
search / fetch(深度研究)
遵循 ChatGPT Deep Research 工具规范 的便捷工具组合——名称完全一致,每个工具都只接受一个字符串参数:
search(query)— 同时搜索所有已启用的交易平台,并返回{ results: [{ id, title, text, url }] },其中id的格式为marketplace:listingIdfetch(id)— 根据search结果 ID 返回完整的商品详情,格式为{ id, title, text, url, metadata }
适用于需要这些标准工具名称的研究型客户端;如需使用筛选条件进行搜索,请使用 search_marketplace。
工作原理
Facebook Marketplace — 按位置、半径、价格和搜索词查找商品。将城市名称解析为坐标。无需登录或浏览器。Facebook 有时会向非浏览器调用方提供受限版本的搜索 API(仅返回一个结果,后面还有更多页面,或返回不含商品的占位项);发生这种情况时,服务会改为读取未登录状态下的搜索页面,该页面仍包含完整的第一页结果。
eBay — 使用官方 eBay Browse API 和 OAuth 2.0 客户端凭据。令牌会缓存并自动刷新。目标区域市场由 EBAY_MARKETPLACE_ID 控制(默认值:EBAY_US)。
Depop — 使用无头浏览器搜索商品,并支持类别、成色、尺码和颜色筛选。浏览器实例会在多个请求间共享。
Poshmark — 使用无头浏览器搜索商品,并支持成色、尺码、颜色、排序和价格筛选。Poshmark 不按位置筛选——所有商品均可在全国范围内配送。
开发
git clone https://github.com/jlsookiki/secondhand-mcp.git
cd secondhand-mcp
npm install
npm run build
添加 Marketplace
- 在
src/marketplaces/中创建新文件 - 扩展
BaseMarketplace并实现search(),以及可选的getListingDetails() - 将构造函数添加到
src/marketplaces/index.ts中的allMarketplaces
限制
- Facebook:如果 Facebook 更改其前端,功能可能会失效
- eBay:需要开发者 API 密钥(提供免费套餐)
- Depop:需要安装 Chrome/Chromium;速度比 Facebook/eBay 慢(每次搜索约 5 秒)
- Poshmark:需要安装 Chrome/Chromium;没有官方 API,因此依赖页面抓取
- 速率限制:不要在短时间内发送过多请求
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
