GoCopilotAgentToDoList
概述
GoCopilotAgentToDoList是一个基于Go的HTTP服务器,它提供了一个API端点,用于检索指定时区中的当前时间。服务器与Docker化模型上下文协议(MCP)服务交互以获取时间,使其成为集成Go、Docker和外部服务的一个实例。
特性
- /mcp/时间API终点:接受带有时区的POST请求,并返回该时区的当前时间。
- Docker集成:使用Docker运行MCP服务进行时间检索。
- 基于JSON的通信:请求和响应都使用JSON。
- 单元测试:包括请求和响应封送的基本单元测试。
先决条件
项目结构
go.mod # Go module definition
package main.go # Main application source code
package_main_test.go # Unit tests for the project
todos.json # (Reserved for future to-do list features)用法
1.构建并运行服务器
在项目目录中打开一个终端并运行:
go run package\ main.go服务器将启动并监听 http://localhost:8080.
2.API终点
发布 /mcp/time
- 请求正文:
{
"timezone": "America/New_York"
}- 响应主体:
{
"time": "2025-05-27T12:34:56Z"
}- 卷曲示例:
curl -X POST http://localhost:8080/mcp/time -H "Content-Type: application/json" -d '{"timezone":"America/New_York"}'3.工作原理
- 服务器在以下位置接收POST请求
/mcp/timeJSON正文指定时区。 - 它编组请求并将其传输到运行MCP服务的Docker容器(
mcp:latest),特别是mcp/time命令。 - 容器的输出被解析并作为JSON响应返回。
运行测试
要运行单元测试,请执行:
go test -v扩展项目
- 待办事项列表功能: ……的出席
todos.json为API待办事项列表提出未来计划。 - 其他端点: 您可以通过在中定义新的处理程序来添加更多端点
package main.go. - 错误处理: 改进错误消息和日志记录,以供生产使用。
故障排除
- 确保Docker正在运行
mcp:latest图像在本地可用。 - 如果您在Docker中遇到权限问题,请以管理员身份运行您的终端。
- 默认情况下,服务器监听端口8080。更改此项
package main.go如果需要的话。
许可证
本项目按原样提供,用于教育和示范目的。

