🚀 MCP服務器實戰營:從零基礎到高手
這是一個完全免費的綜合實戰營,旨在幫助你精通MCP服務器的創建。通過7周的學習,你將從基礎概念出發,逐步掌握高級企業架構,成為MCP服務器領域的專家。
🚀 快速開始
先決條件
- 安裝 Node.js 18+ 和 pnpm 8+
- 安裝 Python 3.11+(用於FastAPI示例)
- 安裝 Docker 和 Docker Compose
- 安裝 Git 用於版本控制
- 推薦使用 VS Code 作為代碼編輯器(包含配置文件)
快速安裝
git clone https://github.com/tu-usuario/mcp-server-bootcamp.git
cd mcp-server-bootcamp
pnpm install
pnpm run setup
pnpm run verify-setup
cd ejemplos/modulo-01/calculadora-basica
pnpm run dev
🐳 使用Docker進行開發
初始配置
- 複製環境變量:
cp .env.example .env
- 啟動服務:
docker compose up -d
docker compose ps
- 進入開發環境:
docker compose exec bootcamp-dev bash
pnpm install
pnpm run verify-setup
Docker常用命令
docker compose logs -f
docker compose logs -f bootcamp-dev
docker compose logs -f db
docker compose restart
docker compose down
docker compose down -v
連接數據庫
在本地機器上,你可以使用以下信息連接到PostgreSQL:
- 主機:
localhost
- 端口:
5432
- 用戶:
bootcamp_user(在 .env 中定義)
- 密碼:
supersecretpassword(在 .env 中定義)
- 數據庫:
mcp_bootcamp_db(在 .env 中定義)
在容器中開發
docker compose exec bootcamp-dev pnpm install
docker compose exec bootcamp-dev pnpm run dev
docker compose exec bootcamp-dev pnpm test
docker compose exec bootcamp-dev bash
🛠️ 本地安裝(可選)
如果你不想使用Docker,可以直接在本地機器上安裝依賴來配置環境。請確保已經安裝了 Node.js、Python 和 PostgreSQL。
npm install
pip install -r requirements.txt
npm run dev
✨ 主要特性
在7周的時間裡,你將從基礎概念逐步深入到高級企業架構,全面掌握 Model Context Protocol (MCP) Servers:
- 🔧 紮實的基礎:學習架構、配置並搭建第一個功能服務器
- ⚡ 高級工具:掌握動態資源、智能提示和API集成
- 🗄️ 數據持久化:瞭解數據庫、ORM和性能優化
- 🔐 安全保障:學習認證、授權和企業審計
- 🧪 質量保證:掌握測試、CI/CD和可觀測性
- 🏗️ 架構設計:瞭解微服務、可擴展性和彈性設計
- 🎯 實戰項目:完成一個完整的可投入生產的應用
📦 安裝指南
快速安裝
git clone https://github.com/tu-usuario/mcp-server-bootcamp.git
cd mcp-server-bootcamp
pnpm install
pnpm run setup
pnpm run verify-setup
cd ejemplos/modulo-01/calculadora-basica
pnpm run dev
使用Docker進行開發
初始配置
- 複製環境變量:
cp .env.example .env
- 啟動服務:
docker compose up -d
docker compose ps
- 進入開發環境:
docker compose exec bootcamp-dev bash
pnpm install
pnpm run verify-setup
Docker常用命令
docker compose logs -f
docker compose logs -f bootcamp-dev
docker compose logs -f db
docker compose restart
docker compose down
docker compose down -v
連接數據庫
在本地機器上,你可以使用以下信息連接到PostgreSQL:
- 主機:
localhost
- 端口:
5432
- 用戶:
bootcamp_user(在 .env 中定義)
- 密碼:
supersecretpassword(在 .env 中定義)
- 數據庫:
mcp_bootcamp_db(在 .env 中定義)
在容器中開發
docker compose exec bootcamp-dev pnpm install
docker compose exec bootcamp-dev pnpm run dev
docker compose exec bootcamp-dev pnpm test
docker compose exec bootcamp-dev bash
本地安裝(可選)
如果你不想使用Docker,可以直接在本地機器上安裝依賴來配置環境。請確保已經安裝了 Node.js、Python 和 PostgreSQL。
npm install
pip install -r requirements.txt
npm run dev
📚 詳細文檔
📋 模塊介紹
📖 模塊1:基礎概念
第1周 • 概念理解、配置和搭建第一個服務器
- 🎯 第1 - 2天:學習MCP架構和使用案例
- 🛠️ 第3 - 4天:搭建環境並開發智能計算器
- 🔍 第5 - 7天:深入瞭解MCP服務器的完整架構
⚡ 模塊2:高級工具和資源
第2周 • 動態資源和智能上下文
- 📊 第8 - 10天:學習資源系統和數據管理
- 🧠 第11 - 12天:掌握動態提示和自適應上下文
- 🌐 第13 - 14天:集成外部API
🗄️ 模塊3:數據持久化和數據庫
第3周 • 數據存儲和優化
- 💾 第15 - 17天:學習SQLite、PostgreSQL和數據訪問模式
- 🔄 第18 - 19天:掌握Prisma ORM和數據建模
- ⚡ 第20 - 21天:瞭解分佈式緩存和性能優化
🔐 模塊4:安全和認證
第4周 • 企業級安全
- 🛡️ 第22 - 24天:學習基礎安全知識和強大的認證機制
- 👥 第25 - 26天:掌握基於角色的訪問控制(RBAC)/基於屬性的訪問控制(ABAC)和細粒度控制
- 📋 第27 - 28天:瞭解審計和結構化日誌記錄
🧪 模塊5:測試和質量保證
第5周 • 質量控制和自動化
- ✅ 第29 - 31天:學習全面測試和模擬技術
- 🔄 第32 - 33天:掌握CI/CD和自動部署
- 📊 第34 - 35天:瞭解監控和可觀測性
🏗️ 模塊6:高級架構
第6周 • 企業級可擴展性
- 🔗 第36 - 38天:學習微服務和分佈式系統
- 🚀 第39 - 40天:瞭解性能優化和極致可擴展性
- 🛡️ 第41 - 42天:掌握彈性設計和高可用性
🎯 模塊7:最終項目
第7周 • 應用所學知識
- 📋 第43 - 45天:設計完整的架構
- 💻 第46 - 47天:在導師指導下進行項目實現
- 🚀 第48 - 49天:部署項目並進行展示
🛠️ 主要技術
| 技術 |
用途 |
版本 |
 |
