返回部落格
Engineering
2026-09-0710 分鐘閱讀作者:StableOps

MCP 與 x402 有什麼區別?AI Agent 從呼叫工具到完成支付的完整鏈路

本文對比 MCP 與 x402 在 AI Agent 交易中的職責:MCP 連線模型、工具與上下文,x402 表達價格並完成付款。文章透過呼叫鏈、架構模式和安全檢查清單,說明 StableOps 如何用策略、預算、審批及客戶自持簽名支援可控的付費服務呼叫。

MCP
x402
AI Agent 支付

MCP 與 x402 解決的是 AI Agent 交易中的兩個不同問題。MCP 讓模型發現並呼叫工具、讀取資源和取得結構化結果。x402 讓服務宣告價格、接收付款授權並返回結算結果。MCP 本身不是支付協議,x402 也不負責定義模型如何選擇和呼叫工具。需要讓 Agent 使用付費能力時,通常要把兩者組合起來。

最簡潔的理解是:MCP 負責“這個 Agent 可以呼叫什麼,以及怎樣呼叫”,x402 負責“這次呼叫需要付多少錢,以及怎樣完成付款”。

MCP 與 x402 的核心區別是什麼

對比維度MCPx402
核心問題模型如何連線外部工具、資源和工作流用戶端如何為受保護的服務或資源付款
主要物件工具、資源、提示、輸入與輸出結構付款要求、付款載荷、結算結果
典型參與方MCP 主機、用戶端和伺服器付款用戶端、資源伺服器和可選協調服務
是否定義價格是,由伺服器端付款要求表達
是否移動價值可以,根據付款方案驗證並結算
是否定義錢包策略核心協議不替具體組織定義預算、允許列表或審批規則
是否可以單獨使用可以,絕大多數工具呼叫不需要付款可以,普通 HTTP 用戶端也能使用 x402
組合方式呼叫一個會檢查或執行 x402 付款的工具保護 MCP 工具,或保護工具背後的 HTTP 服務

這不是兩種競品協議之間的選擇。它們位於不同層次,而且邊界並非互斥。x402 可以保護普通 HTTP 介面,也可以與 MCP 工具組合。MCP 工具則可以呼叫免費的內部系統、使用 API Key 的服務,或者需要 x402 付款的外部資源。

MCP 具體解決什麼問題

MCP 為模型應用與外部能力提供統一介面。MCP 伺服器可以公開工具和資源,主機負責把適當的能力交給模型,並在使用者、模型和伺服器之間協調呼叫。

以工具為例,MCP 官方工具規範定義了兩個關鍵動作:

  1. 用戶端透過 tools/list 取得工具名稱、說明和輸入結構。
  2. 用戶端透過 tools/call 提交工具名稱和參數,並取得文本、結構化內容或資源連結等結果。

這解決了“怎樣描述和呼叫能力”的互操作問題。天氣查詢、資料庫檢索、檔案操作和付款單查詢,都可以表現成模型能夠理解的工具。

但是,看到一個工具不代表模型應該無條件呼叫它。MCP 官方規範把工具描述為由模型控制的能力,同時明確要求應用保留使用者拒絕呼叫的能力,並把工具註釋視為不可信資訊,除非它們來自可信伺服器。換言之,協議定義了呼叫方式,不會自動替你的組織決定許可權邊界。

MCP 中的“發現”也有明確範圍。tools/list 讓用戶端發現已經連線的 MCP 伺服器公開了什麼工具,它不等於在整個網際網路中尋找所有可購買服務。公開服務市場、私有服務目錄或 x402 Bazaar 擴充套件可以負責更廣範圍的服務發現,之後再把候選能力接入 MCP 工作流。

x402 具體解決什麼問題

x402 把付款協商放進請求與回應流程。對於常見的 HTTP 模式,用戶端請求受保護資源時,資源伺服器返回 402 Payment Required,同時說明金額、資產、網路和收款地址。用戶端構造並簽署付款載荷,然後攜帶付款證明重新請求資源。

