| 1234567891011121314151617181920212223242526272829303132333435 |
- package com.example.demo.test;
- import io.modelcontextprotocol.client.McpClient;
- import io.modelcontextprotocol.client.McpSyncClient;
- import io.modelcontextprotocol.client.transport.HttpClientStreamableHttpTransport;
- import io.modelcontextprotocol.spec.McpSchema;
- import java.time.Duration;
- import java.util.HashMap;
- import java.util.Map;
- public class McpStateLessClientTest {
- public static void main(String[] args) {
- HttpClientStreamableHttpTransport transport =
- HttpClientStreamableHttpTransport.builder("http://127.0.0.1:7778/mcp")
- .build();
- McpSyncClient client = McpClient.sync(transport)
- .requestTimeout(Duration.ofSeconds(30)).build();
- client.initialize();
- System.out.println("获取工具描述");
- McpSchema.ListToolsResult ts = client.listTools();
- ts.tools().forEach(t->{
- System.out.println(t.name()+"->"+t.description());
- });
- Map<String, Object> p = new HashMap();
- p.put("city","北京");
- McpSchema.CallToolResult re = client.callTool(
- McpSchema.CallToolRequest.builder()
- .name("getWeather")
- .arguments(p).build());
- System.out.println("执行工具结果:"+re.content());
- client.close();
- }
- }
|