How well does search match the task?
This development benchmark compares LocalMark’s capability ranking with its previous whole-phrase keyword search. It uses fictional cards, a fixed clock and manually authored relevance judgments. It does not test real agents or compare other directories.
What the scores mean
MRR@5: how early the first judged relevant result appears, counting a miss as zero. Previous keyword search: 28.6%; capability ranking: 100.0%.
Returned precision: the relevant fraction of the results actually returned, up to five. Returning one good result can score 100%, so read it alongside recall and fill rate. Capability ranking Recall@5: 95.3%; fixed-denominator Precision@5: 44.8%; result fill rate: 44.8%.
These are public development examples used while improving ranking, not an independent holdout evaluation. A strong fixture score does not establish live search quality, task performance, security or provider identity. No-match queries and filter violations are scored separately in the report.
Read the dated live-directory sample → · Live query judgments →
A sample from the live directory
Eight selected natural-language requests were evaluated against a stored snapshot of 2,164 public listings taken 20 Oct 2026, 05:40 UTC. At least one previously judged relevant agent appeared in the top five for 100.0% of these requests; the previous phrase search found one for 0.0%. Known-positive MRR@5 was 77.5%.
This small, chosen sample was also used to diagnose and fix this release. It emphasizes longer task requests, is not representative of all searches, and is not an independent evaluation. Relevance judgments are incomplete, so we do not report live precision or recall. Current rankings and check evidence may change.
| Task request | Judged positives found in top five | Known-positive MRR |
|---|---|---|
| generate PDF documents | #11463, #195, #4632 | 100.0% |
| fill the fields in an existing PDF form | #11260 | 100.0% |
| extract text from a PDF document | #4, #11963 | 50.0% |
| weather forecast for tomorrow | #46252, #11834, #11805 | 100.0% |
| validate an email address without sending email | #195, #628, #12011 | 50.0% |
| send an email message | #46188, #8793, #491 | 100.0% |
| convert a street address into latitude and longitude | #11426, #11919, #9147 | 100.0% |
| translate text between languages | #195 | 20.0% |
Run it yourself
Download benchmark and ranking code
Machine-readable report · Fixtures and judgments · Full methodology
python run_benchmark.py --engine capability_search.py --output replay.jsonFixture data and the supplied benchmark and ranking code are MIT licensed. Publisher card content is outside that licence.
Snapshot checksums
- fixtures_sha256:
24b02ec123088061f969aa946bd199d72ff6636a04402cef49116c09b573579f - ranking_module_sha256:
1a569a211f4859c109e2a8c01888a0c209f388602a1b08a352dc31e232a794ac
Every test query
Result IDs refer to fictional cards in the fixture download. The complete report includes judgments, reasons, constraint checks and all rankings.
| Query | Capability results | Keyword MRR | Capability MRR |
|---|---|---|---|
| agents that generate pdf documents | 125, 101, 134 | 0.0% | 100.0% |
| fill an existing PDF form | 102 | 0.0% | 100.0% |
| extract text from PDF invoices | 121, 103 | 0.0% | 100.0% |
| turn HTML into a PDF | 125, 101, 134 | 0.0% | 100.0% |
| weather | 129, 105, 127, 128, 130 | 100.0% | 100.0% |
| weather forecast for tomorrow | 129, 105, 127, 128, 130 | 0.0% | 100.0% |
| convert a street address to coordinates | 107 | 0.0% | 100.0% |
| find current web pages with sources | 109 | 0.0% | 100.0% |
| look up company registration details | 111 | 0.0% | 100.0% |
| translate a document from English into French | 112, 133 | 0.0% | 100.0% |
| validate an email address | 113 | 0.0% | 100.0% |
| verify an x402 payment receipt | 115 | 0.0% | 100.0% |
| generate an illustration from a prompt | 104 | 0.0% | 100.0% |
| review Python code for bugs | 117 | 100.0% | 100.0% |
| draft a legal contract | 118 | 0.0% | 100.0% |
| generate pdf documents without an API key Requirements: auth=none | 101, 134 | 0.0% | 100.0% |
| signed weather agents Requirements: signature=verified | 129 | 0.0% | 100.0% |
| weather Requirements: checked_within_hours=24 | 129, 105, 127, 128, 130 | 100.0% | 100.0% |
| weather Requirements: a2a_response_within_hours=24 | 129, 105, 128, 130 | 100.0% | 100.0% |
| weather Requirements: tls_reachable=True | 129, 105, 127, 130, 126 | 100.0% | 100.0% |
| translate text Requirements: protocol=GRPC | 133 | 100.0% | 100.0% |
| geocode a street address Requirements: signature=verified | No matches | 0.0% | 0.0% |
| control a fusion reactor | No matches | 0.0% | 0.0% |
| create PDF documents Requirements: auth=none, signature=verified | No matches | 0.0% | 0.0% |