Skip to main content
MCP 發票辨識教學 - 步驟 4

將結果自動寫入文件

完成基本的發票分析功能後,我們希望 MCP Host 能夠直接將辨識的結果寫入到文件,節省整理文件的時間,因此再加上自動化產生文件流程,讓 MCP Host 自動將發票辨識的結果自動寫入文件,範例使用 Google Docs 來說明。

為了能自動開啟瀏覽器,請先安裝 Playwright MCP Server,Playwright 是一個由 Microsoft 開發的開源自動化測試框架,可以用來控制瀏覽器並模擬使用者行為,達到使用程式碼操作瀏覽器,做自動化測試或爬蟲。

4.1 安裝 Playwright MCP Server

首先按照下列指示安裝並設定 Playwright MCP Server

  1. 下載安裝 Playwright MCP 的應用程式
npm install -g @playwright/mcp@latest
  1. 在 Toolbase 左側選擇選擇使用的 MCP Host,範例使用 Cursor 說明。
  2. 切換到 Custom 分頁,點擊 Add Custom Plugin
  3. 填入 Custom Plugin 的設定:
    • Name: Playwright(只能輸入英文和特定符號)
    • Type: 選擇 Local
    • Command: 輸入以下內容
  npx @playwright/mcp
  1. 點擊 Save 儲存
  2. 將介面上 Playwright 的切換開關啟動為 on

設定 Playwright MCP

tip
  • Playwright MCP 需要 Node.js 版本 18 以上,請先確認您的 Node.js 版本是否符合要求,可在終端機執行 node -v 查看版本資訊。
  • 如果 Command 指令無效,可能是執行路徑問題,請確認路徑設定是否正確。

4.2 運行 MCP 發票辨識並寫入文件

請先確認 MCP Host 能正常連線到新增的 Playwright MCP Server 設定,若沒有顯示相關瀏覽器操作的功能的話,請重啟 MCP Host 或是 Command+R (macOS) 來重新載入。

開啟 MCP Host 並輸入以下指令,注意,請將 {資料夾路徑} 替換成實際存放發票圖片的資料夾路徑:

請幫我用 MCP 辨識 {資料夾路徑} 資料夾內的發票檔案內容
再用 MCP 操作瀏覽器打開線上的 Google Docs,新增一篇線上文件命名為「發票簡報」,將發票辨識結果報告整理寫進線上文件「發票簡報」裡

運行過程中會進行多次的處理,會需要一段時間。當 MCP Host 需要存取 Google Docs 時,系統會提示需要授權權限。請根據 MCP Host 的提示,點擊授權按鈕並完成權限設定即可繼續。

tip
  • 未付費的 MCP Host 會有請求次數限制,運行 MCP 服務過程中會產生多次請求,可能會造成流程被中斷。
  • 如果 MCP Host 本身不具備直接存取本地端資料夾的功能,只要在 Toolbase 有設定好指定目錄,就不需要額外指定資料夾路徑。

4.3 查看結果

完成所有步驟後,你可以:

4.3.1 檢查 Google Docs 中的分析結果

辨識發票內容並寫入文件。

總結完成的任務內容。

4.3.2 驗證資料是否正確寫入

辨識結果與原始發票圖片資訊一致。

4.3.3 測試不同的發票圖片

可以嘗試其他類型圖片例如收據、傳統紙本發票等,建議圖片內容必須要清晰度良好以便能正確判斷。

4.3.4 確認自動化流程是否正常運作

如有異常,可以嘗試調整對話的文字描述,避免 AI 誤判行為。

問題排解

問題1:Playwright 自動化流程無法正常執行怎麼辦?

可能的原因和解決方案

  • 基本檢查:確認 Playwright MCP Server 安裝和啟動、瀏覽器驅動程式
  • 權限設定:確認 Google Docs 的權限設定
  • 網路連線:檢查網路連線是否穩定
  • 測試功能:先用簡單指令測試,例如:「請開啟 Google Docs 並建立一個新檔案,寫入一些測試文字」
  • 調整指令:使用更清楚、具體的指令描述,避免 LLM 誤判行為

問題 2:MCP 設定看起來都對,但還是無法正常使用?

請嘗試重新啟動 MCP Host 和 Toolbase,有時候需要重新載入才能識別新的MCP設定。如果問題持續,建議重新檢查 MCP 相關設定。

問題 3:下指令給 MCP Host,執行到一半就中斷了怎麼辦?

可能的原因:

  • 未付費限制:MCP Host 的請求次數限制
  • 設定問題:MCP 服務或權限設定不正確
  • 表達不清:指令描述不夠清楚,LLM 無法理解
  • 服務中斷:MCP Host 本身的服務被中斷
  • 權限超時:需要授權但回應時間過長導致 timeout
  • 網路問題:連線不穩定或中斷

建議解決方案:

  • 將複雜的指令拆分成多個步驟來執行
  • 使用更清楚、具體的指令描述
  • 如果問題持續,可參考前面的 MCP 設定和網路連線檢查

下一步建議

成功完成這個教學後,您可以嘗試:

  • 擴展功能: 加入更多類型的文件辨識
  • 改良流程: 調整 LLM 提示詞以提升辨識準確率
  • 整合其他服務: 連接其他 MCP 產品的服務
  • 建立工作流程: 設計更複雜的 Asgard 自動化工作流程