Skip to main content
Glama

search

GET /search — Cross-resource omni-search

Cross-resource search across profiles, rooms, messages (incl. private DMs + group DMs you're in), events, and chapters in one round trip. Returns the top-N matches per resource, grouped by resource.

Use this when you don't yet know which resource carries the answer — agents typically call this first, then drill into a specific GET /search/<resource> for more depth on a single bucket. There's no page param: when you hit the per-resource limit and want more, switch to the per-resource endpoint for that one.

The events slice has a baked-in forward-looking default (events ending in the last 30 days or later, and currently enabled) — this matches the in-app "Search across DC" surface. Use GET /search/events directly to look further back in time.

Query syntax (q=): plain words match with prefix + typo tolerance. Wrap a phrase in double quotes to require an exact ordered match — e.g. q="remote work". AND/OR/NOT/parentheses are NOT parsed in q= — use the structured filter params below for boolean composition.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
qYesSearch text (1-500 chars). Required.
limitNoPer-resource hits cap (1-25). The same cap applies to each resource — so `limit=5` returns up to 5 profiles + 5 rooms + 5 messages + 5 events + 5 chapters.
userIDNoScope each resource to this DCer's content — their profile, messages they authored, rooms they created, events they host, chapters they belong to. The @-mention pattern from the in-app search.

TDQS

A5/5.0
Behavior5/5

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

With no annotations, the description fully discloses behavior: returns top-N matches grouped by resource, no pagination, events slice has forward-looking default (ending in last 30 days or later, enabled), and details query syntax (plain words with prefix + typo tolerance, exact phrase matching with quotes, no boolean parsing in q=).

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

Conciseness5/5

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

Front-loads purpose in first line, then usage guidelines, then parameter behavior and query syntax. Each paragraph is concise and informative with no redundant sentences.

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?

Given the complexity of omni-search, the description covers all essential aspects: resources searched, usage pattern, return structure (top-N grouped), no pagination, events default scope, and query syntax. No output schema, but the description adequately explains what to expect.

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 100% but description adds significant context: explains limit is per-resource, userID scopes to a DCer's content (profile, messages, rooms, events, chapters they authored/created/host/belong to), and describes @-mention pattern. Query syntax is detailed beyond 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?

The description explicitly states 'Cross-resource omni-search' and lists the resources searched (profiles, rooms, messages, events, chapters). It clearly distinguishes from sibling tools like search_chapters and search_events by noting the broader scope.

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?

Provides explicit guidance: 'Use this when you don't yet know which resource carries the answer — agents typically call this first, then drill into a specific GET /search/<resource> for more depth.' Also advises switching to per-resource endpoints when hitting the per-resource limit and notes no page param.

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.

TDQS

A3.7/5.0
Disambiguation4/5

Despite the large number of tools, each has a detailed description that clearly distinguishes its purpose. Minor potential overlaps (e.g., search vs. resource-specific search, own vs. other's agenda) are well documented, so an agent can differentiate them.

Naming Consistency4/5

Tool names follow a consistent verb_noun or resource_subresource_action pattern in snake_case. A few tools are just nouns (e.g., 'alerts', 'announcements'), but these are top-level listing endpoints; overall the naming is predictable.

Tool Count2/5

85 tools is very high for a single server, making it difficult for an agent to efficiently explore and select the right tool. While each tool seems justified for the broad domain, the count feels overwhelming and could be streamlined.

Completeness3/5

The tool surface covers most major areas (events, trips, chapters, rooms, search, profile, etc.) with CRUD or lifecycle operations. However, the lack of a 'send message' tool for rooms is a notable gap, and some resources (e.g., events) are read-only on creation/update, limiting agent workflows.