---
title: "List Agents"
method: GET
path: "/v1/agents"
tags: ["v1", "protected", "agents"]
---

# List Agents

`GET /v1/agents`

List all workspace agents.

Access Control:
    Returns all agents within the current user's workspace (workspace isolation).
    All users in the same workspace can see all workspace agents.

    Note: User-level access control should be implemented via authorization
    layer (future access-control) rather than query parameters.

## Response `200`

Successful Response

- AgentResponse[]
  - `a2ui_enabled` boolean, nullable
  - `agent_type` string
  - `description` string, nullable
  - `events_config` object, nullable
  - `id` string, uuid, required
  - `instruction` string, nullable
  - `is_catalog` boolean
  - `model_id` string, nullable
  - `name` string, required
  - `planning` boolean, nullable
  - `registry_item_id` string, nullable
  - `skills` object[], nullable
  - `slug` string, required
  - `status` string, required
  - `tools` union[], nullable
    - union
      - CodeToolConfig
        - `name` string, required
        - `settings` CodeToolSettings — Settings for a built-in code toolset.
          - `disabled_methods` string[], nullable
          - `requires_user_confirmation` boolean, nullable
        - `type` 'code'
      - McpToolConfigOutput
        - `name` string, required
        - `settings` McpToolSettings — Settings for an MCP server tool (a subset of the server's tools).
          - `allowed_tools` McpToolPermission[], nullable
            - `requires_user_confirmation` boolean, nullable
            - `tool_name` string, required
          - `requires_user_confirmation` boolean, nullable
        - `type` 'mcp'
      - AgentToolConfig
        - `name` string, required
        - `settings` AgentToolSettings — Settings for an agent-to-agent (delegation) tool. ``a2a_url`` selects the *remote* transport binding; absent → same-platform direct delegation. Lives here only — A2A is a per-edge binding, not a property every tool type carries.
          - `a2a_url` string, nullable
          - `description_override` string, nullable
          - `requires_user_confirmation` boolean, nullable
        - `type` 'agent'
      - OpenApiToolConfig
        - `name` string, required
        - `settings` OpenApiToolSettings — Settings for an OpenAPI connection tool. ``load_mode`` picks schema disclosure: "explicit" inlines every operation's schema into each LLM call (legacy); "searchable" defers them behind a ``load_tools`` meta-tool. Honored only for openapi tools — which is exactly why it lives here and nowhere else.
          - `allowed_tools` string[], nullable
          - `load_mode` 'explicit' | 'searchable', nullable
          - `openapi_connection_id` string, nullable
          - `requires_user_confirmation` boolean, nullable
        - `type` 'openapi'
  - `update_available` boolean

---

[API](https://skmtc.net/agentarea/apis/agentarea-api.md) · [All operations](https://skmtc.net/agentarea/apis/agentarea-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/agentarea/agentarea-api/versions/e3650e48373b/schema)
