Skip to main content
Glama

retriEVAL

LLM評価をMCPサーバーとして提供。 あらゆるMCPクライアント内で、AIの出力の忠実性、関連性、幻覚をスコアリングできます。パイプラインもテストハーネスも不要です。すべての結果には、履歴を保持するダッシュボードへのリンクが付いてきます。

ライブで試す(サインアップ不要) · 2分のデモを見る · ダッシュボード


なぜ

5つのカスタマーサポート回答を、2つのメトリックでスコアリングしました:

メトリック

スコア

合格

answer_relevancy

0.98

5/5

faithfulness

0.70

3/5

すべての回答はトピックに沿っており、よく書かれていました。しかし、そのうち2つは、根拠とされるはずのポリシーに矛盾していました。1つはポリシーが提供していない無料の返品送料を約束し、もう1つは無料の翌日交換をでっち上げました。目で確認するだけなら、5つすべてに承認印を押すでしょう。

そのギャップこそがポイントです。関連性は質問に答えているかを問い、忠実性はそれが実際にソースにあるかを問います。両方が必要であり、2つ目が高くつく失敗を捉えます。

Related MCP server: mcp-llm-eval

接続

セルフホスト型です。クローンして、ジャッジを指定して、実行するだけです。データがマシンの外に出ることはなく、サインアップするサービスもありません。

git clone https://github.com/hcarrillo001/retrieval-mcp
cd retrieval-mcp
pip install -r requirements.txt

export ANTHROPIC_API_KEY=sk-ant-...        # or a local judge, below
python server.py                            # stdio, for Claude Desktop / Cursor

次に、こう尋ねるだけです:

これらのケースをfaithfulnessでスコアリング: [{"input": "...", "actual_output": "...", "retrieval_context": ["..."]}]

ケースをインラインで渡せば何も保存されません。1回の呼び出しで、セットアップ手順は不要です。クライアント設定はローカル実行(stdio)を、常時稼働のインスタンスとダッシュボードが必要な場合はHTTPとしてデプロイを参照してください。

何もインストールせずに試したいですか? retrieval-mcp.comにライブサンドボックスがあります。サインアップ不要、無料のジャッジで動作し、何も保存されません。

すべてをローカルに保つ場合: RETRIEVAL_JUDGE_BACKEND=ollama を設定すると、ジャッジも自分のマシンで実行されるため、データがネットワークの外に出ることは一切ありません。第三者に送信できないものを評価する場合に便利です。

得られるもの

  • 9つの組み込みメトリックに加え、平易な英語で作成するカスタムメトリック

  • 交換可能なジャッジ — Anthropic、Groq、Gemini、OpenRouter、またはローカルのOllamaモデル。ネットワークの外に出す必要がありません

  • ゴールデンセット — ファイル、URL、インラインJSON、JSONL、CSV、TSVから

  • Supabaseでの実行履歴 — 共有可能なパーマリンクと実行比較付き

  • 支出上限 — ジャッジベースのツールは、そうしないと請求額が膨らむ可能性があるため

正直な制限

  • ジャッジの一致はまだ人間のラベルに対して検証されていないため、スコアは真実ではなくシグナルとして扱ってください。

  • ゴールデンセットは現在、独自の出力を保持しているため、新しいモデル出力に対して再実行するには、2番目のセットをロードする必要があります。分割は次の変更です。

  • ゴールデンセットと作成したメトリックはサーバープロセス内に存在し、再起動すると失われます。実行は永続化されますが、これらはされません。


メトリック(DeepEval準拠)

faithfulness · answer_relevancy · contextual_precision · contextual_recall · contextual_relevancy · hallucination · bias · toxicity · summarization — さらに、平易な言語で定義する作成済みG-Evalメトリック。すべて正規化されており、高いほど良い(bias/toxicityはクリーンな割合を報告)、各メトリックはスコアリングの前に推論を行います。

多用途なゴールデンセット

