---
title: "List available tools"
method: GET
path: "/api/tools"
tags: ["discovery"]
---

# List available tools

`GET /api/tools`

## Request

- Base URL: `https://claw-link.dev`
- URL: `https://claw-link.dev/api/tools`
- Auth: one of:
  - API key in header `x-clawlink-api-key`
  - HTTP bearer

Returns a capped page of tools (default 50, max 200), sorted by integration then name. Schemas are not included; call describeTool for the one tool you plan to run. When the list is truncated, the final array entry is a notice object with "name": null describing how many tools were omitted.

## Query parameters

- `integration` string
- `limit` integer

## Response `200`

Tool page

- object
  - `tools` Tool[], required
    - `integration` string, nullable: Integration slug, for example "gmail".
    - `name` string, nullable: Tool name to pass to executeTool.
    - `description` string
    - `inputSchema` object, nullable: JSON Schema for the arguments object. Null or a placeholder in list responses; hydrated by describeTool.
    - `canonical` object: Canonical summary: integration_id, action, and default connection state.
  - `count` integer, required: Number of tools in this page.
  - `total` integer, required: Total tools available to this user.
  - `truncated` boolean, required
  - `integration` string, nullable

## Other responses

- `401`: Missing or invalid API key

---

[API](https://skmtc.dev/claw-link/apis/clawlink-agent-api.md) · [All operations](https://skmtc.dev/claw-link/apis/clawlink-agent-api/llms.txt) · [OpenAPI document](https://skmtc.dev/claw-link/apis/clawlink-agent-api/revisions/6ce0c62d160a?raw)
