LEMON MCP 服务器桥接

使用说明 (简明指南)

  • 项目简介

    • 该仓库实现了一个 MCP 服务器桥接,用于向 MCP 客户端(如 LLM 客户端)提供资源、工具、提示等上下文信息,并通过 JSON-RPC 进行通信。
    • 服务器具备会话管理、能力声明、以及对多传输协议的支持(如 STDIO、SSE、WebSocket),以便在不同运行环境中与 LLM 客户端协同工作。
  • 主要功能点

    • 资源(Resources)管理:提供数据访问能力,托管和持久化资源数据。
    • 工具(Tools)注册与执行:允许 LLM 客户端发现、调用并获得工具执行结果。
    • 提示模板(Prompts)定义与渲染:支持可自定义的提示模板,帮助 LLM 生成合适的上下文。
    • JSON-RPC 通信:服务器端接收客户端请求(读取资源、调用工具、获取提示等),返回 JSON-RPC 响应。
    • 会话与能力声明:维护会话状态,并声明服务器能力以协同工作流控和插件化能力。
    • 多传输协议支持:通过不同传输层与客户端交互,提升灵活性与兼容性。
  • 安装步骤

    • 安装运行环境:需要 Python 3.10+ 与 Node.js 18+,并安装相关依赖。
    • 下载并进入项目目录。
    • 安装依赖与环境准备(见仓库要求中的 uv 及其他依赖描述)。
    • 启动 MCP 服务前确保数据库或存储配置已就绪。
    • 启动 MCP 服务器通过运行提供的入口脚本,确保网络端口可达。
  • 服务器配置(供 MCP 客户端使用的启动参数,JSON 格式)

    • server_name: 指定服务器名称,便于客户端显示与区分
    • command: 启动服务器的命令
    • args: 启动命令的参数 示例(请以文本形式理解,非代码块呈现) { "server_name": "LEMON MCP Server", "command": "python", "args": ["run_mcp.py", "--port", "8000", "--host", "0.0.0.0"] }

    说明:

    • 上述配置用于 MCP 客户端在连接前了解服务器端的启动命令与必要参数,确保客户端能够正确建立与 MCP 服务器的连接。
    • 客户端本身通常不需要知道实现细节,只需通过上述信息发起连接并按协议交互。
    • 运行时可根据环境调整端口和主机地址。
  • 基本使用方法

    • 启动 MCP 服务器:执行仓库提供的启动入口,确保 8000 端口可访问(或按配置端口)。
    • 客户端连接:使用上述 JSON 配置向 MCP 服务器发起 JSON-RPC 请求,读取资源、调用工具、获取并渲染提示模板。
    • 会话与能力:服务器在运行时维护会话上下文并公开服务器能力信息,客户端可在初始化阶段请求能力声明。
    • 运行时扩展:如需扩展资源、工具或提示模板,可在后端模块中注册并通过 JSON-RPC 暴露给客户端使用。

服务器信息