Skip to main content
Glama
RushDB MCP Server

RushDB MCP Server

Official
by rush-db

searchValues

Read-only

Finds which property stores a value by searching all property value dictionaries at once, so you can filter on user-typed names, codes, or phrases without guessing the field or spelling.

Instructions

Find where a value from the question is stored: searches the exact value dictionaries of every property at once and returns { matches: [{ label, property, value, count }], total }. Use it before filtering on a name, code, or phrase the user typed, instead of guessing the field or spelling. match: contains (default), prefix, exact, or similar (near spellings, for typos and punctuation: "spiderman" finds "Spider-Man"). No match means no stored value contains the text: check the spelling, try a shorter word, or read a field's values with propertyValues.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "text": "<text>"
    },
    "name": "searchValues"
  }
}

Input Schema

NameRequiredDescriptionDefault
textYesThe text to look for.
limitNoMost matches (default 50, max 1000).
matchNo
labelsNoLabels to search (all when omitted).
minSimilarityNosimilar only: least similarity, 0–1 (default 0.6).

Output Schema

NameRequiredDescriptionDefault
searchValuesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv3.1.1

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already cover the read-only, non-destructive, closed-world safety profile, and the description adds real context beyond that: the response envelope, the meaning of match modes, and what a zero-result outcome implies (no stored value contains the text) with recovery advice. It stops short of describing pagination/limit behavior or result ordering, which would complete the picture.

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 purpose and the return shape, then usage, then modes, then failure handling — a sensible order with no filler sentences. The inline return-type notation is slightly dense but functional; nothing here is padding.

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?

With 5 parameters, annotations, and an output schema, the description carries what structured fields can't: cross-property scope, match-mode semantics, and no-match guidance. The only gap is the absence of routing guidance against near-neighbor search tools, which matters given how many search-ish siblings exist.

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 coverage is 80%, so the schema already documents text, limit, labels, and minSimilarity, and baseline is 3. The description earns its keep mainly on the 'match' enum, which the schema leaves completely undocumented: it explains contains (default), prefix, exact, and similar with a concrete typo example ('spiderman' finds 'Spider-Man'), though it does not tie minSimilarity to that mode.

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?

Uses a specific verb and resource: it searches the exact value dictionaries of every property at once for a text string, and states the return shape ({ matches: [{ label, property, value, count }], total }). This clearly separates it from record-level search siblings like findRecords or textSearch, which operate on records rather than stored property values.

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?

Gives explicit usage context: 'Use it before filtering on a name, code, or phrase the user typed, instead of guessing the field or spelling,' which tells the agent when to reach for this instead of blindly filtering. It also handles the failure path by naming an alternative (propertyValues) when nothing matches, though it never states when *not* to use it versus the sibling search tools (textSearch, semanticSearch, smartSearch).

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