---
# System prepended metadata

title: visual studio 搭配 github coiplot 使用 mcp
tags: [github copilot, MCP, visual studio]

---

# visual studio 搭配 github coiplot 使用 mcp
<span style="color:red;"> ※ visual studio 版本必須是 17.14 以上
※ 必須有 github 帳號搭配 Copilot 存取登入 Visual Studio</span>
[在 Visual Studio 中使用 MCP 伺服器 (官網)](https://learn.microsoft.com/zh-tw/visualstudio/ide/mcp-servers?view=vs-2022)

## 設定 Personal Access Token

1. 登入 github 後進入 https://github.com/settings/tokens

2. 在左側邊欄中，找到 Personal access tokens，選擇 Tonkens (classic)。
 點擊 Generate new token，選擇 Generate new token (classic)
![image](https://hackmd.io/_uploads/rkDAn-C-gl.png)

3. 輸入 token 名稱與選擇期限
![image](https://hackmd.io/_uploads/SyyS4MAWlx.png)

4. 設定權限
![image](https://hackmd.io/_uploads/SyrAmfAbgg.png)

5. 點擊 Generate token 建立 token<span style="color:red">
※ token 複製到自己記得的地方保存好，這個頁面重新整理後 token 不會再顯示
※ 過期或遺失請重新建立 token</span>
![image](https://hackmd.io/_uploads/H1hu8M0-ge.png)

## 設定 visual studio

1. 建立 visual studio 全域 mcp 設定檔 ``` %USERPROFILE%\.mcp.json ```
官網給的預設內容貼到建立的 .mcp.json
``` json
{
  "inputs": [
    {
      "id": "github_pat",
      "description": "GitHub personal access token",
      "type": "promptString",
      "password": true
    }
  ],
  "servers": {
    "github": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITHUB_PERSONAL_ACCESS_TOKEN",
        "ghcr.io/github/github-mcp-server"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_pat}"
      }
    }
  }
}
```

2. 開啟 visual studio => 工具 => 選項 => GitHub => Copilot => 勾選 "在聊天窗格中啟用代理程式模式"
![image](https://hackmd.io/_uploads/HkZDYQT8gg.png)


3. 點擊 GitHub Copilot Chat 視窗中的 詢問(Ask) 下拉選單，然後選取 代理程式(Agent)。
![image](https://hackmd.io/_uploads/HJnqfQAZlx.png)

4. 輸入前面設定的 personal access token
![image](https://hackmd.io/_uploads/BJnBmX0-ge.png)

## 使用 FileSystem MCP Server 測試

加入 [fileSystem mcp server](https://github.com/modelcontextprotocol/servers/tree/main/src/filesystem)
<span style="color:red;">※ 必須加入 ``` "type": "stdio" ``` GitHub Copilot 才能正確取用</span>

``` json
"filesystem": {
    "type": "stdio",
    "command": "npx",
    "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/username/Desktop",
        "/path/to/other/allowed/dir"
    ]
}
```
![image](https://hackmd.io/_uploads/B14dUm0-xl.png)

已設定的 mcp 工具
![image](https://hackmd.io/_uploads/rJj2DmA-ll.png)

使用 filesystem mcp 工具
![image](https://hackmd.io/_uploads/r1i4HXC-ee.png)

執行結果
![image](https://hackmd.io/_uploads/B1pw3m0Wgx.png)
