无码国模产在线观看免费-无码国内精品久久人妻-无码国内精品久久综合88-无码国内精品人妻少妇-无码国内精品人妻少妇蜜桃视频-无码国语中文在线播放

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

深入剖析MCP協議:實用性、成本考量及生態影響

freeflydom
2025年4月15日 16:20 本文熱度 474

?聊一下MCP,希望能讓各位清醒一點吧。


先說觀點:MCP不錯,但它僅僅是個協議而已,很多科普文章中,提到的更多都是愿景,而不是落地的場景。

本文不再重新陳述MCP的基本概念,而是旨在能讓大家了解的是MCP 有什么用?怎么用?要不要用?

我準備了一份MCP實現的核心代碼,只保留必要的內容,五分鐘就能看明白MCP怎么回事。

先上代碼,讓我們看看實現MCP最核心的部分我們都干了些什么東西。順便讓大家看看MCP到底和Function call是個什么關系。

MCP代碼核心邏輯

我們在本地運行的MCP,所以使用的是Stdio模式的客戶端和服務端。也就是:StdioServerTransportStdioClientTransport

先看打滿日志的demo運行起來起來后,我們獲得的信息:

我們的服務端寫了兩個簡單的工具,加法減法

服務端啟動成功之后,客戶端成功的從服務端獲取到了這兩個工具。

我們發起了一個問題:計算1+1

接下來做的事情就是MCP的客戶端核心三步邏輯:

  1. 客戶端調用AI的function call能力,由AI決定是否使用工具,使用哪個工具。

  2. 客戶端把確定要使用的工具和參數發送回服務端,由服務端實現API調用并返回結果。

  3. 客戶端根據結果,再次調用AI,由AI進行回答。

我們一邊看代碼一邊說里面的問題:

第一步調用AI,決定使用工具

客戶端代碼:

  const response = await this.openai.chat.completions.create({
    model: model,
    messages,
    tools: this.tools, // ! 重點看這里,this.tools是服務端返回的工具列表
  });

看到了么?這里用的還是Function call! 謠言一:MCP和Function call沒關系,MCP就可以讓大家調用工具,終結了。MCP就是用的function call的能力來實現的工具調用。當然我們也可以不用Function call,我們就直接用提示詞判斷,也是可以的。

這里要說的是:MCP就是個協議。并沒有給大模型帶來任何新的能力,也沒有某些人說的MCP提升了Function call的能力,以后不用Function call了,用MCP就夠了這種話,千萬不要被誤導。

MCP并沒有讓大模型的工具調用能力提升

在真實的生產環境中,目前Function call主要的問題有:

  • 工具調用準確性不夠。 真正的生成環境可能不是三個五個工具,而是三十個五十個。工具之間的界限不夠清晰的話,就會存在模型判斷不準確的情況。

  • 參數提取準確性不夠。 特別是當一個工具必填加選填的參數達到十個以上的時候,面對復雜問題,參數的提取準確率會下降。

  • 多意圖的識別。
    用戶的一個問題涉及到多個工具時,目前沒有能夠穩定提取的模型。

第二步把工具和參數發回服務端,由服務端調用API

客戶端代碼:

const result = await this.mcp.callTool({
  name: toolName,
  arguments: toolArgs,
});

服務端的代碼:

server.tool(
  "加法",
  "計算數字相加",
  {
    "a": z.number().describe("加法的第一個數字"),
    "b": z.number().describe("加法的第二個數字"),
  },
  async ({ a, b, c }) => {
    console.error(`服務端: 收到加法API,計算${a}${b}兩個數的和。模型API發送`) 
    // 這里模擬API的發送和使用
    let data = a + b
    return {
      content: [
        {
          type: "text",
          text: a + '+' + b + '的結果是:' + data,
        },
      ],
    };
  },
);

發現問題了么? API是要有MCP服務器提供者調用的。要花錢的朋友!

每一臺MCP服務器背后都是要成本的,收費產品進行MCP服務器的支持還說的過去,不收費的產品全靠愛發電。更不要說,誰敢在生成環境接一個不收費的私人的小服務器?

百度地圖核心API全面兼容MCP了,百度地圖是收費的,進行多場景的支持是很正常的行為。

來看看百煉吧,阿里的百煉目前推出了MCP的功能,支持在百煉上部署MCP server。

也是要花錢的朋友~,三方API調用費用另算。

阿里的魔塔社區提供了大量的MCP,可以看到有一些大廠的服務在,當然有收費的有免費的,各位可以嘗試

第三步客戶端根據結果,再次調用AI,由AI進行回答。

客戶端代碼:

messages.push({
  role: "user",
  content: result.content,
});
const aiResponse = await this.openai.chat.completions.create({
  model: model,
  messages: messages,
});

從服務端返回的結果,添加到messages中,配合提示詞由大模型進行回復即可。

