Odile Gate

com.odilelabs由 odilelabs.com 發布官方發布者v1.7.0更新於 Oct 29, 2026

Free, no signup: per-app keys, allowed calls, approvals and an audit log for your API or model key.

發布方自己的服務:Odile Labs

已驗證Streamable HTTP可網頁執行雲端與基礎設施開發者工具安全與監控

概覽

AI 產生的概覽

Odile Gate 是一個託管閘道,透過 MCP 工具為 HTTP 或模型 API 加上依應用程式劃分的金鑰、允許呼叫清單、速率限制、審核與稽核日誌。

可以做什麼
  • 建立與設定專案和應用程式:在既有 HTTPS API 前建立專案,為每個應用程式簽發金鑰並設定允許的路由規則,限制應用程式可要求的模型,列出應用程式及其限制與狀態。
  • 管理代理權限:建立範圍受限、會到期的執行授權(含作用域與審核),要求寫入或全部呼叫必須帶執行權杖,把更窄的授權委派給同專案其他應用程式,並管理核准者金鑰。
  • 檢視流量與拒絕原因:讀取最近的呼叫紀錄、依狀態與原因統計的 24 小時指標、異常分數、執行樹與時間軸,並解釋某次拒絕的含義。
  • 驗證稽核完整性:讀取帶 HMAC-SHA256 簽章的鏈式稽核紀錄,並重新計算貼上的匯出鏈以確認是否完整。
  • 檢查與同步設定:在不變更任何內容的情況下驗證宣告式設定,把專案同步到該設定,並在授予正式環境存取前檢視實際防護設定。
  • 規劃本機安裝:回傳原生 OpenShell 的唯讀安裝方案,含安裝檔雜湊與配方結構。
適用情境
適合希望由助理在 API 或模型服務供應商前建置、審查一個依憑證限權的閘道,或給代理工作階段授予範圍窄、會到期且需審核的客戶資料寫入權限,而非發放寬鬆金鑰的情境。
執行需求
遠端 streamable HTTP 端點;未宣告任何套件、環境變數或請求標頭。需自行提供上游 HTTPS API 的基礎網址,並妥善保存回傳的管理金鑰與應用程式金鑰。示範可使用免憑證的沙箱 API。
安裝前請注意
管理金鑰與應用程式金鑰只顯示一次,且可控制整個閘道;說明要求把管理金鑰存入被 git 忽略的 .env 而非程式碼中,核准者金鑰只交給特定人員、絕不交給代理。設定類工具會建立專案、應用程式、核准者與執行授權,同步操作會實際套用設定。設定檢查僅為唯讀分析,並非安全認證,上游自身的歸屬檢查仍應保留。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Odile Gate,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/com.odilelabs%2Fgate/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "odile-gate": {
      "type": "http",
      "url": "https://gate.odilelabs.com/mcp"
    }
  }
}

工具

23

gate_openshell_setup

Discover one-command OpenShell setup

Read-only local setup plan for native OpenShell + Gate: one command, exact installer hash, recipe schema, prerequisites, authority boundaries and cleanup. Default creates an isolated Free read-only demo with no model or payment. A trusted local controller may configure an owner-authorized API with explicit routes/scope and private credential files. This tool does not run commands, create resources or accept credentials.

無需輸入參數。

gate_create_project

Create a Gate project

Create a Free project in front of an existing HTTPS API. No signup or payment required. For a credential-free demo use https://sandbox.gate.odilelabs.com with GET /customers/:cid/tickets/:id (customer A holds tickets 1-3, B holds 4-5: try GET /customers/A/tickets/1). Returns project_id, admin_key (shown once) and the gateway base URL apps call instead of the API. A real API and its credentials need owner authorization.

輸入參數name必填upstream必填header_nameheader_value

gate_add_app

Register an app

