取得 AX Code · 免費文件

本頁譯自英文文件。指令、識別名稱與範例保持原樣。執行環境 7.24.4 · SDK 2.6.7。 英文原文

MCP 整合

狀態:現行 範圍:現行狀態 上次審閱:2026-10-09 負責人:ax-code 執行環境

AX Code 可以連接 Model Context Protocol 伺服器,以使用外部工具、提示與資源。MCP 的能力很大,因此 AX Code 把 MCP 設定與 MCP 提供的內容視為信任邊界。

實驗性的瀏覽器橋接是另一條路徑。它會啟動隔離的 Chrome 視窗,並能呼叫頁面透過 WebMCP 註冊的工具。請從終端機介面啟用;步驟與核准層級見 WebMCP 瀏覽器橋接。

信任模型

來自使用者可控制之設定來源的 MCP 項目,預設受信任:

  • 全域使用者設定;
  • 受管理設定;
  • 明確的 AX_CODE_CONFIG;
  • 內嵌的 AX_CODE_CONFIG_CONTENT;
  • 透過已授權之本機執行環境路由所做的執行環境新增。

來自共用來源,或從網路探索到的 MCP 項目,預設不受信任:

  • 專案的 ax-code.json;
  • 工作樹的 .ax-code 設定;
  • 遠端的周知設定。

不受信任的 MCP 項目會顯示為 needs_trust。在該項目受信任之前,AX Code 不會產生本機 MCP 指令、不會連接遠端 MCP URL、不會公開 MCP 工具結構描述、不會列出提示或資源,也不會為該項目啟動 OAuth。

信任指令

列出 MCP 狀態:

ax-code mcp list

信任一個伺服器指紋:

ax-code mcp trust <name>

撤銷目前伺服器指紋的信任:

ax-code mcp untrust <name>

從目前專案的設定移除已設定的伺服器:

ax-code mcp remove <name> --force

加上 --global 則改為從全域設定移除。移除只限於所選範圍;若該處沒有這個伺服器,就會失敗。省略 --force 可在確認之前先檢視目標路徑。

信任存放在儲存庫之外,範圍是目前專案加上伺服器指紋。變更實質的 MCP 設定,例如指令、URL、OAuth 模式、標頭或明確的環境值,會使先前的信任失效。

執行環境權限

信任只允許 MCP 伺服器參與執行環境。個別的 MCP 工具呼叫仍然要經過 AX Code 的權限。

MCP 工具的權限鍵維持既有的 <server>_<tool> 形式。當 AX Code 能從工具引數辨認出穩定資源時,它會以較窄的模式詢問,例如:

  • url:https://api.example.com/resource
  • uri:mcp-resource
  • path:src/index.ts
  • repo:owner/name
  • db:database.table

未知的引數形狀在詢問時,預設不會提供寬廣且持久的核准。

提示、資源與內容

MCP 提示與資源是不受信任的上下文。AX Code 會以權限把關 MCP 提示的使用與 MCP 資源的讀取,把取回的文字標成不受信任的 MCP 內容,並在大型文字進入模型上下文之前加以截斷。

MCP 工具的中繼資料與輸出也有上限:

  • 過大的結構描述會在公開工具之前被拒絕;
  • 過長的描述會被截斷;
  • 本機 MCP 的 stderr 日誌會被縮短,明顯的祕密模式會被遮罩;
  • 面向模型的 MCP 工具內容,與使用者看得到的工具輸出使用相同的截斷結果。

用於 HTML 與網頁開發的 Playwright MCP

在處理 HTML 遊戲、網頁應用程式,或根目錄有 index.html 的任何專案時,AX Code 會把它辨認為網頁專案,並阻止代理程式自行開啟你的瀏覽器。代理程式會改為回報變更,並等你重新整理。

若要以螢幕截圖驗證,請連接 Playwright MCP 伺服器:

ax-code mcp list --discover   # auto-suggests playwright in web projects

或手動加到 ax-code.json:

{
  "mcp": {
    "playwright": {
      "command": "npx",
      "args": ["-y", "@playwright/mcp@latest", "--cdp-url", "http://localhost:9222"]
    }
  }
}