x402 官方文件說明,v2 的 HTTP 流程使用三個標準頭部:

頭部方向作用
PAYMENT-REQUIRED資源伺服器到用戶端返回可接受的付款方案
PAYMENT-SIGNATURE用戶端到資源伺服器攜帶已簽署的付款載荷
PAYMENT-RESPONSE資源伺服器到用戶端返回結算成功、失敗或相關交易資訊

資源伺服器可以自行驗證和結算,也可以把這兩個步驟交給協調服務。x402 解決的是付款要求和結算怎樣與資源訪問銜接,並不規定某個企業是否允許 Agent 購買這項資源。

因此,x402 付款要求不應被直接理解成付款授權。伺服器端可以說“呼叫這個介面需要支付 0.10 USDC”,但買方仍然要決定:這個來源是否可信、收款地址是否允許、網路和資產是否正確、金額是否在上限內,以及這次任務是否需要人工審批。

MCP 與 x402 可以怎樣組合

實際系統中常見三種架構。

架構一:MCP 工具呼叫付費 HTTP 介面

MCP 伺服器向 Agent 公開一個工具。工具執行時請求外部 HTTP 介面。如果收到 x402 付款要求,中間層會完成檢查、簽名和重試,再把付費回應轉換成 MCP 工具結果。

Agent
  -> MCP 工具呼叫
  -> MCP 伺服器請求外部介面
  -> 402 / PAYMENT-REQUIRED
  -> 檢查並簽署付款載荷
  -> 攜帶 PAYMENT-SIGNATURE 重試
  -> 返回付費資源
  -> MCP 工具結果

x402 官方倉庫提供了這種 MCP 與 x402 整合方式。它適合把現有的付費 HTTP 服務包裝成模型可呼叫的工具。

架構二:直接為 MCP 工具增加付款要求

服務提供方也可以讓 MCP 工具本身成為收費資源。呼叫方仍透過 MCP 發現和呼叫工具,但在取得結果之前完成 x402 付款。這裡 MCP 描述工具,x402 描述使用該工具所需的付款。

這種模式適合已經以 MCP 交付能力的服務,例如付費資料查詢、計算或內容生成。賣方必須保證未完成付款的探測呼叫不會提前執行收費背後的不可逆副作用,並讓同一次呼叫在重試時保持業務冪等。

架構三:獨立的付款控制工具呼叫 x402 服務

另一種做法是讓業務工具和付款控制保持分離。Agent 先發現候選服務,再呼叫受控付款工具進行預檢、審批、簽名和購買。這樣,錢包許可權、預算和付款恢復不需要散落在每個業務 MCP 伺服器中。

StableOps Agent Payments 採用這種邊界。它把付款操作公開成一組受限 MCP 工具,但私鑰留在客戶自己的簽名器中。控制面負責策略和預算,Agent 不能透過修改工具參數繞過審批。

StableOps 如何連線 MCP 與 x402

StableOps 中有兩類用途不同的 MCP 服務:

服務使用者主要用途不能做什麼
@stableops/mcp-server商戶或營運側 Agent查詢或管理付款單、收款地址、Webhook、結帳頁和訂閱不能持有錢包私鑰或發起鏈上轉帳
@stableops/agent-payments-mcp-server買方付款 Agent設定付款軌道,發現和預檢 x402 服務,在策略內購買並查詢付款不能自行批准例外,也不能取得任意簽名能力

第一類服務解決商戶如何讓 Agent 受控操作 StableOps 資源,詳見 StableOps MCP Server。第二類服務解決 Agent 如何代表買方購買付費資源,完整設定見 Agent Payments 快速開始。兩者都使用 MCP,但處在交易的不同一側。

一次受控的 x402 購買會經過下面的鏈路:

