前言:什么是MCP?為什么你需要它?
想象一下,如果Claude是一個超級聰明的助手,那么MCP(Model Context Protocol)就是給它裝上了各種神奇的"義肢"。就像鋼鐵俠的盔甲一樣,MCP讓Claude能夠連接到外部世界,訪問數(shù)據(jù)庫、API、文件系統(tǒng),甚至你的GitHub倉庫(1)。
簡單來說,MCP就像是AI界的USB-C接口——一個標準化的方式,讓AI模型能夠連接到各種不同的數(shù)據(jù)源和工具(1)。而Claude Code就是這個生態(tài)系統(tǒng)中最酷的客戶端之一。
第一章:MCP基礎(chǔ)知識(不要打瞌睡!)
MCP到底是什么鬼?
Model Context Protocol是一個開放協(xié)議,讓LLM能夠訪問外部工具和數(shù)據(jù)源(2)。想象一下,如果Claude是一個被困在房間里的天才,MCP就是給它開了窗戶,讓它能看到外面的世界。
為什么選擇MCP而不是其他方案?
因為MCP是標準化的!就像你不想每次買新手機都要換充電器一樣,開發(fā)者也不想為每個AI模型寫不同的集成代碼。MCP讓這一切變得簡單優(yōu)雅。
第二章:配置MCP服務(wù)器(開始動手吧!)
警告:請謹慎選擇你的MCP服務(wù)器
在開始之前,有個重要提醒:使用第三方MCP服務(wù)器需要自擔風險(2)。確保你信任這些服務(wù)器,特別是那些與互聯(lián)網(wǎng)通信的服務(wù)器,因為它們可能會讓你面臨提示注入風險(2)。就像你不會隨便讓陌生人進你家一樣,不要隨便信任不明來源的MCP服務(wù)器。
添加stdio服務(wù)器(最常見的類型)
這是最基礎(chǔ)的服務(wù)器類型,就像學開車先學手動擋一樣:
# 基本語法
claude mcp add <name> <command> [args...]
# 示例:添加一個本地服務(wù)器
claude mcp add my-server -e API_KEY=123 -- /path/to/server arg1 arg2
添加SSE服務(wù)器(實時通信的好伙伴)
SSE(Server-Sent Events)服務(wù)器適合需要實時通信的場景:
# 基本語法
claude mcp add --transport sse <name> <url>
# 示例:添加一個SSE服務(wù)器
claude mcp add --transport sse sse-server https://example.com/sse-endpoint
# 示例:添加帶自定義頭部的SSE服務(wù)器
claude mcp add --transport sse api-server https://api.example.com/mcp --header "X-API-Key: your-key"
添加HTTP服務(wù)器(老實可靠的選擇)
HTTP服務(wù)器就像是MCP世界里的"老實人"——可靠、穩(wěn)定、大家都懂:
# 基本語法
claude mcp add --transport http <name> <url>
# 示例:添加一個可流式傳輸?shù)腍TTP服務(wù)器
claude mcp add --transport http http-server https://example.com/mcp
# 示例:添加帶認證頭部的HTTP服務(wù)器
claude mcp add --transport http secure-server https://api.example.com/mcp --header "Authorization: Bearer your-token"
管理你的MCP服務(wù)器(像管理你的朋友圈一樣)
# 列出所有配置的服務(wù)器(看看你有多少"朋友")
claude mcp list
# 獲取特定服務(wù)器的詳細信息(深入了解某個"朋友")
claude mcp get my-server
# 刪除服務(wù)器(有時候需要斷舍離)
claude mcp remove my-server
第三章:理解MCP服務(wù)器作用域(像管理權(quán)限一樣重要)
MCP服務(wù)器可以在三個不同的作用域級別進行配置,每個都有其獨特的用途(3)。
作用域?qū)哟谓Y(jié)構(gòu)和優(yōu)先級
MCP服務(wù)器配置遵循清晰的優(yōu)先級層次結(jié)構(gòu)(3)。當同名服務(wù)器存在于多個作用域時,系統(tǒng)通過優(yōu)先考慮本地作用域服務(wù)器,然后是項目作用域服務(wù)器,最后是用戶作用域服務(wù)器來解決沖突(3)。這種設(shè)計確保個人配置可以在需要時覆蓋共享配置(3)。
Local作用域(你的私人空間)
本地作用域服務(wù)器代表默認配置級別,存儲在你的項目特定用戶設(shè)置中(3)。這些服務(wù)器對你保持私有,只有在當前項目目錄中工作時才可訪問(3)。這個作用域非常適合個人開發(fā)服務(wù)器、實驗性配置或包含不應(yīng)共享的敏感憑據(jù)的服務(wù)器(3)。
# 添加本地作用域服務(wù)器(默認)
claude mcp add my-private-server /path/to/server
# 明確指定本地作用域
claude mcp add my-private-server -s local /path/to/server
Project作用域(團隊合作的橋梁)
項目作用域服務(wù)器通過在項目根目錄存儲配置到.mcp.json文件中來實現(xiàn)團隊協(xié)作(3)。這個文件設(shè)計為檢入版本控制,確保所有團隊成員都能訪問相同的MCP工具和服務(wù)(3)。當你添加項目作用域服務(wù)器時,Claude Code會自動創(chuàng)建或更新這個文件,使用適當?shù)呐渲媒Y(jié)構(gòu)(3)。
# 添加項目作用域服務(wù)器
claude mcp add shared-server -s project /path/to/server
生成的.mcp.json文件遵循標準化格式(3):
{
"mcpServers": {
"shared-server": {
"command": "/path/to/server",
"args": [],
"env": {}
}
}
}
出于安全原因,Claude Code在使用來自.mcp.json文件的項目作用域服務(wù)器之前會提示批準(3)。如果你需要重置這些批準選擇,使用claude mcp reset-project-choices命令(3)。
User作用域(跨項目的好幫手)
用戶作用域服務(wù)器提供跨項目可訪問性,使它們在你機器上的所有項目中都可用,同時對你的用戶賬戶保持私有(3)。這個作用域非常適合個人實用程序服務(wù)器、開發(fā)工具或你在不同項目中經(jīng)常使用的服務(wù)(3)。
# 添加用戶服務(wù)器
claude mcp add my-user-server -s user /path/to/server
如何選擇正確的作用域
根據(jù)以下標準選擇作用域(3):
- Local作用域:個人服務(wù)器、實驗性配置或特定于一個項目的敏感憑據(jù)(3)
- Project作用域:團隊共享服務(wù)器、項目特定工具或協(xié)作所需的服務(wù)(3)
- User作用域:多個項目需要的個人實用程序、開發(fā)工具或經(jīng)常使用的服務(wù)(3)
環(huán)境變量擴展(讓配置更靈活)
Claude Code支持在.mcp.json文件中進行環(huán)境變量擴展,允許團隊共享配置,同時為機器特定路徑和API密鑰等敏感值保持靈活性(3)。
支持的語法:(3)
擴展位置:(3) 環(huán)境變量可以在以下位置擴展:
command- 服務(wù)器可執(zhí)行文件路徑(3)args- 命令行參數(shù)(3)env- 傳遞給服務(wù)器的環(huán)境變量(3)url- 用于SSE/HTTP服務(wù)器類型(3)headers- 用于SSE/HTTP服務(wù)器認證(3)
帶變量擴展的示例:(3)
{
"mcpServers": {
"api-server": {
"type": "sse",
"url": "${API_BASE_URL:-https://api.example.com}/mcp",
"headers": {
"Authorization": "Bearer ${API_KEY}"
}
}
}
}
如果所需的環(huán)境變量未設(shè)置且沒有默認值,Claude Code將無法解析配置(3)。
第四章:認證和安全(保護你的數(shù)字王國)
與遠程MCP服務(wù)器認證
許多遠程MCP服務(wù)器需要認證(2)。Claude Code支持OAuth 2.0認證流程,用于安全連接到這些服務(wù)器(2)。
步驟1:添加需要認證的遠程服務(wù)器(2)
# 添加需要OAuth的SSE或HTTP服務(wù)器
claude mcp add --transport sse github-server https://api.github.com/mcp
步驟2:使用/mcp命令進行認證(2)
在Claude Code中,使用/mcp命令管理認證(2):
> /mcp
這會打開一個交互式菜單,你可以(2):
步驟3:完成OAuth流程(2)
當你為服務(wù)器選擇"認證"時(2):
小貼士:
第五章:實際應(yīng)用示例(讓理論變成實踐)
連接到Postgres MCP服務(wù)器(數(shù)據(jù)庫探索者)
假設(shè)你想給Claude只讀訪問PostgreSQL數(shù)據(jù)庫,用于查詢和模式檢查(2)。
步驟1:添加Postgres MCP服務(wù)器(2)
claude mcp add postgres-server /path/to/postgres-mcp-server --connection-string "postgresql://user:pass@localhost:5432/mydb"
步驟2:用Claude查詢你的數(shù)據(jù)庫(2)
> describe the schema of our users table
> what are the most recent orders in the system?
> show me the relationship between customers and invoices
小貼士:
- Postgres MCP服務(wù)器為了安全提供只讀訪問(2)
- Claude可以幫助你探索數(shù)據(jù)庫結(jié)構(gòu)并運行分析查詢(2)
- 你可以使用這個功能快速理解不熟悉項目中的數(shù)據(jù)庫模式(2)
- 確保你的連接字符串使用具有最小所需權(quán)限的適當憑據(jù)(2)
從JSON配置添加MCP服務(wù)器(配置文件愛好者的福音)
假設(shè)你有一個單個MCP服務(wù)器的JSON配置,想要添加到Claude Code中(2)。
步驟1:從JSON添加MCP服務(wù)器(2)
# 基本語法
claude mcp add-json <name> '<json>'
# 示例:使用JSON配置添加stdio服務(wù)器
claude mcp add-json weather-api '{"type":"stdio","command":"/path/to/weather-cli","args":["--api-key","abc123"],"env":{"CACHE_DIR":"/tmp"}}'
步驟2:驗證服務(wù)器已添加(2)
claude mcp get weather-api
小貼士:
從Claude Desktop導(dǎo)入MCP服務(wù)器(懶人的救星)
假設(shè)你已經(jīng)在Claude Desktop中配置了MCP服務(wù)器,想在Claude Code中使用相同的服務(wù)器而不需要手動重新配置(2)。
步驟1:從Claude Desktop導(dǎo)入服務(wù)器(2)
# 基本語法
claude mcp add-from-claude-desktop
步驟2:選擇要導(dǎo)入的服務(wù)器(2)
運行命令后,你會看到一個交互式對話框,允許你選擇要導(dǎo)入的服務(wù)器(2)。
步驟3:驗證服務(wù)器已導(dǎo)入(2)
claude mcp list
小貼士:
- 此功能僅在macOS和Windows Subsystem for Linux (WSL)上
原文:https://ycnv7u8vf1o3.feishu.cn/wiki/DelswqLN0ixDXFkgGHFc01Oynet?from=from_copylink
浙公網(wǎng)安備 33010602011771號