万智牌卡牌查询
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md 的安装指南,将 @org-rn88lg3j/gathering-card-lookup 安装到当前 AI 助手中。
技能介绍
它解决什么问题
维护卡表、写构筑分析、做中文卡牌索引时,常见的痛点是数据散落多处、字段命名不统一,中文卡牌名与英文原词混排,人工拼装查询既慢又容易错。@org-rn88lg3j/gathering-card-lookup 把这类请求收敛到同一个 MCP 服务端上:大模型只负责理解意图和提取参数,数据获取全部交给 scripts.tools 里的函数,返回 result["raw"] 这份原始 JSON,由你决定如何渲染。
核心能力
- 精确查询:
scripts.tools.get_card_by_set_and_number用系列代码加收集编号定位单张卡牌,适合「NEO 的 046/306 是什么」这类请求。 - 结构化搜索:搜索工具接受查询字符串,支持
t:creature c:r、pow>=5、mv<2、s:TDM -t:creature这类过滤条件;配合page、page_size、order、unique控制分页、排序与去重粒度(按id、oracle_id或illustration_id)。 - 系列数据:
get_sets按发布日期倒序返回全部系列,get_set按set_code取单个系列详情,get_set_cards拉取某系列的全部卡牌。 - 活字乱刷:
scripts.tools.hzls用卡牌图像把文本拼成图片,可选cut_full_image与with_link水印开关。 - 中文优先:
priority_chinese默认为true,中文卡牌排在结果前列。
工作流程
- 检查
scripts.config.settings.api_key,为空时用AskUserQuestion向用户索取密钥,再调用scripts.config.set_api_key(key)保存。 - 按用户意图选择工具函数并提取参数。
- 以关键字参数调用,例如
scripts.tools.get_set_cards(set_code='NEO', page_size=50, order='collector_number')。 - 读
result["success"]与result["message"]判断成败,把result["raw"]整理后展示给用户。
适用边界与注意点
- 密钥是硬门槛:缺少
XBY_APIKEY时禁止自行搜索或编造数据,必须先询问用户,因此无人值守或离线场景跑不起来。 - 查询语法有学习成本:过滤条件写错通常不会报错,而是静默返回不符合预期的结果集,接入前先用
mv<2、s:TDM -t:creature这类样例验证一遍。 - 分页上限:
page_size最大为 100,批量拉取整个系列需要自己实现翻页与终止逻辑。 - 活字乱刷不是数据接口:
hzls产出图片,不参与卡牌数值查询链路。 - 该技能定位是路由层,最终数据质量取决于上游 API 的更新频率。
使用场景
- 写限制赛牌表时,需要确认某张牌在 NEO 系列的收集编号与中文卡名,调用单卡查询函数获取详情。
- 撰写新系列评测时,用 t:creature c:r 筛红色生物、按 -mv 排序,拿到分页结果做配图素材。
- 社区做中文卡牌索引站时,先调 get_sets 拉全部系列,再按 set_code 逐个取卡牌生成检索页。
- 线下轮抽活动开场,想用 hzls 把一句欢迎语拼成卡牌图像发到群里。
适合人员
- 每周更新卡表数据库的万智牌数据维护者,需要按系列代码批量拉取卡牌并保留中文卡名。
- 撰写新系列赛制评测的中文内容作者,需要用查询语法筛出低费生物等条件卡牌做配图。
- 开发万智牌问答或选牌助手的工程师,需要把卡牌查询作为 MCP 工具接入,由模型路由意图。
- 组织线下轮抽的牌店裁判或店主,需要给活动群发一张用卡牌图像拼成的句子图片。