偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

MCP (模型上下文協(xié)議)架構(gòu)設(shè)計(jì)深度剖析 原創(chuàng)

發(fā)布于 2025-5-13 06:47
瀏覽
0收藏

最近,AI Agent 和外部工具之間的互動(dòng)變得越來(lái)越流行。從 OpenAI 最先推出的 Function Calling 功能,到各種插件和框架,大家都在努力讓 AI 模型能更有效地調(diào)用外部的功能。不過(guò),目前這些集成方式還是比較分散,開發(fā)者需要為每個(gè)服務(wù)手動(dòng)設(shè)置接口、處理認(rèn)證和邏輯,而且不同平臺(tái)之間還互不兼容,確實(shí)挺麻煩的。


MCP (模型上下文協(xié)議)架構(gòu)設(shè)計(jì)深度剖析-AI.x社區(qū)

就在這種情況下,Anthropic 在2024年底推出了一個(gè)叫做模型上下文協(xié)議(Model Context Protocol,簡(jiǎn)稱 MCP)的新東西。這個(gè)協(xié)議的野心不小,它想做的事情就像編程語(yǔ)言里的 LSP(Language Server Protocol)一樣,為 AI 和工具之間的互動(dòng)設(shè)定一個(gè)標(biāo)準(zhǔn),讓 AI Agent 能動(dòng)態(tài)地發(fā)現(xiàn)、選擇和組織工具,甚至還支持人在操作過(guò)程中插手。

MCP (模型上下文協(xié)議)架構(gòu)設(shè)計(jì)深度剖析-AI.x社區(qū)

自從 MCP 推出以來(lái),它的發(fā)展速度非??欤鐓^(qū)里已經(jīng)出現(xiàn)了好幾千個(gè) MCP 服務(wù)器,能連接到 GitHub、Slack 甚至 Blender 這樣的 3D 設(shè)計(jì)工具。像 Cursor、Claude Desktop 這樣的應(yīng)用也開始支持 MCP了,只要裝上新的服務(wù)器,就能擴(kuò)展它們的能力。

MCP 架構(gòu)設(shè)計(jì)剖析

1、MCP 架構(gòu)設(shè)計(jì)剖析

MCP 架構(gòu)設(shè)計(jì)分為核心組件、傳輸層和通信、MCP 服務(wù)器生命周期等構(gòu)成,下面詳細(xì)剖析之。

1.1、核心組件

MCP 架構(gòu)由三個(gè)核心組件組成:MCP 主機(jī)(MCP Host)、MCP 客戶端(MCP Client)和 MCP 服務(wù)器(MCP Server)。這些組件協(xié)同工作,以促進(jìn) AI 應(yīng)用、外部工具和數(shù)據(jù)源之間的無(wú)縫通信,確保操作的安全性和正確管理。如圖 2 所示,在典型工作流程中,用戶向 MCP 客戶端發(fā)送提示詞,客戶端分析意圖,通過(guò) MCP 服務(wù)器選擇適當(dāng)?shù)墓ぞ?,并調(diào)用外部 API 來(lái)檢索和處理所需的信息,然后通知用戶結(jié)果。

MCP (模型上下文協(xié)議)架構(gòu)設(shè)計(jì)深度剖析-AI.x社區(qū)

1.1.1、MCP 主機(jī)

MCP 主機(jī)是一個(gè) AI 應(yīng)用,它在運(yùn)行 MCP 客戶端的同時(shí),為執(zhí)行基于 AI 的任務(wù)提供環(huán)境。它集成交互工具和數(shù)據(jù),以實(shí)現(xiàn)與外部服務(wù)的順暢通信。比如: Claude Desktop 用于 AI 輔助內(nèi)容創(chuàng)建,Cursor 是一個(gè) AI 驅(qū)動(dòng)的 IDE,用于代碼補(bǔ)全和軟件開發(fā),以及執(zhí)行復(fù)雜任務(wù)的 AI Agent。MCP 主機(jī)承載 MCP 客戶端,并確保與外部 MCP 服務(wù)器通信。

1.1.2、MCP 客戶端

MCP 客戶端在主機(jī)環(huán)境中充當(dāng)中介,管理 MCP 主機(jī)與一個(gè)或多個(gè) MCP 服務(wù)器之間的通信。它向 MCP 服務(wù)器發(fā)起請(qǐng)求,查詢可用功能,并獲取描述服務(wù)器能力的響應(yīng)。這確保了主機(jī)與外部工具之間的無(wú)縫互動(dòng)。除了管理請(qǐng)求和響應(yīng)外,MCP 客戶端還處理來(lái)自 MCP 服務(wù)器的通知,提供有關(guān)任務(wù)進(jìn)度和系統(tǒng)狀態(tài)的實(shí)時(shí)更新。它還執(zhí)行采樣,收集有關(guān)工具使用和性能的數(shù)據(jù),使優(yōu)化和明智的決策成為可能。MCP 客戶端通過(guò)傳輸層與 MCP 服務(wù)器通信,促進(jìn)主機(jī)與外部資源之間的安全、可靠的數(shù)據(jù)交換和順暢互動(dòng)。

1.1.3 MCP 服務(wù)器

MCP 服務(wù)器使 MCP 主機(jī)和客戶端能夠訪問(wèn)外部系統(tǒng)并執(zhí)行操作,提供三種核心能力:工具、資源和提示詞。

  • 工具:?jiǎn)⒂猛獠坎僮?。工具允許 MCP 服務(wù)器調(diào)用外部服務(wù)和 API,代表 AI 大模型執(zhí)行操作。當(dāng)客戶端請(qǐng)求操作時(shí),MCP 服務(wù)器識(shí)別適當(dāng)?shù)墓ぞ?,與服務(wù)互動(dòng),并返回結(jié)果。比如:如果 AI 大模型需要實(shí)時(shí)天氣數(shù)據(jù)或情感分析,MCP 服務(wù)器連接到相關(guān) API,檢索數(shù)據(jù),并將其傳遞給主機(jī)。與傳統(tǒng)的函數(shù)調(diào)用不同,這需要多個(gè)步驟并將調(diào)用與執(zhí)行分開,MCP 服務(wù)器的工具簡(jiǎn)化了這一過(guò)程,允許模型根據(jù)上下文自主選擇和調(diào)用適當(dāng)?shù)墓ぞ?。一旦配置,這些工具遵循標(biāo)準(zhǔn)化的供應(yīng)和消費(fèi)模型,使它們模塊化、可重用,并且易于其他應(yīng)用程序訪問(wèn),從而提高系統(tǒng)效率和靈活性。
  • 資源:向 AI 大模型公開數(shù)據(jù)。資源提供 MCP 服務(wù)器可以向 AI 大模型公開的結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)集的訪問(wèn)。這些數(shù)據(jù)集可能來(lái)自本地存儲(chǔ)、數(shù)據(jù)庫(kù)或云平臺(tái)。當(dāng) AI 大模型請(qǐng)求特定數(shù)據(jù)時(shí),MCP 服務(wù)器檢索和處理相關(guān)信息,使大模型能夠做出數(shù)據(jù)驅(qū)動(dòng)的決策。比如:推薦系統(tǒng)可能訪問(wèn)客戶互動(dòng)日志,或者文檔摘要任務(wù)可能查詢文本庫(kù)。
  • 提示詞:用于工作流程優(yōu)化的可重用模板。提示詞是 MCP 服務(wù)器生成和維護(hù)的預(yù)定義模板和工作流程,以優(yōu)化 AI 響應(yīng)并簡(jiǎn)化重復(fù)任務(wù)。它們確保響應(yīng)的一致性并提高任務(wù)執(zhí)行效率。比如:客戶支持聊天機(jī)器人可能使用提示詞模板提供統(tǒng)一和準(zhǔn)確的響應(yīng),而注釋任務(wù)可能依賴于預(yù)定義的提示詞來(lái)保持?jǐn)?shù)據(jù)標(biāo)注的一致性。

1.2 傳輸層和通信

傳輸層確保安全、雙向通信,允許主機(jī)環(huán)境與外部系統(tǒng)之間的實(shí)時(shí)互動(dòng)和有效數(shù)據(jù)交換。傳輸層管理客戶端的初始請(qǐng)求傳輸、服務(wù)器響應(yīng)的傳遞以及保持客戶端了解正在進(jìn)行的更新的通知交換。MCP 客戶端和 MCP 服務(wù)器之間的通信遵循結(jié)構(gòu)化過(guò)程,從客戶端查詢服務(wù)器功能開始。收到請(qǐng)求后,服務(wù)器以初始響應(yīng)回應(yīng),列出客戶端可以利用的可用工具、資源和提示。一旦建立連接,系統(tǒng)保持持續(xù)的通知交換,確保服務(wù)器狀態(tài)的變化或更新實(shí)時(shí)反饋給客戶端。這種結(jié)構(gòu)化通信確保了高性能互動(dòng),并使 AI 大模型與外部資源保持同步,提高 AI 應(yīng)用的效果。

1.3 MCP 服務(wù)器生命周期

如圖3所示,MCP 服務(wù)器的生命周期包括三個(gè)關(guān)鍵階段:創(chuàng)建、運(yùn)行和更新。每個(gè)階段定義了確保 MCP 服務(wù)器安全和高效運(yùn)行的關(guān)鍵活動(dòng),使 AI 大模型和外部工具、資源和提示之間能夠無(wú)縫互動(dòng)。

MCP (模型上下文協(xié)議)架構(gòu)設(shè)計(jì)深度剖析-AI.x社區(qū)

1.3.1 MCP 服務(wù)器組件

MCP 服務(wù)器負(fù)責(zé)管理外部工具、數(shù)據(jù)源和工作流程,為 AI 大模型提供執(zhí)行任務(wù)所需的必要資源,確保高效和安全。它包括幾個(gè)關(guān)鍵組件,確保順暢和有效的操作。元數(shù)據(jù)包括有關(guān)服務(wù)器的基本信息,比如:其名稱、版本和描述,允許客戶端識(shí)別和與適當(dāng)?shù)姆?wù)器互動(dòng)。配置涉及源代碼、配置文件和清單,定義服務(wù)器的操作參數(shù)、環(huán)境設(shè)置和安全策略。工具列表存儲(chǔ)可用工具的目錄,詳細(xì)說(shuō)明其功能、輸入輸出格式和訪問(wèn)權(quán)限,確保適當(dāng)?shù)墓ぞ吖芾砗桶踩?。資源列表管理對(duì)外部數(shù)據(jù)源的訪問(wèn),包括 Web API、數(shù)據(jù)庫(kù)和本地文件,指定允許的端點(diǎn)及其相關(guān)權(quán)限。最后,提示詞和模板包括預(yù)配置的任務(wù)模板和工作流程,提高 AI 大模型執(zhí)行復(fù)雜操作的效率。這些組件共同使 MCP 服務(wù)器能夠?yàn)?AI 應(yīng)用提供無(wú)縫工具集成、數(shù)據(jù)檢索和任務(wù)編排。

1.3.2 創(chuàng)建階段

創(chuàng)建階段是 MCP 服務(wù)器生命周期的初始階段,在此階段,服務(wù)器被注冊(cè)、配置并準(zhǔn)備運(yùn)行。此階段涉及三個(gè)關(guān)鍵步驟。服務(wù)器注冊(cè)為 MCP 服務(wù)器分配唯一名稱和身份,允許客戶端發(fā)現(xiàn)并連接到適當(dāng)?shù)姆?wù)器實(shí)例。安裝程序部署涉及安裝 MCP 服務(wù)器及其相關(guān)組件,確保正確的配置文件、源代碼和清單到位。代碼完整性驗(yàn)證驗(yàn)證服務(wù)器代碼庫(kù)的完整性,以防止未經(jīng)授權(quán)的修改或篡改,使服務(wù)器在運(yùn)行前保持完整性。創(chuàng)建階段的成功完成確保 MCP 服務(wù)器準(zhǔn)備好處理請(qǐng)求并與外部工具和數(shù)據(jù)源安全互動(dòng)。

1.3.3 運(yùn)行階段

運(yùn)行階段是 MCP 服務(wù)器積極處理請(qǐng)求、執(zhí)行工具調(diào)用并促進(jìn) AI 應(yīng)用與外部資源之間無(wú)縫互動(dòng)的階段。工具執(zhí)行允許 MCP 服務(wù)器根據(jù) AI 應(yīng)用的請(qǐng)求調(diào)用適當(dāng)?shù)墓ぞ?,確保所選工具執(zhí)行其預(yù)期操作。斜杠命令處理使服務(wù)器能夠解釋和執(zhí)行多個(gè)命令,包括通過(guò)用戶界面或 AI Agent 發(fā)出的命令,同時(shí)管理潛在的命令重疊以防止沖突。沙箱機(jī)制執(zhí)行確保執(zhí)行環(huán)境隔離和安全,防止未經(jīng)授權(quán)的訪問(wèn)并減輕潛在風(fēng)險(xiǎn)。在整個(gè)運(yùn)行階段,MCP服務(wù)器保持穩(wěn)定和受控的環(huán)境,使可靠和安全的任務(wù)執(zhí)行成為可能。

1.3.4 更新階段

更新階段確保 MCP  服務(wù)器保持安全、最新,并能夠適應(yīng)不斷變化的需求。此階段包括三個(gè)關(guān)鍵任務(wù)。授權(quán)管理驗(yàn)證更新后訪問(wèn)權(quán)限保持有效,防止更新后服務(wù)器資源的未經(jīng)授權(quán)使用。版本控制維護(hù)不同服務(wù)器版本之間的一致性,確保新更新不會(huì)引入漏洞或沖突。舊版本管理停用或刪除過(guò)時(shí)版本,防止攻擊者利用以前版本的已知漏洞。了解MCP服務(wù)器的生命周期對(duì)于識(shí)別潛在漏洞和設(shè)計(jì)有效的安全措施至關(guān)重要。每個(gè)階段引入了必須仔細(xì)處理的獨(dú)特挑戰(zhàn),以保持MCP服務(wù)器在動(dòng)態(tài) AI 環(huán)境中的安全性、效率和適應(yīng)性。


本文轉(zhuǎn)載自??玄姐聊AGI??  作者:玄姐

?著作權(quán)歸作者所有,如需轉(zhuǎn)載,請(qǐng)注明出處,否則將追究法律責(zé)任
已于2025-5-13 06:47:54修改
收藏
回復(fù)
舉報(bào)
回復(fù)
相關(guān)推薦