Public leaderboard

Public assessment

atlasprzetargow/mcp-server (@atlasprzetargow/mcp)

atlasprzetargow-mcp · v0.1.0 · scanned

What changed in the harness

Selection accuracy 100→100, token cost up 1%, unconfirmed writes 100%→100%.

Category breakdown

Where the score comes from.

Earned points across the four signals Gradable measures. Safety and Legibility are scored out of 30; Economics and Discoverability are scored out of 20.

01Safety

30.0 / 30

30.0 out of 30
02Legibility

27.9 / 30

27.9 out of 30
03Economics

19.5 / 20

19.5 out of 20
04Discoverability

12.8 / 20

12.8 out of 20

Highest-impact fix

Estimated gain +7 points

Make target tools discoverable on the first call

Clarify tool names, decision boundaries, and required argument schemas so an agent can choose and construct the target call without exploratory steps.

Description evidence

Defects and rewrites.

1 defect found across the exposed tool descriptions. Suggested rewrites make purpose, inputs, boundaries, and returns easier for an agent to understand.

Tool Defect types Suggested rewrite
get_category_stats
no_return_description
Retrieve aggregate statistics for a CPV category based on historical BZP+TED data: tender count, average/median value, average number of offers, and average deadline period. Useful for market sizing and competitive benchmarking. Returns a JSON object with these aggregate metrics for the specified CPV code and time window.

Selection evidence

Confusable tool pairs.

6 pairs where similar names or overlapping descriptions may send an agent toward the wrong tool.

Tool A Tool B Confidence Why they collide
get_category_stats get_province_stats medium Both return aggregate market statistics; a vague request like 'give me stats on construction procurement' doesn't specify whether to slice by CPV category or by geography, and an agent could pick either.
get_buyer get_contractor high Both fetch a company profile by identical 10-digit NIP with near-identical schemas; a request like 'tell me about this company with NIP 1234567890' gives no signal whether the entity is acting as buyer or contractor, so the agent must guess the role.
search_entities search_cpv medium Both are keyword lookup tools used as a precursor to other calls; a query like 'search for IT' is ambiguous between finding a CPV category (IT services) and finding an entity named IT-something, risking the wrong search tool being invoked.
search_tenders search_entities high A request like 'find GDDKiA tenders' or 'co kupuje ZUS' (an example given for search_tenders) could plausibly be answered by searching tenders with a buyer name query or by first resolving the entity via search_entities, so an agent may pick either depending on interpretation of intent.
search_tenders search_cpv medium search_cpv's description explicitly says to use it before search_tenders, but a natural query like 'find computer purchase tenders' could be resolved directly with search_tenders(query='komputer') or misrouted into a CPV lookup instead, especially since both accept free-text Polish keywords.
search_tenders get_tender low get_tender requires a specific structured tender_id while search_tenders takes free-text/filters, so confusion is limited to cases where a user pastes a tender reference embedded in a search-like phrase, which is a narrow scenario.

Compare the field

One score is useful.
The evidence makes it actionable.

Back to the leaderboard