load_golden_set は、ファイルパス(アップロードされたファイルを含む)、http(s) URLインラインJSON配列、またはJSONLテキストを、JSON / JSONL / CSV / TSV形式で受け入れます。フィールド名は自動的に正規化されます(question→input、answer→actual_output、ground_truth→expected_output、contexts→context、passages→retrieval_context、…)。そのため、ほとんどの公開ベンチマークはそのまま読み込めます。

デフォルトで短い返信

run_eval はすべてのケースをスコアリングしますが、デフォルトでは最低スコアの3件のみを返します(limitで調整可能)。total_cases/shown と、残りをページングするための show_run_cases(run_id, offset, limit, metric) へのポインタが含まれます。

支出上限(請求額が膨らまないように)

ジャッジの支出は実際のトークン使用量から測定され、永続化されます。ハードキャップを設定します:

export RETRIEVAL_BUDGET_USD=20     # 0/unset = unlimited

累計支出がキャップに達すると、それ以降のAnthropic呼び出しは停止し、ツールは明確な budget_exceeded メッセージを返します。get_budget / reset_budget で確認・リセットできます。(価格は概算です。モデルの現在の価格に合わせて RETRIEVAL_PRICE_IN/OUT(100万トークンあたりのドル)を上書きしてください。)

ハイブリッド構成(ローカル + 常時稼働ダッシュボード)

実行履歴はプラグ可能なストアを使用し、環境変数で選択されます:

  • FileStore(デフォルト) — ~/.retrieval 内のJSONL。セットアップ不要、ローカルのみ。

  • SupabaseStoreSUPABASE_URL + SUPABASE_SERVICE_KEY が設定されている場合。実行履歴はPostgresに保存され、ローカルCLI、デプロイされたMCP、ウェブサイトのダッシュボードで共有されます。

推奨されるハイブリッドフロー:

  1. Supabaseで supabase_schema.sql を実行します(runs テーブルを作成)。

  2. MCP(ローカルおよび/またはRailway)に SUPABASE_URL + SUPABASE_SERVICE_KEY を設定し、すべての実行が中央に書き込まれるようにします。各実行は、モデル間比較のために generator_modeljudge_model を記録します。

  3. web/ をVercelにデプロイし(同じSupabase環境変数を設定)、retrieval-mcp.com にマッピングします。ダッシュボードは /api/runs を介して履歴を読み取り(サービスキーはサーバー側に保持)、モデル別トレンド、モデルリーダーボード、実行履歴をレンダリングします。Supabaseが接続されるまでサンプルデータを表示します。

ローカルは無料のサンドボックス(Ollamaジャッジ、ファイル履歴)のままで、ウェブサイトは共有履歴への常時稼働の窓口です。

ローカル実行(stdio)— Claude Desktop

pip install -r requirements.txt
export ANTHROPIC_API_KEY=sk-ant-...
{
  "mcpServers": {
    "retrieval": {
      "command": "python",
      "args": ["/ABSOLUTE/PATH/server.py"],
      "env": { "ANTHROPIC_API_KEY": "sk-ant-...", "RETRIEVAL_BUDGET_USD": "10" }
    }
  }
}

次に: "Load examples/rag_golden.jsonl as 'space', run faithfulness, label it v1."

HTTPとしてデプロイ(どこからでもアクセス)

export RETRIEVAL_TOKEN=$(openssl rand -hex 24)   # required for a public endpoint
export ANTHROPIC_API_KEY=sk-ant-...
export RETRIEVAL_BUDGET_USD=20
python app.py        # serves $PORT (default 8000); MCP at /mcp, health at /healthz

Railway(または任意のホスト)にデプロイします。同梱の Dockerfile / Procfile はそのまま動作します。ホスト環境に ANTHROPIC_API_KEYRETRIEVAL_TOKENRETRIEVAL_BUDGET_USD を設定します。クライアントは https://<host>/mcp にヘッダー Authorization: Bearer <token> を付けて接続します。claude.ai / Claude Desktop のカスタムコネクタとして追加するか、Agent Builder / CI から指定します。状態(ゴールデンセット、実行履歴、支出)はサーバー側に存在するため、マシンをまたいで永続化されます。

