Skip to main content
Glama

Search the whole workspace

search_workspace
Read-only

Finds anything in the workspace in one call — uploaded files (searching the text inside them), folders, Workbench flows, shims, knowledge bases and tasks, Compass pages and changes, Caliper datasets, evals, rubrics, reviews, specs and sources, Ledger entries, Napkin sketches, decks, docs, sheets, diagrams and interfaces. The same search the person uses in Home. Use it FIRST whenever the user mentions something without saying where it lives ('the SOW', 'the dispatch interviews', 'that invoice'). The query is words in any order: each word must appear in the thing's name, its tags, the names of the folders it's filed under, or the text inside it — so 'northwind sow' finds the SOW filed in the Northwind folder, and 'dispatch interview' finds 'Dispatcher interview 1.md'. Results are ranked best first. Each hit carries its id, kind, path (for a link), folderPath (where it's filed, top-down), tags, and a snippet when the words were found inside it rather than in its name — say where a thing lives using folderPath. A file's id feeds workspace_files_read; other ids feed the kind's *_get tool. Pass folderId to search only inside one folder and everything under it. If nothing comes back, try fewer or different words before telling the user it doesn't exist. Results only include what the user can see, and only kinds this token may read.

Input Schema

NameRequiredDescriptionDefault
qYesWords, any order, case-insensitive. Fewer words find more.
kindsNoRestrict to these kinds (file, folder, flow, page, doc, dataset, …). Omit to search everything.
limitNo
folderIdNoOnly search inside this folder and the folders under it (ids from workspace_folders_browse or a folder hit).
workspaceNoWorkspace slug. Personal tokens with no default workspace MUST pass this; tokens with a default can override per call. Ignored for workspace API keys.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / kinds / items / enum
      Previous value: -[
      -  "flow",
      -  "page",
      -  "dataset",
      -  "eval",
      -  "entry",
      -  "board",
      -  "file",
      -  "shim",
      -  "knowledge_base",
      -  "task",
      -  "rubric",
      -  "review",
      -  "spec",
      -  "source",
      -  "doc",
      -  "sheet",
      -  "diagram",
      -  "interface",
      -  "change",
      -  "folder"
      -]New value: +[
      +  "flow",
      +  "page",
      +  "dataset",
      +  "eval",
      +  "entry",
      +  "board",
      +  "file",
      +  "shim",
      +  "knowledge_base",
      +  "task",
      +  "rubric",
      +  "review",
      +  "spec",
      +  "source",
      +  "doc",
      +  "sheet",
      +  "diagram",
      +  "interface",
      +  "change",
      +  "field",
      +  "study",
      +  "metric",
      +  "folder"
      +]
  2. Changed4 schema fields changed
    • addedInput schema / properties / folderId
      Added value: +{
      +  "description": "Only search inside this folder and the folders under it (ids from workspace_folders_browse or a folder hit).",
      +  "maxLength": 100,
      +  "minLength": 1,
      +  "type": "string"
      +}
    • changedInput schema / properties / kinds / description
      Previous value: -"Restrict to these kinds (flow, page, dataset, eval, entry, board). Omit to search everything."New value: +"Restrict to these kinds (file, folder, flow, page, doc, dataset, …). Omit to search everything."
    • changedInput schema / properties / kinds / items / enum
      Previous value: -[
      -  "flow",
      -  "page",
      -  "dataset",
      -  "eval",
      -  "entry",
      -  "board",
      -  "file",
      -  "shim",
      -  "knowledge_base",
      -  "task",
      -  "rubric",
      -  "review",
      -  "spec",
      -  "source"
      -]New value: +[
      +  "flow",
      +  "page",
      +  "dataset",
      +  "eval",
      +  "entry",
      +  "board",
      +  "file",
      +  "shim",
      +  "knowledge_base",
      +  "task",
      +  "rubric",
      +  "review",
      +  "spec",
      +  "source",
      +  "doc",
      +  "sheet",
      +  "diagram",
      +  "interface",
      +  "change",
      +  "folder"
      +]
    • changedInput schema / properties / q / description
      Previous value: -"Case-insensitive substring matched against names/titles."New value: +"Words, any order, case-insensitive. Fewer words find more."
  3. First observed

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Although annotations already declare readOnly/non-destructive/closed-world, the description adds substantial behavior the annotations cannot express: AND-of-words matching across name, tags, folder names and body text, best-first ranking, per-hit fields (id, kind, path, folderPath, tags, snippet), recursive folderId scoping, and permission-based result filtering ('only what the user can see, and only kinds this token may read').

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose and the 'use it FIRST' rule are front-loaded, and every later sentence adds either query semantics, return shape, or id-chaining guidance. The long enumeration of object kinds is the one place it runs heavy, though it doubles as scope documentation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description supplies what an agent needs about results (fields, ranking, snippet meaning, using folderPath to say where a thing lives) and how to chain ids into workspace_files_read or the kind's *_get tool. Permissions, empty-result handling, and workspace/scope limits are all covered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 80%, but the description still adds real meaning: it explains what the q words are matched against (name, tags, parent folder names, inner text) and gives worked examples ('northwind sow' finds the SOW in the Northwind folder). It also clarifies folderId is recursive, matching the schema, and leaves well-documented kinds/limit/workspace to the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb and scope: 'Finds anything in the workspace in one call', then enumerates the object kinds covered (files, folders, flows, shims, knowledge bases, tasks, pages, datasets, evals, rubrics, reviews, specs, sources, Ledger entries, Napkin artifacts). This clearly separates it from focused siblings like compass_pages_search, search_docs, workbench_kb_search, and rooms_search, which each cover one kind.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit trigger condition: 'Use it FIRST whenever the user mentions something without saying where it lives', backed by three concrete user-phrase examples. It also gives a recovery procedure when results are empty ('try fewer or different words before telling the user it doesn't exist'), which is when-to-use guidance beyond the happy path.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources