【譯】借助提示詞、資源和采樣,在 Visual Studio 中充分利用 MCP
我們很高興地宣布,Visual Studio 現(xiàn)已支持 MCP 提示詞、資源和采樣功能(很快還會(huì)推出更多功能!),通過從您的工程技術(shù)棧中引入更多上下文信息來增強(qiáng)您的 Copilot 使用體驗(yàn)。這些強(qiáng)大的新功能實(shí)現(xiàn)了與您喜愛的工具和服務(wù)的更深度集成,讓您的開發(fā)工作流程更智能、更具上下文感知能力。
讓我們深入探討這些功能中的每一個(gè),并結(jié)合特定的 MCP 服務(wù)器舉例說明,它們確實(shí)能提升您的 AI 編程體驗(yàn)。
MCP 資源和資源模板:無縫訪問外部數(shù)據(jù)
MCP 還為服務(wù)器向客戶端暴露資源提供了一種標(biāo)準(zhǔn)化方式。資源使服務(wù)器能夠共享為語言模型提供上下文的數(shù)據(jù),例如文件、數(shù)據(jù)庫模式或特定于應(yīng)用程序的信息。每個(gè)資源都通過統(tǒng)一資源標(biāo)識(shí)符(URI)進(jìn)行唯一標(biāo)識(shí),這讓您能從 MCP 服務(wù)器中獲得更多價(jià)值,并直接在 IDE 中獲取上下文。
示例:Azure DevOps 工作項(xiàng)
在使用 Azure DevOps 時(shí),您現(xiàn)在可以在聊天對(duì)話中直接引用工作項(xiàng)、用戶故事和項(xiàng)目數(shù)據(jù)。Azure DevOps MCP 服務(wù)器會(huì)公開工作項(xiàng)模板、沖刺信息和團(tuán)隊(duì)能力數(shù)據(jù)等資源,Copilot 可以利用這些資源提供有關(guān)項(xiàng)目規(guī)劃和開發(fā)任務(wù)的更多上下文建議。
使用 MCP 資源
要使用任何可供您使用的 MCP 資源,請(qǐng)?jiān)?Copilot 聊天中引用它們,方式與引用任何其他上下文內(nèi)容相同 —— 在資源URI前加上井號(hào)(#)。
動(dòng)態(tài)內(nèi)容的資源模板
就像提示詞一樣,MCP 資源可以包含參數(shù),您可以填寫這些參數(shù)來根據(jù)自己的特定需求自定義資源。這些被稱為資源模板。配置方法如下:
- 使用聊天中的 + Reference 按鈕
- 從菜單中選擇 MCP resource 選項(xiàng)
- 選擇您的資源模板并填寫所有必填參數(shù)
- 點(diǎn)擊 Add Resource,使該 MCP 資源可在聊天中被引用
示例:Figma 設(shè)計(jì)上下文
對(duì)于與設(shè)計(jì)系統(tǒng)緊密合作的團(tuán)隊(duì)而言,F(xiàn)igma MCP 服務(wù)器允許您在開發(fā)對(duì)話中直接引用設(shè)計(jì)組件、樣式指南和設(shè)計(jì)規(guī)范。這通過讓 Copilot 隨時(shí)獲取設(shè)計(jì)上下文,彌合了設(shè)計(jì)與開發(fā)之間的差距。
MCP 提示詞和提示詞模板:借助專門的指令獲得更優(yōu)質(zhì)的回應(yīng)
MCP 提示詞允許服務(wù)器提供結(jié)構(gòu)化的消息和與語言模型交互的指令,這些消息和指令會(huì)根據(jù)相關(guān)服務(wù)器的使用場(chǎng)景和內(nèi)容進(jìn)行定制,以確保您能針對(duì)特定任務(wù)獲得最佳響應(yīng)。
如何使用 MCP 提示詞
Visual Studio 現(xiàn)在允許您發(fā)現(xiàn)可用的提示詞、檢索其內(nèi)容,并提供參數(shù)來對(duì)它們進(jìn)行自定義。要引用可能來自 MCP 服務(wù)器的任何提示詞,請(qǐng)執(zhí)行以下操作:
- 點(diǎn)擊聊天中的 + Reference 按鈕
- 選擇 Prompts 選項(xiàng)
- 從彈出菜單中選擇 MCP prompts
您會(huì)看到一個(gè)彈窗,在那里您可以選擇想要使用的提示詞,然后點(diǎn)擊 Insert Prompt,將該提示詞中的文本包含到聊天中。
帶有自定義參數(shù)的提示模板
一些 MCP 提示會(huì)包含可填寫的參數(shù),以便您根據(jù)自身特定需求自定義提示 —— 這些被稱為提示模板。如果您在模態(tài)對(duì)話框中選擇了包含參數(shù)的提示,那么在將該提示插入聊天內(nèi)容之前,您可以指定這些參數(shù)的值。
示例:GitHub 集成
想象一下,您正在進(jìn)行代碼審查,并且希望利用 GitHub 的專用提示詞。借助 GitHub MCP 服務(wù)器,您可以使用專為分析拉取請(qǐng)求、生成提交信息或?qū)彶榇a變更而設(shè)計(jì)的提示詞。這些提示詞了解 GitHub 的上下文,能夠提供比通用提示詞更具針對(duì)性的幫助。
MCP 采樣:賦能高級(jí)智能體行為
MCP 中的采樣功能允許服務(wù)器通過讓大語言模型(LLM)調(diào)用嵌套在其他 MCP 服務(wù)器功能內(nèi)部來實(shí)現(xiàn)智能體行為。這一強(qiáng)大功能使 MCP 服務(wù)器能夠向大語言模型發(fā)出請(qǐng)求,而非像通常的工作流程那樣由大語言模型向 MCP 服務(wù)器請(qǐng)求內(nèi)容。Visual Studio 現(xiàn)在支持這一高級(jí)功能,讓您的 MCP 服務(wù)器能夠代表您執(zhí)行更復(fù)雜、多步驟的任務(wù)。
采樣是如何工作的
要利用采樣功能,無需進(jìn)行任何配置 —— 只要您的 MCP 服務(wù)器支持該功能,Visual Studio 也會(huì)支持。當(dāng) Copilot 判定某個(gè)請(qǐng)求能從采樣調(diào)用中獲益時(shí),您會(huì)看到一個(gè)包含該請(qǐng)求所有詳情的對(duì)話框,在后臺(tái)執(zhí)行任何操作之前,會(huì)請(qǐng)您確認(rèn)是否進(jìn)行采樣調(diào)用。這能確保您對(duì)所有自動(dòng)操作擁有完全控制權(quán)。
示例:Playwright 測(cè)試場(chǎng)景
Playwright MCP 服務(wù)器可以利用采樣來根據(jù)您應(yīng)用程序的當(dāng)前狀態(tài)自動(dòng)生成全面的測(cè)試場(chǎng)景。當(dāng)您尋求測(cè)試方面的幫助時(shí),它可能會(huì)對(duì)您應(yīng)用程序的 DOM 結(jié)構(gòu)進(jìn)行采樣,分析用戶流程,然后生成有針對(duì)性的測(cè)試腳本,以覆蓋關(guān)鍵的用戶路徑 —— 所有這些都通過您批準(zhǔn)的智能采樣調(diào)用來完成。
入門指南
這些新的 MCP 功能現(xiàn)已在 Visual Studio 中可用。為了充分利用這些功能,我們建議您探索與您的開發(fā)工作流程相匹配的 MCP 服務(wù)器。每個(gè)服務(wù)器都提供獨(dú)特的提示、資源,以及可能的采樣功能,這些都能顯著提升您的 Copilot 體驗(yàn)。
在 Visual Studio 中一鍵嘗試其他一些熱門的 MCP 服務(wù)器:
- Awesome MCP Server – 發(fā)現(xiàn)并安裝適用于 GitHub Copilot 的自定義提示和指令。
- MarkItDown MCP Server – 將多種文件格式(PDF、Word、Excel、圖片、音頻)轉(zhuǎn)換為 Markdown 格式。
- DuckDB Server – 在本地和云端的 DuckDB 數(shù)據(jù)庫中查詢并分析數(shù)據(jù)。
- MongoDB MCP Server – 數(shù)據(jù)庫操作與管理。執(zhí)行查詢、管理集合、聚合管道和文檔操作。
- HuggingFace MCP Server – 訪問 Hugging Face Hub 上的模型、數(shù)據(jù)集和空間。
通過 MCP 實(shí)現(xiàn)外部工具和服務(wù)的無縫集成,是打造真正互聯(lián)互通的開發(fā)環(huán)境的重要一步。這些功能將整個(gè)工程技術(shù)棧的上下文直接帶入您的 IDE,有助于 Copilot 為您的日常開發(fā)任務(wù)提供更準(zhǔn)確、更相關(guān)且更具可操作性的輔助。
請(qǐng)給我們您的反饋!
我們很期待繼續(xù)改進(jìn) VS 中的 MCP 體驗(yàn),您的意見非常重要 —— 請(qǐng)給我們反饋,讓我們知道您接下來希望看到哪些功能!
原文鏈接:https://devblogs.microsoft.com/visualstudio/mcp-prompts-resources-sampling/

作者:MeteorSeed
我希望您喜歡這篇博文,并一如既往地感謝您閱讀并與朋友和同事分享我的博文。
轉(zhuǎn)載請(qǐng)注明出處。

浙公網(wǎng)安備 33010602011771號(hào)