Maiat MCP 服务器

使用说明(Markdown 格式)

  • 项目简介

    • 该仓库包含一个名为 Maiat Protocol 的多包结构,其中包含用于 MCP 服务器端实现的 mcp-server 包。该服务器旨在以标准化方式向 MCP 客户端提供资源管理、工具注册/执行、以及 Prompt 模板的渲染与获取等能力,并通过 JSON-RPC 与客户端交互,具备会话管理和能力声明等核心能力,支持多传输协议以便与不同类型的 LLM 客户端对接。
  • 主要功能点

    • 资源管理:托管并提供对后端资源(数据、数据源、接口等)的集中访问和控制。
    • 工具注册与执行:注册可被 LLM 调用的外部功能、执行这些工具并返回结果。
    • Prompt 模板定义与渲染:管理可自定义的 Prompt 模板,用于引导或控制 LLM 的对话与任务执行。
    • MCP JSON-RPC 通信:服务器端实现对 MCP 客户端的请求解析、响应构造与通知推送。
    • 会话管理与能力声明:维护会话状态、能力列表、以及对外暴露的服务能力信息。
    • 多传输协议支持:允许通过 Stdio、SSE、WebSocket 等传输方式进行通信,以适配不同应用场景。
  • 安装步骤

    • 先克隆仓库并安装依赖(在根目录执行,支持单仓库工作流或工作区)。
    • 安装依赖后,按项目文档配置数据库和环境变量(例如 DATABASE_URL、DIRECT_URL 等)。
    • 生成 Prisma 客户端并将数据库结构应用到目标数据库。
    • 启动开发服务器或构建/部署 MCP 服务器包。具体启动命令请参考 mcp-server 包自带的启动脚本与包.json 配置。
  • 服务器配置(JSON 配置,用于 MCP 客户端连接服务器) 注:以下为示例配置,请以实际 MCP 服务器包中的启动脚本及参数为准。MCP 客户端需要该信息来连接到 MCP 服务器。

    { "serverName": "Maiat MCP Server", "description": "Maiat 模型上下文协议服务器,提供资源、工具与提示模板等能力的对外访问。", "command": "npm", "args": ["run", "start:mcp-server"], "env": { "DATABASE_URL": "<数据库连接字符串>", "MCP_PORT": "3000", "MCP_TRANSPORTS": "stdio,sse,websocket" }, "notes": [ "serverName: 唯一标识 MCP 服务器的名称", "command/args: 启动 MCP 服务器的命令及参数,请使用 mcp-server 包内置的启动脚本", "env: 运行时所需的环境变量(数据库、端口、传输协议等)", "MCP 客户端不需要实现,配置仅用于连接示例" ] }

  • 基本使用方法

    1. 启动 MCP 服务器:按照仓库中 MCP 服务器包的实际启动脚本执行,确保数据库就绪、环境变量正确配置。
    2. 连接 MCP 客户端:MCP 客户端通过指定的服务器地址、端口和传输协议(如 WebSocket、SSE、Stdio)与 MCP 服务器建立连接。
    3. 发送请求与接收响应:客户端通过 JSON-RPC 的请求格式发送读取资源、执行工具、获取 Prompt 等请求,服务器返回标准化的 JSON-RPC 响应或推送通知。
    4. 管理与扩展:通过管理控制台或 API(如资源、工具、Prompts 的增删改等)对 MCP 服务进行维护与扩展。
  • 备注

    • 本仓库中 MCP 服务器实现定位于 @jhinresh/mcp-server 包,实际运行需要结合该包的启动脚本、配置和数据库初始化流程完成部署。

服务器信息