Skip to main content
Return the capabilities in your account — plugins, built-ins, and connectors.

Request

Query parameters

Rows are ordered by created_at descending — newest capability first.
These are the only two parameters this endpoint accepts. There is no type, namespace, or search filter — filter client-side on the returned rows.

Response

The payload is wrapped in a data envelope. There is no total count and no echo of limit / offset.

Row fields

The specifications object

specifications is a tagged union. Its type field is one of plugin, builtin, or connector, and the remaining fields depend on that tag.
Carries active_version and the list of uploaded versions. A newly registered plugin has active_version: 0, meaning no version has been activated yet — tool dispatch against it fails until one is.
Carries kind, sort_order, and config — not just kind — plus metadata when set. kind is one of Files, WebSearch, HttpClient, KnowledgeRetrieval, CodeRunner, Sandbox, Computer, Browser, PluginBuilder, SkillBuilder, Memory. All eleven are seeded into every account at signup.Sandbox also deserializes from the legacy name VirtualMachine.
A REST connector, an MCP registry server, or a custom MCP server.
List does not redact this row. A connector’s auth_config comes back as {"ciphertext": "..."} — the encrypted bytes, not the plaintext. Nothing decrypts on this path, but the ciphertext itself is not withheld.

Namespaces and tool names

namespace is the prefix a capability’s tools carry on the wire. The wire name is {namespace}_{tool} — a single underscore, no double underscore. The namespaces seeded for the eleven built-ins are: Namespaces are unique per account. The eleven above are what an account is seeded with at signup; plugin and connector namespaces are assigned per capability. Read namespace off the row rather than assuming it — that is what this endpoint is for.

Status codes

See Errors and rate limits for why credential failures return 403 rather than 401 on this surface.

Scope of this endpoint

This is a read-only listing. There is no POST, PATCH, or DELETE on /v1/capabilities, and no GET /v1/capabilities/{id}. Creating, editing, and deleting capabilities happens in the Portal, with one exception: plugin upload registers a new plugin version over the API. That is a statement about this collection, not about the management API as a whole — other parts of the API do accept writes. See API Overview for what the surface covers.