使用者提出任務
  -> Agent 透過 MCP 發現候選服務
  -> 預檢準確的網址、方法、請求體和即時付款要求
  -> StableOps 校驗來源、收款方、網路、資產、金額和預算
  -> 自動放行,或等待人工審批
  -> StableOps 簽發短時、單次執行授權
  -> 客戶自持簽名器逐欄位校驗並簽署付款
  -> MCP 執行時攜帶 PAYMENT-SIGNATURE 重試原請求
  -> 資源伺服器驗證並結算,返回資源與 PAYMENT-RESPONSE
  -> Agent 取得結構化結果和付款記錄

在這條鏈路裡,MCP 負責向 Agent 暴露 stableops_preview_x402_purchasestableops_x402_fetch 和付款查詢等工具。x402 負責遠端資源的付款協商。StableOps 策略、預算、審批和簽名器負責確定這筆付款是否獲得業務授權。

如果付款需要審批,Agent 必須儲存原 intent_id,審批後恢復同一筆付款。若結算結果未知,也只能查詢原付款,不能建立一筆替代付款。具體操作見 x402 付款測試

為什麼 MCP 許可權不等於付款許可權

允許模型呼叫一個工具,只說明該工具出現在模型可用能力中。它並不自動回答下面這些資金問題:

  • 這個 Agent 每天最多能花多少?
  • 哪些來源和收款地址可以自動付款?
  • 報價改變後,舊審批是否仍然有效?
  • POST 請求的準確請求體是否與審批時一致?
  • 超時發生在簽名後時,能否安全重試?
  • 誰持有私鑰,簽名器能夠簽署哪些內容?

同樣,x402 支付成功也不代表 MCP 工具輸出可信。遠端資源返回的正文仍是外部資料,不能借助一次成功付款獲得更高的信任等級。主機和 Agent 應繼續把結果當作不可信輸入,防止提示注入、越權工具呼叫和敏感資料外傳。

因此,生產系統至少需要區分五道控制:

控制邊界需要回答的問題
工具可見性Agent 能看到和呼叫哪些 MCP 工具?
業務授權目前任務是否允許呼叫這個服務?
付款授權來源、收款方、網路、資產和金額是否符合策略?
簽名授權準確的付款載荷是否與短時執行授權逐欄位一致?
結果處理工具結果和結算狀態應該怎樣驗證、記錄與恢復?

只設定預算仍然不夠。預算限制的是總量,無法表達付款目的、收款物件和請求內容。有關完整授權模型,可以繼續閱讀只設預算,不足以約束 AI 智慧體支付

應該使用 MCP、x402,還是同時使用

可以按目標直接判斷:

目標建議
讓 Agent 查詢資料庫、操作內部系統或呼叫免費工具使用 MCP
讓普通應用為一個 HTTP 介面按次付款使用 x402
讓 Agent 呼叫已有的 x402 收費 HTTP 介面同時使用 MCP 與 x402
讓 MCP 工具本身按次收費用 MCP 描述工具,用 x402 增加付款要求
讓 Agent 在生產環境自主付款在 MCP 與 x402 之外增加策略、預算、審批、受限憑據和客戶自持簽名

不要從協議名稱出發設計系統。先判斷呼叫物件是什麼、付款發生在哪一側、誰有權批准,以及超時後如何恢復,再決定協議組合。

上線前檢查清單

面向買方 Agent

  • 日常執行時只持有屬於目前 Agent 的受限憑據,不持有組織管理金鑰。
  • 在付款前鎖定準確來源、網址、方法、請求體摘要、收款地址、網路、資產和金額。
  • 同時設定單筆上限、Agent 預算和組織預算。
  • 未知來源、未知收款方和超自動付款閾值的請求進入人工審批。
  • 簽名器只接受短時、單次、逐欄位繫結的執行授權,不公開任意簽名介面。
  • 同一次購買的所有重試複用穩定的冪等鍵。
  • 結算結果未知時查詢原付款,不重新授權第二筆付款。

