SystemPrompt MCP 服务器套件

使用说明(Markdown 格式)

  • 项目简介

    • 该仓库实现了基于 Model Context Protocol (MCP) 的后端服务,核心职责是对资源、工具和提示模板进行托管、管理与渲染,并通过 JSON-RPC 与客户端通信,提供标准化的上下文服务。
    • 包含多个可直接运行的 MCP 服务器示例(如 SystemPrompt 系统服务器、Moltbook 社交服务器、Content Manager 服务器等),便于将来扩展到更多服务。
  • 主要功能点(简要版)

    • 资源管理:提供对资源的读取、列举等操作,支持资源内容与元数据的查询。
    • 工具注册与执行:注册可调用的外部功能工具,处理来自 LLM 的调用请求并返回结构化结果(或错误信息)。
    • Prompt 模板定义与渲染:定义与渲染提示模板,便于统一对话上下文与指令进行格式化。
    • JSON-RPC 通信:服务器端实现符合 MCP 的请求/响应格式,客户端通过 JSON-RPC 进行访问。
    • 会话与鉴权:包含会话管理、权限检查与审计能力,确保对资源与工具的安全访问。
    • 多协议/传输支持(通过扩展实现):如 stdio、SSE、WebSocket 等,便于在不同场景下接入客户端。
  • 安装步骤(操作级别)

    1. 安装必要环境
      • Rust 1.75 及以上
      • PostgreSQL 数据库(部分组件依赖数据库进行持久化)
    2. 获取代码
      • 将仓库克隆到本地,进入对应的扩展 MCP 子目录(如 extensions/mcp/systemprompt 等)
    3. 构建
      • 在对应 MCP 服务目录执行构建命令,生成可执行的 MCP 服务器二进制
    4. 运行前置配置
      • 按需设置环境变量,例如 MCP_PORT、MCP_SERVICE_ID、数据库连接等
    5. 启动 MCP 服务器
      • 启动对应 MCP 服务器的二进制,监听配置的端口,确保日志输出正常
    6. 验证
      • 使用 MCP 客户端对 MCP 服务器发起初始化、工具调用、资源查询等 JSON-RPC 请求,确认返回结果正常
  • 服务器配置(MCP 客户端使用的启动配置示例说明)

    • 服务器名称(server_name):systemprompt
    • 启动命令(command):systemprompt-mcp-server(二进制名称可能随构建而定,请以实际部署的可执行文件名为准)
    • 启动参数(args):例如 ["--service", "systemprompt", "--port", "5010"],其中端口号可按实际部署调整
    • 说明:该配置用于 MCP 客户端在连接 MCP 服务器之前,提供服务器的名称、启动命令及参数信息,帮助自动化部署与对接。请按照实际部署的可执行文件名与端口进行替换;不同的 MCP 服务器(如 Moltbook、Content Manager)可使用同样的结构单独配置。
  • 基本使用方法(步骤化)

    1. 启动 MCP 服务器:按照上面示例启动 systemprompt 的 MCP 服务器(如果有多台服务器,请对每台服务器执行相同的启动步骤,端口互不冲突)。
    2. 准备 MCP 客户端:在需要的 LLM 客户端中配置该 MCP 服务器信息(服务器名、地址、端口、认证方式等,按客户端实现要求提供)。
    3. 通过客户端发起请求:客户端向 MCP 服务器发起 JSON-RPC 请求,例如读取资源、调用工具、获取 Prompt 等。
    4. 处理响应:解析 MCP 返回的 JSON-RPC 响应,结合应用场景进行后续处理。
    5. 维护与扩展:若需扩展新的资源、工具或提示模板,可以在对应的扩展中实现,保持 MCP 服务的一致性与向后兼容。
  • 重要提示

    • MCP 客户端配置不需要包含任何敏感实现细节,仅用于连接与对接。实际的鉴权、会话管理和权限检查由 MCP 服务器端实现保障。
    • 仓库中存在多台 MCP 服务器实现,部署时请为每个服务器配置单独的 server_name、启动命令和端口。

服务器信息