MCP 協議使用核心講解

📄 MCP 協議使用核心講解


? MCP 協議的核心在于以下幾個方面


一、MCP 請求結構(MCPRequest

{"messages": [{"role": "user","content": "幫我查詢一下上海的天氣"}],"tools": [{"name": "weather_query","description": "查詢天氣","parameters": {"type": "object","properties": {"location": { "type": "string", "description": "查詢地點" }},"required": ["location"]}}]
}
  • messages: 聊天上下文
  • tools: 提供可調用的工具(函數),使用 JSON Schema 描述
  • 模型生成 tool_calls 請求調用工具

二、MCP 響應結構(MCPResponse

{"choices": [{"message": {"role": "assistant","tool_calls": [{"id": "call_123","type": "function","function": {"name": "weather_query","arguments": "{\"location\": \"上海\"}"}}]},"finish_reason": "tool_calls"}]
}
  • tool_calls: 模型請求工具調用
  • finish_reason = tool_calls: 模型等待外部執行工具

三、工具執行結果續接請求

{"messages": [{"role": "user","content": "幫我查詢一下上海的天氣"},{"role": "assistant","tool_calls": [...]},{"role": "tool","tool_call_id": "call_123","content": "{\"weather\": \"晴天,28°C\"}"}]
}
  • 工具返回結果通過 role: tool 返回,繼續對話

四、MCP 模型調用閉環流程

  1. 用戶發起請求(自然語言)
  2. 模型識別出調用意圖 → 返回 tool_calls
  3. 外部系統執行工具調用 → 得到結構化結果
  4. 將結構化結果回傳給模型(tool 消息)
  5. 模型基于工具結果生成最終響應

五、MCP 協議關鍵字段說明

字段名說明
messages對話上下文
tools工具定義(JSON Schema)
tool_calls模型生成的調用請求
tool_call_id工具調用唯一標識
tool工具返回結果
finish_reason模型是否結束、是否等待工具調用

? 總結:

MCP 協議的核心在于:通過結構化的工具定義(tools)、模型調用請求(tool_calls)以及工具結果反饋(tool),實現大模型的可控、結構化、插件化調用閉環。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/912633.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/912633.shtml
英文地址,請注明出處:http://en.pswp.cn/news/912633.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

云計算中的幾何方法:曲面變形的可視化與動畫-AI云計算數值分析和代碼驗證

著重強調微分方程底層的幾何和代數結構,以進行更深入的分析和求解方法。開發結構保持的數值方法,以在計算中保持定性特征。統一符號和數值方法,實現有效的數學建模。利用幾何解釋(如雙曲幾何)求解經典微分方程。利用計…

OpenCV篇——項目(一)OCR識別讀取銀行卡號碼

目錄 信用卡數字識別系統:前言與代碼解析 前言 項目代碼 ??????結果演示 代碼模塊解析 1. 參數解析模塊 2. 輪廓排序函數 3. 圖像預處理模塊 4. 輸入圖像處理流程 5. 卡號區域定位 6. 數字識別與輸出 系統優勢 信用卡數字識別系統:前言…

Adobe AI高效設計秘籍與創新思維進階

開篇:十年設計征途,Adobe賦能創意飛翔 作為一名在設計領域耕耘十年的旅居職業設計師,我得益于英國帕維斯經濟與音樂學院(Parvis School of Economics and Music)提供的Adobe正版教育訂閱,得以持續探索技術…

vc formal實例

命令: module load gui 方式啟動命令, 看一下cc_pinmux.tcl 里面有什么: 工具feature 的設置,不太懂 對特定模塊做blackbox, library file, 一般是工具無法識別的模塊,例如 IO lib,memory lib,analog lib, 內部有 …

JavaScript取值get的json/url/普通對象參考

dstore.on(datachanged,function(dstore){ for(i0;i<dstore.getCount();i){ var a dstore.getAt(i); var imp_infoa.get(imp_info); 上面這段JS代碼&#xff0c;imp_info取到的是一長串KEY和VALUE組成的內容&#xff0c;我怎樣可以準確獲取其中一…

【C++】偵測按鍵事件

偵測按鍵事件可以用C的conio.h頭文件&#xff0c;用到的函數&#xff1a; _CRTIMP int __cdecl _getch(void); 輸入以下代碼&#xff1a; #include <iostream> #include <conio.h> using namespace std;int main() {char key;while (true) {cout << "…

Coremail受邀亮相華為開發者大會

6月20-22日&#xff0c;為期三天的HDC.2025華為開發者大會在東莞舉行&#xff0c;全球超過1.2萬名開發者匯聚現場&#xff0c;聚焦鴻蒙生態、AI技術及產業合作。Coremail作為鴻蒙生態的核心伙伴和深度參與者受邀出席&#xff0c;并獲得“智慧辦公最佳產品合作伙伴”獎項。 HDC.…

視頻斷點續播全棧實現:基于HTML5前端與Spring Boot后端

文章目錄 視頻斷點續播功能實現方案核心思路前端實現HTML結構JavaScript實現Spring Boot后端實現1.依賴配置(pom.xml)2.實體類3.存儲庫接口4.服務層5. 控制器實現要點視頻斷點續播功能構思圖流程說明用戶交互:前端核心功能:后端處理:數據存儲:?? 我的個人網站:樂樂主題創…

華為設備 QoS 流分類與流標記深度解析及實驗腳本

一、引言 在復雜網絡環境中&#xff0c;不同業務對網絡質量需求各異。語音通話要求低時延、視頻直播依賴高帶寬、普通文件傳輸對丟包容忍度相對較高 。QoS&#xff08;Quality of Service&#xff0c;服務質量&#xff09;技術通過流分類、流標記等手段&#xff0c;為不同業務…

[論文閱讀] 人工智能 + 軟件工程 | 從軟件工程視角看大語言模型:挑戰與未來之路

從軟件工程視角看大語言模型&#xff1a;挑戰與未來之路 論文標題&#xff1a;Software Engineering for Large Language Models: Research Status, Challenges and the Road Ahead arXiv:2506.23762 Software Engineering for Large Language Models: Research Status, Chall…

【Docker基礎】Docker容器管理:docker rm及其參數詳解

目錄 1 Docker容器生命周期概述 2 docker rm命令基礎 2.1 命令基本語法 2.2 命令功能說明 2.3 基本使用示例 3 docker rm參數詳解 3.1 -f, --force 3.2 -v, --volumes 3.3 -l, --link 3.4 --time 4 docker rm高級用法 4.1 批量刪除容器 4.1.1 刪除所有已停止的容器…

鴻蒙進階——Mindspore Lite AI框架源碼解讀之模型加載詳解(五)

文章大綱 引言一、LiteSession::CompileGraph(Model *model)二、LiteSession::CompileGraph(Model *model) 核心流程1、MindirModel::ConvertTensors1.1、遍歷并執行MindirModel::ConvertTensor1.1.1、MindirModel::LoadTensorData 三、LiteSession::InitGraphInputTensors(mod…

WireShark網絡取證分析第一集到第五集和dvwa靶場環境分析漏洞

文章目錄 一、WireShark網絡取證是什么?二、WireShark網絡取證1.WireShark網絡取證分析第一集Ann的即時通訊好友叫什么名字?在捕獲的即時通訊對話中第一條評論是什么?Ann傳輸的文件叫什么名字?您想提取的文件的魔數是什么(前四個字節)?文件的MD5sum是多少?什么是秘密配方…

【51單片機按下按鍵1,8位共陰極數碼管輸出2022-606。按下按鍵2,8位共陰極數碼管輸出606-1132。】2022-6-10

緣由單片極的共陰極數碼管按下按鍵1和按鍵2輸出的內容-編程語言-CSDN問答 #include "REG52.h" unsigned char code smgduan[]{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0,64}; //共陰0~F消隱減號 unsigned char Js0, miao…

HDMI轉12G- SDI GS12170+GS12281-富利威方案設計及技術支持

GS12281 是一款低功耗、多速率、重定時電纜驅動器&#xff0c;支持高達 12G UHD-SDI 的速率。它設計用于接收 100Ω 差分輸入信號&#xff0c;自動從數字視頻信號中恢復嵌入式時鐘并重新定時輸入數據&#xff0c;并通過 75Ω 同軸電纜傳輸重新定時的信號。 100Ω 走線輸入支持…

自然語言處理:NLP入門

本文目錄&#xff1a; 一、概念二、發展史三、核心任務和技術特別分享1&#xff1a;當前挑戰和前沿方向特別分享2&#xff1a;大神名言啟示 前言&#xff1a;從本章開始講解自然語言處理&#xff08;NLP&#xff09;&#xff0c;今天先入個門~ 一、概念 自然語言處理&#xff…

用Fiddler中文版抓包工具掌控微服務架構中的接口調試:聯合Postman與Charles的高效實踐

隨著微服務架構在項目中的廣泛應用&#xff0c;系統被拆分成多個獨立的服務&#xff0c;彼此通過API通信。雖然架構帶來了靈活性&#xff0c;但也大幅增加了接口數量和調用鏈復雜度&#xff1a;一次用戶操作可能觸發跨多個服務的調用&#xff0c;導致前端調試難度飆升。要精準排…

MongoDB 更新文檔指南

MongoDB 更新文檔指南 引言 MongoDB 是一款高性能、可擴展的文檔存儲系統&#xff0c;它為存儲和管理大量數據提供了強大的支持。在 MongoDB 中&#xff0c;更新文檔是常見操作之一&#xff0c;它允許用戶修改現有文檔的內容。本文將詳細講解 MongoDB 中更新文檔的各種方法&a…

Cursor + Serena MCP集成,更好的解析項目架構

項目地址&#xff0c;下到本地。 Serena可以更好的理解項目的架構并總結&#xff0c;而不是簡單的閱讀代碼文件&#xff0c;可以直接用Cursor結合MCP的方式進行使用。&#xff1a;Serena 的語義代碼分析功能建立在語言服務器上&#xff0c;使用廣泛實施的語言服務器協議&#x…

【Python】numpy數組常用數據處理(測試代碼+api例程)

目錄 一、數列生成1.按照間隔生成數列&#xff08;np.array[]&#xff09;2.按照數列數字個數生成數列&#xff08;np.linspace&#xff09; 二、數列增刪改查1.1 數組末尾添加數據&#xff08;np.append&#xff09;1.2 數組指定索引位置添加數據&#xff08;np.insert&#x…