面向收費服務

  • 工具名稱、說明、輸入結構和價格對應同一項明確能力。
  • 在驗證付款之前不執行受保護的不可逆操作。
  • 對探測、重新整理付款要求和已付款重試保持業務冪等。
  • 明確返回網路、資產、金額、收款地址和有效期。
  • 把協議結算、資源交付和內部記帳作為可以分別核對的狀態。
  • 對失敗、超時、重複提交和結算狀態未知建立恢復流程。

常見問題

x402 可以代替 MCP 嗎?

不可以。x402 可以讓資源或工具收費,但不會替 MCP 定義工具名稱、輸入結構、呼叫方法和結果格式。一個普通應用可以只用 x402,一個不收費的 Agent 工具也可以只用 MCP。

MCP 可以呼叫付費 API 嗎?

可以。MCP 工具可以呼叫使用訂閱、API Key、帳戶餘額或 x402 的外部服務。MCP 不限制商業模式,只要求工具以雙方能夠理解的方式公開和執行。

MCP 工具本身可以使用 x402 收費嗎?

可以。x402 官方整合已經展示了付費 MCP 工具和由 MCP 工具訪問付費 HTTP 服務的模式。無論採用哪種方式,生產環境都應在簽名前增加金額、資產、網路和收款方檢查。

MCP 是否自帶錢包、預算和付款審批?

不自帶。MCP 提供工具呼叫和授權框架,但不會替應用定義財務策略。錢包隔離、預算、允許列表、審批和付款恢復需要由具體產品實現。

使用 x402 是否一定需要協調服務?

不一定。資源伺服器可以自行驗證和結算,也可以把這些操作委託給協調服務。選擇取決於所用網路、付款方案和團隊希望承擔的基礎設施工作。

如何找到可以購買的 x402 服務?

可以透過服務提供方文件、x402 Bazaar 等發現機制,或 StableOps x402 服務列表查詢候選介面。發現只產生候選項。付款前仍要讀取即時要求並執行策略檢查。

從一個受控呼叫開始

第一次組合 MCP 與 x402 時,先選擇一個低金額、結果容易驗證且沒有外部副作用的收費介面。讓 Agent 先發現和預檢,人工核對來源、收款方、網路、資產與金額,再恢復同一筆付款。確認冪等、審批和未知結算恢復都符合預期後,再逐步擴大自動付款範圍。

可以從 Agent Payments 快速開始設定沙盒支付軌道,再透過 x402 付款測試完成第一筆受控呼叫。MCP 讓能力可以被 Agent 使用,x402 讓能力可以按呼叫收費,而策略和受限簽名決定這套組合能否安全進入生產環境。

相關文章

這份面向生產環境的 AI Agent 支付安全檢查清單涵蓋憑據隔離、收款限制、預算審批、短時簽名授權、冪等恢復、審計告警及停用演練,幫助團隊在不向模型交出錢包私鑰的前提下驗收自動支付系統及其恢復機制。

本文介紹完整的 AI Agent 穩定幣支付架構:買方側用策略、預算、審批和客戶自持簽名限制自動付款,賣方側用付款訂單、鏈上最終性、Webhook 與對帳確認收款,並說明如何處理結算未知、資源交付失敗和審計追蹤。

AI 智慧體支付不能只靠每日預算。本文說明如何用來源與收款人允許列表、不可變策略、精確請求審批、受限簽名者、冪等重試和結算不確定狀態,在錢包金鑰始終由客戶控制的前提下,安全擴大自動付款範圍,併為每一次授權留下可驗證、可審計的完整記錄。

本文解釋 x402 如何為 HTTP 原生的智慧體請求提供支付協商,以及生產級穩定幣支付棧為何仍需獨立維護商戶訂單、支出策略、預算審批、鏈上最終性、事件通知、資源交付結果和審計記錄,並給出各層職責的清晰邊界。