这个项目能做什么
mcp-go 是模型上下文协议(MCP)的 Go 实现,该协议是一种标准化协议,支持 LLM 应用与外部数据源和工具之间的安全集成。该项目提供了一个高级且易于使用的 SDK,用于在 Go 中构建 MCP 服务器。
主要功能包括:
- 通过高级接口快速开发,减少样板代码
- 以最少的设置代码创建简单的服务器
- 旨在完整实现核心 MCP 规范
该 SDK 实现了 MCP 规范版本 2025-11-25,并向后兼容版本 2025-06-18、2025-03-26 和 2024-11-05。
涵盖的核心概念:
- 服务器:核心接口,负责连接管理、协议合规性和消息路由
- 资源:通过静态或动态 URI 模板(类似于 GET 端点)向 LLM 暴露数据
- 工具:通过可执行的操作提供功能,这些操作具有副作用(类似于 POST 端点),包括支持用于长时间运行操作的任务增强工具
- 提示:用于 LLM 交互的可重用模板,支持参数、嵌入资源和多种消息类型
传输支持包括 stdio、SSE(服务器发送事件)和流式 HTTP。HTTP 传输可以通过传输无关的 Handle 入口点嵌入到非 net/http 框架(如 fasthttp 或 fiber)中。
其他功能包括 OAuth 受保护资源元数据(RFC 9728)、用于基于浏览器的客户端的 CORS 支持、带有每会话工具和工具过滤的会话管理、请求钩子和工具处理程序中间件。
该项目正在积极开发中,核心功能可用,但一些高级功能仍在进行中。
评论
0 评分人数达到10人后显示
登录后参与讨论。