All servers · Education · Monitoring & logs
Odile Gate
com.odilelabs/gate · v1.2.0
New (7 days)Tools changed (7 days)
Measured by MCP Station
| Last check | Reachable |
|---|---|
| Checked at | — |
| Check success 7 / 30 days | — |
| First-try success 30 days | — |
| Median response | — |
| Lookups 30 days | — |
| Authentication | No auth |
| MCP version | 2025-06-18 |
| Rank score | — |
| Declared risk | Can write (some tools are not declared read-only) |
| Capabilities declared | tools |
| Tool definitions | 20 tools · with description 100% · input schema is an object 100% · read/destructive hints 100% |
Description written by the publisher, not verified
Stop AI agents looping on or overreaching your API: app keys, approvals, safe retries, audit log
Connect
streamable-http · https://gate.odilelabs.com/mcp
claude mcp add --transport http gate https://gate.odilelabs.com/mcp{
"mcpServers": {
"gate": {
"url": "https://gate.odilelabs.com/mcp"
}
}
}Tools as reported by the server
gate_create_projectPut Odile Gate in front of an existing HTTPS API. Returns project_id, admin_key (shown once) and the gateway base URL apps call instead of the API.gate_add_appGive 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. Returns the app key (shown once).gate_list_appsThe project's apps with their allowed calls, limits and state.gate_check_setupRead 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, chagate_metricsRead last-24-hour stored call counts by HTTP status and reason, measured duration through response headers (including upstream wait), and separate current-month gateway usage. Project admin only. Audit may be partial: invalid-key sampling and audit-off periods are disclosed. No upstream requests, qugate_auditThe 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.gate_create_runGate 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. Returns a run token (shown once) the agent sends as x-odile-rungate_set_app_runsMake an app need a run: "writes" (every write needs x-odile-run), "all" (every call), or "off".gate_set_responseOpt-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 responsgate_add_approverCreate an approver key for the person who approves held actions (shown once). Give it to that person, never to an agent: once a project has an approver, the admin key can no longer approve.gate_list_actionsActions waiting for approval (or in another state), with the exact call. Approving is done by a person in the dashboard, not by a tool.gate_explain_refusalWhat a Gate refusal means and how to fix it, from the x-gate-refused header value (e.g. route_not_allowed).gate_delegate_runHand 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.gate_learn_suggestionsRead 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.gate_audit_proofRead chained audit rows and their anchors with an HMAC-SHA256 signature. Old rows before genesis are excluded; store_audit=false projects have no chain. Row-id range, up to 10,000 rows per page; follow next_from.gate_audit_verifyRecompute a pasted export chain and project signature; returns intact or broken_at (one-based row position). Does not approve actions or change permissions.gate_run_treeRead a run and its delegated descendants without tokens.gate_run_timelineRead call metadata, approvals and approver names, recovery outcomes and delegated children; no bodies or query values.gate_validate_configParse and check a declarative Gate config (apps, routes, rate limits, run mode, plugins, alerts, approvers) without changing anything. Returns errors with their path, warnings, and the normalized config.gate_sync_declarativeMake a Gate project match an odile.yaml: creates the project (if no project_id) and missing apps and approvers, applies run mode, loop and learning settings and alerts. Never revokes or deletes; differences it cannot apply (an app's routes or rate limit) come back as drift. dry_run lists the steps w
Tool changes
- 2026-10-23: gate_create_project, gate_add_app, gate_list_apps, gate_check_setup, gate_metrics, gate_audit, gate_create_run, gate_set_app_runs, gate_set_response, gate_add_approver, gate_list_actions, gate_explain_refusal
- 2026-10-22: gate_create_project, gate_add_app, gate_list_apps, gate_audit, gate_create_run, gate_set_app_runs, gate_add_approver, gate_list_actions, gate_explain_refusal, gate_delegate_run, gate_learn_suggestions, gate_audit_proof
- 2026-10-21: gate_create_project, gate_add_app, gate_list_apps, gate_audit, gate_create_run, gate_set_app_runs, gate_add_approver, gate_list_actions, gate_explain_refusal
Website · JSON · Text for agents · Registry updated 2026-10-21