這一步屬于正常的流程,沒什么好說的。

那么問題是:我們使用MCP來實現,和我們自己實現這套流程有什么區別么?我們為什么要用MCP呢?

當初群里朋友第一次提到MCP的時候,我去看了一眼文檔,給了這樣的結論:

大廠為了搶生態做的事情,給落地的流程中定義了一些概念,多了腦力負擔,流程和自己實現沒區別。

對于工具的使用,自己實現和用MCP實現有什么區別么?

自己實現的流程和邏輯是這樣的:

  1. 我們的提示詞工程師寫好每個工具的提示詞
  2. 我們的后端工程師寫好模型的調用,使用的是前面寫好的提示詞
  3. 提供接口給前端,等待前端調用
  4. 前端調用傳入query,后端通過AI獲取了工具
  5. 通過工具配置調用API,拿到數據交給AI,流式返回用戶。

MCP的邏輯是這樣的:

  1. 我們的提示詞工程師寫好每個工具的提示詞
  2. 我們后端工程師分別寫好MCP服務端、MCP客戶端
  3. MCP客戶端提供個接口給前端,等待前端調用
  4. 前端調用傳入query,MCP客戶端調用AI,獲取了工具。
  5. 客戶端把確定要使用的工具和參數發送會服務端,由服務端實現API調用并返回結果。
  6. 客戶端根據結果,再次調用AI,由AI進行回答,流式返回用戶。

看吧,本質上是沒有區別的。

什么?你說MCP服務端,如果日后需要與其他企業進行合作,可以方便的讓對方的MCP客戶端調用? 我們的客戶端也可以很方便的接入別人的MCP服務端。

不好意思,不用MCP也可以,因為Function call的參數格式已經確定了,這里原本存在差異性就極小。而且MCP也并沒有解決這個差異性。還是需要客戶端進行修改的。

MCP真正的意義

現在還是諸神混戰時期,整個AI產品的上下游所有的點,都具有極高的不確定性。

MCP給出了一個技術標準化的協議,是大家共建AI的愿景中的一環,潛力是有的。

但是Anthropic真的只是在乎這個協議么?前面的內容我們也看到了,MCP和我們自己實現的流程幾乎是一樣的。但是為什么還要提出MCP呢?

為了生態控制權和行業話語權。

MCP它表面上是一個開放的協議,旨在解決AI模型與外部工具集成的碎片化問題,但其實他就是Anthropic對未來AI生態主導權的競爭。

未來MCP如果真的作為一個標準的協議成為大家的共識,圍繞這個協議,甚至每家模型的工具調用格式都將被統一,此時Anthropic在委員會里的位置呢?不言而喻啊。

結語

最后把我的策略分享給大家吧:

打算在圈子里玩的部分,就和大家用一樣的,不在圈子里玩的,其實自己團隊實現也是OK的。

我這邊更多的是自己團隊實現的,而且在這個實現過程中大家對模型應用、AI產品的理解不斷地在提升。

希望各位讀者也多進行嘗試,這樣未來面對新出的各路牛鬼蛇神時大家才能有更多的判斷力。

共勉吧!

轉自https://juejin.cn/post/7492271537010671635


該文章在 2025/4/15 16:23:08 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 日韩一区二区三区在 | 精品亚洲人人 | 国产精品久久久久久日本一道 | 国产 欧美 亚洲 中文字幕 | 久久久成人综合亚洲欧洲精品 | 91天堂nba永久免费入口vip | 涩涩伊人久久无码欧美 | 久久国产自偷自免费一区 | 男男GV白嫩小受GV在线播放 | 国产精品1卡二卡三卡四卡乱码 | 国产三级片网站在线观看 | 四虎国产精品永久在线观看 | 精品无人区码一码二码三码区别 | 久久久无码精品亚洲欧美 | 少妇人妻在线无码天堂视频网 | 69堂在线观看国产成人 | 久久久久精品国产亚洲hav无码 | 免费高清欧美视频在线 | a精品综合老师高潮xxxx | 中文字幕日韩久久精品 | 亚洲国产精品综合欧美 | 久久中文字幕不卡一二区 | 国产精品久久久久人妻无码网址 | a毛无码91麻豆精品国产 | 日韩无码精品专区 | 国产成人福利夜色影视 | 久久久久99精品国产片 | 国色天香AV在线观 | 精品无码一区二区三在线观看 | 波多野结衣在线观看无码 | 国产SUV精品一区二区五 | 精品国产不卡自在自线 | 东京热久久无码视频 | 国产成人短视频在线观看免费 | 国产av无码专区亚洲aⅴ蜜芽 | 91麻豆精品激情在线 | 人人干人人爽 | 97人妻熟女成人免费视频 | 亚洲AV无码专区A片奶水牛牛 | 久久精品国产一区二区三 | 久久国产精品福利一区二区三区 |