🔌 MCP 工具
# 接入 MCP 工具服务
把 MCP 客户端交给 Spring 管理:
import io.agentscope.core.tool.mcp.McpClientBuilder;
import io.agentscope.core.tool.mcp.McpClientWrapper;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class McpConfiguration {
@Bean(destroyMethod = "close")
public McpClientWrapper orderMcpClient() {
return McpClientBuilder.create("order-service")
.streamableHttpTransport("http://127.0.0.1:8081/mcp")
.buildSync();
}
}
地址替换为实际 MCP 服务地址。需要鉴权时,在 buildSync() 前调用 .header("Authorization", "Bearer " + token),token 从应用配置读取。
在 Agent 组件中注册:
@org.springframework.beans.factory.annotation.Autowired
private io.agentscope.core.tool.mcp.McpClientWrapper orderMcpClient;
@Override
protected java.util.List<io.agentscope.core.tool.mcp.McpClientWrapper> mcpClients() {
return java.util.List.of(orderMcpClient);
}
首次执行时自动发现工具。MCP 客户端由 Java 应用调用,使用 Docker 后端也不会把它自动搬进沙箱。其他传输方式可使用 sseTransport(...) 或 stdioTransport(...);StdIO 程序需安装在 Java 应用所在环境。
# 客户端生命周期
共享 MCP 客户端由应用管理,以上示例使用 Spring Bean 的 destroyMethod="close" 关闭客户端。工具可访问的业务范围由 MCP 服务自身的凭据和授权决定。
MCP 注册并不自动提供审批。需要在调用前征得用户同意时,为对应工具配置 ASK 规则和确认处理器。
帮助我们改善此文档 (opens new window)
上次更新: 2026/09/20, 11:49:27



