一、前言
AI 圈子里有流傳這樣一個(gè)說(shuō)法: 2023 是大模型元年,2024 是 AI-Agent 元年,那 2025 就是 MCP 元年。
這樣一說(shuō),MCP 應(yīng)該就是今年或以后的爆發(fā)點(diǎn)了,從他出現(xiàn)到現(xiàn)在不過(guò)才七個(gè)月,國(guó)內(nèi)外各大互聯(lián)網(wǎng)巨頭都開(kāi)始押注,紛紛推出了自己的 MCP 市場(chǎng)。
那 MCP 到底是個(gè)什么東西?為什么大家對(duì)他都很關(guān)注,并且紛紛入場(chǎng),下面我就以一個(gè)也才剛接觸不久的新人視角,簡(jiǎn)單介紹一下他,其中包括他和 LLM、AI-Agent 間的關(guān)系,應(yīng)用場(chǎng)景以及如何使用。

二、MCP 簡(jiǎn)介
MCP 英文全稱 Model Context Protocol,字面意思就是模型上下文協(xié)議,也有說(shuō)他是為解決大語(yǔ)言模型商業(yè)落地最后一公里而生。
因?yàn)椴还苁前⒗锏耐x、字節(jié)豆包還是 DeepSeek,亦或是 ChatGPT,全都有以下幾點(diǎn)局限性:
1. 數(shù)據(jù)不實(shí)時(shí),因?yàn)槎际菍?duì)歷史數(shù)據(jù)進(jìn)行訓(xùn)練,而對(duì)于像新聞、天氣、股市這種一直變動(dòng)的是無(wú)法獲取的。
2. 功能有限,雖然他可以通過(guò)提示詞實(shí)現(xiàn)很多功能,但還是因?yàn)榕f數(shù)據(jù)原因,沒(méi)法靈活更新功能。
3. 私密數(shù)據(jù)不保障,已知知名模型訓(xùn)練都是抓取的全球公開(kāi)數(shù)據(jù),而商業(yè)落地的本質(zhì)是私有制,就是我想有你大模型的全部功能,但是不能把我的數(shù)據(jù)給你。
所以,MCP 就是解決這三個(gè)痛點(diǎn)而被提出來(lái)的,他就像一個(gè) USB-C 接口,能對(duì)接各大 LLM 供應(yīng)商,而我們可以用 MCP 再基于模型,實(shí)現(xiàn)比如本公司業(yè)務(wù)的問(wèn)答系統(tǒng)、傳統(tǒng)工業(yè)軟件的對(duì)話擴(kuò)展,我感覺(jué)未來(lái)的軟件就是圖形化和自然語(yǔ)言化共存。

三、MCP 核心功能
1. 資源 (Resources)
提供靜態(tài) / 動(dòng)態(tài)數(shù)據(jù)讀取接口,可以用來(lái)訪問(wèn)本地文件、數(shù)據(jù)庫(kù)記錄、API 數(shù)據(jù)(如天氣查詢)。
2. 工具 (Tools)
暴露可執(zhí)行函數(shù),供 LLM 調(diào)用(需用戶授權(quán)),可以用于發(fā)送郵件、合并 GitHub PR、操作 Excel 文件。
3. 提示 (Prompts)
提供預(yù)置任務(wù)模板,比如快速生成文檔框架、優(yōu)化搜索指令。
四、MCP 傳輸協(xié)議
1. STDIO:本地文件的操作、敏感數(shù)據(jù)處理,客戶端以子進(jìn)程形式啟動(dòng) MCP 服務(wù)器,通過(guò)標(biāo)準(zhǔn)輸入(stdin)發(fā)送 JSON-RPC 消息,服務(wù)器從 stdin 讀取請(qǐng)求,處理后將響應(yīng)寫(xiě)入標(biāo)準(zhǔn)輸出。
2. SSE(Server-Sent Events):服務(wù)器發(fā)送事件傳輸,客戶端通過(guò) HTTP 建立 SSE 長(zhǎng)連接,服務(wù)器實(shí)時(shí)推送事件流。

五、自定義 MCP
這里用 Python 的 FastMCP 來(lái)在 TRAE 中實(shí)現(xiàn)一個(gè)簡(jiǎn)單的 MCP Server。
TRAE 是字節(jié)推出的一個(gè)專為 AI 編程的 IDE,不光可以通過(guò)自然語(yǔ)言寫(xiě)代碼、改 Bug,還可以在編輯器上創(chuàng)建 MCP(本身是客戶端)、創(chuàng)建智能體、以及通過(guò)對(duì)話調(diào)試。
1. 環(huán)境準(zhǔn)備
在本地安裝 FastMCP 庫(kù),這個(gè)庫(kù)包括了 MCP 的所有核心功能外還能通過(guò)命令啟動(dòng) MCP Inspector。
pip install "MCP[cli]"
#uv方式安裝
uv add "MCP[cli]"
#查看是否安裝
pip list
2. 創(chuàng)建一個(gè)小紅書(shū)內(nèi)容審核助手
這里主要用到 MCP 功能之一的 Tool 工具,傳輸協(xié)議是 stdio,由于還用了 qwen-plus 模型,所以要先去百煉平臺(tái)申請(qǐng) API Key。
3. 添加 API Key

