Wordle游戏服务器

一个基于模型上下文协议(MCP)的服务器实现,允许通过GitHub Copilot等AI助手玩Wordle游戏。

  • by leslierichardson95
  • C#
  • 本地部署
  • 更新于
在 GitHub 查看 leslierichardson95/wordle-mcp-server-sample

使用说明

Wordle MCP服务器

一个模型上下文协议(MCP)服务器实现,允许您通过GitHub Copilot等AI助手播放Wordle。

🎮 特性

  • ✅ 用一个随机的5个字母的单词开始一个新的单词游戏
  • ✅ 猜测并接收颜色编码的反馈
  • ✅ 查看游戏状态和进度
  • ✅ 获取游戏规则和帮助
  • ✅ 使用GitHub Copilot通过自然语言进行游戏

📋 需求

  • .NET 9.0 SDK或更高版本
  • 使用GitHub Copilot的Visual Studio代码
  • VS代码中启用了MCP支持

🚀 快速开始

1.克隆和构建

cd wordle-mcp-server-sample
dotnet restore
dotnet build

2.配置VS代码

该项目包括 .vscode/mcp.json 配置。要使用它:

  1. 在VS Code中打开此项目
  2. 重新加载窗口(Ctrl+Shift+P → “开发人员:重新加载窗口”)
  3. 以代理模式打开GitHub Copilot
  4. Wordle服务器现在应该可用

3.开始游戏

询问副驾驶:

  • “开始一个新的Wordle游戏”
  • “猜猜看:CRANE”
  • “显示我的游戏状态”
  • “我怎么玩Wordle?”

4.使用MCP提示

该项目在 .prompts/ 目录:

.prompts/
├── prompts.json           # Structured MCP prompt definitions
└── wordle-prompts.md      # Comprehensive prompt templates

看 Wordle提示指南 查看完整的有用提示列表,包括:

  • 基本游戏提示
  • 战略分析提示
  • 模式匹配和单词建议
  • 学习和辅导提示

🎯 游戏规则

  • 在5次或更少的尝试中猜出5个字母的单词
  • 每个猜测必须是一个有效的5个字母的单词
  • 每次猜测后,您都会收到反馈:
    • 🟩 绿色:字母正确,位置正确
    • 🟨 黄色:字母在单词中,但位置不对
    • ⬜ 格雷:单词中没有字母

🛠️ MCP工具

该服务器为AI助手提供以下工具:

工具 说明
start_game 开始一个新的Wordle游戏
make_guess 提交一个5个字母的单词猜测
get_game_status 查看当前游戏状态和猜测
get_help 显示游戏规则和说明

💬 MCP提示

服务器通过MCP prompts API公开10个可发现的提示:

提示 参数 说明
quick_play - 开始并遵循战略指导
strategic_help 猜测已使用、已知信息、已删除信件 获取当前游戏的战略建议
pattern_match pattern 查找与模式匹配的单词,如“_ _ E a D”
suggest_starting_word - 获取起始词推荐
analyze_board - 分析当前游戏状态
explain_strategy - 学习最佳Wordle策略
letter_frequency - 了解字母频率分析
guided_play - 通过游戏逐步指导
wordle_rules - 学习游戏规则和玩法
elimination_strategy 消除字母 获得消除字母的帮助

看 如何使用提示 有关访问和使用提示的详细信息。

📁 项目结构

wordle-mcp-server-sample/
├── .github/
│   └── copilot-instructions.md  # Project tracking
├── .prompts/
│   ├── prompts.json             # MCP prompt definitions
│   ├── wordle-prompts.md        # Prompt templates & examples
│   └── HOW_TO_USE_PROMPTS.md    # Guide for using prompts
├── .vscode/
│   ├── mcp.json                 # MCP server configuration
│   └── tasks.json               # Build tasks
├── Models/
│   ├── GameState.cs             # Game state model
│   └── GuessResult.cs           # Guess result model
├── Prompts/
│   └── WordlePrompts.cs         # MCP prompt implementations
├── Services/
│   ├── WordListService.cs       # 400+ valid words
│   └── WordleGameService.cs     # Game logic
├── Tools/
│   └── WordleTools.cs           # MCP tool definitions
├── Program.cs                   # MCP server entry point
├── README.md                    # This file
└── TESTING.md                   # Testing guide

🧪 测试

看 测试.md 详细的测试说明。

手动测试

直接运行服务器:

dotnet run

服务器使用MCP协议通过stdin/stdout进行通信。

构建和运行任务

  • 构建: Ctrl+Shift+B (或 Cmd+Shift+B 在Mac上)
  • 跑: Ctrl+Shift+P → “任务:运行任务”→ "run"

📝 示例游戏

You: Start a new Wordle game

Copilot: 🎮 New game started!
Guess 1: ⬛ ⬛ ⬛ ⬛ ⬛
Guess 2: ⬛ ⬛ ⬛ ⬛ ⬛
...

You: Guess SLATE

Copilot: S 🟨  L ⬜  A 🟩  T ⬜  E 🟨
Good try! 5 guesses remaining.

You: Guess CRAVE

Copilot: C 🟩  R 🟩  A 🟩  V ⬜  E 🟨

You: Guess CRATE

Copilot: 🎉 Congratulations! You guessed 'CRATE' in 3 tries!

🏗️ 实现细节

  • 框架: .NET 9.0控制台应用程序
  • MCP-SDK:ModelContextProtocol v0.4.0-review.3
  • 托管:微软。扩展。主机v9.0.10
  • 运输:标准I/O(标准输入/标准输出)
  • 单词列表:400+常见的5个字母单词

📚 了解更多

📄 许可证

MIT许可证


由以下材料制成❤️ 使用模型上下文协议