Skip to main content
Glama
lennney

Agent Search MCP

Server Quality Checklist

92%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v3.2.0

  • Disambiguation5/5

    Each tool has a clearly distinct purpose: specialized fetchers for popular developer sites (CSDN, GitHub, Juejin), general search with two levels (free_search and free_search_advanced), a content extraction tool (free_extract), and a synthesis search (search_with_synthesis). Descriptions include explicit differentiation, eliminating ambiguity.

    Naming Consistency4/5

    Names consistently use snake_case with a verb_noun structure (e.g., fetch_csdn_article, free_search). Minor inconsistency: 'search_with_synthesis' is more descriptive but still follows the pattern. The 'free_' prefix is used for search-related tools, and 'fetch_' for site-specific fetchers, maintaining a logical grouping.

    Tool Count5/5

    Seven tools is well-scoped for a search and content extraction server. It covers basic and advanced search, synthesis, general content extraction, and three site-specific fetchers. No tool feels redundant or missing; each earns its place.

    Completeness5/5

    The tool surface appears complete for its purpose: it provides search (basic, advanced, synthesis), general page extraction, and specialized fetchers for common developer resources. There are no obvious gaps like missing domain filters (advanced search has them) or search result management.

  • Average 4.5/5 across 7 of 7 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 208 commits in the last 12 weeks
    • Last stable release on
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • This repository is licensed under Apache 2.0.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • This repository includes a glama.json configuration file.

  • This server has been verified by its author.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations already declare readOnlyHint=true and idempotentHint=true, indicating safe, repeatable usage. The description adds that it makes outbound HTTP requests to juejin.cn API, providing operational context beyond the annotations. No contradictions.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is concise: three sentences plus annotation indicators. It is front-loaded with the main purpose and provides usage guidance efficiently. No extraneous text.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The description lacks information about the output format (e.g., plain text, HTML, metadata). Given no output schema, the agent would benefit from knowing what the tool returns. This omission reduces completeness for a fetch operation.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The input schema has 100% description coverage for the single 'url' parameter, which is described as 'Juejin article URL'. The tool description further associates it with Juejin content but does not add detailed semantics like expected URL format or constraints beyond the schema.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the tool's function: 'Fetch content from a Juejin article'. It distinguishes it from siblings by specifying Juejin as the source and mentioning free_extract for non-Juejin content.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Provides explicit guidance: 'Best for: Chinese developer articles on Juejin' and 'Not recommended for: Non-Juejin content — use free_extract instead'. Also notes the tool makes outbound HTTP requests, which is relevant for usage considerations.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations already declare readOnlyHint and idempotentHint. The description adds 'makes outbound HTTP requests to the CSDN article URL', confirming the network call. This adds context beyond annotations, but does not introduce new safety concerns.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Three succinct sentences with no wasted words. Front-loads the core purpose, then usage guidelines, and then behavioral notes. Highly efficient.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    No output schema exists, yet the description does not specify what format the fetched content returns (e.g., plain text, markdown). This is a notable gap, though the tool is simple with one parameter.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100% with the url parameter well-described. The tool description does not add further meaning beyond the schema, so baseline 3 is appropriate.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Clearly states 'Fetch content from a CSDN blog article.' and distinguishes from siblings by specifying it is for CSDN and not for other Chinese sites, with an alternative tool named (free_extract).

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Provides explicit 'Best for' and 'Not recommended for' guidance, including a specific alternative tool. This directly helps an agent decide when to use this tool.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations already declare readOnlyHint and idempotentHint true, and the description adds that it 'makes outbound HTTP requests to raw.githubusercontent.com', providing useful behavioral context beyond the annotations. No contradictions.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Description is very concise with two sentences and clear labels (Best for, Not recommended for). Front-loaded with action, and every sentence adds value. No redundancy.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a simple tool with one parameter and no output schema, the description covers purpose, usage guidelines, behavioral details, and distinguishes from siblings. It does not specify the return format (markdown?), but that is a minor omission given the overall clarity.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100%, so the schema already documents the single parameter. The tool description does not add extra meaning beyond the schema, so baseline score of 3 is appropriate.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states 'Fetch README content from a GitHub repository' with specific verb and resource, and distinguishes from siblings by noting that non-GitHub URLs should use free_extract instead.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Explicitly provides best-use case ('Getting project documentation quickly') and a clear exclusion ('Not recommended for: Non-GitHub URLs — use free_extract instead'), offering direct guidance on when to use this tool.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior5/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations already provide readOnlyHint and idempotentHint. The description adds valuable context: 'runs waterfall progressive search across policy-allowed engines. Makes outbound HTTP requests to search engines and optionally to Jina Reader for content enrichment.' This explains the tool's external calls and algorithmic behavior beyond the annotations.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is very concise: three sentences plus two lines. The structure clearly separates purpose, best-for, and behavioral notes. Every sentence adds value, with no redundancy.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool has 13 parameters and an output schema. The description explains the high-level search mechanism (waterfall, enrichment, engine calls), which is sufficient for understanding. However, it could briefly mention the confidence waterfall logic to improve completeness, but it's still strong.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100%, so all parameters already have descriptions. The tool description adds general context about waterfall and enrichment but does not add specific parameter-level details beyond what the schema provides. Baseline 3 is appropriate.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description starts with 'Advanced search with filters and quality control,' which is a specific verb+resource combo. It explicitly distinguishes from sibling 'free_search' by stating 'Not recommended for: Simple queries — use free_search instead.' This clearly differentiates the tool's role.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides explicit 'Best for' scenarios (domain filtering, high-confidence only, Chinese content) and a clear 'Not recommended for' with an alternative tool name. This helps agents decide when to invoke this tool versus its sibling.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior5/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds valuable behavioral context: explains the waterfall multi-engine verification, states that no external LLM call is required but outbound network requests are made, and mentions the return of a prompt_hint. No contradictions.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is concise, front-loaded with the core purpose, and every sentence adds value. Usage guidelines and annotations are clearly separated, and there is no unnecessary verbosity.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool has 5 parameters and no output schema, the description adequately covers its behavior, return format (structured results + prompt_hint), and network requirements. It differentiates well from sibling tools. Minor gap: does not detail the structure of results, but acceptable for a search tool.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 80% (4 out of 5 parameters have descriptions). The description does not add parameter-specific information beyond the schema, so it meets the baseline of 3. No additional semantic value is provided.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the tool performs deep search with waterfall multi-engine verification and returns structured results plus a prompt_hint for synthesis. It explicitly differentiates from siblings by mentioning 'complex queries needing multi-source verification' and contrasts with 'free_search' for simple queries.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Provides explicit 'Best for' and 'Not recommended for' sections, naming the alternative tool 'free_search' and giving clear context on when to use this tool (complex queries) versus when not to (simple fact-finding). Also notes that no external LLM call or API key is needed.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior5/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations already declare readOnlyHint and idempotentHint, but the description adds valuable behavioral details: outbound HTTP request via Jina Reader, SSRF protection, 10s timeout, and error handling. No contradiction with annotations.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is front-loaded with the core purpose, then structured with bullet-like sections for usage guidance and behavior. Every sentence is informative and nothing is redundant.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness5/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's simplicity (2 parameters, no output schema) and rich annotations, the description covers behavioral constraints, error handling, and use cases comprehensively.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 100% with detailed descriptions for both parameters. The description does not add new semantics beyond the schema, so a baseline of 3 is appropriate.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description states a specific verb 'Extract full content from a URL' and clarifies the output as 'clean markdown text'. It distinguishes from sibling tools like free_search (search) and site-specific fetchers by focusing on general page extraction.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Explicitly provides 'Best for' (reading a specific page from search results) and 'Not recommended for' (bulk extraction) with an alternative (free_search), guiding the agent on when to use this tool.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior5/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Beyond readOnly and idempotent annotations, the description details adapter fallback behavior, optional API credentials, deduplication, confidence signals, and security protections.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is well-structured and concise, with each section serving a clear purpose: main action, usage guidelines, internal behavior, and safety notes.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness5/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's complexity (multiple engines, dedup, signals, security), the description covers all essential behavioral aspects and appropriate usage context, leaving no major gaps.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Input schema already has 100% description coverage; the description adds context like Chinese coverage with Sogou/Baidu and notes about default engines and credentials, enhancing parameter understanding.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states 'Search the web' and distinguishes from siblings by explicitly naming free_search_advanced for filtered/verified results and free_extract for full page content.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides explicit 'Best for' and 'Not recommended for' sections, directly stating when to use and when to use alternatives, including sibling tool names.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

agent-search-mcp MCP server

Copy to your README.md:

Score Badge

agent-search-mcp MCP server

Copy to your README.md:

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/lennney/agent-search-mcp'

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