Spring AI MCP 0.6.0(里程碑)釋出

版本釋出 | Christian Tzolov | 2025 年 1 月 23 日 | ...

我們很高興地宣佈 Spring AI MCP 0.6.0 里程碑版本釋出。

重大更改 ⚠️

  • McpClient.using() - 請改用 McpClient.sync()McpClient.async()
  • McpServer.using() - 請改用 McpServer.sync()McpServer.async()
  • McpServer.ToolRegistration - 請改用 McpServerFeatures.SyncToolRegistrationMcpServerFeatures.AsyncToolRegistration
  • McpServer.ResourceRegistration - 請改用 McpServerFeatures.SyncResourceRegistrationMcpServerFeatures.AsyncResourceRegistration
  • McpServer.PromptRegistration - 請改用 McpServerFeatures.SyncPromptRegistrationMcpServerFeatures.AsyncPromptRegistration
  • ToolHelper.toToolRegistration() - 請改用 ToolHelper.toSyncToolRegistration()

請遵循 0.6.0 遷移指南,以瞭解新的 API 更改。

主要特性與改進

協議版本協商

  • 在 MCP 客戶端和伺服器之間實現了協議版本協商
  • 在客戶端和伺服器中增加了對多個協議版本的支援
  • 當請求不支援的版本時,實現了回退到最新版本的機制
  • 為版本協商增加了全面的測試覆蓋

可配置的 SSE 端點

  • 使伺服器傳輸中的 SSE 端點路徑可配置
  • 增加了對 WebFluxSseServerTransport、WebMvcSseServerTransport 和 HttpServletSseServerTransport 的自定義支援
  • 保持了與預設 "/sse" 端點的向後相容性
  • 使 Java SDK 的行為與 Python SDK 的 SseServerTransport 對齊

錯誤修復 🐛

傳輸層改進

  • 為傳輸層中的入站處理添加了清理邏輯
  • 增強了傳輸可靠性和資源管理

改進與重構 🔧

API 重構

  • 分離了非同步和同步客戶端互動
  • 引入了新的客戶端建立模式
    // Synchronous client API
    McpClient.sync(transport).build();
    
    // Asynchronous client API
    McpClient.async(transport).build();
    
  • 使 RequestHandler 能夠識別響應型別
  • 廢棄了舊版客戶端構建器模式

程式碼質量與結構

  • 將 mcp-test 中的抽象測試與 mcp-core 對齊
  • 改進了方法作用域定義
  • 增強了程式碼組織和可維護性

獲取 Spring 新聞通訊

透過 Spring 新聞通訊保持聯絡

訂閱

領先一步

VMware 提供培訓和認證,助您加速進步。

瞭解更多

獲得支援

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位制檔案,只需一份簡單的訂閱。

瞭解更多

即將舉行的活動

檢視 Spring 社群所有即將舉行的活動。

檢視所有