find_tables
Search for tables by keyword across all databases, matching names and comments to find tables even when you only know part of the name or purpose.
Instructions
Search for tables by keyword across ALL databases.
USE THIS WHEN: You don't know where a table is, but know part of its name or purpose.
Matches against both table names AND table comments (so a cryptically-named
table is still found when its comment mentions the term).
RETURNS (small result): flat list of matches
- [{database, schema, table, type, full_name}, ...]
Note: neither the comment nor a column count is returned. The comment is the
one unbounded field (can be a multi-KB doc-block); a column count does not
help locate a table. For a table's comment and columns, use describe_table.
RETURNS (broad result): when too many tables match to return inline, the
COMPLETE result is written to a temp `.tsv` file and the response is instead a
compact summary built to help you NARROW: `total_hits`, `results_file`, a
bounded `top_groups` breakdown of the top database.schema clusters (with a
`(+X more groups, Y hits)` tail marker), and a `spilled` hint. To narrow, call
show_tables with database_pattern/schema_pattern from top_groups and/or a more
specific table_pattern -- don't blindly re-search.
HOW IT WORKS:
- Auto-refreshes cache if expired/empty (requires Snowflake auth on first use)
- Uses cached data if available (no auth needed)
- Searches table names and comments for the keyword (case-insensitive)
Parameters:
- search_term: Keyword to search for (case-insensitive)
Examples:
- find_tables("customer") - Find all customer-related tables across all databases
- find_tables("revenue") - Find revenue tables anywhere
- find_tables("staging") - Find tables with "staging" in name or comment
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| search_term | Yes |