使用说明

  • 项目简介 Gobby 是一个面向 AI 客户端的本地优先后端框架,围绕 MCP(Model Context Protocol)架构设计,核心职责包括托管与管理 Resources、注册与执行 Tools、定义与渲染 Prompts,并通过 JSON-RPC/HTTP/SSE/WebSocket 等传输方式对外提供标准化的上下文与功能服务。服务器端负责会话管理、能力声明,以及对 downstream MCP 服务器的代理和对接,便于 LLM 客户端在统一框架内访问资源、执行工具和获取提示模板。

  • 主要功能点

    • 资源与工具管理:提供资源、工具的注册、查询、执行和上下文代理能力,以及内部工具的统一暴露。
    • Prompts 定义与渲染:支持 Prompt 模板的渲染和定制,便于与 LLM 的交互模式集成。
    • MCP 代理与下游服务器连接:支持对下游 MCP 服务器的代理访问,具备逐步发现工具、异步调用等能力。
    • 会话与任务管理:内置会话上下文、任务、项目等持久化存储,提供跨会话的上下文传递与协作能力。
    • 多传输协议支持:提供 HTTP/HTTPS、stdio 及 WebSocket 等传输,具备扩展性和安全性(本地优先、SQLite 存储、有限的权限控制)。
  • 安装步骤

    1. 准备环境
      • Python 3.11+、uvicorn/FastAPI 相关依赖
    2. 获取代码
      • 将仓库克隆到本地并进入目录
    3. 安装依赖
      • 安装 Python 包(如需要:pip install -r requirements.txt)
    4. 运行服务器
      • 参考项目提供的启动方式(如 uv run gobby start)来启动后端服务
    5. 验证 MCP 客户端连接
      • 在客户端(Claude Code、Gemini 等)配置 MCP 服务器地址后,即可通过 MCP 进行资源读取、工具调用与提示获取。
  • 服务器配置(MCP 服务器端到客户端的连接配置,客户端需要至少包含 server 名称、启动命令及参数用于启动并连接到 MCP 服务器) 说明:以下 JSON 配置用于 MCP 客户端在本地或系统中连接 MCP 服务器。每个条目包含服务器名称、传输模式、连接参数等。请根据实际运行环境将其保存并指向本服务器的启动命令与地址。

    { "servers": [ { "name": "test-http", "enabled": true, "transport": "http", "url": "http://localhost:8080/mcp" }, { "name": "test-stdio", "enabled": true, "transport": "stdio", "command": "uvx", "args": ["test-mcp"] } ] }

    说明:

    • name:服务器名称,统一小写、用连字符分隔,便于在客户端配置中引用
    • transport:传输方式,可选 http、stdio、websocket
    • url:仅对 http/websocket 有效,MCP 服务器对外暴露的入口地址
    • command/args:在 stdio 传输下启动外部 MCP 服务的命令与参数
    • enabled:开启/禁用该 MCP 服务器 注释:上述字段用于 MCP 客户端在连接时识别与配置服务器,实际运行中可能还会包含 headers、env、requires_oauth 等扩展字段,按仓库实现的 MCPConfigManager 支持的字段来扩展配置。
  • 基本使用方法

    • 启动后端服务后,MCP 客户端(如 Claude Code、Gemini、Codex 等)在设置中配置 MCP 服务器地址,即可实现资源访问、工具调用、Prompt 渲染等功能。
    • 通过下游 MCP 服务器(若有)可实现工具的渐进披露、跨服务器工具调用以及上下文聚合。
  • 备注

    • 本实现包含完整的服务端代码、存储、MCP 配置、工具代理、会话与任务管理等模块,具备在本地离线环境中运行的能力,同时提供对下游 MCP 服务器的代理和扩展能力,符合 MCP 服务器的核心职责。

信息

分类

AI与计算