MCP server providing vector search tools for document retrieval and RAG (Retrieval-Augmented Generation) capabilities with agentic search, query expansion, and LLM Wiki management
Server has 13 tools with mostly complete schemas and descriptions. Naming follows verb_noun convention (search_documents, list_collections, create_collection). Descriptions are present and substantive (avg ~150 chars), exceeding the 10-char minimum. However, several critical gaps reduce the score: (1) parameter descriptions lack format/constraint details (e.g., filter_json accepts 'JSON string' but no schema or example format); (2) no output schemas documented, LLMs cannot predict response structure for chaining; (3) error handling is absent, no guidance on retryability, user-fixable errors, or recovery paths; (4) destructive tools (delete_collection, delete_document) lack confirmation/dry-run patterns; (5) some parameters like 'chunk_size' and 'chunk_overlap' lack min/max bounds. Tool composition is sound (each tool has one responsibility), but response design is opaque.
Add a text document to a collection.
Upload files directly from filesystem to a collection. More efficient for large/binary files than add_documents.
Run an agentic RAG search that evaluates, rewrites queries, and validates answers. Uses an AI agent that retrieves documents, grades relevance, generates an answer, and validates it. Automatically retries with rewritten queries if quality is poor.
Create a new collection.
Delete a collection and all its documents.
Delete a document from a collection.
Get details of a specific collection.
No output schemas documented. LLMs cannot predict response structure (fields, types, pagination) for downstream tool chaining. E.g., search_documents returns results but structure is opaque.
Destructive tools (delete_collection, delete_document) lack confirmation or dry-run patterns. Agents can irreversibly delete data without safeguards.
No error handling guidance. Tools do not document retryability, user-fixable errors, or recovery paths. E.g., 'collection_id not found' should suggest list_collections().
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | 2026-07-28+ | v2 |
Check the status of the server.
List all available document collections. This function retrieves and displays all document collections that are available in the system. It's typically the first function to call to discover what collections are available for searching.
List documents in a collection.
Generate multiple queries (3-5) for better vector search results from a single user question.
Rebuild generated non-authoritative LLM Wiki navigation context for a collection.
Search documents in a collection using semantic, keyword, or hybrid search. This function is used to find relevant documents within a specific collection based on a search query. It supports multiple search types to provide flexible document retrieval capabilities. The function returns structured search results with document content, metadata, relevance scores, and document IDs.
Parameter constraints missing. 'chunk_size' and 'chunk_overlap' lack min/max bounds; 'limit' in list_documents has no documented range; 'filter_json' accepts 'JSON string' but no schema or format example provided.
Minimal descriptions for simple tools. get_collection, delete_collection, get_health_status have descriptions under 50 chars, insufficient for LLM selection and context.