用途
MCP Tic-Tac-Toe 是一个 Model Context Protocol(MCP)服务器,使 AI 助手(如 Claude)能够通过标准化的工具接口玩井字棋。该项目适合演示 AI 与人类协作以及 MCP 集成。
主要能力
作为 MCP 服务器,它实现了完整的井字棋游戏,允许 AI 助手:
- 创建和管理多个游戏会话
- 进行策略性走子并分析棋局
- 提供游戏评论和建议
- 与人类或其他 AI 对战
可用 MCP 工具
服务器暴露了 8 个工具用于完整的游戏管理:
游戏管理
- new_game:创建新的井字棋游戏。可选参数:game_id(字符串)——自定义游戏标识符。返回:游戏 ID、起始玩家、初始棋盘。
- list_games:显示所有活跃的游戏会话。返回:活跃游戏 ID 列表。
游戏操作
- reset_game:将游戏重置为初始状态。必需参数:game_id(字符串)。返回:确认信息和全新棋盘。
- make_move:在棋盘上执行走子。必需参数:game_id(字符串)、position(A1-C3)、player(X/O)。返回:更新后的棋盘、游戏状态、下一位玩家。
- get_board:获取当前棋盘状态。必需参数:game_id(字符串)。返回:棋盘显示、当前玩家、走子计数。
- get_available_moves:列出所有有效走子。必需参数:game_id(字符串)。返回:当前玩家的可用位置。
- get_status:检查游戏状态和获胜者。必需参数:game_id(字符串)。返回:游戏状态(进行中/获胜/平局),如适用则返回获胜者。
- analyze_position:获取策略分析。必需参数:game_id(字符串)。返回:局面分析和棋盘状态。
使用方式
前置条件
- Go 1.19+ 已安装
- Claude Code 或其他兼容 MCP 的客户端
MCP 配置(Claude Code 设置)
- 构建服务器:
go build -o bin/server cmd/server.go - 创建或编辑 MCP 配置文件:
- macOS/Linux:
~/.config/claude-code/mcp_servers.json - Windows:
%APPDATA%\claude-code\mcp_servers.json
- macOS/Linux:
- 添加服务器配置:
{ "mcpServers": { "tic-tac-toe": { "command": "/full/path/to/mcp-tic-tac-toe/bin/server", "args": ["-transport=stdio"], "env": {} } } } - 重启 Claude Code,井字棋工具即可使用。
传输选项
服务器支持三种传输方式:
- Stdio(默认):最适合本地 MCP 客户端,如 Claude Code。
- Server-Sent Events (SSE):用于 Web 应用和实时更新。
- Streamable HTTP:用于传统 HTTP 集成。
适用场景
- 演示 AI 与人类的协作对弈
- 测试和展示 MCP 集成
- 作为 MCP 服务器开发的参考实现
限制
- 项目未提供具体的策略分析算法细节
- 未提供价格、平台兼容性等额外信息
- 需要自行构建和配置 MCP 客户端
项目结构
从源码构建:需使用 Go 1.19+ 环境。更多信息可参考 MCP 官方文档和 mcp-go 库。