CDP 附加模式

若 Chrome 以 --remote-debugging-port=9222 執行,AX Code 會自動偵測,並以 CDP 附加模式連接。代理程式可以呼叫 browser_screenshot 擷取目前的分頁,而不必開啟新視窗或抢走焦點。

若要啟動已啟用 CDP 的 Chrome:

# macOS
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222

無介面後援

若沒有開啟的 Chrome CDP 連接埠,@playwright/mcp 會啟動無介面的 Chromium 執行個體。螢幕截圖仍會在 TUI 中內嵌呈現。

全域安裝

若 @playwright/mcp 已全域安裝(npm install -g @playwright/mcp),AX Code 會直接使用 playwright-mcp 二進位檔,而不是透過 npx 執行,第一次使用會比較快。

安全性說明

Playwright MCP 伺服器會對你的瀏覽器取得相當大的能力。若它來自專案設定(ax-code.json),在你用 ax-code mcp trust playwright 明確授予信任之前,它不受信任。全域使用者設定的項目,在第一次核准之後會自動連線。

伺服器模式

會變更狀態的 MCP HTTP 路由,除了一般的伺服器保護之外,還需要只存在於處理程序內的執行環境授權標頭。這保護的是本機執行環境控制動作,例如新增、連接、中斷與驗證 MCP 伺服器。唯讀的 MCP 狀態仍可透過 GET /mcp 取得。

Figma MCP

Figma 桌面版

在 Figma 桌面應用程式中開啟設計檔,切換到 Dev Mode,並在檢查面板啟用桌面 MCP 伺服器。只開啟應用程式並不會啟用伺服器。請見 Figma 的桌面設定說明。

把這個項目加到你的 AX Code 設定:

{
  "mcp": {
    "figma-desktop": {
      "type": "remote",
      "url": "http://127.0.0.1:3845/mcp",
      "allowLoopback": true,
      "oauth": false
    }
  }
}

若是專案設定,請檢視該項目並授予信任:

ax-code mcp trust figma-desktop

type: "remote" 選擇 HTTP/SSE 傳輸,包含這台機器上的 HTTP 伺服器。type: "local" 選擇使用 stdio 的子處理程序。

本機回送的 HTTP MCP 原則

allowLoopback 預設為 false。把它設為 true,只允許在已設定的配置、主機名稱與連接埠上,對 localhost、127.0.0.1 或 [::1] 使用 HTTP(S)。它要求本機回送 URL,而且不能內嵌憑證。共用的專案項目仍然需要信任;啟用這個選項會使先前在沒有它的情況下授予的信任失效。

重新導向、SSE 訊息端點與 OAuth 請求必須留在同一個來源。其他連接埠、公開目的地、私有網路位址,以及雲端中繼資料端點,仍然封鎖。localhost 的 DNS 回應必須全部是本機回送位址,而且每次連線都會釘選。依賴外部 OAuth 發行者的本機服務,這個選項不支援。Figma 桌面版請用 oauth: false。

若連線被拒,請檢查桌面 MCP 伺服器是否已啟用,並在連接埠 3845 上接聽。只切換到 localhost,或只停用 OAuth,並不會啟用本機回送存取。

Figma 遠端 OAuth(mcp.figma.com)

Figma 的託管端點是 https://mcp.figma.com/mcp。Figma 要求在其 MCP Catalog 中有已核准的用戶端。用戶端開發者必須遵守 Figma 的遠端存取註冊要求。

被拒的動態註冊,不能只靠建立一般的 Figma OAuth 應用程式,或提供它的用戶端 ID 與祕密來解決。若有發給已核准 MCP 整合的憑證,請使用那些憑證。當官方端點拒絕註冊時,AX Code 會回報 Catalog 的要求。本機回送存取並不會授予託管伺服器的核准。

以權杖為基礎的範本

內建的 figma 範本會執行另外的 figma-developer-mcp 套件,並使用 FIGMA_API_KEY。它與 Figma 官方的桌面版及託管 MCP 伺服器不同。