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 服务器实现为后端服务的一部分,客户端实现可能位于相应的客户端库/工具中。

服务器信息