Advanced Context Engineering for AI Applications - MCP server providing hybrid search, semantic reranking, multi-layered memory management, diagram generation, and interactive repository visualization
The Mosaic MCP server has 11 tools with basic definitions, but exhibits significant gaps in schema completeness, parameter descriptions, and output documentation. Most tools have verb-noun naming conventions (positive), but parameter schemas are sparse, many lack detailed descriptions, and there is no visible output schema documentation. Error handling guidance is absent. This is a typical community server with foundational structure but incomplete polish for production agent use.
Clear all memories for a session.
Generate Mermaid diagram syntax from natural language description.
Get statistics about repository entities and relationships for graph visualization.
Perform hybrid search using unified Cosmos DB backend (OmniRAG pattern).
Query code graph relationships using OmniRAG embedded JSON pattern.
Rerank documents using cross-encoder/ms-marco-MiniLM-L-12-v2 model.
No visible output schemas documented for any tool. LLMs cannot infer return structure, field types, or what data to extract for chaining. This violates the SCHEMA & OUTPUT pattern and forces agents to guess or fail.
Parameter schemas are minimal. Most tools show only parameter names, types, and brief descriptions. Missing are: min/max bounds for numeric params, enum constraints for categorical fields, regex patterns for strings, and documentation of mutually exclusive or dependent parameters.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 52 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 45 | - | v1 |
Retrieve relevant memories using hybrid search.
Save memory using multi-layered storage (Redis + Cosmos DB).
Create interactive visualization focusing on code dependencies and imports.
Create comprehensive knowledge graph visualization with semantic relationships.
Create interactive visualization of repository code structure and relationships.
No error handling guidance visible. Tools like clear_memory (destructive) and save_memory (write) have no documented error classes, recovery paths, or confirmation mechanisms. Agents cannot plan around failures.
Parameter descriptions are generic. Examples: 'Search query string' (hybrid_search.query), 'Session identifier' (save_memory.session_id). Descriptions lack guidance on format, constraints, examples of valid values, or when to use them instead of alternatives.
Destructive operation (clear_memory) lacks a dry-run or confirmation step. Agents can irreversibly delete all session memories without safeguards or undo mechanisms.
Tool descriptions use abbreviated pattern names ('OmniRAG pattern', 'embedded JSON pattern') that are not self-documenting. Agents cannot understand what these patterns mean or why they matter without external documentation.
No pagination guidance visible in tools that return lists (retrieve_memory has a limit param with default=10, but no mention of total_count, next_cursor, or offset). Large result sets risk blowing context windows.
Composition issue: query_code_graph and visualize_knowledge_graph appear to serve similar purposes (code/semantic relationships). Tool A's output (entity/relationship IDs) may not chain cleanly into tool B's input (repository_url). No documented chaining path.
No visible authentication or permission declaration. Tools accept session_id and repository_url as parameters but do not describe scope, required permissions, or authorization checks. Agents cannot verify they have authority before calling.