Liza MCP 服务器
使用说明(简要版)
-
项目简介
- Liza 项目中包含一个 MCP 服务器实现,用于通过标准化的 JSON-RPC 接口向 LLM 客户端提供资源、工具和 Prompt 的访问能力,便于将模型推理与后端能力对接。
-
主要功能点
- MCP 资源管理:后端托管并暴露可访问的资源(数据/数据源)。
- MCP 工具注册与调用:注册可供 LLM 调用的外部工具,执行相应操作。
- Prompt 模板定义与渲染:提供可定制的 Prompt 模板,支持不同交互场景。
- JSON-RPC 通信:客户端通过标准 JSON-RPC 请求获取资源、调用工具、获取 Prompts 等。
- 会话与能力声明:服务器端负责会话管理、能力声明以及状态追踪。
- 多传输协议支持:理论上支持 StdIO、SSE、WebSocket 等传输方式,方便在不同环境下接入。
- 安全与扩展性:通过结构化 API、明确的权限边界和可扩展的工具/资源模型,提升稳定性与安全性。
-
安装步骤
- 获取源码并编译 MCP 服务器(Liza 提供的 MCP 服务器二进制名为 liza-mcp)。
- 常用命令示例(在有 Go 环境的机器上执行):
- 构建二进制:
- go build ./cmd/liza-mcp
- 或使用仓库提供的安装脚本安装(如 install.sh),会安装 liza-mcp。
- 构建二进制:
- 基本前提:
- 项目根目录包含 .liza 目录,用于状态、日志等配置的本地化存储。
- MCP 服务需要知道项目根路径与日志路径,以便正确暴露资源、工具和 Prompts。
-
服务器配置(给 MCP 客户端的连接信息,JSON 格式,包含 server name、command、args 等) { "server_name": "liza-mcp", "command": ["/usr/local/bin/liza-mcp"], "args": [ "--project-root", "/path/to/your/liza/project", "--log", "/path/to/your/project/.liza/log.yaml" ], "transport": "stdio" // 传输协议示例,可选 stdio、sse、websocket }
-
基本使用方法
- 启动 MCP 服务器:运行 liza-mcp 可执行文件,指定项目根目录与日志路径,以便服务器加载本地黑板和管线配置。
- 客户端交互:通过 JSON-RPC 请求给 MCP 服务器发送请求,例如获取资源、执行工具、获取提示模板、或渲染 Prompt 等。
- 监控与运维:关注日志输出与错误信息,结合项目中的配置文件和管线(若使用 Phase2/Phase1 配置),可进行状态监控与容量管理。
- 典型工作流:LLM 客户端请求资源/工具/Prompts,MCP 服务器返回标准化的 JSON-RPC 响应,将资源/功能注入到对话流中,提升交互的一致性与可控性。
-
备注
- MCP 客户端通常需要提供服务器启动信息(如 server_name、command、args),以便与 MCP 服务器建立连接并通过 JSON-RPC 进行通信。
- 本仓库中 MCP 服务器实现为后端服务的一部分,客户端实现可能位于相应的客户端库/工具中。