Saturn MCP

決定 Agent 可以做什麼的 MCP Gateway。

Saturn MCP 是 Agent 實際對話的那台 MCP Server。它後面才是你真正的 MCP Server——CRM、付款、資料庫、雲端主控台。Saturn 只露出你核准的工具,對每一筆呼叫比對政策,把敏感的那幾筆暫停交給人,並記錄一切。

符合標準的 HTTP MCP。相容 Claude、ChatGPT、Cursor、Saturn App 或任何 MCP 用戶端。

policy    Payments  v3  production

rule      payments.transfer
when      amount > 1000 AND currency == "USD"
decision  approval_required

rule      payments.transfer
when      true
decision  allow

rule      db.drop_table
when      true
decision  deny

政策引擎實際評估的規則樣貌。條件會與每一筆呼叫的參數比對。

四個步驟,開始運作。

不需要 SDK,不需要改 Agent 程式碼。Saturn 在協定層運作。

01

連接你的 MCP Server

以 URL 註冊每一台 Server。Saturn 探索其工具,必要時處理 OAuth,並把憑證封存在金庫中。

02

組建工具集

跨 Server 挑出每個 Agent 該有的工具。任一工具可標記為 Call(自動執行)或 Approval(需要人)。

03

撰寫政策

加入對參數設條件的規則。每條規則決定:允許、需要核准或拒絕。政策有版本。

04

把 Agent 指向 Saturn

所有 Agent 都用同一個 Saturn MCP 端點。它們以 OAuth 登入,只看得到自己的工具集。

團隊實際透過 Saturn 跑的事。

四個例子:這些 Agent 之所以有用,正是因為它們被治理。

財務營運

會付款給供應商的 Agent——大額由人把關

財務 Agent 對帳並透過付款 MCP Server 觸發付款。小額轉帳自動執行。超過門檻的金額等待審核人員,核准前可看到金額、收款對象與發票編號。

  • payments.transfer · amount ≤ 1000 → 允許
  • payments.transfer · amount > 1000 → 需要核准
  • payments.refund · amount > 10000 → 拒絕

客戶支援

能查、能回覆,但永遠不能刪除的客服 Agent

客服 Agent 的工具集包含 CRM 查詢、工單更新與郵件回覆。具破壞性的 CRM 工具不在集合裡,對這個 Agent 來說根本不存在。寄給外部網域的郵件需要核准;內部備註直接通過。

  • crm.get_customer · 允許
  • tickets.update · 允許
  • email.send · 收件人非公司網域 → 需要核准
  • crm.delete_customer · 不在工具集

平台與 DevOps

可以自由部署到 staging、上 production 要簽核的發布 Agent

發布 Agent 透過部署 MCP Server 執行 rollout。Staging 自動。Production rollout 暫停等待值班工程師。破壞 schema 的操作無論環境一律拒絕。

  • deploy.rollout · environment == "staging" → 允許
  • deploy.rollout · environment == "production" → 需要核准
  • db.drop_table · 拒絕

資料與分析

每個團隊都有分析 Agent,各自只碰自己的資料

每個團隊的分析 Agent 都拿到唯讀的資料倉儲工具。Server 對應決定哪些團隊可以掛上倉儲。編輯者限定在自己的 Agent,每一筆查詢都歸屬到 Agent 所代表的人。

  • warehouse.query · 允許
  • warehouse.export · row_count > 100000 → 需要核准
  • 行銷部帳號 · 未對應倉儲 Server

Gateway 替你處理的事。

從 Agent 的請求到你的上游 Server 之間的一切。

身份

每個 Agent 都走 OAuth 2.1 搭配 PKCE。工作階段綁定到使用者或組織;每一筆請求都檢查 profile。

工具探索

以 URL 註冊 MCP Server。Saturn 探索工具、維護目錄,並代管上游 OAuth 與 Token 續期。

工具集

為每個 Agent 跨 Server 精選工具。只有這些工具出現在 tools/list。每個工具是 Call 或 Approval。

政策引擎

有順序、有版本、可對參數設條件的規則。每一筆呼叫記錄政策 id、版本與命中的規則。

核准佇列

敏感呼叫帶著完整脈絡在主控台等待。審核人員核准或駁回;Agent 可即時暫停。

憑證金庫

上游 Token 與密鑰以 ML-KEM-1024 與 AES-256-GCM 封存。Agent 看不到;每一次讀取都有審計。

審計軌跡

requested、evaluated、approval requested、granted 或 rejected、executed、credential accessed——逐筆呼叫,連同參數。

成本追蹤

錢包與 x402 付款把成本歸屬到每一筆工具呼叫與每一個 Agent。

安全內建在請求路徑中。

Agent 永遠拿不到比「一筆經授權呼叫的結果」更多的東西。以下是支撐這項保證的機制。

  • 後量子憑證金庫

    Access token、refresh token 與 client secret 逐一封存:ML-KEM-1024 金鑰封裝搭配 AES-256-GCM,金鑰以 HKDF-SHA384 推導。金鑰種子存放在設定中,絕不進資料庫。

  • API 不傳明文

    主控台與用戶端 API 只回報密鑰是否存在,絕不回傳內容。每一次讀取都產生 credential_accessed 審計事件。

  • 代管的上游 OAuth

    Saturn 找到授權伺服器,在支援時進行動態用戶端註冊,使用 PKCE,並在上游回 401 時自動續期 Token。

  • 網路邊界

    上游 URL 必須使用 HTTPS(或僅限 localhost 的 HTTP)。私有網段、link-local 與雲端 metadata 位址一律拒絕。

  • 拒絕即不送出

    被拒絕的呼叫絕不離開 Saturn。被扣住的呼叫回傳 approval_required 與參考 id。暫停中的 Agent 無法發起呼叫。

  • 角色型存取控制

    主控台四種資源、各三個存取等級。預設角色 admin、operator、viewer,或自訂組合。編輯者可限定在特定 Agent。

今天就把 Saturn 放到第一台 MCP Server 前面。

建立免費帳號、連接一台 Server、寫一條規則。第一筆核准請求就會讓你看到完整路徑。