---
title: "List provider tools"
method: GET
path: "/provider-tools"
tags: ["Provider Tools"]
---

# List provider tools

`GET /provider-tools`

## Request

- Base URL: `https://api.metorial.com`
- URL: `https://api.metorial.com/provider-tools`
- Auth: HTTP bearer

Returns a paginated list of provider tools. By default returns tools from the latest version. Use optional filters to get tools for a specific version.

## Query parameters

- `limit` number
- `after` string
- `before` string
- `cursor` string
- `order` 'asc' | 'desc'
- `provider_version_id` string, required
- `provider_auth_method_id` union
  - string
  - string[]

## Headers

- `Metorial-Version` string

## Response `200`

Successful response

- ToolList
  - `items` Tool[], required
    - `object` 'provider.tool', required: String representing the object's type
    - `id` string, required: Unique tool identifier
    - `key` string, required: Tool key
    - `name` string, required: Display name of the tool
    - `description` string, nullable, required: Tool description
    - `capabilities` object, required: Tool capabilities
    - `constraints` string[], required: Tool constraints
    - `instructions` string[], required: Tool usage instructions
    - `input_schema` object, nullable, required
      - `type` 'json_schema', required
      - `schema` object, required: JSON Schema defining the tool input parameters
    - `output_schema` object, nullable, required
      - `type` 'json_schema', required
      - `schema` object, required: JSON Schema defining the tool output format
    - `tags` object, nullable, required
      - `destructive` boolean, nullable, required: Whether the tool is destructive
      - `read_only` boolean, nullable, required: Whether the tool is read-only
    - `tool_category_keys` string[], required: Keys of the tool categories this tool belongs to
    - `specification_id` string, required: Specification ID
    - `provider_id` string, required: Provider ID
    - `created_at` string, date-time, required: Timestamp when created
    - `updated_at` string, date-time, required: Timestamp when last updated
  - `pagination` object, required
    - `has_more_before` boolean, required
    - `has_more_after` boolean, required

## Other responses

- `400`: Invalid parameters or action
- `401`: Missing or invalid API key
- `403`: The key lacks permission for this resource
- `404`: No such resource
- `422`: Validation failed
- `429`: Rate limit exceeded
- `500`: Unexpected server error

---

[API](https://skmtc.dev/metorial/apis/metorial-api.md) - [All operations](https://skmtc.dev/metorial/apis/metorial-api/llms.txt) - [OpenAPI document](https://skmtc.dev/metorial/apis/metorial-api/revisions/10ccc89f3eac?raw)
