首頁文章列表MCP 基本介紹 & GitHub Copilot 串接 Supabase 資料庫範例
MCP 2025-04-10

MCP 基本介紹 & GitHub Copilot 串接 Supabase 資料庫範例

什麼是 MCP? 最近在 AI 領域中,MCP(Model Context Protocol)非常熱門。隨著 GPT-4、Claude 等大型語言模型(LLM)應用越來越廣,很多人開始遇到一個很實際的問題:模型不知道我們有哪些資料,也不知道該怎麼用。 也就是說,「上下文管理」變得越來越麻煩。 舉例來說,你可能想讓 AI 回答「我們的退款流程是什麼?」這樣的問題。但模型不知道你們內部的作業規則,...

什麼是 MCP?

最近在 AI 領域中,MCP(Model Context Protocol)非常熱門。隨著 GPT-4、Claude 等大型語言模型(LLM)應用越來越廣,很多人開始遇到一個很實際的問題:模型不知道我們有哪些資料,也不知道該怎麼用。

也就是說,「上下文管理」變得越來越麻煩

舉例來說,你可能想讓 AI 回答「我們的退款流程是什麼?」這樣的問題。但模型不知道你們內部的作業規則,也沒辦法自己讀你電腦裡的文件或系統,所以你只好把內容複製貼上,變成這樣的提示:

「你是一位熟悉公司政策的助理,請根據以下內容回答問題:…(很長的文字)…」 這樣不只麻煩、容易出錯,還會增加成本,甚至有資料外洩的風險。

MCP 就是為了解決這個問題而誕生的

你可以把 MCP 想成 AI 的「萬用轉接頭」,讓語言模型可以用標準化的方式去「接」各種資料來源,例如:

  • 本地的文件或筆記
  • 公司內部的 API
  • 線上的服務或資料庫
  • 甚至是網頁上的內容 以前你可能要針對每一個資料來源各自撰寫整合方式,有了 MCP,只要用符合這個協議的方式接上,它就能自動知道有什麼資料、怎麼使用、怎麼回應。

MCP 提供哪些功能?

  • 上下文模組化管理:可以控制每次模型回答時,該讀哪一份資料、不該讀哪一份。
  • 資料來源和模型分離:不用把所有資料都直接丟給模型,而是由 MCP Server 動態提供。
  • 支援多種資料來源:像本地檔案、API、資料庫、網頁內容、PDF…等都能接入。
  • 支援多種語言模型:不只 OpenAI,還能搭配 Claude、Mistral、LM Studio 等。

MCP 架構怎麼運作?

整個 MCP 的結構大致分成三個角色:

MCP Host

像 Claude Desktop、Cursor 編輯器、VS Code、命令列工具等,這些工具會是使用 MCP 的平台。

MCP Client

它負責管理上下文流程,決定要查哪些資料、去哪裡查、要怎麼整理給模型用。

MCP Server

這是 MCP 的資料來源,可能是一份 JSON 檔、一個資料庫、一個 API,或是你電腦上的文件。Server 會用統一的格式回傳內容給模型使用。

MCP 可以應用在哪些情境?

MCP 的彈性很大,像以下這些場景都很適合:

  • 🗂 文件助理:從內部的 Word、PDF、報告中讀資料並提供摘要或重點。
  • 📋 表單與規則解讀:讀取你電腦裡的作業規範、流程圖、SOP 等,幫你分析與解釋。
  • 🌐 網頁即時互動:讀取目前瀏覽器頁面上的資訊,提供解釋或下一步建議。

⚠️ 使用 MCP 時需要注意的事

雖然 MCP 的協議本身是由 Anthropic 提出的,設計理念也相當完善,不過目前大多數 MCP Server 的實作版本,都是由開發者自行建立並開源分享,缺乏集中式的維護或安全審查機制。

這代表可能會有以下風險:

  • 🔧 缺乏長期維護:有些 Server 是實驗性質,可能沒有人持續更新
  • 🔓 權限控管鬆散:使用不當可能導致資料外洩
  • 💣 惡意程式碼風險:部分開源實作若未經檢查,可能被植入惡意邏輯

✅ 使用建議:

  • 儘量使用有開放原始碼的 MCP Server,最好能自行審查
  • 優先選擇由可靠團隊或知名社群維護的版本
  • 部署在自己可以控管的環境中,不要隨便使用不明來源的 Server

範例:使用 GitHub Copilot 快速串接 Supabase MCP 並建立資料庫專案

你可以依照 Supabase 官方 MCP 文件 的方式設定 MCP,基本流程幾乎相同。

在這個範例中,我是透過 GitHub Copilot 的 Agent 功能來操作,也可以改用其他方式,例如免費的 cline 工具。如果你是在 VS Code 使用 Copilot,記得先做以下幾個設定:

✅ 開始前準備

1.到 VS Code 的 settings.json 中開啟 Copilot agent 功能

2.到 Supabase 網站建立一組 Access Token,並把 token 帶入上面設定中。

當你啟用 GitHub Copilot 並點開 MCP 工具欄時,就能看到目前有哪些 MCP server 可用、也能快速選擇執行對應指令:

再來只需要一個簡單的操作,Copilot 就會幫你:

  • 在 Supabase 自動建立一個新專案
  • 建立兩個預設的資料表
  • 完成 MCP Server 串接設定
  • 顯示執行結果,整個過程完全不需要自己寫一行程式碼

結果預覽

啟用專案就會看到類似的畫面

supabase 上也確實建立了新專案以及專案內新增了兩個table

同時,在 Supabase 的後台也可以看到:

✅ 已自動建立一個新的專案

✅ 專案中預設建立了兩個資料表,無需手動設定

參考資料

🔗 https://modelcontextprotocol.io/introduction

🔗 https://aman.ai/primers/ai/agents/

🔗 https://supabase.com/docs/guides/getting-started/mcp