Oso Cloud MCP Server

官方

理解、開發及除錯 Oso Cloud 中的授權政策。

你可以用 Oso Cloud MCP 做什麼?

  • 取得您的授權政策 — 擷取當前政策以檢視或圖解其規則,使用 get_policy
  • 檢查特定權限 — 詢問某個行動者是否可以使用 authorize 對資源執行某項動作。
  • 檢視所有事實 — 列出儲存在 Oso Cloud 環境中的所有事實,使用 get_facts
  • 依模式查詢事實 — 使用事實查詢工具尋找符合特定行動者、資源或關係的事實。
  • 執行政策測試 — 執行現有的測試套件以驗證政策行為,使用 run_tests
  • 修改本地開發資料 — 更新政策、新增事實、刪除事實,或清除本地開發伺服器上的所有資料。

文件

Oso MCP Server

透過我們的 MCP 伺服器,將您的本地 LLM 設定與 Oso Cloud API 整合。

使用 MCP 伺服器來:

  • 更深入地了解您的策略
  • 使用自然語言詢問授權相關問題
  • 除錯為何授權決策與您的預期不符

本指南假設您已安裝並設定好 CLI

連線

Claude Desktop (DXT)

尚未安裝 CLI 或不想手動新增設定?別擔心 - 下載以下 DXT 檔案並雙擊,即可自動將 Oso MCP Server 安裝到 Claude Desktop 或其他接受 DXTs 的 AI 客戶端。

curl -O https://d2nl1ljmg8n1q8.cloudfront.net/latest/oso-cloud-mcp.dxt

驗證 SHA256 校驗碼:

MacOS:

curl -sL https://d2nl1ljmg8n1q8.cloudfront.net/latest/oso-cloud-mcp.dxt.sha256 | shasum -a 256 -c

Linux:

curl -sL https://d2nl1ljmg8n1q8.cloudfront.net/latest/oso-cloud-mcp.dxt.sha256 | sha256sum -c

您也可以指定 DXT 版本:

curl -O https://d2nl1ljmg8n1q8.cloudfront.net/0.33.2/oso-cloud-mcp.dxt

注意:沒有 <0.33.0 的 DXT 版本

以下安裝方法假設您已安裝並設定好 CLI(版本 >=0.33.0)。

Cursor

Install MCP Server

手動

在您選擇的 LLM 客戶端中,將以下內容新增至您的 MCP 設定檔,以針對 本地開發伺服器 執行:

{
  "mcpServers": {
    "oso": {
      "command": "oso-cloud",
      "args": ["experimental", "mcp"],
      "env": {
        "OSO_URL": "http://localhost:8080",
        "OSO_AUTH": "e_0123456789_12345_osotesttoken01xiIn"
      }
    }
  }
}
  • 您可以選擇省略 OSO_URL 環境變數,或將其設為 https://cloud.osohq.com,如果您想針對線上正式伺服器執行。
  • 提供的 OSO_AUTH 權杖適用於本地開發伺服器。您可以從 Oso Cloud UI 取得您的線上伺服器 OSO_AUTH 權杖。

在哪裡可以找到我的 MCP 設定檔?

以下是一些常見客戶端的指南:

使用方式

此伺服器主要用於搭配開發伺服器以輔助開發。在針對線上環境使用時,請格外謹慎。

一旦您的 MCP 伺服器啟動並運行,您可以向您的 LLM 詢問任何授權相關問題,並觀察它使用可用的工具。目前,我們提供以下讀取工具:

  • 取得您的策略
  • 取得所有事實
  • 執行 authorize 查詢
  • 使用模式比對查詢您的事實
  • 執行策略測試

我們也提供以下寫入工具,僅限用於本地開發伺服器:

  • 更新您的策略
  • 新增事實
  • 刪除事實
  • 清除所有資料

嘗試傳送以下任何訊息:

  • 繪製我的授權策略的 Mermaid 圖表
  • <actor><resource> 有哪些權限?
    • 例如:「Alice 對 Project XYZ 有哪些權限?」
  • 為什麼 <actor> 沒有權限 <action> <resource>

回饋

我們正積極迭代開發者體驗,並歡迎所有關於 Oso MCP Server 以及更廣泛的 Oso Cloud 開發體驗的回饋。請隨時 在 Slack 上聯繫我們