Slide 1

Slide 1 text

深入淺出 MCP Tool 的 設計模式與測試心法

Slide 2

Slide 2 text

Ken Liu Alpha Dev | TECH FRESH TECH FRESH @LINE Taiwan M.S. in CS @NYCU B.S. in CS @NTOU

Slide 3

Slide 3 text

01 / 背景 MCP:給 AI 一個工具箱 是什麼 Model Context Protocol 是讓 AI 能呼叫外部工具的標 準協定

Slide 4

Slide 4 text

02 / 實戰案例 MM System:公司人力資源管理系統 查詢、追蹤、分析 靠介面點來點去效率太低 資料追不完,數字算不完 部門很多 數字很多 大小專案很多 × 12 個月

Slide 5

Slide 5 text

03 / 價值 把「進系統才能查」變成自然語言就能問 2025/5-8 工程部門在熊大專案花了多少人力? 共 17 個單位人力(正職 15、兼職 2) 這兩天有人更新 MM 嗎?幫我做 summary Andy:詹姆士專案 80→78,Alice 說明有人轉組… LINE 兔兔專案人力超標了嗎?主管怎麼說? 超標 5 個人力成本,Allen 說明:支援活動而調整 讓「介面難以實作的需求」被 agent 用 MCP tool 快速實現

Slide 6

Slide 6 text

04 / 架構設計 技術選型 01 TypeScript 型別安全 02 FastMCP MCP 協定框架 03 Clean Architecture 分層解耦

Slide 7

Slide 7 text

04 / 架構設計 請求流程 Client Backend Code Copilot, ChatGPT, Claude Code, etc. LLM API Claude, GPT, etc. MM MCP Server mm-app-server mm-api LLM 推理 PostgreSQL

Slide 8

Slide 8 text

04 / 架構設計 分層原則:Tool Tool MCP 接口層 UseCase 業務編排 Service 領域邏輯 Client 外部 API 封裝 把 MCP tool call 翻譯成業務呼叫 外部 → 內部 的翻譯層 Tool 接收 MCP 協定訊息,轉成 UseCase 能理解的呼 叫,再把結果序列化成 MCP 標準回覆。 FastMCP + Zod schema Zod 描述參數,FastMCP 翻成 MCP 標準描述給模型, annotation 提示工具特性讓模型更容易選對。 Interface Adapters · 入口

Slide 9

Slide 9 text

04 / 架構設計 分層原則:UseCase Tool MCP 接口層 UseCase 業務編排 Service 領域邏輯 Client 外部 API 封裝 編排業務流程,回答「系統能做什麼」 業務流程的編排者 接收輸入、編排 Service、處理業務分支,回傳結果。 不關心輸入來自 MCP、Web 或 CLI。 業務邊界的守門員 處理找不到、超量、權限等業務分支。 若有不合業務邏輯的 Exception 就拋回給 client。 Use Cases · 業務流程編排

Slide 10

Slide 10 text

04 / 架構設計 分層原則:Service Tool MCP 接口層 UseCase 業務編排 Service 領域邏輯 Client 外部 API 封裝 可重用的領域邏輯封裝 業務概念的封裝 模糊搜尋、合併資料狀態、計算 MM 加總。 跨 UseCase 共用的領域操作都收這裡。 只依賴 Client 介面 純業務邏輯。單元測試只 mock Client 介面。 Domain Service · 跨案例邏輯

Slide 11

Slide 11 text

04 / 架構設計 分層原則:Client Tool MCP 接口層 UseCase 業務編排 Service 領域邏輯 Client 外部 API 封裝 翻譯內部呼叫為外部 API request 內部 → 外部 的翻譯層 封裝後端的 HTTP API。 定義 DTO 描述資料形狀、發 request、收 response。 Gateway 換後端只改這一層。整層完全不認得業務概念,純粹 是 HTTP 呼叫的封裝。 Interface Adapters · 出口

Slide 12

Slide 12 text

07 / 測試心法 LLM 是黑盒子 — 怎麼測?三層金字塔 E2E LLM × MCP Integration 啟動真實 server Unit Mock 依賴,直接測 UseCase / Tool 最貴最慢,測試 重要業務邏輯 server 跑得通協定 快又便宜,覆蓋率要高

Slide 13

Slide 13 text

13 / Recap 三個 Takeaway 01 乾淨分層 業務邏輯不認得外面世界 02 Spec 很重要 描述精準,模型才聽話 03 E2E 不可省 測過真實 LLM 才穩定

Slide 14

Slide 14 text

Thank You 深入淺出 MCP Tool 的設計模式與測試心法