Files
genai-toolbox/docs/en/resources/tools/postgres/postgres-list-schemas.md
Srividya Reddy 1a19cac7cd feat(tools/postgres-list-schemas): add new postgres-list-schemas tool (#1741)
## Description
Add a read-only PostgreSQL custom list_schemas tool, that returns the
schemas present in the database excluding system and temporary schemas.
Returns the schema name, schema owner, grants, number of functions,
number of tables, and number of views within each schema.

<img width="1985" height="1043" alt="Screenshot 2025-10-20 at 7 45
45 PM"
src="https://github.com/user-attachments/assets/8c4f0bb8-587c-489a-8795-efa79e92b06f"
/>

<img width="3372" height="1694" alt="3NpZG7W6h3XGsM7"
src="https://github.com/user-attachments/assets/370b5440-cc48-4c4e-82ea-4fd508cbcf2b"
/>

> Should include a concise description of the changes (bug or feature),
it's
> impact, along with a summary of the solution

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [x] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
2025-11-06 00:54:01 +00:00

2.0 KiB

title, type, weight, description, aliases
title type weight description aliases
postgres-list-schemas docs 1 The "postgres-list-schemas" tool lists user-defined schemas in a database.
/resources/tools/postgres-list-schemas

About

The postgres-list-schemas tool retrieves information about schemas in a database excluding system and temporary schemas. It's compatible with any of the following sources:

postgres-list-schemas lists detailed information as JSON for each schema. The tool takes the following input parameters:

  • schema_name (optional): A pattern to filter schema names using SQL LIKE operator. If omitted, all user-defined schemas are returned.

Example

tools:
  list_schemas:
    kind: postgres-list-schemas
    source: postgres-source
    description: "Lists all schemas in the database ordered by schema name and excluding system and temporary schemas. It returns the schema name, schema owner, grants, number of functions, number of tables and number of views within each schema."

The response is a json array with the following elements:

{
  "schema_name": "name of the schema.",
  "owner": "role that owns the schema",
  "grants": "A JSON object detailing the privileges (e.g., USAGE, CREATE) granted to different roles or PUBLIC on the schema.",
  "tables": "The total count of tables within the schema",
  "views": "The total count of views within the schema",
  "functions": "The total count of functions",
}

Reference

field type required description
kind string true Must be "postgres-list-schemas".
source string true Name of the source the SQL should execute on.
description string false Description of the tool that is passed to the LLM.