用 FastMCP + Claude 打造語意驅動的應用工作流
之前T編談過 MCP(Model Context Protocol) 的概念,讓 LLM 成為決策核心:一個基於 MCP 的語意工作流實作.
透過MCP讓模型不只是生成文字,而是能「理解語意 → 做出決策 → 呼叫工具 → 產生動作」,類似AI代理人(AI agent)。
這一篇,T編想用一個更實際的例子展示這件事怎麼被落地實作。 利用 FastMCP 建立了一個簡單的 MCP 服務,並讓 Claude 作為前端的用戶端。 整個流程像這樣:
💡 目標:讓模型「聽得懂人話,自己決定要做什麼」
我們希望達到的體驗很直覺:
使用者在 Claude 裡說一句自然語言:
「幫我看一下這張寶可夢卡的內容」Claude 會自動決定要使用哪個工具,呼叫韜睿的 OCR API,回傳辨識結果, 並以人能理解的方式呈現出來。
這中間,不需要寫 prompt chaining、不需要人去設規則。 模型自己判斷「該用誰」、「該做什麼」,而我們只要提供工具。
⚙️ 整體架構
Claude(支援 MCP 的模型) ↓ FastMCP 伺服器 ├─ Tool: extract_pokemon_card_text(OCR 卡牌文字辨識) ├─ Tool: select_initial_pokemon(選擇初始寶可夢) ├─ Resource: pokemon://database(訓練家資料庫) └─ Resource: pokemon://trainers(訓練家名單) ↓ 韜睿 OCR API(內部文件識別系統)
Claude 透過 MCP 協定與我們的 FastMCP 服務連線, 就能在自然對話中「即時呼叫工具」—— 像是請他幫你辨識圖片、查資料、甚至模擬一場寶可夢對戰分析。
🧭 實際操作介面
🎴 圖片文字辨識(OCR Tool)
使用者在 Claude 上傳一張寶可夢卡圖,並輸入:

「幫我讀這張卡的內容,看看它的技能是什麼。」
Claude 自動呼叫我們在 FastMCP 註冊的 extract_pokemon_card_text 工具, 背後實際做的事情是:
- 把圖片轉成二進位資料
- 呼叫韜睿 OCR API
- 解析回傳結果
- 再用自然語言說明給使用者聽

畫面中可以看到模型執行的過程:
Tool used: Extract_pokemon_card_text
→ Input: card.jpg
→ Output:
🎴 寶可夢卡牌文字識別結果
📝 識別內容:
7階進化 鋼炮臂蝦 130 HP 從鐵臂槍蝦進化 全國圖鑑No.0693 發射器寶可夢 身高:1.3m體重:35.3kg 特性 返回重載 在自己的回合,這隻寶可夢從戰鬥場回到備戰區時,可使用1次。從自己的 手牌選擇最多2張「基本能量」卡,附於這隻寶可夢身上。 水之發射器 210 將這隻寶可夢身上附加的能量卡全部丟棄。 4x2 ** 弱點 抵抗力 撖退 lllus. Anesaki Dynamic 會利用體內氣體的力量從鉗子後部噴出水, T MISF 020/063 R 使牠能夠以60節的速度游泳。 2025 Pokémon/Nintendo/Creatures/GAME FREAK.
📊 字數統計:299 字
💡 提示:你可以請我幫你分析這張卡牌的內容,例如寶可夢名稱、屬性、技能等資訊。
🧢 遊戲資料存取(Resource 範例)
接著我們詢問:
「目前有哪些訓練家已經領到初始寶可夢?」
Claude 會透過 MCP 讀取 pokemon://trainers 資源,直接列出資料庫中的訓練家清單:
目前共有 3 位訓練家:Jason、Tom、Claire
再繼續問:
「幫我分析 Jason 的隊伍實力。」
Claude 便自動生成一段提示,根據他目前的寶可夢組合進行屬性與訓練方向分析。
🔥 自動選擇初始寶可夢(Tool 範例)
當使用者輸入:
「我是新訓練家 Evan,請幫我選一隻初始寶可夢。」
Claude 會呼叫 select_initial_pokemon 工具,隨機挑選一隻初始寶可夢並回覆:
恭喜 Evan!你獲得了新的夥伴:小火龍(等級 5)!
🧩 為什麼這樣做有效
- Claude 是對話介面,但 MCP 讓它能執行任務: 使用者仍然「聊天」,但背後的每一步都被模型拆解成動作。
- FastMCP 把你的系統包成模型可用的 API: 不需重寫系統,只要註冊成 Tool 或 Resource 即可被呼叫。
- 語意推理代替人工規則: 模型自己判斷「這句話該觸發誰」,維護成本更低。
🔍 實際應用場景
- 📄 OCR 文件處理: 保單、發票、合約自動辨識欄位
- 🗓 會議與任務管理: 自然語言建立提醒與排程
- 💬 客服與營運自動化: 訊息分類、工單生成
- 📊 內部資料助手: 查詢資料庫、彙整報表、產生決策摘要
🎯 小結
這個實作示範了三件事:
- MCP 不只是概念,可以真的運作。 模型能讀懂語意,自己決定要執行哪個動作。
- Claude 已經能作為理想的用戶端。 不用額外前端,只要提供工具與資源就能互通。
- FastMCP 讓這件事變得輕量可行。 幾十行設定,就能讓內部系統被自然語言驅動。
![]()