難度:進階約 13 分鐘適合:所有人更新:2026-07-08

Skills 與 MCP:教它新招、接上外部工具

這篇你會學到

官方原文:Extend Claude with skillsConnect Claude Code to tools via MCP(功能更新以官方為準)

功能與介面更新很快,以官方說明為準。

一、Skill 是什麼:把你重複貼的指示變成一個檔案

你有沒有這種經驗:每次都要貼同一段「請照這個格式寫」「發布前先跑這三步」給 Claude?如果你常貼同一段規則,就把它做成 Skill。Skill 像一份給 Claude 的工作說明。需要時才載入,不會一直占用對話空間。

官方的判斷法也很直接。同一份指示、檢查清單或多步驟流程,你一直重複貼進對話,就該做成 Skill。CLAUDE.md 裡某一段已經長成一套流程,而不是單純事實,也一樣該搬。 (來源:官方文件〈Extend Claude with skills〉

Skill 就是一個叫 SKILL.md 的檔案,放在指定資料夾裡。Claude 在相關情境會自動使用它。你也可以打 /技能名稱 直接叫它出來。

它和 CLAUDE.md 不同:內容只在被使用時才載入。平常幾乎不占空間,所以放長篇參考資料也不心疼。 (來源:官方文件〈Extend Claude with skills〉)

放的位置決定誰能用:

位置 路徑 適用範圍
個人 ~/.claude/skills/技能名/SKILL.md 你的所有專案
專案 .claude/skills/技能名/SKILL.md 只有這個專案(可進版本控制分享給團隊)

(來源:官方文件〈Extend Claude with skills〉)

資料夾名稱就是你之後打的指令名稱。例如資料夾叫 summarize-changes,指令就是 /summarize-changes

二、動手建第一個 Skill(官方範例)

官方入門範例是一個「摘要目前未提交修改、順便點出風險」的技能。照做三步就好。 (來源:官方文件〈Extend Claude with skills〉)

第一步:建資料夾。打開終端機,建立個人技能資料夾:

mkdir -p ~/.claude/skills/summarize-changes

第二步:寫 SKILL.md。每個 Skill 都要有這個檔,分兩部分。最上面兩條 --- 之間是 frontmatter(檔案開頭的設定區)。它用來告訴 Claude 什麼時候用這個技能。下面則是 Claude 執行時要照做的指示。把下面內容存到 ~/.claude/skills/summarize-changes/SKILL.md,內文可以用中文寫,結構依官方範例:

---
description: 摘要尚未提交的程式修改並點出風險。當使用者問改了什麼、想要 commit 訊息、或想檢視 diff 時使用。
---

## 目前的修改

!`git diff HEAD`

## 指示

把上面的修改摘要成兩三個重點,然後列出你注意到的風險,
例如缺少錯誤處理、寫死的數值、或需要更新的測試。
如果 diff 是空的,就說目前沒有未提交的修改。

其中 !`git diff HEAD` 那行是動態插入。Claude Code 會先跑這個指令,把輸出直接放進技能內容。所以 Claude 看到的是你當下真實的修改,不是用猜的。 (來源:官方文件〈Extend Claude with skills〉)

第三步:測試。到任一個 git 專案,隨便改一個檔案,啟動 claude,然後兩種方式都試試:

我改了什麼?

這句話符合 description 的描述,Claude 會自動載入這個技能。或直接指名:

/summarize-changes

兩種方式都應該得到修改摘要加風險清單。

幾個實用細節:

(來源:官方文件〈Extend Claude with skills〉)

三、MCP 白話:一顆萬用轉接頭

MCP 的全名是 Model Context Protocol。它是一個開放標準,讓 AI 連接外部工具。

Claude Code 內建的工具,只能碰你電腦上的檔案和指令。但你的資料常常住在別的地方:專案管理系統、資料庫、設計稿。MCP 就像一顆萬用轉接頭。任何服務只要做了「MCP 伺服器」這一端,Claude Code 就能插上去。插上之後,Claude 可以直接讀取和操作,你不用再手動複製貼上。 (來源:官方文件〈Connect Claude Code to tools via MCP〉

官方給的判斷句:你發現自己一直從別的工具複製資料進對話,就是該接 MCP 的時候。例如議題追蹤系統或監控儀表板。 (來源:官方文件〈Connect Claude Code to tools via MCP〉)

四、接上第一個 MCP 伺服器(官方最簡單範例)

官方快速上手用的例子是「Claude Code 官方文件搜尋伺服器」。不用註冊、不用登入,最適合拿來練習。 (來源:官方文件〈Connect to MCP servers〉

第一步:註冊伺服器。在終端機執行(注意是在終端機,不是在 claude 對話裡):

claude mcp add --transport http claude-code-docs https://code.claude.com/docs/mcp

拆解這行指令:claude mcp add 是註冊伺服器。--transport http 表示伺服器架在網址上,不是在你電腦上跑的程式。claude-code-docs 是你自己取的名字。最後是伺服器網址。

第二步:確認連上了

claude mcp list

畫面會顯示每個伺服器的狀態,對照下表:

畫面上的英文 中文意思 你要做什麼
✓ Connected 已連上 不用做什麼,直接進第三步
! Needs authentication 需要登入 在對話中打 /mcp,走瀏覽器登入流程
Pending approval 等待你本人核准 啟動一次互動式 claude,依提示核准(詳見常見卡點 3)

(來源:官方文件〈Connect to MCP servers〉、〈Connect Claude Code to tools via MCP〉)

第三步:用用看。啟動 claude,然後指名要它用這個伺服器:

用 claude-code-docs 伺服器查一下 MCP_TIMEOUT 是做什麼的

第一次呼叫時,Claude 會請你核准這個新工具。平常其實不必指名伺服器,Claude 會自己挑相關工具。這裡指名,只是為了確認答案真的來自新伺服器。 (來源:官方文件〈Connect to MCP servers〉)

第四步(可選):移除。練習完不想留著:

claude mcp remove claude-code-docs

官方提醒:每個連上的伺服器,都會占用一些上下文空間,不用的就移掉。 (來源:官方文件〈Connect to MCP servers〉)

想找更多現成伺服器,可以逛 Anthropic Directory(官方連接器目錄)。網址是 claude.ai/directory。

加碼:內建 Skill 命令——官方送你的現成技能

前面教你自己寫 Skill,但其實不用從零開始。Claude Code 出廠就附了一批「內建 Skill」(官方稱 bundled skills,隨附技能)。每一場對話都自動帶著,除非你在設定裡用 disableBundledSkills 關掉。 (來源:官方文件〈Extend Claude with skills〉)

它們跟 /help 這類寫死在程式裡的內建命令不同。本質和你自己寫的 SKILL.md 一樣,是一份「給 Claude 的指示」。Claude 讀完後,自己動用手上的工具把事情完成。用法也一樣:打 / 加名稱直接呼叫,或在相關情境讓 Claude 自己啟用。 (來源:官方文件〈Extend Claude with skills〉)

幾個常用的內建 Skill:

(來源:官方文件〈Commands〉

一個好用的規則:同名的自己人優先。在專案的 .claude/skills/ 放一個叫 code-review 的 Skill,它會蓋過內建的 /code-review。也就是說,官方版不合你團隊的胃口,直接寫一個同名的換掉就好。 (來源:官方文件〈Extend Claude with skills〉)

另外,接上第四節那種 MCP 伺服器之後,/ 選單裡也可能多出新命令。格式是 /mcp__伺服器名__提示名。那是伺服器自己提供的現成提示,連上就自動出現。 (來源:官方文件〈Commands〉)

內建命令和內建 Skill 的完整清單,請見站內的斜線命令總覽。功能更新很快,一律以官方 code.claude.com 文件為準。

五、什麼時候需要,什麼時候不需要

值得建 Skill:同一段指示貼了三次以上。或者團隊有固定流程,想讓每個人的 Claude 都照做(放專案的 .claude/skills/ 進版本控制)。

值得接 MCP:資料住在外部系統,你一直手動搬運。想讓 Claude 直接查、直接改那個系統。

先不用急著弄

常見卡點

  1. 建了 Skill 但打 / 找不到。症狀:/summarize-changes 顯示不存在。解法:確認檔名是 SKILL.md,路徑是 ~/.claude/skills/summarize-changes/SKILL.md。如果整個 skills 資料夾是這場對話開始後才建的,重啟 Claude Code 一次。(來源:官方文件〈Extend Claude with skills〉)
  2. Claude 不會自動用我的 Skill。症狀:問了相關問題,它還是照自己的方式做。解法:把 frontmatter 的 description 寫得更像「使用時機」。例如「當使用者問 X、想做 Y 時使用」。等不及就直接 /技能名 指名呼叫。(來源:官方文件〈Extend Claude with skills〉)
  3. MCP 伺服器顯示 Pending approval。症狀:claude mcp list 出現暫停核准字樣。解法:這是專案共用的 .mcp.json 裡的伺服器,基於安全,需要你本人核准。啟動一次互動式 claude,依提示核准即可。(來源:官方文件〈Connect Claude Code to tools via MCP〉)
  4. 本機伺服器的參數被吃掉。症狀:用 claude mcp add 加本機程式(stdio 型)一直失敗。解法:自己的選項和伺服器指令之間,要用兩個減號 -- 隔開。例如 claude mcp add --transport stdio myserver -- npx server-- 後面的內容,才會原封不動傳給伺服器。(來源:官方文件〈Connect Claude Code to tools via MCP〉)
  5. 接了一堆伺服器後,對話變貴變慢。症狀:/context 一看,MCP 占掉一大塊。解法:打 /mcp 停用沒在用的伺服器,或用 claude mcp remove 移除。(來源:官方文件〈Manage costs effectively〉)

重點回顧

下一步