Skip to main content
Glama
soil-dev
by soil-dev

search_content

Read-onlyIdempotent

Find discussions, comments, polls, stances, or outcomes in Loomio by keyword, author, tag, or type. Use it to locate visible content when you need specific posts or authors.

Instructions

Keyword search over everything the connector's user can see: 1 call. Pass query (prefix match; !word excludes), author_id alone for 'what did X post', or both. Hard cap: at most 20 results, no paging; capped: true means narrow the search. Stance hits on polls with hidden results are DROPPED from a query search; never use search to probe hidden vote reasons.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tagNoOnly threads carrying this tag (exact name).
orderNoauthored_at_desc (default), authored_at_asc, relevance.
queryNoFull-text query (prefix match; `!word` excludes).
typesNoRecord types to include; default all (e.g. ['Outcome']).
group_idNoRestrict to one group (not its subgroups).
author_idNoRestrict to one author; alone = their 20 newest items.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.0.13

TDQS

A4.5/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds genuinely useful behavior the annotations do not: a hard 20-result cap with no paging, the `capped: true` signal, and that stance hits on hidden-result polls are dropped from a query search. That said, it stops short of naming the alternative tool for the capped case, so it is additive but not rich.

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?

Roughly four dense sentences, all front-loaded, with the two most consequential facts (20-result cap, hidden-stance drop) placed where they cannot be missed. No filler or restatement of the tool name.

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?

No output schema exists, so the description carries the return-value burden and does so by explaining the `capped: true` marker. With all six parameters fully documented in the schema and the safety profile in annotations, nothing an agent needs to call this correctly is missing.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3. The description earns an extra point by documenting cross-parameter semantics the schema does not: how query, author_id, and their combination compose ('or both') and how the cap interacts with narrowing the search. It omits tag/types/group_id/order, which the schema already covers.

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?

States a specific verb and resource ('Keyword search over everything the connector's user can see') with the visibility scope made explicit. It also pins down the search modes (query, author_id, both), so an agent can distinguish it from the list_/get_ siblings without opening a schema.

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?

Explicitly tells when to use each input ('author_id alone for what did X post', or both), and adds a hard when-not: never use search to probe hidden vote reasons. Both the selection condition and the anti-pattern are given, leaving nothing to inference.

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