Skip to main content
Glama

telys_search

Read-onlyIdempotent

Semantically search a memory collection to recall stored notes, facts, or decisions. The query is embedded on-device and returns best-matching hits with scores and metadata.

Instructions

Semantic + lexical search over a Telys memory collection: the server embeds query with its built-in on-device embedder and returns the best-matching live rows as hits (id, score, metadata). Use to recall stored notes/facts/decisions before answering. Choose this embedding-ranked path when wording varies; choose telys_search_lexical when exact terms and BM25 scoring matter. Required: collection, query. Optional: top_k (default 5) and where — a single-key equality filter such as scope=project:acme (one key only; MCP-created collections are partitioned by scope). Fails (isError) when the collection does not exist — write first via telys_add or telys_create_collection — or when where carries more than one key.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYestext query; embedded on-device before searching
top_kNomaximum hits to return, ordered best-first
whereNooptional single-key equality filter, e.g. scope=project:acme (one key only)
collectionYesname of an existing collection in the active store

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv0.1.1
    • addedInput schema / properties / collection / description
      Added value: +"name of an existing collection in the active store"
    • addedInput schema / properties / query / description
      Added value: +"text query; embedded on-device before searching"
    • addedInput schema / properties / top_k / description
      Added value: +"maximum hits to return, ordered best-first"
    • changedInput schema / properties / where / description
      Previous value: -"optional single-key equality filter"New value: +"optional single-key equality filter, e.g. scope=project:acme (one key only)"
  2. First observedv0.1.0

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is clear. The description adds valuable behavioral context beyond annotations: failure when the collection doesn't exist, the single-key restriction on 'where', and the on-device embedding behavior. It does not contradict any annotation.

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?

The description is detailed but well-structured: it opens with the core purpose, then usage guidance, then parameter specifics, and closes with error conditions. Every sentence adds value; it is not padded with filler. Slightly long but appropriate for the tool's complexity.

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?

For a tool with 4 parameters, a nested object, and no output schema, the description covers return format (hits with id, score, metadata), required vs optional, filtering constraints, error scenarios, and usage context. An agent has enough to call it correctly without additional documentation.

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 baseline is 3. The description adds meaningful context beyond the schema: the 'where' filter example ('scope=project:acme'), the note that MCP-created collections are partitioned by 'scope', and the default for top_k. It doesn't fully compensate for the lack of output schema, but it enhances parameter understanding.

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 clearly states a specific verb ('search') and resource ('Telys memory collection'), explains the embedding mechanism, and explicitly differentiates from telys_search_lexical. It leaves no ambiguity about what the tool does.

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?

It provides explicit when-to-use guidance ('recall stored notes/facts/decisions before answering') and contrasts with the lexical alternative ('choose this embedding-ranked path when wording varies; choose telys_search_lexical when exact terms and BM25 scoring matter'). It also notes required vs optional parameters and error conditions.

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