Scryfall MCP Server 使用说明

项目简介

Scryfall MCP Server 是一个实现了 Model Context Protocol (MCP) 的服务器,它允许大型语言模型 (LLM) 客户端通过标准化的 MCP 协议访问 Scryfall API,从而获取万智牌 (Magic: The Gathering) 的卡牌信息。该服务器提供了一系列工具,使 LLM 能够查询卡牌数据,并将其作为上下文信息用于对话或生成任务中。

主要功能点

  • 卡牌搜索 (search_cards): 根据文本查询搜索万智牌卡牌,例如 "包含关键词 'draw cards' 的卡牌"。返回匹配的卡牌列表,包含卡牌名称、系列、编号和 ID 等基本信息。
  • 按 ID 获取卡牌 (get_card_by_id): 通过 Scryfall UUID 获取指定卡牌的详细信息。
  • 按名称获取卡牌 (get_card_by_name): 通过卡牌的英文名称精确查找卡牌信息。
  • 随机卡牌 (random_card): 获取一张随机的万智牌卡牌。
  • 获取卡牌裁定 (get_rulings): 获取指定卡牌的官方裁定信息,用于澄清卡牌互动或规则。
  • 按 ID 获取卡牌价格 (get_prices_by_id): 通过 Scryfall ID 获取卡牌的当前价格信息,包括美元、美元闪卡、欧元和 TIX (万智牌线上交易货币) 价格。
  • 按名称获取卡牌价格 (get_prices_by_name): 通过卡牌名称获取卡牌的当前价格信息。

安装步骤

方法一:使用 NPX (需要 Node.js 环境)

  1. 确保您已安装 Node.js 和 npm。
  2. 无需额外安装,可以直接使用 'npx' 命令运行服务器。

方法二:使用 Docker

  1. 确保您已安装 Docker。
  2. 克隆或下载此仓库的代码。
  3. 在仓库根目录下,构建 Docker 镜像:
    docker build -t mcp/scryfall .

服务器配置

MCP 客户端配置 (以 'claude_desktop_config.json' 为例):

以下是在 MCP 客户端配置文件中添加 Scryfall MCP Server 的示例配置。您需要根据您使用的 MCP 客户端进行相应的配置。

Stdio 模式 (默认):

{
  "mcpServers": {
    "scryfall": {
      "command": "npx",
      "args": ["scryfall-mcp-server"]
    }
  }
}

或者,如果您使用 Docker 运行:

{
  "mcpServers": {
    "scryfall": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "mcp/scryfall"]
    }
  }
}

SSE 模式:

{
  "mcpServers": {
    "scryfall-sse": {
      "command": "npx",
      "args": ["scryfall-mcp-server", "--sse"]
    }
  }
}

或者,如果您使用 Docker 运行 SSE 模式:

{
  "mcpServers": {
    "scryfall-sse": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "-p", "3000:3000", "mcp/scryfall", "--sse"]
    }
  }
}

参数说明:

  • 'server name': 您为该 MCP 服务器自定义的名称,例如 "scryfall" 或 "scryfall-sse"。
  • 'command': 启动 MCP 服务器的命令。
    • 使用 NPX 时,命令为 'npx'。
    • 使用 Docker 时,命令为 'docker'。
  • 'args': 传递给 'command' 的参数列表。
    • 使用 NPX Stdio 模式时,参数为 '["scryfall-mcp-server"]'。
    • 使用 NPX SSE 模式时,参数为 '["scryfall-mcp-server", "--sse"]'。
    • 使用 Docker Stdio 模式时,参数为 '["run", "-i", "--rm", "mcp/scryfall"]'。
    • 使用 Docker SSE 模式时,参数为 '["run", "-i", "--rm", "-p", "3000:3000", "mcp/scryfall", "--sse"]'。 请注意,Docker SSE 模式需要映射端口 '3000:3000'。

基本使用方法

  1. 启动服务器:

    • Stdio 模式 (默认):
      • NPX: 'npx scryfall-mcp-server'
      • Docker: 'docker run -i --rm mcp/scryfall'
    • SSE 模式:
      • NPX: 'npx scryfall-mcp-server --sse'
      • Docker: 'docker run -i --rm -p 3000:3000 mcp/scryfall --sse'
  2. 配置 MCP 客户端: 根据上述 "服务器配置" 部分,将 Scryfall MCP Server 添加到您的 MCP 客户端配置文件中。

  3. 在 LLM 中使用工具: 在您的 LLM 应用或客户端中,可以通过 MCP 协议调用 Scryfall MCP Server 提供的工具,例如 'search_cards'、'get_card_by_name' 等,来获取万智牌卡牌信息并用于上下文增强。 具体调用方式取决于您使用的 MCP 客户端的功能和接口。

SSE 模式连接 (使用 MCP CLI):

如果您使用 MCP CLI 工具进行测试,可以使用以下命令连接到 SSE 模式的服务器:

npx @wong2/mcp-cli --sse http://localhost:3000/sse

然后您可以尝试调用服务器提供的工具。

信息

分类

网页与API