使用说明

项目简介

GoAI 是一个强大的 Go 语言库,旨在简化 LLM 应用的开发。它不仅提供了多 LLM 提供商的集成、向量嵌入和存储等功能,还实现了一个有效的 Model Context Protocol (MCP) 服务器。这个 MCP 服务器允许开发者以标准化的方式向 LLM 客户端提供上下文信息和功能,是构建复杂 AI 应用后端的理想选择。

主要功能点

  • 资源 (Resources) 管理: 托管和管理各种数据资源,为 LLM 提供丰富的数据访问能力。
  • 工具 (Tools) 注册与执行: 允许注册和执行外部功能,使 LLM 能够调用外部服务和数据接口。
  • Prompt 模板 (Prompts) 定义和渲染: 支持定义和渲染 Prompt 模板,实现可定制的 LLM 交互模式。
  • JSON-RPC 协议通信: 通过标准化的 JSON-RPC 协议与 LLM 客户端进行通信,确保互操作性。
  • 多种传输协议支持: 理论上支持 Stdio, SSE, WebSocket 等多种传输协议(仓库文档提及 MCP Server in Go,但代码中未明确体现传输协议的server端实现,需进一步查看仓库完整代码)。
  • 会话管理与能力声明: 服务器端负责会话管理和能力声明,为 LLM 应用提供安全、可扩展的上下文服务框架。

安装步骤

  1. 确保已安装 Go 语言环境。

  2. 使用 'go get' 命令安装 goai 库:

    go get github.com/shaharia-lab/goai

服务器配置

MCP 服务器的配置主要涉及启动命令和参数。由于 goai 仓库主要是一个库,具体的 MCP 服务器启动命令和参数需要参考仓库的文档 (docs/mcp.md) 或示例代码。 以下是一个通用的配置示例,你需要根据 'goai' 仓库的具体实现进行调整:

{
  "serverName": "goai-mcp-server",
  "command": "your_goai_mcp_server_command",  // <--- 替换为实际的 GoAI MCP 服务器启动命令,例如可能是编译后的二进制文件路径
  "args": [                                    // <--- 启动参数,根据服务器具体需求配置
    "--port", "8080",                           // 示例:指定服务器端口
    "--transport", "stdio"                     // 示例:指定传输协议,例如 stdio, sse, websocket,如果仓库支持的话
    // 其他可能的参数,例如 API 密钥、数据存储配置等
  ],
  "transport": "stdio"                          // <--- MCP 客户端配置的传输协议,需要与服务器端实际运行的协议一致
}

请务必查阅 goai 文档 以获取准确的服务器启动命令和参数配置信息。 上述 'your_goai_mcp_server_command' 和参数仅为示例,实际配置需要根据 'goai' 仓库提供的服务器端代码和文档进行调整。

基本使用方法

  1. 配置 MCP 客户端: 根据上述 "服务器配置" 示例,配置你的 MCP 客户端,指定连接到 GoAI MCP 服务器所需的命令和参数。
  2. 启动 MCP 服务器: 根据 goai 仓库的文档,运行配置好的 MCP 服务器。
  3. 客户端与服务器交互: 客户端将通过 JSON-RPC 协议与 GoAI MCP 服务器进行通信,可以发送请求以:
    • 列出和读取托管的资源。
    • 列出和调用已注册的工具。
    • 获取和使用 Prompt 模板。

重要提示: 由于 'goai' 仓库主要是一个 Go 库,你需要查找仓库中提供的 服务器端代码文档,才能获得更详细的服务器部署和使用指导。 本说明基于仓库提供的有限信息进行推断,实际使用请以仓库官方文档为准。

信息

分类

AI与计算