Give one app its own key and the calls it may make. Routes are rules like "GET /orders/:id", "POST /orders", "GET /users/{user}/orders" (per-user), or example calls like "GET /orders/42", which become rules allowing any id. Returns key (shown once), app.id and normalized rules. Send key as Authorization: Bearer <key> to the project gateway; never send the admin key to the workload.

輸入參數name必填modelsroutestemplateadmin_key必填per_minuteproject_id必填

gate_set_models

Set an app's allowed models

For a project in front of a model API: limit which models one app may ask for (the request body's "model", or a /models/<name> path). Other models are refused with 403 model_not_allowed before the provider sees them. models: null removes the limit.

輸入參數app必填models必填admin_key必填project_id必填

gate_list_apps

List apps

The project's apps with their allowed calls, limits, state and anomaly-guard settings.

輸入參數admin_key必填project_id必填

gate_check_setup

Check an agent integration setup

Read actual Gate protection settings before giving an integration production access. Reports observe-only mode, writes without mandatory runs, missing user-token configuration, wildcard grants and approval separation, with evidence, exact remedies and explicit limits. Sends no upstream requests, changes no settings and uses no gateway quota. Configuration-only: not a security certificate or runtime enforcement test.

輸入參數appadmin_key必填project_id必填

gate_metrics

Read Gate operational metrics

Read last-24-hour stored call counts by HTTP status and reason, measured duration through response headers (including upstream wait), per-app anomaly scores and 24-hour anomaly counts, and separate current-month gateway usage: plan, used, allowed, plus upgrade URL and checkout path on Free at 80% or above. Only POST the checkout path when the admin asks to upgrade; reading metrics never starts checkout. Project admin only. Audit may be partial: invalid-key sampling and audit-off periods are disclosed. No upstream requests, quota use or policy changes; not a health certificate or performance guarantee.

輸入參數admin_key必填project_id必填

gate_audit

Read the audit log

The most recent calls through the gateway (time, app, matched route, status, reason, duration), newest first, with totals by status and refusal reason. Gate never stores bodies, query values or headers.

輸入參數applimitstatusadmin_key必填project_id必填

gate_create_run

Grant one agent run

Gate Actions: give one agent session narrow, expiring permission. Actions are rules with {placeholders} bound by scope (e.g. "PATCH /customers/{customer}/tickets/:id" with scope {"customer":"A"}), each with an optional max and approval. Add a human approver with gate_add_approver before granting approval:true actions; without an active approver the grant is refused. Returns a run token (shown once) the agent sends as x-odile-run with its app key. Writes in a run need an Idempotency-Key. Give a write a check ("GET /bookings?idempotency_key={key}") and the agent can settle a lost answer with POST /g/<id>/_gate/recover.

輸入參數app必填labelscopeactions必填admin_key必填max_callsproject_id必填ttl_seconds

gate_set_app_runs

Require runs for an app

Make an app need a run: "writes" (every write needs x-odile-run), "all" (every call), or "off".

輸入參數app必填mode必填admin_key必填project_id必填

gate_set_response

Choose response fields for an app

Opt-in JSON response redaction: return only explicit JSON Pointer paths, e.g. /id and /items/*/name. * matches one segment; selecting a container allows its whole subtree. Applies to every upstream response for this app, including errors. Maximum 1 MiB and 5 seconds to read; invalid/non-JSON responses are withheld. No bodies are stored. A withheld reply never reverses an upstream write. null disables filtering. Free and Pro.

輸入參數app必填allow必填admin_key必填project_id必填

gate_add_approver

Add an approver

Create an approver key for the person who approves held actions (shown once), before granting approval actions. Give it to that person, never to an agent. Only an active approver key can approve, reject or reopen actions.

輸入參數name必填admin_key必填project_id必填

gate_list_actions

List held actions

Actions waiting for approval (or in another state), with the exact call. With an installed approval-risk model, pending actions sort by risk descending and include risk (0–1) and risk_features (top two advisory signals). No model means no score and newest first. Only a person decides in the dashboard.

輸入參數stateadmin_key必填project_id必填

gate_explain_refusal

Explain a refused call

What a Gate refusal means and how to fix it, from the x-gate-refused header value (e.g. route_not_allowed).

輸入參數reason必填recoverable

gate_delegate_run

Delegate a narrower run

Hand a narrower run to another active app in the same project. Uses the parent app key and run token, never the admin key. Scope, expiry, approvals and ancestor budgets stay enforced; maximum depth five.

輸入參數app必填labelactions必填app_key必填max_callsrun_token必填project_id必填ttl_seconds

gate_learn_suggestions

Read learning suggestions

Read normalized routes and a suggested per-minute limit from an admin-enabled, time-boxed learning session. Records only method, normalized path templates and counts per minute; no query values, raw ids, headers or bodies. Never enables learning or applies rules.

輸入參數app必填admin_key必填project_id必填

gate_audit_proof

Export a signed audit proof

Read chained audit rows, decided-action feature snapshots and anchors with an HMAC-SHA256 signature. No sealed paths/bodies, notes, keys or IPs in the action labels. Legacy actions lack snapshots and are excluded. store_audit=false has no chain. Follow next_from for audit rows and next_actions_after as actions_after for labels (10,000 each). Use API/SDK above the MCP response size limit.

輸入參數tofromadmin_key必填project_id必填actions_after

gate_audit_verify

Verify a signed audit export

Recompute a pasted export chain and project signature; returns intact or broken_at (one-based row position). Does not approve actions or change permissions.

輸入參數proof必填admin_key必填project_id必填

gate_run_tree

Read run tree

Read a run and its delegated descendants without tokens.

輸入參數run_id必填admin_key必填project_id必填

gate_run_timeline

Read run timeline

Read call metadata, approvals and approver names, recovery outcomes and delegated children; no bodies or query values.

輸入參數beforerun_id必填admin_key必填project_id必填

gate_create_app

Create an app

Give one app its own key and the calls it may make. Routes are rules like "GET /orders/:id", "POST /orders", "GET /users/{user}/orders" (per-user), or example calls like "GET /orders/42", which become rules allowing any id. Returns key (shown once), app.id and normalized rules. Send key as Authorization: Bearer <key> to the project gateway; never send the admin key to the workload.

輸入參數name必填modelsroutestemplateadmin_key必填per_minuteproject_id必填

gate_validate_config

Check an odile.yaml

Parse and check a declarative Gate config (apps, routes, rate limits, run mode, plugins including anomaly-guard, alerts, approvers) without changing anything. anomaly-guard settings: mode off|alert|strict, z_threshold 2–10, min_minutes 1–30, half_life 5–1440. Returns errors with their path, warnings, and the normalized config.

輸入參數config必填

gate_sync_declarative

Apply an odile.yaml

Make a Gate project match an odile.yaml: creates the project (if no project_id) and missing apps and approvers, applies run mode, loop, learning and anomaly-guard settings and alerts. Example plugin: {name: anomaly-guard, settings: {mode: alert, z_threshold: 4, min_minutes: 3, half_life: 60}}. Never revokes or deletes; differences it cannot apply (an app's routes or rate limit) come back as drift. dry_run lists the steps without changing anything. New keys are shown once.

輸入參數config必填dry_runadmin_keyproject_id

版本歷史

5
  1. v1.7.0最新Oct 29, 2026
  2. v1.6.1Oct 26, 2026
  3. v1.6.0Oct 24, 2026
  4. v1.2.0Oct 21, 2026
  5. v1.1.0Oct 20, 2026

評分

已滿足適用檢查項的 83%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分

    請宣告包含 README 的 GitHub 儲存庫,或在 OAuth 受保護資源後設資料中提供 resource_documentation。

  • 授權條款不適用

    託管服務按其提供方的條款使用,因此這裡不要求授權條款。此檢查項不計入百分比。

其他 Odilelabs 整合