GitHub Copilot + MCP Server 串接 VSCode 打造 AI 開發流程教學

GitHub Copilot + MCP Server

前言

近代來講,AI 開發已經成為工程師必備的技能之一,但是我們在使用 AI 工具時,總是會遇到一些狀況,如:AI 回傳的內容不如預期,或是 AI 無法理解我們的需求,這些問題都會影響我們的開發效率,所以為了解決這個問題,MCP Server 應運而生。

什麼是 MCP Server

簡單來講 MCP(Model Context Protocol) 是一種 AI 協議,概念就跟 HTTP 協議一樣,只要大家都遵守這個協議,那麼就可以互相串接/溝通…

如果要解釋這一大串的話,我覺得實在很難懂,所以我想簡單一點解釋:

「大家講好一個遊戲規則,然後大家都遵守這個遊戲規則,就可以一起玩這個遊戲。」

為什麼這樣講呢?每個服務商都有自己的規則,像是 GitHub、Figma、Google 等等,這些服務都有自己的 API,而這些 API 都有服務商自己的遊戲規則,但 AI 不可能都懂這些規則,所以我們透過一個顧問來幫我們處理這些事情,這個中介人就是 MCP Server。

以 GitHub 為例,當我們透過 GitHub Copilot 來發起一個請求時,GitHub Copilot 會先分析、拆解這個請求,當分析出你這個請求內容跟 GitHub 有關時,就會跑去跟 MCP Server 説:「ㄟㄟ,我這邊有一個請求是跟 GitHub 有關的,你可以幫我跟 GitHub 詢問一下這些東西在哪嗎?」,然後 MCP Server 就會去翻他的手冊(API 文件),然後告訴 GitHub Copilot:「這個東西在這裡」,然後再依照你的需求來執行/回應給你結果。

透過這種方式 AI 的準確度可以大幅度的增加,而且也可以讓 AI 知道你在講什麼,這樣就不會出現 AI 回傳的內容不如預期的狀況了。

那麼講到現在,我們也差不多要進入正題了,在正題開始之前,你必須要準備好以下的環境(並安裝好):

準備好以上我們才能夠往下繼續唷~

設定並取得 MCP Server

那我們該如何找到自己要的 MCP Server 呢?取得的方式有兩處:

你可以從這兩處找到你想要嘗試的 MCP Server,那麼這邊我就挑選 GitHub 的 MCP Server 作為示範

GitHub MCP Server

這邊要特別提醒一下,當你點擊進去之後,這個儲存庫會是棄用的,所以你還要再點一下 https://github.com/github/github-mcp-server 才能到最新版的

GitHub MCP Server

那麼接下來該怎麼做呢?你可能會找不到任何 Docker 跟安裝指令,因為 GitHub MCP Server 的安裝方式是透過這兩個標籤來進行安裝的:

標籤

其實這兩個標籤都有幫各位寫好相關安裝連結

1
https://insiders.vscode.dev/redirect/mcp/install?name=github&inputs=%5B%7B%22id%22%3A%22github_token%22%2C%22type%22%3A%22promptString%22%2C%22description%22%3A%22GitHub%20Personal%20Access%20Token%22%2C%22password%22%3Atrue%7D%5D&config=%7B%22command%22%3A%22docker%22%2C%22args%22%3A%5B%22run%22%2C%22-i%22%2C%22--rm%22%2C%22-e%22%2C%22GITHUB_PERSONAL_ACCESS_TOKEN%22%2C%22ghcr.io%2Fgithub%2Fgithub-mcp-server%22%5D%2C%22env%22%3A%7B%22GITHUB_PERSONAL_ACCESS_TOKEN%22%3A%22%24%7Binput%3Agithub_token%7D%22%7D%7D

這邊我示範的是 VSCode 正式版,因為 Insiders 屬於測試版本,建議一般使用者避免使用。

當你點下去之後,會跳出一個視窗,請選擇「安裝伺服器」

安裝伺服器

接著你的 VSCode 就會跳出 setting.json 的畫面,內容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
{
"mcp": {
"servers": {
"github": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN",
"ghcr.io/github/github-mcp-server"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}"
}
}
},
"inputs": [
{
"id": "github_token",
"type": "promptString",
"description": "GitHub Personal Access Token",
"password": true
}
]
}
}

到這邊為止,我們已經把 VSCode 的 MCP Server 設定完成了,接著我們要來取得 GitHub 的 Personal Access Token,這邊的 Token 需要有 repo 權限,這樣才能夠讓 MCP Server 正常運作。

取得 GitHub Personal Access Token

取得方式很簡單,請你透過下方連結進入 GitHub 的設定頁面:

欄位這邊我直接提供參考:

  • Token name:GitHub MCP Server
  • Expiration:No expiration
  • Repository access:All repositories

取得 Token

其他你可以依照你的需求來調整,例如只給予特定的 repository 存取權限等等。

那麼點下「Generate token」之後,你就會取得一組 Token,請將這組 Token 複製起來,稍後我們會使用到

取得 Token

Note
請勿將這組 Token 洩漏給任何人。

設定 VSCode 的 GitHub Personal Access Token

接著該怎麼輸入呢?請你按下 F1 叫出 VSCode 的指令面板,接著輸入:

1
>MCP:List Servers

你應該會看到一個「MCP:列出伺服器」,選擇它後,接著選擇「github」

選擇 github

接著選擇「啟動伺服器」,這時候應該會跳出一個視窗要求你輸入 GitHub Personal Access Token,請將剛剛取得的 Token 貼上去,然後按下 Enter 鍵即可。

輸入 Token

接著你就會看到 VSCode 開始啟動 MCP Server,並安裝 Docker,只要你看到這個畫面就代表 MCP Server 啟動成功了

啟動成功

測試 MCP Server

接下來就要來測試 MCP Server 是否正常運作了,請你打開 GitHub Copilot Chat,然後切換到 Agent 模式

Agent 模式

接著就可以開始問它關於 GitHub 相關的問題了!例如…我的 GitHub 帳號底下有多少儲存庫?

只要你有看到畫面有寫「MCP 伺服器」,就代表這一次的請求詢問有經過 MCP Server,然後再回傳給你結果

詢問問題

那們我該如何知道這個 MCP 有支援哪些功能呢?有三種方式:

這邊我是推薦看「官方 MCP Server Tools 區塊」會比較快。

另一種更快速的方式是透過 GitHub Copilot Chat Tools

GitHub Copilot Chat Tools

點擊之後,將會跳出這個 GitHub Copilot Chat 的工具列表,這邊會列出所有支援的工具

GitHub Copilot Chat Tools

那麼以上就是完整的 GitHub Copilot + MCP Server 串接 VSCode 的教學哩~

像是透過 MCP Server 你可以更準確的要求 AI 去做某些事情,像是自然語言來建立儲存庫等等