Не получать никаких результатов с сервера Spring AI MCPJAVA

Программисты JAVA общаются здесь
Anonymous
Не получать никаких результатов с сервера Spring AI MCP

Сообщение Anonymous »

Я создаю скелет MCP-сервера, используя Spring AI с транспортом STDIO:

Код: Выделить всё

    
21
1.1.4

...

org.springframework.ai
spring-ai-starter-mcp-server
${spring-ai-starter.version}

Код: Выделить всё

application.yml

Код: Выделить всё

spring:
ai:
mcp:
server:
stdio: true
name: light-mcp
version: 0.0.1
main:
banner-mode: off
web-application-type: none
Компонент

Код: Выделить всё

    @Tool(name = "get_random_number", description="Return a random number", returnDirect = true)
public long getRandomNumber() {
long newRandomLong = new Random(System.currentTimeMillis()).nextLong();
return newRandomLong;
}
Конфигурация

Код: Выделить всё

    @Bean
public ToolCallbackProvider getToolCallbacks(McpComponent lightMcpComponent) {
return ToolCallbackProvider.from(List.of(ToolCallbacks.from(tMcpComponent)));
}
После запуска я вижу, что инструмент зарегистрирован и ввод обработан (получается сообщение об ошибке при недопустимом вводе):

Код: Выделить всё

java -jar target/mcp-server-....
...
o.s.a.m.s.c.a.McpServerAutoConfiguration : Registered tools: 1
...
Когда я отправляю действительный JSON-RCP на вход, я не могу получить никаких выходных данных обратно. Я также не вижу вызванных методов инструмента.

Код: Выделить всё

{"jsonrpc":"2.0","id":2,"method":"tools/list"}
{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"get_random_number","arguments":{}}}
Это отправляется на вход (stdin) после запуска сервера, но я не вижу никаких выводимых данных. Если я укажу недопустимое значение method, возвращается сообщение об ошибке, поэтому создается впечатление, что ввод каким-то образом обработан.

Вернуться в «JAVA»