MCP Boilerplate Rust

使用说明内容(Markdown格式)

  • 项目简介

    • 该项目是一个基于 MCP 2025-11-25 规范的后端服务器实现,旨在向大语言模型(LLM)客户端提供标准化的上下文信息、资源数据、工具执行能力以及可定制的提示模板渲染。支持多种传输协议(stdio、SSE、WebSocket、HTTP、HTTP Streaming、gRPC),并提供鉴权、观测与扩展性设计。
  • 主要功能点

    • 资源管理:托管和提供可访问的资源(如服务器描述、能力集合等)。
    • 工具注册与执行:注册工具并通过 JSON-RPC 调用执行,支持多种工具示例(echo、calculate、health_check 等)。
    • 提示模板:定义并渲染提示模板,支持 Code Review、Explain Code、Debug Help 等示例。
    • 会话与任务管理:支持长任务、进度通知、任务状态查询等。
    • 安全与认证:包含基于 OAuth 2.1、JWT 的安全机制(可选开启)。
    • 多传输支持:包含标准输入/输出、HTTP、SSE、WebSocket、HTTP Streaming、gRPC 等传输实现。
    • 观测与指标:集成观测(OpenTelemetry/Prometheus)与日志系统。
    • 数据库工具(可选):通过 PostgREST 封装 PostgreSQL 的工具,提供数据库访问能力。
    • 客户端 SDK 代码生成:多语言客户端 SDK(TypeScript、Python、Go、Rust)的自动生成框架。
  • 安装步骤

    • 克隆代码仓库并进入目录。
    • 构建并运行(示例):
      • 只在 stdio 模式下运行并启用 http 与 auth 功能:cargo build --release --features "http,auth";运行:./target/release/mcp-boilerplate-rust
      • 运行 HTTP 接口模式:./target/release/mcp-boilerplate-rust --mode http
    • 测试与工具:
      • 运行测试用例:cargo test --features "http,auth"
    • MCP Inspector 测试(可选):npx @modelcontextprotocol/inspector ./target/release/mcp-boilerplate-rust
  • 服务器配置(供 MCP 客户端参考的简要配置含注释,不作为代码示例)

    • server_name: MCP Boilerplate Rust
    • start_command: ./target/release/mcp-boilerplate-rust
    • args: ["--mode", "http"] 或 [""] 取决于需要的传输模式
    • 说明:MCP 客户端需要读取该服务器的启动信息并基于提供的 mode 选择合适的传输通道(例如 http、stdio、sse、websocket 等)进行连接。实际配置信息以 MCP 客户端文档为准,仓库内含快速启动说明与多传输示例。
  • 基本使用方法

    • 运行后端服务,选择传输模式(stdio、http、sse、websocket、http-stream、grpc 等)。
    • 使用 MCP 客户端(例如仓库内生成的 TypeScript/Python/Go/Rust SDK)通过 JSON-RPC 调用工具、读取资源、获取 Prompts、以及执行任务。
    • MCP 客户端需在配置中指定服务器启动入口、端口及传输参数;服务器端维护会话与能力声明,支持多种传输协议与安全策略。
    • 如需调试,MCP Inspector、Prompts 测试以及各传输模式的示例用例在仓库的示例模板和文档中给出。
  • 适用场景

    • 将 LLM 客户端接入到可扩展的上下文服务,包含资源、工具、提示模板等能力,适用于需要结构化上下文和功能调用的 LLM 应用。

服务器信息