実際のRAGパイプラインで見る(デモ)

demo/rag_demo.py は、小さなラベル付きデータセット(demo/labeled.json + demo/corpus.json)上に、小さなエンドツーエンドのRAGを構築します。BM25で検索し、ゴールドパッセージに対する recall@k を計算し(決定論的 — レトリーバーのスコア)、回答を生成し、次に忠実性をスコアリングします(ジェネレーターのスコア)。1つの回答は意図的に幻覚になっているため、2つの失敗モードが分離するのを確認できます。

python demo/rag_demo.py            # offline, no key needed
python demo/rag_demo.py --real     # real generation + RetriEval judge (needs ANTHROPIC_API_KEY)

また、demo/generated_goldenset.jsonl を書き出します。それをMCPにロード(load_golden_setrun_eval)して、ジャッジがスコアリングしたバージョンを得ます。これが橋渡しです。パイプラインが予測を出力し、データセットがラベルを提供し、RetriEvalがレトリーバーとジェネレーターを独立してスコアリングします。

RAGパイプラインへの接続

  • オフライン(デフォルト): パイプラインの取得コンテキストと回答をゴールデンセットにエクスポートしてスコアリングします。RetriEvalはパイプラインに一切触れません。

  • ライブ: RAGエンドポイントまたはベクターストア(Chroma / Supabase pgvector)を呼び出す query_rag(question) ツールを追加し、コンテキストと回答をキャプチャして、1回でスコアリングします。

ジャッジバックエンド

export RETRIEVAL_JUDGE_BACKEND=anthropic          # default
export RETRIEVAL_JUDGE_MODEL=claude-sonnet-4-6
# or local, free:
export RETRIEVAL_JUDGE_BACKEND=ollama
export RETRIEVAL_JUDGE_MODEL=deepseek-r1:70b

ツール

ツール

目的

list_metrics

組み込み + 作成済みメトリック

load_golden_set(name, source, fmt)

再利用のためにセットに名前を付ける(セルフホストのみ — 共有され、再起動で失われる)

list_golden_sets

読み込まれているもの

author_metric(name, criteria, examples)

平易な言語 → スコアラー

run_eval(metrics, cases, golden_set, threshold, outputs, label, limit)

セットをスコアリング。cases をインラインで渡す(JSON/JSONL/CSV/TSV/パス/URL)— 何も保存されない

show_run_cases(run_id, offset, limit, metric)

残りをページング

evaluate_case(...)

一回限りのスコア

ground_against_url(url, output, question)

出力のウェブページとの整合性をチェック(ラベルなし — 整合性であり、正しさではない)

list_runs(golden_set, last_n)

保存された実行

plot_metric_trend / plot_run / compare_runs

インラインチャート

get_budget / reset_budget

支出上限のステータス / リセット


ライセンス

Apache License 2.0. Hanns Carrillo によって構築されました。

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides advanced evaluation tools for assessing AI safety, alignment, and performance of LLM outputs. Enables programmatic evaluation of quality, safety metrics like toxicity and PII detection, and operational metrics including carbon footprint and cost estimation.
    4
    Apache 2.0
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables LLM evaluation and observability by uploading documents, building test sets, running RAG pipelines, and automatically scoring answers for groundedness, hallucination risk, retrieval quality, latency, and cost, with tools exposed to MCP-compatible clients.
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.

  • A paid remote MCP for AI SDK eval dashboard, built to return verdicts, receipts, usage logs, and aud

  • Enterprise AI Control Plane: governance, guardrails, spend tracking, compliance & smart routing.

View all MCP Connectors

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/hcarrillo001/retrieval-mcp'

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