diagnose-rag

Diagnose RAG MCP server failures, ranking issues, and stale indexes across Python and .NET implementations.

Updated Nov 19, 2020
One-click install
npx skills add https://github.com/kwojtasinski-repo/ECommerceApp --skill diagnose-rag-kwojtasinski-repo
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: diagnose-rag
Source: https://github.com/kwojtasinski-repo/ECommerceApp/tree/main/.github/skills/diagnose-rag
Command: npx skills add https://github.com/kwojtasinski-repo/ECommerceApp --skill diagnose-rag-kwojtasinski-repo

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? When a RAG MCP server fails to start, returns errors, ranks the wrong document first, or serves stale content, developers waste time guessing at root causes. This Skill provides a structured decision tree that isolates the fault before any code changes are made. ## Core Features & Use Cases - Symptom-based triage: A quick-reference table maps seven symptoms (not starting, errors, wrong top result, language gaps, low scores, build failures, stale index) to dedicated diagnostic sections. - Dual-stack coverage: Separate diagnostic paths for the Python server (sentence-transformers, Qdrant REST) and the .NET server (ONNX tokenizer, Qdrant gRPC on port 6334). - Concrete fixes: Each section pairs error messages with root causes and exact commands, such as checking Qdrant collection health, verifying venv paths in .vscode/mcp.json, and running incremental vs. force-full re-indexing. - Use Case: A developer queries in Polish and gets the wrong document at rank #1. The Skill walks them through an expansion test against multilingual-glossary.yaml to confirm a language gap, then routes them to the glossary-expansion workflow. ## Quick Start Ask the assistant to diagnose why the RAG MCP server returns low scores for a specific query and follow the decision tree it produces.

Frequently Asked Questions about diagnose-rag

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fix a RAG MCP server that is not starting in VS Code?

Check the MCP section in Copilot Chat Tools for error icons, then verify the server process is running. Common causes are a wrong Python venv path in .vscode/mcp.json, Qdrant not running on port 6333, or a missing ONNX model directory for the .NET server.

Why does my vector search return the wrong document at rank one?

First run the query with top_k=20 to confirm the expected document is indexed at all. If it appears in the top 10 but not first, the issue is weight tuning or query ambiguity; if English works but Polish or German fails, the multilingual glossary lacks an entry for that concept.

Why are all my Qdrant similarity scores below 0.25?

Low scores usually mean the query is off-topic or the embedding model changed after the index was built. Verify the embedder model in rag-config.yaml matches the one used at ingest time, and run a force-full re-index if it changed.

When do I need a force-full re-index instead of incremental ingest?

Force-full re-indexing is required after changing metadata-rules.yaml, the embedder model, or chunker settings, because these affect how vectors are produced. New or edited markdown files and ranking weight changes only need an incremental ingest.

Why does dotnet build fail with DLL lock errors on the RAG server?

VS Code keeps the .NET MCP server process alive while it is enabled, locking the build output DLLs. Disable the MCP server in VS Code, wait for the RagTools process to exit, run dotnet build, then re-enable the server.