Skip to main content
Glama
zvec-ai

zvec-mcp-server

Official
by zvec-ai

multi_vector_query

Read-onlyIdempotent

Combine results from multiple vector queries (e.g., dense + sparse) using weighted or RRF re-ranking to find relevant documents across different embedding spaces.

Instructions

Perform multi-vector similarity search with score fusion and re-ranking.

This tool searches across multiple vector embeddings simultaneously and combines their results using a re-ranking strategy. This is useful when documents have multiple types of embeddings (e.g., dense + sparse, text + image).

Args: params (MultiVectorQueryInput): Validated input parameters containing: - collection_name (str): Collection identifier - vectors (List[MultiVectorQuerySpec]): List of vector queries (min 2) - topk (int): Candidates to retrieve from each vector field (default: 10) - topn (int): Final documents to return after re-ranking (default: 5) - reranker_type (str): 'weighted' or 'rrf' (default: weighted) - weights (Optional[Dict[str, float]]): Field weights for weighted re-ranker - rank_constant (int): RRF rank constant (default: 60) - metric_type (str): Metric for weighted re-ranker (default: IP) - filter (Optional[str]): Filter expression - response_format (str): Output format

Returns: str: Re-ranked search results or error message

Examples: - Use when: "Search using both dense and sparse embeddings" - Use when: "Combine text and image similarity for multi-modal search"

Re-ranking Strategies: - Weighted: Combines normalized scores with custom weights per field Best when scores are comparable and you know field importance - RRF (Reciprocal Rank Fusion): Combines based on rank positions only Best when scores use different metrics/scales or prefer tuning-free approach

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
paramsYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior5/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true. The description adds context about the search and fusion process, explaining that results are re-ranked and returned, without contradicting annotations. It discloses the return format and that no side effects occur.

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?

Well-structured with sections for Args, Returns, Examples, and Re-ranking Strategies. Every sentence is informative and concise, avoiding redundancy. The length is 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?

Given the tool's complexity (multi-vector fusion, two re-ranking methods), the description covers all necessary aspects: input parameters, output format, use cases, and strategy comparisons. The output schema exists, so no need to detail return structure further. Complete and self-contained.

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?

The description thoroughly explains the 'params' argument, breaking down each sub-field (collection_name, vectors, topk, topn, reranker_type, weights, rank_constant, metric_type, filter, response_format) with examples and rationale for re-ranking strategies. This adds significant value beyond the input schema's own descriptions.

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 title and first sentence clearly state the tool performs multi-vector similarity search with score fusion and re-ranking. It distinguishes itself from single-vector search (vector_query) by specifying multiple embeddings, and from embedding_search by mentioning fusion and re-ranking.

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 'Use when' examples (e.g., 'Search using both dense and sparse embeddings') and compares re-ranking strategies (Weighted vs. RRF) with guidance on when to choose each. This helps the agent decide between this tool and alternatives.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/zvec-ai/zvec-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server