MongoDB是如何玩轉MCP的? 原創(chuàng)
編輯 | 云昭
出品 | 51CTO技術棧(微信號:blog51cto)
近日消息,知名數(shù)據(jù)庫廠商MongoDB已在包括Atlas在內的所有數(shù)據(jù)庫中添加了Anthropic的模型上下文協(xié)議(MCP),以幫助開發(fā)人員加速軟件開發(fā)并管理數(shù)據(jù)庫管理任務。
自去年11月發(fā)布以來,MCP的受歡迎程度不斷上升,它是一種開放協(xié)議,允許應用程序中的AI Agent通過客戶端-服務器機制訪問外部工具和數(shù)據(jù)以完成用戶請求,其中客戶端是AI Agent或Agent接口,服務器提供工具和數(shù)據(jù)。
MCP受歡迎程度的上升可以歸因于Agent應用程序的廣泛普及,這些應用程序能夠在無需人工干預的情況下執(zhí)行任務,從而讓企業(yè)和團隊在有限的資源下完成更多工作。
然而,為了使應用程序具備Agent功能,開發(fā)人員需要利用像MCP這樣的協(xié)議將其連接到大語言模型(LLMs)以進行推理,并提供必要的數(shù)據(jù)上下文以及工具,以便在無需人工干預的情況下完成用戶請求。
本文帶大家快速了解下,MongoDB是如何通過MCP為自己賦能的。
1.通過MCP客戶端管理數(shù)據(jù)庫管理任務
在MongoDB的情況下,開發(fā)人員可以利用目前處于公開預覽階段的MongoDB MCP服務器,將其數(shù)據(jù)庫(包括Atlas、MongoDB社區(qū)版和MongoDB企業(yè)高級版)與支持MCP的客戶端(如Windsurf、Cursor、GitHub Copilot for VS Code和Anthropic Claude)進行集成。
集成完成后,開發(fā)人員將能夠使用這些支持MCP的客戶端以自然語言探索數(shù)據(jù)庫中的數(shù)據(jù)或查詢數(shù)據(jù)以進行分析,該公司表示。
此外,開發(fā)人員還可以使用這些客戶端以自然語言執(zhí)行數(shù)據(jù)庫管理任務,例如創(chuàng)建具有只讀權限的新數(shù)據(jù)庫用戶或列出當前的網絡訪問規(guī)則。
根據(jù)MongoDB產品管理總監(jiān)本杰明·弗拉斯特(Benjamin Flast)的說法,這些功能使開發(fā)人員擺脫了手動查詢優(yōu)化和數(shù)據(jù)庫管理等無差別的任務,從而提高了生產力,進而加速了應用程序的開發(fā)。
Moor Insights & Strategy首席分析師杰森·安德森(Jason Andersen)表示,大多數(shù)數(shù)據(jù)庫供應商可能會采用MCP,就像他們采用檢索增強生成(RAG)為LLMs提供上下文一樣。
MongoDB并不是唯一支持MCP的數(shù)據(jù)庫供應商。PostgreSQL和SQL等其他數(shù)據(jù)庫已經通過Azure Database for PostgreSQL MCP Server、PG-MCP和MySQL MCP Server分別支持該協(xié)議。
谷歌最近宣布通過其GenAI數(shù)據(jù)庫工具箱支持數(shù)據(jù)庫的MCP集成,并將其GenAI數(shù)據(jù)庫工具箱更名為MCP數(shù)據(jù)庫工具箱。
數(shù)據(jù)管理和分析平臺提供商,據(jù)The Futurum Group數(shù)據(jù)和分析實踐負責人布拉德利·辛明(Bradley Shimmin)稱,正在開發(fā)自己的MCP實現(xiàn),并將其融入各自用戶的工作流程中。
“例如,數(shù)據(jù)集成商和API管理器Boomi正在建立自己的MCP網關,以管理和協(xié)調來自許多不同MCP服務器的MCP請求,”辛明說。
2.通過MCP客戶端進行上下文感知編碼
MongoDB將MCP與其數(shù)據(jù)庫集成的另一個優(yōu)勢是幫助開發(fā)人員更快地編碼,弗拉斯特表示,這種集成將通過支持MCP的編碼助手(如Windsurf、Cursor和Claude Desktop)實現(xiàn)自然語言的上下文感知代碼生成。
“提供上下文(如模式和數(shù)據(jù)結構)可以實現(xiàn)更準確的代碼生成,減少幻覺現(xiàn)象并增強Agent能力,”MongoDB在博客中解釋道,并補充說開發(fā)人員可以描述他們需要的數(shù)據(jù),編碼助手可以生成MongoDB查詢以及與之交互所需的應用程序代碼。
據(jù)安德森稱,MongoDB通過MCP客戶端引入上下文感知編碼的努力將幫助企業(yè)減少成本,包括財務和技術債務,并持續(xù)與人工智能基礎設施集成。
然而,辛明指出,MCP與數(shù)據(jù)庫的集成將帶來一種趨勢,即兩種開發(fā)實踐模式——通過SDK直接API訪問和MCP集成——將共存。
“直接API訪問將為高度編程化的交互提供最佳性能和控制。對于更靈活的交互,LLMs可能會代替軟件開發(fā)人員,即時編寫自己的‘軟’API,企業(yè)將依賴像MCP這樣的標準資源文檔來指導這些模型訪問這些資源,”辛明說。
3.MCP的安全問題
據(jù)ISG軟件研究總監(jiān)馬特·阿斯萊特(Matt Aslett)稱,MCP存在許多安全問題,尤其是在訪問控制方面,盡管分析師預計由于該協(xié)議的普及,開發(fā)人員社區(qū)將提供解決這些挑戰(zhàn)的方案。
安德森指出,開發(fā)人員和企業(yè)通常在云環(huán)境中部署MCP,以繞開訪問控制問題,因為云具有通用的身份驗證和授權基礎設施。
“這有助于確保正確的資源可以相互通信。因此,當部署在同構環(huán)境中時,你信任已經存在的東西,”安德森補充說,一些企業(yè)或開發(fā)人員可能覺得云解決方案“不夠好”。
同樣,辛明指出,確保MCP的安全將取決于數(shù)據(jù)庫供應商本身,因為他們必須確保不會在沒有某種訪問控制手段的情況下開放數(shù)據(jù)訪問。
本文轉載自??51CTO技術棧??,作者:云昭
