When I use the deepseek chat model to call mcp, an error is reported 2025-05-15T22:12:57.519+08:00 ERROR 34807 --- [zfo.ai] [oundedElastic-1] o.s.ai.chat.model.MessageAggregator : Aggregation Error
java.lang.IllegalStateException: Error calling tool: [TextContent[audience=null, priority=null, text=Error: fetch failed]] at org.springframework.ai.mcp.SyncMcpToolCallback.call(SyncMcpToolCallback.java:118) ~[spring-ai-mcp-1.0.0-20250515.081419-409.jar:1.0.0-SNAPSHOT] at org.springframework.ai.mcp.SyncMcpToolCallback.call(SyncMcpToolCallback.java:126) ~[spring-ai-mcp-1.0.0-20250515.081419-409.jar:1.0.0-SNAPSHOT] at org.springframework.ai.model.tool.DefaultToolCallingManager.lambda$executeToolCall$5(DefaultToolCallingManager.java:224) ~[spring-ai-model-1.0.0-20250515.081419-260.jar:1.0.0-SNAPSHOT] at io.micrometer.observation.Observation.observe(Observation.java:564) ~[micrometer-observation-1.14.5.jar:1.14.5] at org.springframework.ai.model.tool.DefaultToolCallingManager.executeToolCall(DefaultToolCallingManager.java:221) ~[spring-ai-model-1.0.0-20250515.081419-260.jar:1.0.0-SNAPSHOT] at org.springframework.ai.model.tool.DefaultToolCallingManager.executeToolCalls(DefaultToolCallingManager.java:137) ~[spring-ai-model-1.0.0-20250515.081419-260.jar:1.0.0-SNAPSHOT] at org.springframework.ai.openai.OpenAiChatModel.lambda$internalStream$10(OpenAiChatModel.java:369) ~[spring-ai-openai-1.0.0-20250515.081419-1556.jar:1.0.0-SNAPSHOT] at reactor.core.publisher.FluxDefer.subscribe(FluxDefer.java:46) ~[reactor-core-3.7.4.jar:3.7.4] at reactor.core.publisher.FluxSubscribeOn$SubscribeOnSubscriber.run(FluxSubscribeOn.java:194) ~[reactor-core-3.7.4.jar:3.7.4] at reactor.core.scheduler.WorkerTask.call(WorkerTask.java:84) ~[reactor-core-3.7.4.jar:3.7.4] at reactor.core.scheduler.WorkerTask.call(WorkerTask.java:37) ~[reactor-core-3.7.4.jar:3.7.4] at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:317) ~[na:na] at java.base/java.util.concurrent.FutureTask.run(FutureTask.java) ~[na:na] at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) ~[na:na] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[na:na] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[na:na] at java.base/java.lang.Thread.run(Thread.java:1583) ~[na:na]
Comment From: markpollack
@mxsl-gr can you take a look?
Comment From: mxsl-gr
Hi, @zfqiannian thanks for reporting this. could you share more detail?
I noticed the stack trace is coming from OpenAiChatModel, but Deepseek actually has its own standalone chat model implementation: https://docs.spring.io/spring-ai/reference/1.0/api/chat/deepseek-chat.html
Could you try using that and let me know if the issue persists?