Skip to content

Evaluate MCP efficiency and recall fidelity - #418

Closed
Lauritz-Timm wants to merge 7 commits into
rtk-ai:developfrom
Lauritz-Timm:test/mcp-efficiency-eval
Closed

Evaluate MCP efficiency and recall fidelity#418
Lauritz-Timm wants to merge 7 commits into
rtk-ai:developfrom
Lauritz-Timm:test/mcp-efficiency-eval

Conversation

@Lauritz-Timm

@Lauritz-Timm Lauritz-Timm commented Jul 30, 2026

Copy link
Copy Markdown

Summary

Add a reproducible MCP evaluation for transport efficiency, recall relevance, and output fidelity.

Motivation

The MCP stack should quantify token and latency effects without assuming that smaller responses preserve relevance, ordering, or required fields.

Changes

  • add a dependency-free Python stdio evaluation harness
  • compare upstream develop, the original PR stack, and the reviewed stack
  • measure median and p95 latency, compact bytes, and estimated wire tokens
  • evaluate legacy and modern list, stats, recall, feedback, transcript, and resource scenarios
  • seed a deterministic relevance corpus with distractors
  • report Hit@3, Recall@3, nDCG@3, ordering parity, and required-field coverage
  • commit a generated 300-iteration report

Compatibility and safety

The evaluation does not alter runtime behavior. Unsupported protocol features are reported explicitly. Sub-millisecond latency differences are recorded but not treated as guarantees.

Validation

Build the three revisions, then run:

python3 -m py_compile scripts/eval-mcp-efficiency.py
scripts/eval-mcp-efficiency.py \
  --binary develop=/path/to/develop/icm \
  --binary original-prs=/path/to/original/icm \
  --binary reviewed=/path/to/reviewed/icm \
  --warmup 20 \
  --iterations 300 \
  --output docs/evals/mcp-stack.md

Reviewed versus original estimated wire-token results:

Scenario Change
modern tools/list -15.9%
modern stats -10.8%
modern recall -56.1%
modern feedback search -36.7%
modern transcript stats -31.3%
resources/list -36.9%

Recall relevance, ordering parity, and required-field coverage remained at 100%. This demonstrates preserved retrieval quality, not an improved ranking algorithm.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant