Expand description
MCP 服务器:rmcp ServerHandler 实现,组合所有工具组。
装配模式(rmcp tool_router 宏支持的「命名路由 + 组合」):
- 每个工具组在各自文件(
tools/<x>.rs)里用#[tool_router(router = <x>_router, vis = "pub")] impl YggMcpServer { ... }生成一个返回ToolRouter<YggMcpServer>的公开函数。 - 本文件定义
YggMcpServer结构体,并在#[tool_handler(router = ...)]里把所有路由用+合并成单一ServerHandler。
所有工具都在 YggMcpServer 上 impl,故 ToolRouter 的类型参数一致,
可用 +(Add for ToolRouter<S>)合并。鉴权与作用域校验在各工具内部
经 Extension<http::request::Parts> 读取 McpPrincipal 完成。
Structs§
- YggMcp
Server - MCP 服务器实例(无状态:每个请求由 service_factory 新建一份)。