e2m2e.api.mcp#
MCP 服务子包(ADR 0014)。
envelope:统一信封 {status, data, error, meta} 与异常翻译。tools:由 Facade 纯派生的工具规格(placeholder 不注册)。worker:长任务 worker 子进程(JSON 行协议,不依赖[mcp]extra)。server:create_server(facade)``(依赖 ``[mcp]extra)。
工具面派生、执行策略(LONG_RUNNING_TOOLS)、帧契约的单一来源在执行核心
e2m2e.api.execution``(#601):不依赖 ``[mcp] extra 的消费方(sidecar、
worker)直接从那里导入,不经本包转口——本包的惰性导出会拽起 server 的
SDK 依赖。
server 惰性导出:sidecar(ADR 0035)复用 envelope/tools 但不依赖
[mcp] extra,本包在缺 mcp 库时仍可导入。
Submodules#
Classes#
一个可注册的 MCP 工具规格。 |
Functions#
|
构造失败信封。 |
|
执行一个 Facade 工具方法并包成信封。 |
|
构造成功信封。 |
|
单个工具的规格:按需构造 schema,不重建全量清单(#601)。 |
|
由暴露类纯派生工具规格(placeholder 不注册)。 |
Package Contents#
- e2m2e.api.mcp.error_envelope(code: str, message: str, details: dict[str, Any] | None = None) Envelope#
构造失败信封。
- e2m2e.api.mcp.invoke_tool(method: Any, arguments: dict[str, Any], *, extra_kwargs: dict[str, Any] | None = None) Envelope#
执行一个 Facade 工具方法并包成信封。
入参经
request_model校验(ValidationError →INVALID_PARAMS),OrbitError原样翻译,其余异常归为 ``INTERNAL_ERROR``(只保留异常类型 名,不泄漏 traceback)。校验与错误翻译见dispatch_tool()。
- class e2m2e.api.mcp.ToolSpec#
一个可注册的 MCP 工具规格。
- name: str#
- description: str#
- input_schema: dict[str, Any]#
- method: collections.abc.Callable[..., Any]#