MTG卡牌搜索与套牌构建服务

一个基于Scryfall API的MCP服务器,提供MTG卡牌搜索和套牌构建功能。

  • by DCCoder90
  • Go
  • 本地部署
  • 更新于
在 GitHub 查看 DCCoder90/mtg-mcp

使用说明

MTGMCP

这是一个简单的MCP服务器 Scryfall 以协助卡数据和牌组构建。这允许客户,例如 克劳德桌面 使用Scryfall API搜索Magic:TheGathering卡的详细信息。

描述

此服务器公开了许多MCP工具,以协助MTG卡搜索和构建卡组。工具及其用途如下。

工具

search_card_by_name

该工具将卡片名称作为输入,查询Scryfall API以查找与该名称匹配的卡片,并以结构化格式返回找到的卡片的详细信息。

search_card_by_color

该工具将卡片颜色作为输入,向Scryfall API查询具有该颜色的卡片,并以结构化格式返回找到的卡片的详细信息。

search_card_by_text

该工具将卡片的文本作为输入,向Scryfall API查询具有该文本或类似文本的卡片,并以结构化格式返回找到的卡片的详细信息。

find_related_cards

此工具通过各种关系类型查找与指定卡片相关的卡片:

  • 重印:同一张卡的其他印刷品
  • 代币:由卡创建的令牌卡
  • 力学:具有相似关键字能力的卡片
  • 同一组:来自同一扩展的其他卡

find_card_synergies

这个高级工具分析一张牌,并找到用于构建牌组的协同牌:

  • 关键词协同效应:卡片共享关键字能力(飞行、践踏等)
  • 主题协同:适合战略主题的卡片(牺牲、代币、墓地、柜台等)
  • 部落协同:卡片共享生物类型
  • 颜色标识:符合颜色要求的卡片

该工具会自动从卡片文本中提取主题。

安装

下载预构建的二进制文件

预构建的二进制文件可用于Windows、Linux 发布页面.

可用平台:

  • 视窗: mtg-mcp-windows-amd64.zip (x64)/ mtg-mcp-windows-arm64.zip (臂64)
  • Linux: mtg-mcp-linux-amd64.tar.gz (x64)/ mtg-mcp-linux-arm64.tar.gz (臂64)

安装步骤:

窗户:

  1. 下载相应的 .zip 架构文件
  2. 将存档解压缩到所需位置

Linux:

  1. 下载相应的 .tar.gz 架构文件
  2. 提取物: tar -xzf mtg-mcp-*.tar.gz
  3. 使可执行文件: chmod +x mtg-mcp-*

发展

先决条件

  • Go编程语言(建议使用1.24或更高版本 go-sdk)

建筑

  1. 导航到 src/ 目录:
    cd src
    
  2. 确保已下载依赖项:
    go mod tidy
    
  3. 构建可执行文件:
    go build .
    

运行服务器

警告 此服务器没有内置身份验证。因此,它不应该在任何敏感环境中使用,也不应该暴露在公共互联网上。

服务器支持两个 通信传输:

  • 工作室:用于本地执行和SSH隧道远程访问
  • 上海证券交易所:用于通过互联网进行远程HTTP/HTTPS访问

本地执行(STDIO模式)

从终端执行编译后的二进制文件:

.\mtg-mcp-windows-amd64.exe

远程HTTP访问

对于通过互联网的远程访问,请使用SSE传输运行:

# Linux
MCP_TRANSPORT=sse MCP_SSE_PORT=3000 ./mtg-mcp-linux-amd64

# Windows
$env:MCP_TRANSPORT="sse"; $env:MCP_SSE_PORT="3000"; .\mtg-mcp-windows-amd64.exe

# Docker
docker run --rm -p 3000:3000 \
  -e MCP_TRANSPORT=sse \
  -e MCP_SSE_PORT=3000 \
  mtg-mcp:latest

服务器将于启动 http://0.0.0.0:3000/sse 并且可以从任何地方访问。

与Claude Desktop一起使用

更新您的 claude_desktop_config.json 包括以下内容 mcpServers:

码头工人

    "mtg-mcp":{
      "command": "docker",
      "args": [
        "run",
        "-i",
        "dccoder/mtg-mcp:latest",
	"-e MCP_TRANSPORT=stdio"
      ]
    }

本地STDIO

窗户:

"mtg-mcp": {
    "command": "C:\\path\\to\\mtg-mcp-windows-amd64.exe",
    "args": []
}

Linux:

"mtg-mcp": {
    "command": "/path/to/mtg-mcp-linux-amd64",
    "args": []
}

此配置文件可以通过以下方式找到: Settings -> Developer -> Edit Config 在克劳德桌面。

环境变量

此服务器支持以下环境变量:

变量 默认值 描述
MCP_SERVER_NAME scryfall-card-search-server 服务器标识名称
MCP_SERVER_VERSION v1.0.0 服务器版本字符串
MCP_LOG_TO_FILE true 启用/禁用文件日志记录
MCP_LOG_FILE mcp-server.log 日志文件路径(启用日志记录时)
MCP_TRANSPORT stdio 运输类型: stdio 或 sse
MCP_SSE_HOST 0.0.0.0 SSE服务器绑定地址(仅限SSE模式)
MCP_SSE_PORT 3000 SSE服务器端口(仅限SSE模式)
MCP_SSE_PATH /sse SSE端点路径(仅限SSE模式)
MCP_SSL_CERT_FILE nil TLS证书文件的路径(适用于https)
MCP_SSL_KEY_FILE nil TLS证书密钥的路径(适用于https)

环境变量示例:

{
  "mcpServers": {
    "card_server": {
      "command": "/path/to/mtg-mcp-linux-amd64",
      "args": [],
      "env": {
        "MCP_LOG_TO_FILE": "false",
        "MCP_SERVER_NAME": "my-mtg-server"
      }
    }
  }
}

来源

卡片效果和关键字来自 魔术:收集综合规则-2025年9月19日