本文件專為 Visual Studio Code(VS Code) 使用者設計,說明如何在VS Code中設定並使用MySQL與MSSQL的MCP服務,搭配 GitHub Copilot Agent Mode 實現 AI 驅動的資料庫查詢。
Docker 安裝
-
基本元件

-
Docker 啟動


-
nano %UserProfile%\.wslconfig[wsl2] memory=4GB processors=4 guiApplications=false -
重新啟動
wsl
wsl --shutdown
# 清理背景失敗的容器(強制刪除卡住的容器)
docker rm -f mysql-mcp
# 用 mysql:8.0 啟動容器
docker run -d --name mysql-mcp -e MYSQL_ROOT_PASSWORD=1qaz@wsx -e MYSQL_DATABASE=mcp -p 6033:3306 mysql:8.0 --skip-name-resolve --default-authentication-plugin=mysql_native_password
# 查看容器日誌確認是否 Ready
docker logs -f mysql-mcp
# 直接使用 Docker 內部的 CLI 登入(推薦選項 A)
docker exec -it mysql-mcp mysql -uroot -p1qaz@wsx
# 若仍想用 Windows CMD 的 mysql 連線 (選項 B)
mysql -h 127.0.0.1 -P 6033 -u root -p
# 確認 MySQL 容器運作中
docker ps
# 若未啟動,請先啟動 `docker start mysql-mcp`
# 啟動 phpMyAdmin 容器
# CMD 執行以下指令,透過 `--link` 參數將 phpMyAdmin 連接到 `mysql-mcp` 容器:
docker run -d --name myadmin -p 8080:80 --link mysql-mcp:db phpmyadmin/phpmyadmin
# -p 8080:80: 將網頁介面映射到本機的 `8080` 端口。
# --link mysql-mcp:db :讓 phpMyAdmin 自動把 mysql-mcp 容器當作預設的資料庫主機(db)。
# 確認 phpmyadmin 已成功運行:
# docker ps
# 應該會看到 mysql-mcp 與 myadmin 兩個容器都在 Up 狀態
# 開啟瀏覽器登入: http://localhost:8080
# 在登入畫面輸入:
# - **伺服器 (Server)**:`db` (或保持預設)
# - **使用者名稱 (Username)**:`root`
# - **密碼 (Password)**:`1qaz@wsx`一、架構概覽
VS Code GitHub Copilot(Agent Mode)
│
│ 呼叫工具(MCP Tools)
▼
┌─────────────────────────────────────┐
│ .vscode/mcp.json │
│ ┌──────────────┐ ┌──────────────┐ │
│ │ MCP: mysql │ │ MCP: mssql │ │
│ └──────┬───────┘ └──────┬───────┘ │
└─────────┼────────────────┼──────────┘
▼ ▼
MySQL 資料庫 SQL Server 資料庫二、前置需求
2.1 必備軟體
| 軟體 | 版本需求 | 下載連結 |
|---|---|---|
| Visual Studio Code | 1.99 以上(支援 MCP) | https://code.visualstudio.com/ |
| GitHub Copilot 擴充套件 | 最新版 | VS Code 內建市集安裝 |
| Python | 3.10+ | https://www.python.org/ |
uv(推薦) | 最新版 | https://docs.astral.sh/uv/ |
| Node.js(備選方案) | 18+ LTS | https://nodejs.org/ |
2.2 MSSQL 額外需求
IMPORTANT
連接 SQL Server 必須安裝 Microsoft ODBC Driver for SQL Server(版本 17 或 18)。
安裝步驟(Windows):
:: 使用 winget 安裝(Windows 10/11)
winget install Microsoft.ODBCDriverforSQLServer
:: 或至官方網頁下載
:: https://learn.microsoft.com/zh-tw/sql/connect/odbc/download-odbc-driver-for-sql-server2.3 安裝 GitHub Copilot 擴充套件
- 開啟 VS Code
- 按
Ctrl + Shift + X開啟擴充套件面板 - 搜尋 「GitHub Copilot」
- 點選安裝,並登入 GitHub 帳號
三、VS Code 相關組態設定
3.1 Github Copilot 相關的設定
按 Ctrl + Shift + P,輸入 「Open User Settings (JSON)」,加入以下設定:
{
// 啟用 GitHub Copilot,對所有語言預設開啟
"github.copilot.enable": {
"*": true,
// 純文字檔不提供 Copilot 建議
"plaintext": false,
// Markdown 檔提供 Copilot 建議
"markdown": true
},
// 啟用 Copilot Chat 的 Agent 功能;若你不使用 Chat/Agent,可刪除這一行
"github.copilot.chat.agent.enabled": true,
// 讓 Copilot Chat 嘗試使用繁體中文回應;屬於個人偏好,非必須
"github.copilot.chat.localeOverride": "zh-TW"
}NOTE
VS Code 1.99 版後 MCP 支援為預設開啟,若您使用的是最新版本通常不需要手動設定。
3.2 專案下的設定
-
編輯
.vscode/settings.json{ // 物件開始:VS Code 設定檔頂層
“terminal.integrated.defaultProfile.windows”: “Command Prompt”, // 指定 Windows 的預設終端機 profile 為「Command Prompt」
“terminal.integrated.profiles.windows”: { // 定義 Windows 平台下可用的終端機 profiles
“Command Prompt”: { // profile 名稱:Command Prompt
“path”: “C:\Windows\System32\cmd.exe”, // 指向 cmd.exe 的完整路徑(反斜線需以 \ 表示)
“args”: [“/K”, “chcp 65001”] // 啟動 cmd 時的參數:/K 保持視窗、chcp 65001 設定為 UTF-8 編碼頁
}, // 結束 Command Prompt profile
“PowerShell”: { // profile 名稱:PowerShell
“path”: “C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe”, // PowerShell 可執行檔路徑
“args”: [] // PowerShell 的預設引數(此處為空陣列)
} // 結束 PowerShell profile
}, // 結束 terminal.integrated.profiles.windows 物件
“terminal.integrated.enablePersistentSessions”: true, // 啟用終端機持久化會話(重新開啟後保留)
“terminal.integrated.fontFamily”: “Consolas, ‘Microsoft JhengHei’, monospace”, // 終端字型:英文字型與中文備援字型
“terminal.integrated.fontSize”: 18, // 終端字型大小(像素)
“editor.fontSize”: 18, // 編輯器字型大小(像素)
“editor.lineHeight”: 1.8, // 行高:可以是數字(像素或倍數,視設定而定)
// ── 編碼設定 ──────────────────────────────────
// 下列為與檔案編碼相關的設定
“files.encoding”: “utf8”, // 專案檔案預設使用 UTF-8 編碼
// 自動偵測 BOM(讓 VS Code 自動識別 UTF-8 BOM 檔案)
“files.autoGuessEncoding”: true, // 啟用自動偵測檔案編碼功能
“markdown.preview.fontFamily”: “‘Microsoft JhengHei’, ‘PingFang TC’, sans-serif”, // Markdown 預覽使用的字型(含中文備援)
“python-envs.defaultEnvManager”: “ms-python.python:system” // Python 環境管理器的預設值(依插件/環境而定)
} // 物件結束
2. 編輯`.vscode/tasks.json`
```json
{ // 物件開始:tasks 設定檔頂層
"version": "2.0.0", // tasks 配置版本,固定為 2.0.0
"tasks": [ // 任務陣列開始:放置一或多個 task 物件
{ // 第一個 task 物件開始
"label": "Auto Terminal", // 任務標籤,用於辨識與執行此任務
"type": "shell", // 任務類型:使用 shell 執行命令
"command": "cd /d C:\\workspace\\python", // 要執行的命令:切換至指定工作目錄(Windows 路徑需以 \\ 轉義)
"options": { // 選項:提供 shell 或環境相關的設定
"shell": { // shell 子物件:定義要使用的 shell 及其引數
"executable": "cmd.exe", // 要呼叫的 shell 可執行檔(此處為 cmd)
"args": ["/d", "/c"] // 傳遞給 shell 的引數;/d 允許在不同磁碟間切換,/c 執行命令後關閉
} // shell 物件結束
}, // options 結束
"presentation": { // 呈現設定:控制任務執行時終端面板的顯示與行為
"panel": "new", // 面板行為:"new" 每次開新面板,"shared"/"dedicated" 可共用或專用
"reveal": "always", // 是否在執行任務時自動顯示終端面板(always = 總是顯示)
"focus": true, // 執行任務時是否將焦點移到終端面板
"close": true // 任務完成後是否自動關閉面板(true = 關閉)
}, // presentation 結束
"runOptions": { // 執行選項:控制何時自動執行此任務
"runOn": "folderOpen" // 設定為 folderOpen 時,當工作區資料夾開啟時自動執行該任務
} // runOptions 結束
} // 第一個 task 物件結束
] // tasks 陣列結束
}
四、安裝 MCP Server 套件
VS Code 的 mcp.json 支援三種執行方式,請擇一使用:
| 方法 | 工具 | 特點 |
|---|---|---|
| A | uvx(推薦) | 自動管理隔離環境,免手動安裝 |
| B | pip(傳統) | 手動安裝至 Python 環境,適合熟悉 pip 的使用者 |
| C | npx | Node.js 方案,自動下載 npm 套件 |
方法 A:使用 uvx(Python,推薦)
安裝 uv:
pip install uv或使用官方安裝腳本:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"安裝完成後驗證:
uv --version
uvx --version
uvx會在執行時自動下載套件,無需手動 pip install。
方法 B:使用 pip(傳統 Python 安裝)
直接使用 pip 安裝 MCP Server 套件至您的 Python 環境:
全域安裝:
pip install mysql-mcp-server mssql-mcp-server建議使用虛擬環境(避免套件衝突):
:: 建立虛擬環境
python -m venv mcp-env
:: 啟動虛擬環境(Windows)
mcp-env\Scripts\activate
:: 安裝套件
pip install mysql-mcp-server mssql-mcp-server
:: 確認安裝成功
pip show mysql-mcp-server
pip show mssql-mcp-server安裝完成後,確認 Python 可執行路徑(設定 mcp.json 時需要):
:: 全域安裝時
where python
:: 虛擬環境啟動後
python -c "import sys; print(sys.executable)"NOTE
若使用虛擬環境,請記下
python.exe的完整路徑,在mcp.json的command欄位中需要填入此路徑。
方法 C:使用 npx(Node.js 方案)
若您偏好 Node.js 環境,確認已安裝 Node.js:
node --version
npm --version
npx會在執行時自動下載對應的 npm 套件。
五、建立 mcp.json 設定檔
VS Code MCP 設定有兩種範圍:
| 範圍 | 檔案位置 | 適用情境 |
|---|---|---|
| 工作區層級 | .vscode/mcp.json(專案目錄內) | 專案專屬的資料庫設定 |
| 使用者全域 | 透過指令面板開啟 MCP: 開啟使用者設定。%AppData%/Code/User/mcp.json | 所有工作區共用 |
5.1 建立工作區層級設定(推薦)
在您的專案根目錄建立 .vscode/mcp.json 檔案:
mkdir .vscode
type nul > .vscode\mcp.json5.2 設定範例(uvx / Python 版)
將以下內容寫入 .vscode/mcp.json,並替換您的實際連線資訊:
{
"inputs": [
{
"id": "mysql_password",
"type": "promptString",
"description": "請輸入 MySQL 密碼",
"password": true
},
{
"id": "mssql_password",
"type": "promptString",
"description": "請輸入 SQL Server 密碼",
"password": true
}
],
"servers": {
"mysql": {
"command": "uvx",
"args": ["--from", "mysql-mcp-server", "mysql_mcp_server"],
"env": {
"MYSQL_HOST": "127.0.0.1",
"MYSQL_PORT": "3306",
"MYSQL_USER": "root",
"MYSQL_PASSWORD": "${input:mysql_password}",
"MYSQL_DATABASE": "your_database"
}
},
"mssql": {
"command": "uvx",
"args": ["--from", "mssql-mcp-server", "mssql_mcp_server"],
"env": {
"MSSQL_HOST": "127.0.0.1",
"MSSQL_PORT": "1433",
"MSSQL_USER": "sa",
"MSSQL_PASSWORD": "${input:mssql_password}",
"MSSQL_DATABASE": "your_database",
"MSSQL_TRUST_SERVER_CERTIFICATE": "true"
}
}
}
}TIP
使用
${input:id}語法,VS Code 會在首次啟動 MCP Server 時彈出密碼輸入框,並將密碼安全地儲存在 Windows 認證管理員中,不會以明文存在任何檔案。本專案實際設定
MYSQL_PORT:6033MYSQL_DATABASE:class如果你是用本機 MySQL MCP server,請將上述參數同步到你的
.vscode/mcp.json。
5.2.1 本專案實際 .vscode/mcp.json 範例
以下為本專案真實使用的 .vscode/mcp.json 配置:
{
"inputs": [
{
"id": "mysql_password",
"type": "promptString",
"description": "請輸入 MySQL 密碼",
"password": true
}
],
"servers": {
"mysql": {
"command": "python",
"args": ["-m", "mysql_mcp_server.server"],
"env": {
"MYSQL_HOST": "localhost",
"MYSQL_PORT": "6033",
"MYSQL_USER": "root",
"MYSQL_PASSWORD": "${input:mysql_password}",
"MYSQL_DATABASE": "class"
}
}
}
}注意:此範例僅包含 MySQL MCP server 的配置,若要同時使用 MSSQL,請依需求補上
mssql伺服器設定。
5.2.2 補充:同時使用 MySQL 和 MSSQL 的 .vscode/mcp.json 範例
如果您希望在同一個專案同時啟動 MySQL 與 SQL Server MCP 服務,請使用下列配置:
{
"inputs": [
{
"id": "mysql_password",
"type": "promptString",
"description": "請輸入 MySQL 密碼",
"password": true
},
{
"id": "mssql_password",
"type": "promptString",
"description": "請輸入 SQL Server 密碼",
"password": true
}
],
"servers": {
"mysql": {
"command": "python",
"args": ["-m", "mysql_mcp_server.server"],
"env": {
"MYSQL_HOST": "localhost",
"MYSQL_PORT": "6033",
"MYSQL_USER": "root",
"MYSQL_PASSWORD": "${input:mysql_password}",
"MYSQL_DATABASE": "class"
}
},
"mssql": {
"command": "python",
"args": ["-m", "mssql_mcp_server.server"],
"env": {
"MSSQL_SERVER": "localhost",
"MSSQL_PORT": "1433",
"MSSQL_USER": "sa",
"MSSQL_PASSWORD": "${input:mssql_password}",
"MSSQL_DATABASE": "your_database",
"MSSQL_TRUST_SERVER_CERTIFICATE": "true"
}
}
}
}TIP
若您使用 SQL Server 具名實例,請將
MSSQL_SERVER改為.\\SQL2022或localhost\\SQL2022。
5.3 設定範例(pip / Python 版)
IMPORTANT
使用此方法前,請先完成「方法 B:pip 安裝」步驟,確認套件已安裝完成。
command 欄位填入 Python 可執行檔的完整路徑,args 使用 -m 套件名稱.server 模組方式啟動:
NOTE
本機實際環境:
- Python 執行檔:
C:\Python\Python314\python.exe(Python 3.14)- mysql 套件路徑:
C:\Python\Python314\Lib\site-packages\mysql_mcp_server\server.py- mssql 套件路徑:
C:\Python\Python314\Lib\site-packages\mssql_mcp_server\server.py
-m mysql_mcp_server.server等同直接執行上方的server.py。


全域 Python 安裝版(本機實測可用):
{
"inputs": [
{
"id": "mysql_password",
"type": "promptString",
"description": "請輸入 MySQL 密碼",
"password": true
},
{
"id": "mssql_password",
"type": "promptString",
"description": "請輸入 SQL Server 密碼",
"password": true
}
],
"servers": {
"mysql": {
"command": "python",
"args": ["-m", "mysql_mcp_server.server"],
"env": {
"MYSQL_HOST": "localhost",
"MYSQL_PORT": "3306",
"MYSQL_USER": "root",
"MYSQL_PASSWORD": "${input:mysql_password}",
"MYSQL_DATABASE": "your_database"
}
},
"mssql": {
"command": "python",
"args": ["-m", "mssql_mcp_server.server"],
"env": {
"MSSQL_SERVER": "localhost",
"MSSQL_USER": "sa",
"MSSQL_PASSWORD": "${input:mssql_password}",
"MSSQL_DATABASE": "your_database"
}
}
}
}TIP
SQL Server 具名實例(如
SQL2022)寫法:"MSSQL_SERVER": ".\\SQL2022"本機預設實例則使用
"."或"localhost"即可。虛擬環境版(路徑需依實際情況調整):
{ "inputs": [ { "id": "mysql_password", "type": "promptString", "description": "請輸入 MySQL 密碼", "password": true }, { "id": "mssql_password", "type": "promptString", "description": "請輸入 SQL Server 密碼", "password": true } ], "servers": { "mysql": { "command": "C:\\Users\\YourName\\mcp-env\\Scripts\\python.exe", "args": ["-m", "mysql_mcp_server.server"], "env": { "MYSQL_HOST": "localhost", "MYSQL_PORT": "3306", "MYSQL_USER": "root", "MYSQL_PASSWORD": "${input:mysql_password}", "MYSQL_DATABASE": "your_database" } }, "mssql": { "command": "C:\\Users\\YourName\\mcp-env\\Scripts\\python.exe", "args": ["-m", "mssql_mcp_server.server"], "env": { "MSSQL_SERVER": "localhost", "MSSQL_USER": "sa", "MSSQL_PASSWORD": "${input:mssql_password}", "MSSQL_DATABASE": "your_database" } } } }
TIP
將
C:\\Users\\YourName\\mcp-env替換為您實際的虛擬環境路徑。
路徑中的反斜線在 JSON 內需要使用\\雙重跳脫。
5.4 設定範例(npx / Node.js 版)
{
"inputs": [
{
"id": "mysql_password",
"type": "promptString",
"description": "請輸入 MySQL 密碼",
"password": true
},
{
"id": "mssql_password",
"type": "promptString",
"description": "請輸入 SQL Server 密碼",
"password": true
}
],
"servers": {
"mysql": {
"command": "npx",
"args": ["-y", "@liangshanli/mcp-server-mysql"],
"env": {
"MYSQL_HOST": "127.0.0.1",
"MYSQL_PORT": "3306",
"MYSQL_USER": "root",
"MYSQL_PASSWORD": "${input:mysql_password}",
"MYSQL_DATABASE": "your_database"
}
},
"mssql": {
"command": "npx",
"args": ["-y", "@liangshanli/mcp-server-mssqlserver"],
"env": {
"MSSQL_SERVER": "127.0.0.1",
"MSSQL_PORT": "1433",
"MSSQL_USER": "sa",
"MSSQL_PASSWORD": "${input:mssql_password}",
"MSSQL_DATABASE": "your_database",
"MSSQL_TRUST_SERVER_CERTIFICATE": "true"
}
}
}
}5.5 全域設定(所有工作區共用)
- 按
Ctrl + Shift + P - 輸入 「MCP: Open User Configuration」
- 貼入與上方相同格式的設定內容
六、在 VS Code 中啟動 MCP Server
步驟 1:儲存 mcp.json
儲存檔案後,VS Code 右下角會出現 MCP 狀態提示。
步驟 2:重新載入視窗
按 Ctrl + Shift + P,執行:
Developer: Reload Window步驟 3:確認 Server 狀態
按 Ctrl + Shift + P,執行:
MCP: List Servers正常運行時,mysql 和 mssql 旁邊會顯示 ✅ 綠色狀態。
步驟 4:檢查輸出日誌
若遇到問題,至 「檢視 → 輸出(Output)」,在下拉選單選擇 「MCP」 查看詳細日誌。
七、在 GitHub Copilot Agent Mode 中使用
7.1 開啟 Copilot Chat
按 Ctrl + Alt + I(或點選側邊欄的 Copilot 圖示)
7.2 切換至 Agent Mode
在 Copilot Chat 輸入框左側,點選模式選擇器,切換為:
🤖 Agent7.3 啟用資料庫工具
點選輸入框旁的 🔧 工具(Tools) 圖示,勾選:
- ✅
mysql→execute_sql - ✅
mssql→execute_sql
7.4 自然語言查詢範例
在 Copilot Chat 輸入框中,直接用自然語言提問:
幫我查詢 MySQL 的 users 資料表,列出最近 7 天內新增的使用者,
並按照建立時間由新到舊排序。在 SQL Server 中,查詢 Orders 資料表中金額超過 10000 的訂單,
並統計每個客戶的總金額。IMPORTANT
Copilot 在執行每個
execute_sql工具呼叫前,都會先顯示預覽 SQL 語句並請求您的確認,確保安全性。
八、直接呼叫 execute_sql 工具
MCP 工具規格如下,可由 Copilot 自動呼叫:
{
"name": "execute_sql",
"parameters": {
"query": "您的 SQL 查詢語句"
}
}MySQL 常用查詢範例
-- 列出所有資料庫
SHOW DATABASES;
-- 列出當前資料庫的所有資料表
SHOW TABLES;
-- 查詢資料表結構
DESCRIBE users;
-- 條件查詢
SELECT id, name, email, created_at
FROM users
WHERE created_at >= DATE_SUB(NOW(), INTERVAL 7 DAY)
ORDER BY created_at DESC
LIMIT 20;
-- 聚合統計
SELECT DATE(created_at) AS date, COUNT(*) AS count
FROM orders
GROUP BY DATE(created_at)
ORDER BY date DESC;MSSQL 常用查詢範例
-- 列出所有資料庫
SELECT name FROM sys.databases;
-- 列出當前資料庫所有資料表
SELECT TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE';
-- 查詢資料表結構
SELECT COLUMN_NAME, DATA_TYPE, IS_NULLABLE, CHARACTER_MAXIMUM_LENGTH
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'Users';
-- 條件查詢(含分頁)
SELECT id, name, email, created_at
FROM Users
WHERE created_at >= DATEADD(DAY, -7, GETDATE())
ORDER BY created_at DESC
OFFSET 0 ROWS FETCH NEXT 20 ROWS ONLY;
-- 聚合統計
SELECT CAST(OrderDate AS DATE) AS date, COUNT(*) AS count, SUM(Amount) AS total
FROM Orders
GROUP BY CAST(OrderDate AS DATE)
ORDER BY date DESC;九、安全性建議
CAUTION
請務必遵守以下安全原則,避免資料庫憑證外洩。
✅ 建議做法
-
使用
${input:id}變數 — 密碼由 VS Code 安全儲存,不寫入任何檔案 -
資料庫帳號使用最小權限 — 若只需查詢,給予
SELECT權限即可 -
將
.vscode/mcp.json加入.gitignore— 若有直接寫入密碼# .gitignore .vscode/mcp.json .env -
使用唯讀帳號 — AI 工具搭配唯讀帳號更安全
-- MySQL:建立唯讀使用者 CREATE USER 'mcp_readonly'@'localhost' IDENTIFIED BY 'strong_password'; GRANT SELECT ON your_database.* TO 'mcp_readonly'@'localhost'; -- SQL Server:建立唯讀帳號 CREATE LOGIN mcp_readonly WITH PASSWORD = 'StrongPassword123!'; USE your_database; CREATE USER mcp_readonly FOR LOGIN mcp_readonly; ALTER ROLE db_datareader ADD MEMBER mcp_readonly;
❌ 避免做法
- ❌ 將密碼明文寫在
mcp.json並 commit 到 Git - ❌ 使用
root/sa等超級管理員帳號連接 MCP - ❌ 在不信任的網路環境下連接遠端資料庫(應使用 SSL/TLS)
十、常見問題排除
❌ MCP Server 無法啟動
原因與解決方法:
:: 確認 uv 已正確安裝
uv --version
:: 測試 uvx 是否可用
uvx --help
:: 手動測試 MySQL MCP Server
uvx --from mysql-mcp-server mysql_mcp_server查看 VS Code 輸出面板:檢視 → 輸出 → 選擇 MCP
❌ MSSQL 連線失敗(ODBC Error)
解決方法:
:: 確認 ODBC Driver 已安裝
odbcad32
:: 或透過 PowerShell 確認
Get-OdbcDriver | Where-Object {$_.Name -like "*SQL Server*"}若未安裝,至官方頁面下載:
https://learn.microsoft.com/zh-tw/sql/connect/odbc/download-odbc-driver-for-sql-server
❌ Copilot 找不到 MCP 工具
解決步驟:
- 確認
chat.mcp.enabled: true已設定 - 按
Ctrl + Shift + P執行Developer: Reload Window - 按
Ctrl + Shift + P執行MCP: List Servers確認狀態 - 確認 Copilot Chat 已切換至 Agent Mode(非 Ask 或 Edit 模式)
❌ MySQL 連線被拒絕(Connection Refused)
:: 確認 MySQL 服務正在執行
net start | findstr MySQL
:: 啟動 MySQL 服務
net start MySQL❌ mcp.json 修改後無效果
NOTE
每次修改
mcp.json後,必須執行Developer: Reload Window才能生效。
❌ VS Code 終端機啟動失敗(/K 參數錯誤)
症狀:
- 執行命令時出現
/K : 無法辨識 '/K' cmd.exe或powershell.exe無法正常啟動
原因:
.vscode/settings.json內terminal.integrated.profiles.windows的Command Promptprofile 配置不正確- 可能會因為拷貝貼上造成重複 JSON 根物件或
args參數格式錯誤
修正方式:
- 確認
.vscode/settings.json只有一個 JSON 根物件 Command Prompt的正確設定範例如下:
{
"terminal.integrated.defaultProfile.windows": "Command Prompt",
"terminal.integrated.profiles.windows": {
"Command Prompt": {
"path": "C:\\Windows\\System32\\cmd.exe",
"args": ["/K", "chcp 65001"]
},
"PowerShell": {
"path": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"args": []
}
}
}- 儲存後重新載入 VS Code,並在新終端輸入
echo OK確認
TIP
這個修正屬於
.vscode/settings.json的 VS Code 終端設定問題。若你是用工作區設定,請在該檔案中檢查terminal.integrated.profiles.windows是否只包含一個 JSON 根物件,並確認Command Promptprofile 的args參數格式正確。
完整 .vscode/settings.json 範例
{
"terminal.integrated.defaultProfile.windows": "Command Prompt",
"terminal.integrated.profiles.windows": {
"Command Prompt": {
"path": "C:\\Windows\\System32\\cmd.exe",
"args": ["/K", "chcp 65001"]
},
"PowerShell": {
"path": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"args": []
}
},
"terminal.integrated.enablePersistentSessions": true,
"terminal.integrated.fontFamily": "Consolas, 'Microsoft JhengHei', monospace",
"terminal.integrated.fontSize": 18,
"editor.fontSize": 18,
"editor.lineHeight": 1.8,
"files.encoding": "utf8",
"files.autoGuessEncoding": true,
"markdown.preview.fontFamily": "'Microsoft JhengHei', 'PingFang TC', sans-serif",
"python-envs.defaultEnvManager": "ms-python.python:system"
}提示:上方內容可直接存成工作區設定檔
.vscode/settings.json,並重新載入 VS Code 以套用更正確的終端機設定。
十一、指令速查表
| 動作 | 快速鍵 / 指令 |
|---|---|
| 開啟指令面板 | Ctrl + Shift + P |
| 開啟 Copilot Chat | Ctrl + Alt + I |
| 重新載入視窗 | Ctrl + Shift + P → Developer: Reload Window |
| 查看 MCP Server 狀態 | Ctrl + Shift + P → MCP: List Servers |
| 開啟全域 MCP 設定 | Ctrl + Shift + P → MCP: Open User Configuration |
| 新增 MCP Server | Ctrl + Shift + P → MCP: Add Server |
| 查看 MCP 輸出日誌 | 檢視 → 輸出 → 選擇 MCP |
十二、相關資源
- VS Code MCP 官方文件
- GitHub Copilot Agent Mode 說明
- Model Context Protocol 規格書
- mysql-mcp-server on PyPI
- mssql-mcp-server on PyPI
- uv 官方文件
- Microsoft ODBC Driver 下載頁面
相關主題與延伸閱讀
- 2. Antigravity 環境中使用 MCP MySQL 與 MSSQL 服務:同樣主題但改在 Antigravity IDE 環境下設定,可對照兩者差異。
- 3. GitHub Copilot:紀錄了 Copilot Chat 的 MCP 伺服器停用問題,是本篇常見問題排除的延伸案例。
- 1. 如何在 Antigravity IDE 使用 Claude code AI Agent:了解另一種 AI Agent 在 IDE 中的登入與使用方式。
- 2. 在 Visual Studio Code IDE 開發 Python 程式如何設定除錯:同樣涉及
.vscode目錄下設定檔(launch.json)的操作技巧。 - 1. Visual Studio Code 擴充套件推薦:熟悉 VS Code 基本擴充套件安裝流程,有助於理解本篇的套件安裝步驟。