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 客户端不需要实现,配置仅用于连接示例" ] }
-
基本使用方法
- 启动 MCP 服务器:按照仓库中 MCP 服务器包的实际启动脚本执行,确保数据库就绪、环境变量正确配置。
- 连接 MCP 客户端:MCP 客户端通过指定的服务器地址、端口和传输协议(如 WebSocket、SSE、Stdio)与 MCP 服务器建立连接。
- 发送请求与接收响应:客户端通过 JSON-RPC 的请求格式发送读取资源、执行工具、获取 Prompt 等请求,服务器返回标准化的 JSON-RPC 响应或推送通知。
- 管理与扩展:通过管理控制台或 API(如资源、工具、Prompts 的增删改等)对 MCP 服务进行维护与扩展。
-
备注
- 本仓库中 MCP 服务器实现定位于 @jhinresh/mcp-server 包,实际运行需要结合该包的启动脚本、配置和数据库初始化流程完成部署。