Public leaderboard

Public assessment

lennney/agent-search-mcp (agent-search-mcp)

agent-search-mcp · v3.2.0 · scanned

What changed in the harness

Selection accuracy 95→89, 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

26.5 / 30

26.5 out of 30
03Economics

16.0 / 20

16.0 out of 20
04Discoverability

13.1 / 20

13.1 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.

4 defects 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
fetch_github_readme
no_return_description
Fetches the README file from a GitHub repository given its URL (e.g., https://github.com/owner/repo). Returns the README content as text, or an error if the repository or README cannot be found.
fetch_csdn_article
no_return_description
Fetches an article from a CSDN blog given its HTTPS URL (blog.csdn.net). Returns the extracted article content as text, or a structured error if the page cannot be fetched or parsed.
fetch_juejin_article
no_return_description
Fetches an article from Juejin given its article URL, via the juejin.cn API. Returns the extracted article content as text, or a structured error if the article cannot be fetched or parsed.
search_with_synthesis
params_unexplained
Deep search with waterfall multi-engine verification. Returns structured results plus a prompt_hint for the agent to synthesize its own answer. No external LLM call or model API key is required; search and enrichment still make outbound network requests. Best for: Complex queries needing multi-source verification and LLM synthesis. Not recommended for: Simple fact-finding — use free_search instead. Parameters: query is the search text; count (1-20, default 10) caps how many results are gathered; language selects result-language preference (auto-detect, English, or Chinese; default auto); min_confidence (0-1, default 0) filters out results below a source-reliability confidence score, with legacy values 2-3 reinterpreted as min_source_count; min_source_count (1-12, default 1) requires results to be corroborated by at least that many independent upstream provider families. @readOnly true @idempotent true — runs waterfall search across free+paid engines with content enrichment.

Selection evidence

Confusable tool pairs.

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

Tool A Tool B Confidence Why they collide
free_search free_search_advanced high Both are general web search tools with overlapping query params; a request like "search for X with high confidence" or "search only trusted domains" could plausibly be routed to either, especially since free_search's own description name-drops free_search_advanced as the alternative for filtered/verified results.
free_search search_with_synthesis medium Both take a plain query and return search results; a task asking for a 'thorough' or 'verified' answer could be sent to either, though search_with_synthesis's synthesis/prompt_hint framing differentiates it somewhat.
free_search_advanced search_with_synthesis medium Both perform waterfall multi-engine search with confidence/source-count filters and enrichment; an agent asked for 'deep, verified, multi-source search' could pick either since the schemas and behaviors heavily overlap.
free_search free_extract low Clearly distinct purposes (search vs. extracting content from a known URL) but a vague task like 'find and get the content of this page' could momentarily confuse an agent about which to call first.
fetch_csdn_article fetch_juejin_article medium Both fetch Chinese developer blog articles with identical schemas (a URL field); if the agent isn't attentive to the domain (blog.csdn.net vs juejin.cn) in a given URL, it could call the wrong platform-specific tool.
fetch_github_readme fetch_juejin_article low Both fetch article/documentation content from a URL with the same single-field schema, but GitHub vs Juejin domains are distinct enough that confusion is unlikely except in careless automation.
fetch_github_readme fetch_csdn_article low Same shape (URL-based content fetch) but distinct target domains (GitHub vs CSDN) make genuine mix-up unlikely outside careless URL handling.
free_search_advanced free_extract low Different functions (search vs URL extraction) though both share 'free' branding; unlikely to be confused except in a vague 'get me info on this' request that doesn't specify a URL.

Compare the field

One score is useful.
The evidence makes it actionable.

Back to the leaderboard