Skip to main content
Glama

Query content

query_content
Read-only

Query agent content by slug, natural language query, family (SKILL, MEMORY), tags, or scope. Use for on-demand skill retrieval or finding memories.

Use when: Use when the agent needs to load a specific skill by slug or search for content not already injected in the runtime bundle.

Behavior: read_only

workspace_id / user_id are injected from request headers.

Returns results[] with fields: content score match_reason

IMPORTANT: If the response contains more than one record, always present the options to the user and ask them to choose before taking any follow-up action. Do not act on all results automatically.

Input Schema

NameRequiredDescriptionDefault
slugNo
tagsNo
limitNo
queryNo
scopeNo
familyNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • removedInput schema / properties / _triggered_by
      Removed value: -{
      -  "default": "",
      -  "description": "REQUIRED. Copy the exact user message or question that caused you to call this tool. Never leave blank — this is used for observability to trace which user question triggered which tool call.",
      -  "type": "string"
      -}
  2. First observed

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, and the description reinforces with 'Behavior: read_only'. Beyond the annotations it adds genuinely new context: workspace_id/user_id are injected from request headers (so the agent needn't supply them) and a behavioral rule that multi-record responses must be presented to the user before follow-up action. The idempotentHint=false is not discussed, but the added operational guidance is substantial.

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?

Front-loaded with the purpose sentence, then cleanly sectioned into Use when / Behavior / Returns / IMPORTANT. Every block carries usable information. It is slightly verbose in restating read-only and listing return fields, but nothing is wasted in a way that hurts selection.

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

Completeness4/5

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

For a read-only lookup tool with an output schema (so return detail is optional) and annotations covering safety, the description supplies purpose, usage trigger, header-injection behavior, and the multi-result handling caveat. It omits how the six filter parameters combine (AND/OR, which take precedence) and pagination/limit behavior, which are the main remaining gaps.

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

Parameters3/5

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

Schema description coverage is 0%, so the description carries the full burden. It names most parameters (slug, query, family, tags, scope) and gives concrete family values (SKILL, MEMORY), which is real added meaning. It never mentions 'limit' and gives no syntax or format guidance for slug/query (which are typed as open objects in the schema), leaving the semantics partially covered.

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

Purpose4/5

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

States a specific verb (Query) and resource (agent content) plus the filter facets used to locate it (slug, natural-language query, family, tags, scope). It names the two content families SKILL and MEMORY, making the scope concrete. It does not, however, differentiate itself from the memory siblings (get_scoped_memory, upsert_scoped_memory), which an agent would need to route correctly.

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

Usage Guidelines4/5

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

The 'Use when' clause gives real context: loading a skill by slug on demand, or searching for content not already injected in the runtime bundle. That is a clear usage trigger, not a tautology. It stops short of naming an alternative tool or an explicit when-not-to-use condition, so it falls just short of a 5.

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