使用说明
Scryfall MCP 服务器
一个模型上下文协议(MCP)服务器,可将《万智牌》卡片数据直接引入Claude桌面。询问Claude任何《万智牌》卡片,它将从Scryfall的全面数据库中提供详细信息。
它能做什么?
- 搜索卡片 - 按名称、类型、颜色、法力值消耗或任何你能想到的游戏特性来查找卡牌
- 获取卡片详情 - 查看完整的卡片信息,包括价格、格式合法性以及高质量图片
- 探索集合(或“集合探索”) - 了解万智牌系列、它们的发布日期以及它们所包含的卡片
- 随机卡片 - 发现随机卡片以获取牌组灵感或只是为了好玩
- 智能缓存 - 之前浏览过的卡片会立即从本地缓存中加载
- 资源浏览器 - 通过Claude的资源系统访问您最近查看过的卡片
安装
先决条件
你需要 Node.js 和 npm 安装在您的计算机上。npm 是一个工具,用于帮助安装和管理此服务器运行所需的软件。
安装 Node.js 和 npm:
- 在Mac上:
- 从……下载 nodejs.org(可译为“Node.js官方网站”,但通常直接保留原域名作为专有名词) 并运行安装程序,或者
- 如果你安装了Homebrew:
brew install node
- 在Windows上:
要验证其是否已安装,请打开终端并输入: npm --version
安装步骤
-
克隆或下载此仓库
-
安装依赖项:
npm install -
构建服务器:
npm run build
配置
对于Claude Desktop
-
找到您的Claude桌面配置文件:
- macOS(苹果电脑操作系统):
~/Library/Application\ Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS(苹果电脑操作系统):
-
添加服务器配置:
{ "mcpServers": { "scryfall": { "command": "node", "args": ["/absolute/path/to/your/project/dist/index.js"] } } }替换
/absolute/path/to/your/project加上此项目目录的实际路径。 -
重启Claude桌面版
如何使用
一旦你安装并配置好服务器后,你就可以用自然语言向Claude询问有关万智牌(Magic卡牌)的问题了。以下是一些示例:
寻找卡片
- “寻找闪电”
- “找出所有力量值为4或以上的红色生物”
- “给我看看卡片上写着‘抽一张牌’的那些卡”
- “寻找花费2点法力值的蓝色瞬间法术”
获取卡片信息
- “告诉我关于黑莲花的事”
- “Sol Ring的格式合法性是什么?”
- “给我看看Jace,心灵雕塑师(Jace, the Mind Sculptor)的当前价格”
- “获取关于轻巧窃贼拉加万的详细信息”
探索集合
- “Dominaria United 扩展包里有什么?”
- “告诉我关于设置代码MOM的事”
- “给我看看关于最新套装的信息”
随机发现
- “给我看一张随机的卡片”
- “给我三个随机的生物”
- “给我来5张随机的卡牌,让我惊喜一下”
访问最近浏览的卡片
你已经查找过的卡片会被缓存到本地,并显示在Claude的资源浏览器中,这样你就可以快速再次访问它们,无需进行额外搜索。
技术细节
可用工具
服务器提供了这些工具供Claude使用:
search_cards - 使用Scryfall的强大搜索语法来查找卡片
- 支持按名称、类型、颜色、法力值消耗、卡牌文字、系列、稀有度等进行搜索
- 默认返回最多10个结果(可配置)
get_card_details - 获取特定卡片的完整信息
- 包括价格、合法性、图片以及所有卡片属性
- 利用智能缓存技术加速重复查询
get_set_info - 获取关于魔法卡组的信息
- 需要设置代码(例如,“dmu”代表《多明纳里亚联军》(Dominaria United),“mom”代表《机械大军的进军》(March of the Machine))
get_random_card - 获取随机卡片
- 可以一次性请求多张随机卡片
- 非常适合寻找卡组灵感或探索游戏
资源特性
服务器实现了MCP资源,这意味着:
- 你查询的卡片会在本地缓存1小时
- 最近浏览过的卡片会出现在Claude的资源浏览器中
- 缓存卡片可即时加载,无需发起新的API请求
- 缓存会自动清理旧条目
发展
在开发模式下运行
npm run dev
建筑
npm run build
项目结构
├── src/
│ └── index.ts # Main server implementation
├── dist/ # Compiled JavaScript output
├── package.json # Node.js dependencies and scripts
├── tsconfig.json # TypeScript configuration
└── README.md # This file
性能与限制
智能缓存
为了提高速度并减少不必要的API调用,此服务器对卡片信息进行缓存:
- 缓存卡片瞬间加载
- 缓存1小时后过期
- 内存中可同时存储多达100张卡片
Scryfall API 速率限制
这个服务器使用Scryfall的免费API,该API允许:
- 每秒最多可处理100个请求
- 无需API密钥
服务器能够自动优雅地处理错误和速率限制。
故障排除
服务器没有在Claude桌面显示
-
检查你的配置文件 - 确保路径正确且JSON语法有效
- 在Mac上:
cat ~/Library/Application\ Support/Claude/claude_desktop_config.json - 在Windows上:用记事本打开文件并检查其显示是否正确
- 在Mac上:
-
验证路径是否为绝对路径 - 路径必须完整(例如
/Users/yourname/projects/ScryfallMCP/dist/index.js),不是相对的(比如./dist/index.js) -
确保它构建成功:
npm run build -
完全重启Claude桌面版 - 完全退出应用程序并重新打开
克劳德说“未知工具”或者工具不起作用
- 这通常意味着Claude Desktop没有重新加载配置
- 尝试再次重启Claude Desktop
- 检查一下
dist/index.js运行后文件存在npm run build
API或连接错误
- 检查你的网络连接 服务器需要连接到Scryfall的API
- 访问 https://scryfall.com 确保他们的服务正常运行
- 查看控制台输出 当跑步时
npm run dev查看详细的错误信息
构建或安装问题
- “npm: 命令未找到” - 您需要安装 Node.js 和 npm(参见上方的先决条件)
- 构建失败 - 尝试删除
node_modules文件夹和运行中npm install再次 - 权限错误 - 确保你有权限读取和执行项目文件夹中的文件
做出贡献
想改进这个服务器吗?欢迎贡献您的力量!
- 为仓库创建分支(或“克隆仓库”)
- 创建一个特性分支
- 做出你的更改
- 彻底测试
- 提交一个带有清晰说明的拉取请求 什么 你已经添加并且 为什么
许可证
这个项目采用MIT许可证授权。
致谢
- Scryfall(一个魔法卡牌数据库网站) 为提供卓越的《万智牌》API
- 模型上下文协议 对于MCP规范
- 人类中心主义(或指与人类相关的) 为克劳德和MCP提供支持