Mercado Livre MCP 服务器实现

使用说明(Markdown格式)

  • 项目简介

    • 这是一个基于 MCP(Model Context Protocol)的服务器实现示例,演示如何把一个外部数据源(此处为 Mercado Livre 商品信息抓取)通过 MCP 的资源、工具、提示等能力暴露给 LLM 客户端,以实现标准化的上下文服务与外部功能调用。
  • 主要功能点

    • 提供 MCP 服务器框架,使用标准化通信与客户端交互(通过 JSON-RPC 风格的请求/响应)。
    • 注册并暴露一个示例工具(get-produtos),允许 LLM 客户端传入商品名数组以获取商品信息。
    • 通过网页抓取与数据校验实现对 Mercado Livre 的产品信息获取、排序和筛选。
    • 使用输入校验(Zod)、HTML 解析和简单的匹配算法,输出结构化结果。
    • 服务器支持通过标准输入输出(stdio)等传输方式启动,便于与本地开发环境和 IDE 集成。
  • 安装步骤

    • 复制代码到本地环境并安装依赖
    • 通过 npm install 安装所需包
    • 构建可执行代码(如 npm run build),生成可由 Node 直接执行的入口文件(如 build/main.js)
  • 服务器配置(MCP 客户端使用的启动信息,JSON 格式;用于告知客户端如何启动 MCP 服务器)

    • 注意:MCP 客户端需要知道服务器名称、启动命令及参数以建立连接。以下配置仅供参考,实际使用时请按环境调整。
    • {
    • "serverName": "mercado-livre",
    • "command": "node",
    • "args": ["build/main.js"]
    • // 说明:启动后服务器将监听标准输入输出(stdio),提供 MCP 服务能力
    • }
  • 基本使用方法

    • 在本地环境中运行上述启动命令,确保服务器正常输出日志,表示 MCP 服务器已启动。
    • 使用 MCP 客户端:通过“MCP: List Servers”之类的命令,找到并连接名为 merca-do-livre 的服务器实例。
    • 调用工具 get-produtos,传入需查询的产品名称列表,服务器返回带有名称、价格、匹配度、链接和运送信息的结果集合。
    • 可以在 LLM 的对话中嵌入该工具调用,以获得来自 Mercado Livre 的实时数据用于上下文。

服务器信息