MCP Go SDK

MCP Go SDK

site icon
2025.02.15 1
Go开发工具包双向通信工具执行资源访问提示处理开发效率
MCP Go SDK 是一个基于 Go 语言实现的 Model Context Protocol (MCP) 开发工具包,支持客户端与服务器之间的双向通信,用于工具执行、资源访问和提示处理。该 SDK 提供了多种传输层选项(如 stdio、SSE、WebSocket),并支持服务器实现、工具注册与执行、资源模式匹配与访问、提示模板渲染、会话管理等功能。
View on GitHub

Overview

基本能力

产品定位

MCP Go SDK 是一个用于实现客户端与服务器双向通信的开发工具包,支持工具执行、资源访问和提示处理。

核心功能

  • 传输层
  • 多种传输选项(stdio、SSE、WebSocket)
  • 双向通信
  • 可配置的端点和设置

  • 服务器实现

  • 工具注册与执行
  • 资源模式匹配与访问
  • 提示模板渲染
  • 会话管理
  • 基于反射的处理程序调用

  • 核心协议类型

  • JSON-RPC 消息处理
  • MCP 特定类型(工具、资源、提示)
  • 能力与初始化

适用场景

  • 开发 CLI 应用程序
  • 构建 Web 应用程序
  • 实现聊天机器人
  • 文件服务器开发
  • API 访问服务

工具列表

  • StdioTransport:用于 CLI 应用程序的传输层实现
  • WebSocketTransport:用于 Web 应用程序的传输层实现
  • SSETransport:用于 Web 浏览器的传输层实现

常见问题解答

  • 无明确常见问题解答部分

使用教程

使用依赖

安装 Go 语言环境(版本 1.16+)。

安装教程

go get github.com/SetiabudiResearch/mcp-go-sdk

调试方式

  1. 创建一个简单的 MCP 服务器示例(参考 Quick Start 部分)。
  2. 使用 log.Fatal 捕获并输出错误信息。
  3. 通过日志或调试工具检查传输层和服务器实现。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。