---
title: "List Agent Tools"
method: GET
path: "/v1/agents/{agent_id}/tools"
tags: ["agents"]
---

# List Agent Tools

`GET /v1/agents/{agent_id}/tools`

Get tools from an existing agent

## Path parameters

- `agent_id` string, required

## Query parameters

- `before` string, nullable — Tool ID cursor for pagination. Returns tools that come before this tool ID in the specified sort order
- `after` string, nullable — Tool ID cursor for pagination. Returns tools that come after this tool ID in the specified sort order
- `limit` integer, nullable — Maximum number of tools to return
- `order` 'asc' | 'desc' — Sort order for tools by creation time. 'asc' for oldest first, 'desc' for newest first
- `order_by` 'created_at' — Field to sort by

## Response `200`

Successful Response

- Tool[]
  - `id` string — The human-friendly ID of the Tool
  - `tool_type` 'custom' | 'letta_core' | 'letta_memory_core' | 'letta_multi_agent_core' | 'letta_sleeptime_core' | 'letta_voice_sleeptime_core' | 'letta_builtin' | 'letta_files_core' | 'external_langchain' | 'external_composio' | 'external_mcp'
  - `description` string, nullable — The description of the tool.
  - `source_type` string, nullable — The type of the source code.
  - `name` string, nullable — The name of the function.
  - `tags` string[] — Metadata tags.
  - `source_code` string, nullable — The source code of the function.
  - `json_schema` object, nullable — The JSON schema of the function.
  - `args_json_schema` object, nullable — The args JSON schema of the function.
  - `return_char_limit` integer — The maximum number of characters in the response.
  - `pip_requirements` PipRequirement[], nullable — Optional list of pip packages required by this tool.
    - `name` string, required — Name of the pip package.
    - `version` string, nullable — Optional version of the package, following semantic versioning.
  - `npm_requirements` NpmRequirement[], nullable — Optional list of npm packages required by this tool.
    - `name` string, required — Name of the npm package.
    - `version` string, nullable — Optional version of the package, following semantic versioning.
  - `default_requires_approval` boolean, nullable — Default value for whether or not executing this tool requires approval.
  - `created_by_id` string, nullable — The id of the user that made this Tool.
  - `last_updated_by_id` string, nullable — The id of the user that made this Tool.
  - `metadata_` object, nullable — A dictionary of additional metadata for the tool.

## Other responses

- `422` — Validation Error

---

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