项目简介

本项目是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为 LLM 客户端提供访问 Mantle Network 统计数据的能力。它通过定义工具 (Tools) 将外部数据源接入 MCP 生态,使得 LLM 可以通过标准化的 MCP 协议调用这些工具获取数据,从而增强 LLM 在 Mantle Network 相关应用场景中的上下文理解和决策能力。

主要功能点

  • 数据访问工具: 提供了 'get_artist_fans' 和 'get_artist_posts' 两个工具,用于获取 Mantle Network 中艺术家的粉丝和帖子数据。
  • MCP 协议支持: 实现了 MCP 服务器的核心功能,包括处理 MCP 格式的请求和响应,声明服务器能力等。
  • 基于 Vercel 部署: 设计为在 Vercel 平台部署,利用 Vercel Functions 提供 serverless 服务。
  • SSE 和 HTTP 传输: 支持 SSE (Server-Sent Events) 和 HTTP 两种传输协议与 MCP 客户端通信。
  • Redis 会话管理: 使用 Redis 进行会话管理和消息队列,确保请求的可靠处理。

安装步骤

  1. Fork 仓库: 首先 Fork 此 GitHub 仓库到您自己的账号下。
  2. 安装 Vercel CLI: 确保您已安装 Vercel CLI 工具。
  3. 安装 Redis: 在 Vercel 项目中配置 Redis 实例,并确保 'REDIS_URL' 环境变量已设置。(或者使用 Vercel KV,设置 'KV_URL')
  4. 启用 Fluid Compute (可选): 为了更高效的执行,建议在 Vercel 项目设置中启用 Fluid compute。对于 Pro 或 Enterprise 账户,可以调整 'vercel.json' 中的 'maxDuration' 到 800 秒。
  5. 部署到 Vercel: 使用 Vercel CLI 将 Fork 后的仓库部署到 Vercel。在仓库根目录下运行 'vercel' 命令。

服务器配置

MCP 客户端需要配置以下 JSON 信息以连接到此 MCP 服务器:

{
  "serverName": "mcp-vercel",
  "command": "vercel",
  "args": [
    "dev"
  ],
  "transports": [
    {
      "type": "sse",
      "url": "<您的Vercel部署地址>/sse"  // 将 <您的Vercel部署地址> 替换为实际部署地址
    },
    {
      "type": "http-message",
      "url": "<您的Vercel部署地址>/message" // 将 <您的Vercel部署地址> 替换为实际部署地址
    }
  ],
  "capabilities": {
    "tools": [
      "get_artist_fans",
      "get_artist_posts"
    ]
  }
}

参数注释:

  • 'serverName': MCP 服务器的名称,可以自定义。
  • 'command': 本地开发启动服务器的命令,部署后客户端不需要关心。
  • 'args': 本地开发启动服务器命令的参数,部署后客户端不需要关心。
  • 'transports': 支持的传输协议配置。
    • 'type: "sse"': 使用 SSE 协议。
      • 'url': SSE 协议的连接地址,需要替换为您的 Vercel 部署地址。
    • 'type: "http-message"': 使用 HTTP Message 协议。
      • 'url': HTTP Message 协议的请求地址,需要替换为您的 Vercel 部署地址。
  • 'capabilities': 服务器声明的能力。
    • 'tools': 服务器提供的工具列表,包括 'get_artist_fans' 和 'get_artist_posts'。

基本使用方法

  1. 部署服务器: 按照安装步骤将 MCP 服务器部署到 Vercel。
  2. 配置 MCP 客户端: 在 MCP 客户端中,配置上述服务器配置 JSON,并将 '<您的Vercel部署地址>' 替换为实际部署地址。
  3. 调用工具: 客户端可以使用 MCP 协议调用 'get_artist_fans' 或 'get_artist_posts' 工具,并传入 'artist_account_id' 参数来获取数据。

信息

分类

网页与API