填字游戏 MCP 服务器
此仓库是支持填字游戏的MCP服务器。它可以读取包含棋盘和线索定义的文本文件,并执行候选词的注册、一致性检查以及最终棋盘的绘制等功能。
必要环境
- Python 3.11 及更高版本
- 紫外线
依赖关系是 uv run 因为会通过途径安装,所以需事先手动 pip install 没有必要。
数据格式
- **网格(
data/grid-*.txt)**
- 用全角数字标注行和列的编号 - 可输入的格子是全角的“?” - 黑格子用全角的“#”表示
- **钥匙
data/clue-*.txt)**
- 每行一条记录的JSON Lines格式 - id, direction ("across" / "down") row, col, length, clue 全部指定
data/文件夹中记录了示例的grid和clue配对。如果想解其他问题,请参考此文件创建grid和clue文件。
提供工具
MCP服务器提供以下工具(方法)。
| 工具名称 | 说明 |
|---|---|
setup 加载网格和钥匙定义,并初始化状态。 | |
register_candidates 将添加与字符数匹配的候选词。现有候选词将保留,重复项将被忽略。 | |
get_candidates | 指定的 clue_id 获取候选项列表。 |
search_consistent_sets | 对当前候选词进行全组合搜索以满足一致性。 |
render_solution 将全部答案(仅平假名)反映到盘面上,并绘制已整理好的网格。 | |
solve_crossword 这是用于结合上述工具群推进解法的提示。 |
Claude Code的注册与使用方法
要在 Claude Code 中添加本服务器,请在项目根目录下执行以下命令。
claude mcp add crossword_tools --scope project -- uv run --with fastmcp fastmcp run src/server.py(crossword_tools 这是为该服务器分配的MCP名称(如有需要,请更改)
注册后,您可在 Claude Code 中自定义斜杠命令 /crossword_tools 请选择,并指定网格和钥匙文件(或文本)作为参数。 根据提示,Claude Code会自主地进行状态初始化、候选词添加和一致性检查,一旦得出最终答案,便会进行答案的展示和报告生成。
/crossword_tools:solve_crossword (MCP) grid-001.txt clue-001.txt许可证
本仓库在 MIT 许可证下提供。
