Orchestra MCP 服务器

使用说明

  • 项目简介 Orchestra 是一个面向 LLM 的后端服务,遵循 MCP(模型上下文协议)规范,核心职责是以标准化方式提供上下文信息和功能给客户端。通过自动化托管资源、注册执行工具、渲染并提供 Prompt 模板等能力,支持安全、可扩展的上下文服务。

  • 主要功能点

    1. 资源管理:提供数据访问能力和资源的托管,便于客户端读取与使用。
    2. 工具注册与执行:注册外部工具并在需要时调用,支持工具的输入参数传递与结果返回。
    3. Prompt 模板定义与渲染:支持多种提示模板的定义和渲染,动态影响 LLM 的交互风格与行为。
    4. MCP 协议实现与 JSON-RPC 通信:通过标准的 MCP 请求/响应格式与客户端进行通信,支持会话管理与能力声明。
    5. 多传输协议支持:为 LLM 应用提供灵活的传输选择(如 SSE、StdIO、WebSocket 等),以适应不同部署场景。
    6. 与现有后端系统集成:基于 FastAPI 构建,易于与现有 API 及数据库进行对接与扩展。
  • 安装与运行步骤

    1. 准备运行环境:确保已安装 Python 3.11+、依赖库(如 FastAPI、FastMCP、数据库相关组件等)。
    2. 启动服务:在项目根目录运行后端服务入口,通常使用适配的启动命令(例如通过 uvicorn 启动包含 MCP 的 FastAPI 应用,监听端口如 8000)。
    3. 访问 MCP 入口:MCP 服务会暴露一个专门的入口(如 /mcp),供 MCP 客户端通过 JSON-RPC 进行资源、工具、提示等请求与响应。
    4. 部署与容器化:可参考仓库提供的 Docker 部署方案将服务与所需的依赖(数据库、对象存储、缓存等)一同编排运行。
  • 服务器配置(MCP 客户端需要的启动配置,JSON 形式描述) 服务器名称:Orchestra MCP Server 启动命令(command):uvicorn 启动参数(args):["backend.main:app", "--host", "0.0.0.0", "--port", "8000"] 配置说明:该配置用于 MCP 客户端建立连接并通过 /mcp 路径进行 MCP 请求。客户端不需要本仓库的实现细节,只需知道服务器名称、启动命令和必要参数即可连接并使用 MCP 提供的资源、工具与提示能力。

  • 基本使用方法

    1. 启动后端服务,使其对外提供 MCP 服务端点。
    2. 使用 MCP 客户端通过 JSON-RPC 发送请求(读取资源、注册工具、获取并渲染 Prompt 等),服务器应按 MCP 规范返回 JSON-RPC 响应。
    3. 客户端可根据 MCP 服务器的能力声明,动态发现可用资源与工具,并在需要时调用对应工具对外部系统进行操作。
    4. 如遇到需要扩展能力的场景,可在后端实现中增加新的资源、工具或提示模板,并确保暴露给 MCP 客户端的入口对外可用。

服务器信息