PerchAI
運作方式

MCP 伺服器

Perch 透過 Model Context Protocol 連接外部資料來源。它內建法律研究與瀏覽器自動化伺服器,你也可以加入自己的伺服器。

Perch 可以透過 Model Context Protocol,也就是 MCP,連接外部系統。這讓 Perch 能使用磁碟檔案以外的資料與工具:法律資料庫、瀏覽器自動化、內部 API,以及任何支援 MCP 的系統。已連接伺服器的工具會與 Perch 內建工具一同出現,模型可以直接呼叫它們。

簡要說明

MCP 伺服器擴展 Perch 能存取的範圍。預設附帶兩個:用於法律研究的 CourtListener,以及用於瀏覽器自動化的 Playwright。你可以在設定檔中加入更多伺服器。

預設提供什麼

當你第一次啟動 Perch Terminal Desktop,它會在 ~/.perch/mcp.json 建立設定檔,其中已設定兩個伺服器:

  • CourtListener。 法律研究伺服器,可以搜尋判例法、查詢引用、取得判決意見全文、找出相關案件,以及取得案件紀錄項目。它連接 CourtListener 資料庫,涵蓋聯邦與州法院。附帶 API token,因此首次啟動即可使用,不必設定。
  • Playwright。 瀏覽器自動化伺服器,固定使用經過測試的 @playwright/mcp 版本。Perch 透過瀏覽器完成工作的能力由它支援:導覽頁面、點擊元素、在欄位中輸入文字,以及閱讀螢幕內容。

兩者都不需要你安裝或設定。Perch 啟動時會自動連接。

工具如何呈現給模型

當 MCP 伺服器連接時,Perch 會讀取工具清單,將每個工具轉換為提供給模型的定義。命名慣例是 mcp__<serverName>__<toolName>。例如,CourtListener 的案件搜尋會變成 mcp__courtlistener__search_cases,與 readLocalFile 或 webSearch 等內建工具一同出現。

模型會將這些工具視為與其他工具同等的功能。它可以在相同循環中呼叫它們,結果會以結構化內容傳回,讓 Perch 能引用並據以採取行動。

全域與資料夾範圍的設定

MCP 伺服器可以在兩個層級設定:

  • 全域。 ~/.perch/mcp.json 檔案適用於電腦上的每個 Perch 工作階段。預設伺服器在此設定。
  • 資料夾範圍。 工作區資料夾內的 .perch/mcp.json 檔案,只在你於該資料夾工作時適用。資料夾設定會依伺服器名稱覆寫全域設定,因此你可以為特定專案,用不同的伺服器取代全域伺服器。

支援環境變數展開。如果伺服器需要 API 金鑰,你可以在設定中以 ${YOUR_API_KEY} 參照,Perch 會從環境中展開它。

加入自己的伺服器

若要加入 MCP 伺服器,請編輯 ~/.perch/mcp.json(全域)或工作區資料夾中的 .perch/mcp.json(特定專案)。結構如下:

{
  "servers": {
    "my-server": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@some-org/some-mcp-server"],
      "env": {
        "API_KEY": "${MY_API_KEY}"
      }
    }
  }
}

支援三種傳輸類型:

  • stdio。 執行本機處理程序。需要 command,可選擇提供 args 與 env。
  • http。 連接遠端 HTTP 端點。需要 url,可選擇提供 headers。
  • sse。 連接遠端 SSE 端點。需要 url,可選擇提供 headers。

編輯設定後,重新啟動 Perch 或執行重新連接命令。新伺服器會在下次啟動時連接。

MCP 的位置

MCP 用於無法以資料夾中的檔案表示的即時系統。如果資料已經以試算表、PDF 或 CSV 的形式存在磁碟上,Perch 會透過資料夾橋接直接讀取。MCP 則用於其他內容:外部資料庫、API,以及需要執行中處理程序或驗證的服務。

僅限桌面版與 CLI

MCP 伺服器可在 Perch Terminal Desktop 與 CLI 使用。網頁聊天不會連接 MCP 伺服器。