Skip to main content
Glama

Lexical Search

vector_lexical_search

Performs lexical search on vector database collections, enabling weight tuning between lexical and semantic matching to retrieve relevant results for AI agents.

Instructions

Lexical search (vector_search). Manage search operations.

Input Schema

NameRequiredDescriptionDefault
rrf_kNorrf k
db_typeNodb type
questionNoquestion
lexical_weightNolexical weight
number_resultsNonumber results
collection_nameNocollection name
semantic_weightNosemantic weight

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv3.3.0

TDQS

C2/5.0
Behavior2/5

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

Annotations declare readOnlyHint=false and idempotentHint=false, which signal a non-read, non-idempotent operation that a search tool would normally not be. The description's "Manage search operations" neither resolves nor explains this, and says nothing about what state might change, latency, or whether the index is mutated. With annotations this ambiguous, silence is a real gap.

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

Conciseness3/5

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

The definition is short, so it is not bloated, but the second sentence ("Manage search operations") earns nothing and the first is front-loaded with an ambiguous cross-reference. Brevity here reflects under-specification rather than discipline.

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

Completeness1/5

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

For a 7-parameter hybrid retrieval tool with weight parameters and RRF fusion settings, the description conveys zero operational information. An output schema exists so return values need not be covered, but nothing about how to combine lexical_weight/semantic_weight, what rrf_k controls, or what query field to populate is present.

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

Parameters2/5

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

Seven parameters exist (rrf_k, lexical_weight, semantic_weight, number_results, collection_name, question, db_type) and the description mentions none of them. Although schema coverage is nominally 100%, the schema descriptions are pure placeholders ("rrf k", "lexical weight"), so no meaning is conveyed by either source – the description should have compensated and did not.

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

Purpose2/5

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

"Lexical search (vector_search)" gestures at a verb and resource, but the parenthetical points at a sibling tool rather than this one, and "Manage search operations" is filler that restates nothing concrete. An agent cannot tell from this whether the tool retrieves documents, configures a search stack, or modifies an index.

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

Usage Guidelines2/5

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

No condition is given for choosing this over vector_semantic_search or vector_search, even though the sibling list makes that choice the central decision. Mentioning "vector_search" in parentheses is ambiguous – it could be read as a pointer to a related tool or as the underlying implementation, adding no routable guidance.

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