List tools for one connection
Lists what this authenticated account can run: the connector's tools, each flagged restricted and restricted_by for the caller rather than filtered out. This is where a partially restricted connection says so, since the connection row's own restricted_by asserts the whole connector is blocked. Contrast GET /connector/{slug}/tools, which is the catalog capability with no account behind it. A restricted connector answers 403. It resolves the same access as GET /connection/{id}: a connection the caller holds no grant on is 404. q and operation are both applied before paging, and operation_counts describes the q-filtered set (never narrowed by operation itself), same as GET /connector/{slug}/tools. For a remote MCP connection ("bring your own") the rows are the tools this connection's own credentials listed, from per-connection discovery: name, upstream_name, title, the full description of this connection's definition, status (active or disabled, the connector-wide on/off), the tier (the server's label), tier_source (server or default), operation (the tier as read, other or delete) and last_seen_at, plus the same restriction flags. q and status are applied before paging. A caller who manages the connection may filter by either status and sees tools that are turned off; everyone else with access is shown active tools only, whatever status they send. When the connection's connector is gone from the catalog (Elaichi unpublished or deleted it) the answer is 409 connector_unavailable with a message a person can read; the connection itself is kept.
Request
- Base URL: https://api.elaichi.ai
- URL: https://api.elaichi.ai/connection/{id}/tools
- Auth: HTTP bearer
Path parameters
Connection id (conn_…).
Query parameters
Page size. Defaults to 50. Values above 200 are silently clamped to 200 rather than rejected; a value below 1, or a non-integer, is a 400. Ignored by the endpoints documented as unpaginated.
Opaque cursor — pass the next_cursor from a previous response. Ignored by unpaginated endpoints.
Case-insensitive substring match on name, description and resource. LIKE wildcards are matched literally. Max 200 characters.
Comma-separated CRUD buckets to keep: read, create, update, delete, other. Unknown values 400. Applied before paging, so the cursor never counts a row the filter would have hidden.
Headers
Target organization (org_…). Required for cookie/session auth on org-scoped routes; optional for API tokens, which carry their organization, and rejected when it names a different one.
Response
OK
Changes
No recorded changes to this operation across all 1 revision of this API.