搶先一步
VMware 提供培訓和認證,助您快速提升。
瞭解更多本部落格文章由 David Soria Parra、Christian Tzolov 和 Dariusz Jędrzejczyk 合著。
Model Context Protocol (MCP) 是由 Anthropic 開發的一個開放協議,正在改變人工智慧應用程式連線和共享上下文的方式。它在各種人工智慧應用程式中獲得了廣泛支援,作為大型語言模型 (LLM) 與資料來源、工具和人工智慧代理互動的標準化介面。無論您是構建需要訪問資料庫的自主系統、協調複雜的人工智慧工作流,還是建立多個代理協作的系統,MCP 都提供了使這些整合無縫銜接的基礎層。
MCP 的獨特之處在於它專注於可組合性和互操作性。除了連線資料來源,MCP 還使開發者能夠構建豐富、互動式的人工智慧系統,其中代理可以透過一致的介面共享上下文、訪問工具並協同工作。這意味著您可以快速接入不斷增長的預構建整合生態系統,同時保持在不同 LLM 提供商之間切換的靈活性,使其成為構建複雜人工智慧應用的理想基礎。
去年 11 月啟動的一個實驗專案,現已發展成為與 Spring AI 團隊和 Anthropic 的激動人心的合作。我們很高興地宣佈,該實驗專案已納入官方 MCP Java SDK。
該 SDK 是該協議最新的語言繫結,與 Python、TypeScript 和 Kotlin SDK 一起釋出在 modelcontextprotocol.io 上。長期以來,Java 一直是企業語言,而 MCP Java SDK 使組織更容易開發前沿的人工智慧應用。
MCP Java SDK 為將人工智慧模型與外部工具和資料來源整合提供了全面的基礎。該 SDK 的主要功能包括:
基於 Spring WebFlux 的 SSE 傳輸,用於響應式應用。
基於 Spring WebMVC 的 SSE 傳輸,用於基於 Servlet 的應用。
請查閱文件瞭解更多入門資訊,並訪問GitHub 倉庫提出問題和參與討論。
Spring AI 專案透過增加開發者生產力增強功能來擴充套件 MCP Java SDK,以便與 Spring Boot 應用整合。藉助 Spring Boot starter,開發者可以使用 Spring 的依賴注入和配置管理快速配置 MCP 客戶端和服務端,從而更容易將人工智慧驅動的工作流整合到他們的應用中。
spring-ai-mcp-client-spring-boot-starter
– 核心客戶端 starter,支援 STDIO 和基於 HTTP 的 SSE 傳輸。spring-ai-mcp-client-webflux-spring-boot-starter
– 基於 WebFlux 的 SSE 傳輸實現,用於響應式應用。spring-ai-mcp-server-spring-boot-starter
– 核心服務端 starter,支援 STDIO 傳輸。spring-ai-mcp-server-webmvc-spring-boot-starter
– 基於 Spring MVC 的 SSE 傳輸實現,用於基於 Servlet 的應用。spring-ai-mcp-server-webflux-spring-boot-starter
– 基於 WebFlux 的 SSE 傳輸實現,用於響應式應用。以下是宣告式配置使用 STDIO 傳輸的客戶端應用的示例。在 application.yml
中,定義以下配置:
spring:
ai:
mcp:
client:
stdio:
servers-configuration: classpath:mcp-servers.json
並且引用的 JSON 檔案使用 Claude Desktop 格式定義了要連線的服務端。
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/Users/username/Desktop",
"/Users/username/Downloads"
]
}
}
}
客戶端應用啟動時,將啟動 MCP 服務端,建立 STDIO 通訊通道,並管理服務端的生命週期。
Spring AI M6 還引入了 @Tool
註解,它簡化了 MCP 服務端的建立。欲瞭解更多資訊,請閱讀Spring AI 參考文件中關於 MCP 的部分。
我們期待在 GitHub 上收到反饋,並非常感謝 Anthropic 團隊的支援。