跳到主要內容
Cypher's Practical Coding
正在準備工作環境...

實戰:安裝你的第一個 MCP Server

情境:從理論到真正能用

學完前兩課,你已經知道 MCP 是什麼。但知道和能用是兩回事。

這課我們來做一件真實的事:讓 Claude 讀取你電腦上的檔案,再進階到讓它查詢本機的 SQLite 資料庫。

就像學開車要上路,學 MCP 也要動手安裝一次。


前置準備

你需要:

  • Claude Desktop(免費下載:claude.ai/download)
  • Node.js(MCP Server 通常用 Node.js 執行)
  • 基本的終端機操作能力(會打指令就好)

第一步:理解 Claude Desktop 的設定檔

Claude Desktop 透過一個 JSON 設定檔來管理 MCP Server。

這個檔案的位置:

  • Mac~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows%APPDATA%\Claude\claude_desktop_config.json

設定檔的基本格式長這樣:

設定檔內容範例:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/你的名字/Documents/電商資料"
      ]
    }
  }
}

每個 MCP Server 都在 mcpServers 底下用一個名字(例如 filesystem)標識。


第二步:安裝 Filesystem MCP Server

Filesystem MCP Server 讓 Claude 可以讀寫你電腦上的檔案。

安裝指令:

更新設定檔:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/你的名字/Documents/電商報表"
      ]
    }
  }
}

注意:路徑換成你實際想讓 Claude 存取的資料夾。

重啟 Claude Desktop,然後試試看:

「幫我列出『電商報表』資料夾裡有哪些檔案。」

如果 Claude 回應了實際的檔案清單,代表 MCP Server 安裝成功!


第三步:安裝 SQLite MCP Server

SQLite 是一種輕量型資料庫,很適合存放結構化資料。讓我們試著讓 Claude 查詢一個訂單資料庫。

建立測試資料庫:

安裝並設定 SQLite MCP Server:

更新設定檔(加入 sqlite):

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem",
               "/Users/你的名字/Documents/電商報表"]
    },
    "sqlite": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-sqlite",
               "/Users/你的名字/Documents/orders.db"]
    }
  }
}

重啟 Claude Desktop 後,試著問:

「查詢目前狀態是『處理中』的所有訂單。」


重要觀念:Claude 能存取什麼?

安裝 MCP Server 時,你需要理解兩個重要概念:

伺服器生命週期(Server Lifecycle)

MCP Server 在 Claude Desktop 啟動時一起啟動,關閉時一起停止。Claude 不會在背景保持連線——每次對話開始,Claude 才去跟 Server 建立連線。

權限模型(Permission Model)

Claude 只能存取你在設定檔中明確指定的範圍

設定內容Claude 能做Claude 不能做
指定某個資料夾路徑讀寫那個資料夾內的檔案存取其他路徑
指定某個資料庫檔案查詢那個資料庫存取其他資料庫
沒有設定 filesystem無法讀寫任何檔案

最小權限原則:只給 Claude 它真正需要的存取範圍,不要把整個磁碟都開放。


練習題


AI 協作:學了這個,跟 AI 怎麼配合?

實際安裝過 MCP Server,你就能評估「哪些工具值得投入時間連接」,而不只是紙上談兵。

你的人類優勢:

  • 你知道公司哪些系統的資料是最有分析價值的
  • 你能設定合理的存取邊界,避免把敏感資料暴露給 AI

可以這樣跟 AI 說:

我剛安裝了 SQLite MCP Server,資料庫裡有訂單資料(orders 表)和商品資料(products 表)。請幫我分析:上個月哪些商品的退貨率最高?並建議可能的原因。

互動示範

DEMO 1可以修改程式碼試玩
DEMO 2可以修改程式碼試玩
DEMO 3可以修改程式碼試玩
DEMO 4可以修改程式碼試玩

挑戰任務

Task 1

根據本課內容,如果你想讓 Claude 讀取『/Users/maki/Documents/行銷資料』這個資料夾,claude_desktop_config.json 的 filesystem server args 應該怎麼設定?請寫出 args 陣列的內容。

Task 2

你安裝了 filesystem MCP Server,並把路徑設為 /Documents/電商報表。請判斷以下哪些操作 Claude「可以做到」、哪些「不能做到」: A. 讀取 /Documents/電商報表/2024Q4.xlsx B. 讀取 /Documents/財務機密/帳冊.xlsx C. 在 /Documents/電商報表/ 裡建立新檔案 D. 刪除你的桌面檔案

Task 3

(開放題)你是一家電商的行銷主管,打算安裝 SQLite MCP Server 讓 Claude 查詢訂單資料庫。根據「最小權限原則」,你應該給 Claude 什麼樣的存取範圍?有哪些表或資料不應該讓 Claude 存取?

BackNext Lesson →