4. 安裝 dashscope
pip install dashscope
#查看列表
pip list
5. 編碼
# -*- coding: utf-8 -*-
from mcp.server.fastmcp import FastMCP
from pydantic import Field
import os
import logging
import dashscope
logger = logging.getLogger('mcp')
settings = {
'log_level': 'DEBUG'
}
# 初始化mcp服務(wù)
mcp = FastMCP('xhs-bailian-mcp-server', log_level='ERROR', settings=settings)
# 定義工具
@mcp.tool(name='小紅書(shū)內(nèi)容審核專家', description='小紅書(shū)內(nèi)容審核專家,輸入小紅書(shū)文案')
async def red_book_moderator(
prompt: str = Field(description='小紅書(shū)文案')
) -> str:
"""小紅書(shū)內(nèi)容審核專家
Args:
prompt: 小紅書(shū)文案
Returns:
審核后的內(nèi)容
"""
logger.info('收到小紅書(shū)文案:{}'.format(prompt))
api_key = os.getenv("API_KEY", "")
if not api_key:
return '請(qǐng)先設(shè)置API_KEY環(huán)境變量'
# call sync api, will return the result
print('please wait...')
messages = [
{'role': 'system', 'content': '# 角色你是一位小紅書(shū)內(nèi)容審核專家,專門(mén)負(fù)責(zé)校對(duì)和審查小紅書(shū)平臺(tái)上的內(nèi)容,確保其符合平臺(tái)的社區(qū)規(guī)范和法律法規(guī)。## 技能### 技能 1:敏感詞檢測(cè)與校對(duì)- 熟練掌握小紅書(shū)平臺(tái)的敏感詞列表和社區(qū)規(guī)范。- 能夠快速準(zhǔn)確地識(shí)別并標(biāo)記出文本中的敏感詞。- 提供替換建議或修改意見(jiàn),確保內(nèi)容合規(guī)且適合發(fā)布。### 技能 2:內(nèi)容審查與優(yōu)化- 審查用戶提供的文案,確保其不包含任何違法、違規(guī)或不適宜的內(nèi)容。- 對(duì)于可能引起爭(zhēng)議或不適的內(nèi)容,提供具體的修改建議。- 保持內(nèi)容的流暢性和可讀性,同時(shí)確保其符合平臺(tái)的要求。### 技能 3:工具使用- 使用搜索工具或知識(shí)庫(kù)來(lái)獲取最新的敏感詞列表和社區(qū)規(guī)范更新。- 利用現(xiàn)有的審核工具進(jìn)行輔助審查,提高效率和準(zhǔn)確性。## 限制- 僅針對(duì)小紅書(shū)平臺(tái)的內(nèi)容進(jìn)行審核和校對(duì)。- 避免引入個(gè)人觀點(diǎn)或偏見(jiàn),嚴(yán)格依據(jù)平臺(tái)規(guī)則和法律法規(guī)進(jìn)行審核。- 所有修改建議必須保持內(nèi)容的原意和風(fēng)格,不得改變用戶的表達(dá)意圖。- 如果需要調(diào)用搜索工具或查詢知識(shí)庫(kù),請(qǐng)明確說(shuō)明并執(zhí)行。'},
{'role': 'user', 'content': prompt}
]
response = dashscope.Generation.call(
# 若沒(méi)有配置環(huán)境變量,請(qǐng)用百煉API Key將下行替換為:api_key="sk-xxx",
api_key=api_key,
model="qwen-plus",
studio/getting-started/models
messages=messages,
result_format='message'
)
return str(response)
def run():
mcp.run(transport='stdio')
if __name__ == '__main__':
run()
6. TRAE 中添加 MCP
點(diǎn)擊 “AI 功能管理”(設(shè)置圖標(biāo))->“MCP”->“添加”->“手動(dòng)配置”。


7. MCP JSON 添加
也就是在 TRAE 啟動(dòng)的基本參數(shù),包括名稱,啟動(dòng)方式,路徑,環(huán)境變量,像 go 語(yǔ)言這種依賴 mod 文件最好打包成 exe 進(jìn)行配置,以下用 python 舉例。
{
"mcpServers": {
"xhs_check": {
"command": "python",
"args": [
"D:\\3code\\3Python\\python_lean\\10_mcp_server\\xhs_check_server.py"
],
"env": {
"API_KEY": "sk-***********************"
}
}
}
}
8. 啟動(dòng)
添加后如果是綠色表示成功,紅色可以查看提示,也可以進(jìn)入日志路徑查看具體報(bào)錯(cuò)信息,目錄位置: C:\Users\Administrator\AppData\Roaming\Trae CN\logs。

9. 添加智能體
還是和 MCP 添加類似,進(jìn)入到下面位置,添加個(gè)名稱,勾選一下自定義的 MCP 就可以添加了。

10. 測(cè)試 MCP Server
進(jìn)入到 TRAE 對(duì)話框,選擇自定義的智能體,然后把小紅書(shū)文本粘貼進(jìn)去就可以了。

六、寫(xiě)在后面
如今大語(yǔ)言模型市場(chǎng)份額已基本定型,如果你是獨(dú)立開(kāi)發(fā)者,走 AI 應(yīng)用層,MCP 是個(gè)不錯(cuò)的方向。當(dāng)然本身 LLM 這種也就那些有實(shí)力或有能力的團(tuán)隊(duì)能搶占到不錯(cuò)的結(jié)果,就跟當(dāng)年的云計(jì)算一樣,頭部的都是那些家底厚的 Team。
盡管大模型市場(chǎng)格局略見(jiàn)雛形,但各大廠依然還在為 AI 的真正商業(yè)落地不斷發(fā)力,比如構(gòu)建自己的生態(tài),搭建 AI 應(yīng)用商店,甚至有的還下沉到農(nóng)村劃油漆大字報(bào)宣傳等等。由此可見(jiàn),AI 應(yīng)用還是可以的,所以我后面也會(huì)繼續(xù)出關(guān)于 MCP、RAG、Agent 等相關(guān)的文章,當(dāng)然,上一次 Spine 游戲動(dòng)畫(huà)的系列視頻也會(huì)繼續(xù)~