com.odilelabs/gate · v1.1.0 · agents-and-memory
Odile Gate is healthy: it completed an MCP handshake in 344 ms and exposes 9 tools.
Give AI agents scoped, expiring API access: exact approvals, retry-safe writes, an audit log.
Endpoint: https://gate.odilelabs.com/mcp (streamable-http)
No repository listed · Website · JSON · Add to my inventory
| Users (last 30 days) | 0 |
| Handshake | Healthy |
| Auth needed | None |
| Tool count | 9 |
| Latency | 344 ms |
| Last checked (UTC) | 2026-10-21T04:21:02.281Z |
| Checked (UTC) | Status | Latency | Error |
|---|---|---|---|
| 2026-10-21T04:21:02.281Z | Healthy | 344 |
gate_create_project | Put 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_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. Returns the app key (shown once). |
gate_list_apps | The project's apps with their allowed calls, limits and state. |
gate_audit | 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. |
gate_create_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. Returns a run token (shown once) the agent sends as x-odile-run |
gate_set_app_runs | Make an app need a run: "writes" (every write needs x-odile-run), "all" (every call), or "off". |
gate_add_approver | Create 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_actions | Actions 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_refusal | What a Gate refusal means and how to fix it, from the x-gate-refused header value (e.g. route_not_allowed). |