MCP / Agent / Skill / Harness
一份關於代理應用相關概念的編輯圖譜
MCP、Agent、Skill 與 Harness 分別描述代理應用中的上下文交換、任務執行、可重用指令和宿主執行環境。這個四分框架是 Aphrodite 的編輯模型,並非業界通用架構,也不表示每個產品都實作了四者。
最近審查:。 目前 MCP 架構(2026-07-28)。
- Claude Code
- Harness
- Skill
- Agent
- Tool
- MCP
- 外部工具/資料來源
MCP - Model Context Protocol
連接層協議MCP 是 AI 應用與外部系統交換上下文的開放用戶端—伺服器協定。宿主協調一個或多個用戶端,伺服器提供經過授權的工具、資源與提示等能力。MCP 不定義模型訓練、推論或 Agent 的內部推理迴圈。
MCP 是什麼?
MCP 是一個通訊協議,規定了 AI 如何:
- 請求執行某個操作
- 獲取外部資料
- 與本地應用程式互動
工作原理
- MCP 用戶端連接本機行程或遠端服務
- 用戶端與伺服器透過 JSON-RPC 交換請求、回應與通知
- 伺服器存取已獲授權的工具、資源或提示
- 用戶端將標準化結果提供給模型或宿主介面
設定範例
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/you/Projects"]
},
"git": {
"command": "uvx",
"args": ["mcp-server-git", "--repository", "/Users/you/Projects/example"]
}
}
} Windows 可能需要透過 cmd /c 呼叫 npx。Claude Desktop、Claude Code、Codex 與 Cursor 的設定路徑不同。已於 2026-07-29 對照 MCP 官方儲存庫核驗。
官方參考伺服器
指導委員會參考伺服器(官方儲存庫):
- Everything
- Fetch
- Filesystem
- Git
- Memory
- Sequential Thinking
- Time
這些專案用於教學與參考,並不代表可直接用於正式環境。可在 MCP Registry 中尋找第三方伺服器;採用前應評估發布者身分、權限、安全性與維護狀態。封存伺服器以及廠商或社群伺服器屬於不同類別。
Agent - AI 代理
任務執行層Agent 是能夠自主規劃和執行複雜任務的 AI 系統。與簡單的問答不同,Agent 可以:理解目標 → 制定計劃 → 執行行動 → 評估結果 → 調整策略。
核心能力
- 理解複雜指令
- 分解大任務為小步驟
- 自主決策下一步做什麼
- 使用工具完成具體操作
- 從執行結果中學習
使用範例
與 Claude Agent 對話範例
使用者:幫我重構這個專案的錯誤處理
Claude Agent:
我會幫你重構錯誤處理。讓我先分析現有的程式碼結構……
- 掃描專案中的錯誤處理程式碼
- 識別重複模式
- 設計統一的錯誤處理方案
- 逐個模組實施重構
- 執行測試確保沒有破壞現有功能
[Agent 自主執行上述所有步驟]
對比 GitHub Copilot
Claude Code 與 GitHub Copilot 都提供終端機或 IDE 中的代理式程式設計與程式碼審查能力,但支援範圍、權限確認、沙箱、模型選擇、雲端非同步任務及 MCP 連線會隨產品、用戶端與版本而變動。比較時應區分本機審查與拉取請求審查,並以目前產品文件為準。
最近審查:。來源:Claude Code 文件 · GitHub Copilot 功能文件。
Skill - 技能擴充
能力增強層Skill 是一組按需載入的指令、腳本與資源,供智慧體完成某一類專門任務。SKILL.md 格式是公開的,並不依附於某一個產品,Claude Code 只是載入它的宿主之一。透過 Skill,你可以:定義常用命令、封裝複雜工作流、新增領域知識。
Skill 類型
- 個人 Skill:存放於
~/.claude/skills/,供個人專案重用 - 專案 Skill:存放於
.claude/skills/,隨倉庫共享 - 外掛 Skill:由已安裝外掛提供
- 內建能力:會隨版本變動,請用
/help查看目前命令
定義範例
--- name: component-docs description: Generate documentation for Vue components. Use when the user asks to document a component or component library. ---
Component documentation
- Inspect component props, emits, slots, and dependencies.
- Generate a usage example.
- Document accessibility and edge cases.
- Link to related components.
Path: ~/.claude/skills/component-docs/SKILL.md
使用方法
- 在
~/.claude/skills/<name>/或.claude/skills/<name>/下建立包含完整SKILL.md的資料夾 - 寫入上例所示的 YAML
name與description欄位 - 描述任務或直接提及 Skill 名稱;不要假設存在未記錄的內建命令
- 執行
/help,並查閱目前文件確認特定版本的命令
內建命令
Claude Code 的內建能力名稱可能隨版本變動。請執行 /help,或查閱目前命令參考。個人、專案與外掛 Skill 也可能提供 /skill-name 命令。
Harness - 代理腳手架
執行時承載層本頁以 Harness 指模型或 Agent 周圍的宿主執行環境。它可以組合系統指令、工具迴圈、工作階段狀態、記憶、權限與整合,但不同產品對此邊界的劃分不同,也不要求具備本頁展示的全部元件。
核心能力
- 裝配 system prompt 與工具迴圈
- 維護會話上下文與長期記憶
- 載入並排程 Skill 與 MCP 伺服器
- 提供權限控制、沙箱與日誌
- 跨形態託管(CLI、IDE 外掛、守護行程、Serverless)
Harness 結構解剖
一個最小 Harness 的結構(以 Claude Code 為例)
- system prompt → CLAUDE.md / 倉庫說明
- tool loop → Read/Edit/Bash/Grep(內建工具集)
- MCP clients → 透過 mcpServers 設定連線外部伺服器
- skills → ~/.claude/skills/*.md(按需載入)
- runtime → 終端機 REPL / VS Code 外掛 / 閘道守護行程
其他 Harness 實作:
- Codex CLI (openai/codex) — Rust 寫的終端機 Harness
- OpenClaw — 跨平台多渠道閘道 Harness
- Hermes Agent — 自帶學習迴圈的 Harness
- Cursor Agent — 嵌入 IDE 的 Harness
四者的關係
MCP + Agent
MCP + Agent:Agent 透過 MCP 協議調用外部工具。例如:當 Agent 需要讀寫檔案時,透過 MCP 檔案系統伺服器完成。
Agent + Skill
Agent + Skill:Skill 是 Agent 的「技能包」。當使用者調用特定 Skill 時,Agent 會使用相應的提示範本和工作流。
Skill + MCP
Skill + MCP:Skill 可以封裝複雜的 MCP 調用。例如:一個「部署 Skill」可能調用 MCP 的 Git + Docker + CLI 工具。
Harness + 三者
Harness + 三者:Harness 是宿主,把 MCP/Agent/Skill 裝配起來。改 Harness 設定檔(如 claudedesktopconfig.json)相當於重新接線;寫一個新 Skill 相當於給宿主裝新工具。Claude Code、Codex CLI、Cursor Agent 都是這種「宿主 + 三件套」的實例。
MCP 是底層協議,讓 Agent 能與外部世界通訊
Agent 是執行主體,根據使用者需求規劃並執行任務
Skill 是能力擴充,讓特定任務更高效專業
Harness 是執行時承載層,把三者黏合成一個真正能跑起來的代理
這些概念經常協同運作,但並非必須同時存在的技術堆疊,也不是嚴格的依賴層級;不同產品的邊界與實作會有所不同。