---
title: "List all tools"
method: GET
path: "/tools"
tags: ["tools"]
---

# List all tools

`GET /tools`

Get a paginated list of all MCP tools across servers. Use the `q` parameter for semantic search.

## Query parameters

- `q` string, required
- `page` integer
- `pageSize` integer
- `topK` integer
- `serverId` string, uuid
- `serverQualifiedName` string
- `serverVerified` '0' | '1' | 'true' | 'false'
- `serverIsDeployed` '0' | '1' | 'true' | 'false'
- `readOnlyHint` '0' | '1' | 'true' | 'false'
- `destructiveHint` '0' | '1' | 'true' | 'false'
- `idempotentHint` '0' | '1' | 'true' | 'false'

## Response `200`

Successful response

- ToolsListResponse
  - `tools` ToolWithServer[], required
    - `id` string, required
    - `tool` object, required
      - `name` string, required
      - `title` string
      - `icons` object[]
        - `src` string, required
        - `mimeType` string
        - `sizes` string[]
        - `theme` 'light' | 'dark'
      - `description` string
      - `inputSchema` object, required
        - `type` 'object', required
        - `properties` object
        - `required` string[]
      - `outputSchema` object
        - `type` 'object', required
        - `properties` object
        - `required` string[]
      - `annotations` object
        - `title` string
        - `readOnlyHint` boolean
        - `destructiveHint` boolean
        - `idempotentHint` boolean
        - `openWorldHint` boolean
      - `execution` object
        - `taskSupport` 'required' | 'optional' | 'forbidden'
      - `_meta` object
    - `server` ToolServerSummary, required
      - `id` string, required
      - `qualifiedName` string, required
      - `displayName` string, required
      - `iconUrl` string, nullable, required
      - `verified` boolean, required
      - `isDeployed` boolean, required
  - `pagination` object, required
    - `currentPage` integer, required
    - `pageSize` integer, required
    - `totalPages` integer, required
    - `totalCount` integer, required

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `422` — Unprocessable entity

---

[API](https://skmtc.dev/smithery-ai/apis/smithery-platform-api.md) · [All operations](https://skmtc.dev/smithery-ai/apis/smithery-platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/smithery-ai/smithery-platform-api/revisions/ea538dc2369a/schema)
