eBay API MCP Server
使用说明内容(Markdown格式)
-
项目简介
- 该仓库实现了一个基于 MCP 的服务器,聚合并托管 eBay Sell API 的资源(Resources)、注册和执行工具(Tools),并提供用于对话的 Prompt 模板渲染与管理能力,旨在为 LLM 应用提供可扩展的上下文服务。
-
主要功能点
- MCP 核心能力:以标准化的 JSON-RPC 方式与客户端通信,处理资源访问、工具调用、Prompt 获取与渲染等请求。
- 资源与工具托管:提供对外部 API 的数据访问能力,并注册大量的工具以供 LLM 调用。
- Prompts/模板渲染:定义并渲染用于交互的提示模板,支持可定制的交互模式。
- 多传输协议支持:内置 STDIO 传输(便于直接与 AI 助手集成)以及 HTTP 传输(通过 server-http 实现)。
- 安全与会话:包括会话管理、能力声明,以及基于 OAuth 的鉴权与访问控制选项。
- 测试覆盖与可维护性:提供完整的单元测试和集成测试、类型安全与 API 兼容性校验。
-
安装步骤
- 克隆仓库并安装依赖
- 安装依赖并编译/构建项目
- 启动服务器(推荐使用 npm 脚本;也可直接通过构建产物运行)
- 按需执行设置向导以完成凭据与客户端配置
-
服务器配置(MCP 客户端配置用来将 MCP 服务器接入客户端,配置信息为 JSON,包含 serverName、command、args 等,供 MCP 客户端读取并建立连接)
- serverName: ebay-mcp-server
- command: node
- args: ["dist/index.js"]
- transport: STDIO(默认)/ HTTP(如需通过 HTTP 传输,请参阅 server-http.ts 的实现)
- protocolVersion: 1.0+(MCP 协议版本要求)
- 注意:MCP 客户端不需要也无需包含凭据在此处的配置信息中;该服务器在运行时通过环境变量管理 eBay API 凭据与 OAuth 配置(如 EBAY_CLIENT_ID、EBAY_CLIENT_SECRET、EBAY_ENVIRONMENT 等)
-
基本使用方法
- 启动前准备
- 安装必要的依赖并构建:安装依赖、执行构建命令
- 配置环境变量(如 EBAY_CLIENT_ID、EBAY_CLIENT_SECRET、EBAY_ENVIRONMENT、EBAY_REDIRECT_URI、EBAY_USER_REFRESH_TOKEN 等,具体在文档中有详细说明)
- 启动服务器
- 使用默认 STDIO 传输时,服务器会以 MCP 标准端口提供 STDIO 交互;亦可通过配置 HTTP 传输打开网络接口供 MCP 客户端连接
- 客户端接入
- MCP 客户端通过配置中给出的 serverName、command、args 来启动 MCP 服务,并使用 JSON-RPC 形式向服务器发出请求(如读取资源、调用工具、获取 Prompt 等)
- 常见任务示例
- 载入并执行工具、获取资源、渲染 Prompt,借助 LLM 接口进行对话生成
- 维护与扩展
- 项目内包含 325 个工具定义、完整的类型定义以及测试用例,便于扩展新的端点、端点更新以及工具的增删
- 启动前准备
-
额外说明
- MCP 服务器在该实现中通过 Express-based HTTP 服务(server-http.ts)与 STDIO 传输组合工作,支持多种部署方式。
- 运行时需要 Node.js 18+,并要求 OpenAPI/TypeScript 类型的严格性以确保工具与端点的一致性。