googleapis / googleapis/mcp-toolbox
feat(tool/bigquery-list-dataset-ids): add a way to bound the result set
- Dominant language
- Go
- Stars
- 16.4k
- Forks
- 1.7k
- Avg merge
- 4d 9h
- Merged PRs (30d)
- 85
Description
## Description
`list_dataset_ids` takes only a `project` parameter and pages through every dataset in it, returning the full list in one tool result. There is no `limit`, no prefix/substring filter, and no cursor.
On a project with ~10k datasets the tool returned **1,041,905 characters**. That exceeds what an agent can take in a single tool result — in our BigQuery evals the client spilled the response to a file and the agent had to shell out to `jq` to read it, turning a listing into a ~75s multi-step detour.
## Proposed fix
Add optional parameters to bound the response:
- `limit` — cap the number of ids returned
- `prefix` (or a substring filter) — narrow to matching dataset ids
## Related
`list_table_ids` has the same unbounded iterator shape and would hit this on a dataset with many tables. Worth fixing together.
Contributor guide
Assessment
This issue has not been assessed yet.