该项目实现了一个基于Model Context Protocol (MCP) 的服务器,专门用于与Advent of Code网站进行交互。它通过提供标准的MCP工具接口,让外部MCP客户端(如支持MCP的LLM应用)能够便捷地查询指定年份在Advent of Code上的解题进度。
主要功能点
- 获取年度解题进度: 提供一个工具,根据指定的年份,查询用户在该年份的Advent of Code上获得的星星总数。
- MCP协议支持: 实现标准的MCP服务器功能,通过JSON-RPC协议与客户端通信,支持Stdio传输方式。
安装步骤
- 确保你的系统已安装 .NET SDK。
- 克隆该仓库到本地。
- 在项目根目录下,运行以下命令编译项目:
dotnet build
服务器配置
MCP客户端需要配置连接到此服务器。配置信息通常包含服务器的名称、启动命令及其参数。对于此服务器,你需要提供你的Advent of Code会话令牌作为启动参数。
配置示例结构(请根据你的MCP客户端的具体格式调整):
{ "name": "AoC Server", // 服务器名称 "command": "dotnet", // 启动服务器的可执行文件或脚本命令 "args": [ "run", "--project", "path/to/your/aoc-mcp.csproj", // 替换为你的aoc-mcp.csproj文件在系统中的实际路径 "--", // 分隔符,用于将后续参数传递给你的.NET应用 "YOUR_SESSION_TOKEN" // **替换为你的Advent of Code网站的会话令牌** ] }
注意: 'YOUR_SESSION_TOKEN' 是你的Advent of Code账户的会话令牌,用于服务器登录并获取你的个人进度数据。这是一个敏感信息,请妥善保管。你可以在登录Advent of Code网站后,通过浏览器开发者工具查看Cookie中名为 'session' 的值来获取。
基本使用方法
- 根据上方“服务器配置”部分的信息,在你的MCP客户端中配置并添加此服务器。
- 通过MCP客户端启动此服务器。服务器将通过Stdio与客户端建立通信。
- 一旦连接成功,你可以通过客户端调用服务器提供的工具。目前主要工具为 'GetAocProgress',接受一个整数参数 'year' (年份)。
- 调用 'GetAocProgress' 工具并传入你想查询的年份(例如 2023),服务器将返回你在该年份获得的星星总数。具体调用方式和结果展示取决于你的MCP客户端界面。
信息
分类
网页与API