使用说明(Markdown 格式)
-
项目简介
- tmcp 是一个用 Rust 编写的 MCP(Model Context Protocol)实现,兼具服务器与客户端能力,能够通过 JSON-RPC 2.0 与前端或 LLM 客户端进行交互,托管资源、注册并执行工具、定义并渲染 Prompt 模板等,提供多传输通道的支持,便于在不同环境中部署 MCP 服务。
-
主要功能点
- MCP 协议全面支持:实现最新 MCP 规范的请求、响应和通知机制,支持初始化、工具调用、资源管理、提示渲染等核心能力。
- 服务器与客户端两端能力:提供服务端(Server)和客户端(Client)的完整实现与 API,方便搭建端到端的 MCP 应用。
- 多传输通道:支持标准输入/输出(stdio)、TCP、HTTP(伪 SSE 服务器推送)等传输方式,便于在本地开发、网络环境和浏览器环境中使用。
- 自动化工具与资源管理:工具(Tools)、资源(Resources)和提示(Prompts)的注册、查询与执行能力,以及对资源变更的通知机制。
- OAuth 2.0 认证与动态客户端注册(可选功能):提供对接 MCP 的鉴权与令牌管理能力,增强安全性和可扩展性。
- 自动化测试与示例:包含丰富的测试用例,涵盖工具调用、初始化、资源和通知等各种 MCP 场景,帮助上手与验证。
-
安装步骤
- 使用 Cargo 构建与依赖下载:
- 确保已安装 Rust(稳定版)及 Cargo。
- 在项目根目录执行构建命令:cargo build --all-features
- 运行测试(可选以验证实现正确性):
- cargo test --all-features
- 使用 Cargo 构建与依赖下载:
-
服务器配置(配置 JSON 示例,供 MCP 客户端在连接前参考)
- 服务器名称:指定 MCP 服务器实例的名称,用于初始化阶段对外声明。
- 启动命令:启动 MCP 服务器的可执行文件路径(若通过子进程方式运行)。
- 运行参数:传递给启动命令的参数列表。
- 说明:客户端在连接时,会读取服务器宣告的能力和信息,因此请在配置中准确指明服务器名称与启动方式。
- 以下为符合仓库信息的示意性配置描述(请以实际部署的可执行文件路径和参数替换):
- 示例(JSON 描述,不作为代码块): { "server_name": "tmcp-server", "command": "/path/to/tmcp-server", "args": ["--config", "server_config.json"] }
-
基本使用方法
- 选择传输通道:根据实际部署环境选择 stdio、TCP、HTTP 等传输通道,与 MCP 客户端建立连接后,即可进行 MCP 的资源、工具、提示等管理与调用。
- 使用示例场景:实现一个包含若干工具的 MCP 服务端,在初始化阶段声明工具能力,后续客户端可通过列表工具、调用工具等接口进行交互。
- 运行与测试:执行服务器启动命令,使用 MCP 客户端连接并执行初始化、调用工具、查询资源等流程进行验证。
信息
分类
AI与计算