Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Retrieval Lens

FreeNot checked

A black-box flight recorder for RAG retrieval inside MCP agents. Logs what chunks the model saw, scores, sources, and rankings - so you can audit, replay, and d

GitHubEmbed

About

A black-box flight recorder for RAG retrieval inside MCP agents. Logs what chunks the model saw, scores, sources, and rankings - so you can audit, replay, and diff retrieval runs after the fact.

README

A black-box flight recorder for RAG retrieval inside MCP agents.

retrieval-lens is an MCP server that logs every retrieval step your RAG agent makes — what chunks were retrieved, their scores, sources, and rankings — so you can audit, replay, and diff retrieval runs after the fact.


The Problem

When a RAG agent gives a wrong answer, you need to know: did retrieval fail, or did generation fail? Right now there's no easy way to answer that. Your observability tool shows you the LLM call. It doesn't show you which chunks the model saw before it answered, what scores they had, or how retrieval changed between yesterday and today.

retrieval-lens fixes that. Every retrieval run is logged. Nothing is hidden.


Demo

When your RAG agent gives a wrong answer, ask retrieval-lens what it saw:

await mcp.call("retrieval_diff", {
  run_id_a: "support-bot-before-embedding-refresh",
  run_id_b: "support-bot-after-embedding-refresh",
  match_by: "source"
});

See docs/demo-diff.png for real output from Claude Code.


MCP Tools

Tool What it does
retrieval_observe Log a retrieval run — query, chunks, scores, sources, rankings
retrieval_query Replay what the model saw before a specific answer
retrieval_diff Compare two retrieval runs — what changed, what score drifted
retrieval_stats Aggregate score distributions, top sources, runs over time

Quickstart

Run retrieval-lens directly with npx:

npx retrieval-lens

Add retrieval-lens to Claude Code with one command:

claude mcp add retrieval-lens npx retrieval-lens

Then call retrieval_observe after every retrieval step in your RAG pipeline:

await mcp.call("retrieval_observe", {
  run_id: crypto.randomUUID(),
  query: "what is the refund policy?",
  chunks: [
    { content: "Refunds are processed within 5 days...", score: 0.91, source: "policy.md", rank: 1 },
    { content: "Contact support for refund requests...", score: 0.74, source: "faq.md", rank: 2 }
  ],
  pipeline_tag: "support-bot"
});

Adapters

LangChain

See examples/langchain-adapter.ts

LlamaIndex

See examples/llamaindex-adapter.ts


Why not LangSmith / Langfuse?

Those are full observability platforms. retrieval-lens is surgical:

  • Local-first — SQLite, zero signup, no data leaves your machine
  • MCP-native — one config line, works in any MCP client
  • Retrieval-only — focused on the layer where most RAG failures actually happen

Status

🚧 Active development. Harness-first build using harness engineering principles.

  • F05 — scaffold
  • F01 — retrieval_observe
  • F02 — retrieval_query
  • F03 — retrieval_diff
  • F04 — retrieval_stats

License

MIT


from github.com/Vbj1808/retrieval-lens

Install Retrieval Lens in Claude Desktop, Claude Code & Cursor

Recommended · one command, every IDE
unyly install retrieval-lens

Installs into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.

First time? Get the CLI: curl -fsSL https://unyly.org/install | sh

Or configure manually

Run in your terminal:

claude mcp add retrieval-lens -- npx -y retrieval-lens

FAQ

Is Retrieval Lens MCP free?

Yes, Retrieval Lens MCP is free — one-click install via Unyly at no cost.

Does Retrieval Lens need an API key?

No, Retrieval Lens runs without API keys or environment variables.

Is Retrieval Lens hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install Retrieval Lens in Claude Desktop, Claude Code or Cursor?

Open Retrieval Lens on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare Retrieval Lens with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All ai MCPs