tooluniverse.mcp_client_tool 模块

ToolUniverse 的 MCP 客户端工具

该模块提供了一个工具,作为客户端连接到现有的 MCP 服务器,支持包括工具、资源和提示在内的所有 MCP 功能。

class tooluniverse.mcp_client_tool.BaseMCPClient[源代码]

基类:object

基于 MCP 的客户端,包含 MCPClientTool 和 MCPAutoLoaderTool 共享的通用功能。提供会话管理、请求处理及异步清理模式。

__init__(server_url, transport='http', timeout=30)[源代码]
async _close_session()[源代码]

Placeholder for compatibility; HTTP client calls are scoped per request.

_get_mcp_endpoint(path)[源代码]

获取完整的 MCP 端点 URL

async _make_mcp_request(method, params=None)[源代码]

发起 MCP JSON-RPC 请求

_run_with_cleanup(async_func)[源代码]

常见的异步执行模式及正确的清理方式

class tooluniverse.mcp_client_tool.MCPClientTool[源代码]

基类:BaseTool, BaseMCPClient

一种用作MCP客户端以连接到现有MCP服务器的工具。支持HTTP和WebSocket传输。

__init__(tool_config)[源代码]
async list_tools()[源代码]

从MCP服务器列出可用工具

async call_tool(name, arguments)[源代码]

在MCP服务器上调用工具

async list_resources()[源代码]

从MCP服务器列出可用资源

async read_resource(uri)[源代码]

从MCP服务器读取资源

async list_prompts()[源代码]

列出MCP服务器的可用提示

async get_prompt(name, arguments=None)[源代码]

从MCP服务器获取提示

run(arguments)[源代码]

工具的主运行方法。根据“operation”参数支持不同的操作。

async _run_list_tools()[源代码]

运行 list_tools 操作

async _run_call_tool(arguments)[源代码]

运行 call_tool 操作

async _run_list_resources()[源代码]

运行 list_resources 操作

async _run_read_resource(arguments)[源代码]

运行 read_resource 操作

async _run_list_prompts()[源代码]

运行 list_prompts 操作

async _run_get_prompt(arguments)[源代码]

运行 get_prompt 操作

class tooluniverse.mcp_client_tool.MCPProxyTool[源代码]

基类:MCPClientTool

一种智能体工具,可自动将工具调用转发到MCP服务器。这将为MCP服务器上可用的每个工具创建单独的工具。

__init__(tool_config)[源代码]
run(arguments)[源代码]

将呼叫直接转发到MCP服务器上的目标工具

class tooluniverse.mcp_client_tool.MCPServerDiscovery[源代码]

基类:object

用于发现和创建MCP服务器工具配置的辅助类。

async static discover_server_tools(server_url, transport='http')[源代码]

发现MCP服务器上所有可用的工具并返回工具配置。

static create_mcp_tools_config(server_configs)[源代码]

为多个 MCP 服务器创建工具配置。

参数:

server_configs (List[Dict[str, str]]) – 服务器配置列表,每项包含: - server_url:MCP 服务器的 URL - transport:“http” 或 “websocket”(可选,默认为 “http”) - server_name:工具名称前缀(可选)

返回:

可加载到 ToolUniverse 的工具配置列表

返回类型:

List[Dict[str, Any]]

class tooluniverse.mcp_client_tool.MCPAutoLoaderTool[源代码]

基类:BaseTool, BaseMCPClient

一款先进的 MCP 工具,能够自动发现并加载来自 MCP 服务器的所有工具。它可以将发现的工具注册为独立的 ToolUniverse 工具,实现无缝使用。

__init__(tool_config)[源代码]
async discover_tools()[源代码]

发现 MCP 服务器提供的所有可用工具

async call_tool(tool_name, arguments)[源代码]

直接按名称调用 MCP 工具

generate_proxy_tool_configs()[源代码]

为已发现的工具生成智能体工具配置

register_tools_in_engine(engine)[源代码]

Register discovered tools using ToolUniverse public API

async auto_load_and_register(engine)[源代码]

自动发现、加载并注册所有 MCP 工具

run(arguments)[源代码]

自动加载工具的主运行方法

__del__()[源代码]

对象销毁时的清理操作