search_pages
Hybrid full-text + semantic search across the workspace.
Last updated
search_pages
Hybrid full-text + semantic search across the workspace. Use this for freeform "find anything about X" queries where the agent does not know the exact collection or properties.
For structured lookups within one collection, prefer
query_pages.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
query | string | yes | Search query. Must be at least 2 characters. |
collection_id | string | no | Scope the search to a single collection. |
limit | number | no | Max results. Positive integer, capped at 50. Default 20. |
mode | enum | no | hybrid (default), keyword, or semantic. |
Modes
- hybrid — full-text search combined with vector similarity. Best for most queries. The default.
- keyword — pure Postgres full-text search. Best when the query contains identifiers or exact tokens that should match literally.
- semantic — pure vector similarity over embeddings. Best for fuzzy concept matching where the exact words do not appear in the target page.
Returns
A JSON array of ranked search results. The API returns pages ordered by relevance; the exact scoring fields depend on the chosen mode.
Example
{
"tool": "search_pages",
"arguments": {
"query": "onboarding checklist for new hires",
"mode": "hybrid",
"limit": 10
}
}
See also
query_pages— structured filter/sort within one collectionread_page— fetch the full body of a hit