主要開發語言 |
5.0+ |
 |
JavaScript運行時 |
18+ |
 |
FastAPI示例 |
3.11+ |
 |
容器化技術 |
最新版 |
 |
數據庫 |
15+ |
 |
對象關係映射(ORM) |
5.0+ |
🤖 自動化系統
本實戰營包含一個完整的自動化系統,以確保質量並簡化開發過程:
⚡ 智能自動提交
- 智能檢測每個模塊的更改
- 按照Conventional Commits標準進行提交
- 自動更新CHANGELOG.md
- 詳細日誌記錄並自動輪轉
特性:
- 🧠 智能檢測:按類型和模塊對更改進行分類
- 📝 規範提交:自動生成語義化的提交信息
- 📋 自動更新日誌:根據提交記錄生成變更日誌
- 🔒 安全執行:具備鎖機制和錯誤處理
- 📊 完整日誌:詳細審計並自動輪轉日誌
🔧 自動化腳本
| 腳本 |
用途 |
使用方法 |
scripts/setup.sh |
完整的初始配置 |
./scripts/setup.sh |
scripts/autocommit.sh |
智能自動提交 |
通過cron定時執行 |
scripts/update-changelog.sh |
更新變更日誌 |
./scripts/update-changelog.sh |
scripts/build-all.sh |
構建所有模塊 |
./scripts/build-all.sh |
scripts/lint.sh |
代碼檢查和格式化 |
./scripts/lint.sh |
📋 控制和配置
./scripts/setup-autocommit.sh
./scripts/remove-autocommit.sh
./scripts/autocommit-config.sh
tail -f .autocommit/autocommit.log
tail -f .autocommit/changelog-generator.log
📑 GitHub模板和配置
本項目配備了一套完整的模板和配置文件,以規範貢獻流程、簡化管理並確保代碼和文檔的高質量。
📂 .github 目錄結構
.github 目錄集中管理與GitHub社區和貢獻相關的所有配置。
🔧 項目配置
| 文件 |
用途 |
位置 |
|
定義Git忽略規則 |
項目根目錄 |
|
工作區配置文件 |
項目根目錄 |
|
TypeScript全局配置 |
項目根目錄 |
|
GitHub Copilot使用指南 |
.github/ |
📋 問題模板
| 模板 |
用途 |
位置 |
| 🐛 錯誤報告 |
報告技術錯誤 |
.github/ISSUE_TEMPLATE/ |
| ✨ 功能請求 |
請求新功能 |
.github/ISSUE_TEMPLATE/ |
| ❓ 技術問題 |
提出技術或概念性問題 |
.github/ISSUE_TEMPLATE/ |
| 📚 教學改進 |
改進教學內容 |
.github/ISSUE_TEMPLATE/ |
| 📖 文檔改進 |
改進或添加文檔 |
.github/ISSUE_TEMPLATE/ |
| ⚙️ 模板配置 |
模板配置文件 |
.github/ISSUE_TEMPLATE/ |
🔄 拉取請求模板
| 模板 |
用途 |
位置 |
| 📝 拉取請求模板 |
高質量貢獻指南 |
.github/ |
📋 項目治理
| 文件 |
用途 |
位置 |
| 🤝 行為準則 |
社區行為規範 |
.github/ |
| 📋 貢獻指南 |
完整的貢獻指南 |
.github/ |
| 📊 變更日誌 |
項目變更歷史記錄 |
項目根目錄 |
| 🔒 安全策略 |
安全策略和漏洞處理規則 |
項目根目錄 |
🏗️ 開發模板
| 模板 |
用途 |
位置 |
|
新MCP服務器的基礎架構 |
plantillas/ |
|
完整的測試配置 |
plantillas/ |
|
Docker Compose模板 |
plantillas/ |
|
部署配置文件 |
plantillas/ |
🐳 Docker配置
| 文件 |
用途 |
位置 |
|
Node.js基礎鏡像 |
herramientas/docker/ |
|
Python基礎鏡像 |
herramientas/docker/ |
|
Docker Compose模板 |
herramientas/docker/ |
🔍 驗證工具
| 工具 |
用途 |
位置 |
|
代碼驗證腳本 |
herramientas/ |
📊 評估和認證
每個模塊都包含:
- ✅ 詳細的評分標準,明確評估標準
- 🎯 實踐練習,並提供解決方案
- 🏆 漸進式項目,逐步積累專業知識
- 📈 自我評估 和 同行評審
🤝 貢獻指南
你的貢獻將使這個實戰營變得更好!
貢獻方式
- 🐛 報告錯誤 或提出內容改進建議
- 📝 改進文檔 和示例代碼
- 💡 提出新模塊 或練習建議
- 🌍 將內容翻譯成其他語言
- ⭐ 分享項目 並給倉庫點贊
貢獻流程
- Fork 倉庫
- 創建新分支:
git checkout -b feature/nueva-funcionalidad
- 提交描述性的Commit:
git commit -m 'feat: agregar ejercicio de WebSockets'
- 推送到你的Fork:
git push origin feature/nueva-funcionalidad
- 發起Pull Request,並提供詳細描述
請閱讀我們的 以獲取更多詳細信息。
📄 許可證
本項目採用 MIT許可證,詳細信息請查看 LICENSE 文件。
💬 社區
[](https://discord.gg/tu-server)
[](https://github.com/tu-usuario/mcp-server-bootcamp/discussions)
[](https://twitter.com/tu-handle)
有問題? 加入我們的討論或創建一個Issue。
想了解最新動態? 關注我們並給倉庫點贊。