Skip to main content
Glama

Web search

rag_search_ddgs
Read-only

Search the web across multiple engines, rank results locally by semantic similarity, and return selected pages as text for retrieval-augmented answers.

Instructions

Search the web and return the most relevant pages as text. Default choice for lookups. Uses ddgs "auto" metasearch, which queries several engines (DuckDuckGo, Brave, Wikipedia, ...) and skips any that are blocked. Results are re-ranked locally by semantic similarity to the query before the top pages are fetched.

Input Schema

NameRequiredDescriptionDefault
queryYesThe search query. Use natural language questions or keywords. Example: "latest developments in quantum computing"
top_kNoNumber of top-ranked pages to fetch and return. Default: 5
num_resultsNoNumber of initial search results to rank. More results provide better coverage but increase processing time. Default: 10
include_urlsNoWhether to include each page's source URL for citation. Default: True

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv1.1.1
    • changedInput schema / properties / include_urls / description
      Previous value: -"Whether to include source URLs in the results.\n                If True, each result includes its URL for citation.\n                Default: True"New value: +"Whether to include each page's source URL for citation.\n                Default: True"
    • changedInput schema / properties / num_results / description
      Previous value: -"Number of initial search results to fetch from DuckDuckGo.\n              More results provide better coverage but increase processing time.\n              Default: 10"New value: +"Number of initial search results to rank.\n              More results provide better coverage but increase processing time.\n              Default: 10"
    • changedInput schema / properties / top_k / description
      Previous value: -"Number of top-scored results to include in the final output.\n        These are the most semantically relevant results after scoring.\n        Default: 5"New value: +"Number of top-ranked pages to fetch and return.\n        Default: 5"
  2. Changed4 schema fields changedv1.0.4
    • addedInput schema / properties / include_urls / description
      Added value: +"Whether to include source URLs in the results.\n                If True, each result includes its URL for citation.\n                Default: True"
    • addedInput schema / properties / num_results / description
      Added value: +"Number of initial search results to fetch from DuckDuckGo.\n              More results provide better coverage but increase processing time.\n              Default: 10"
    • addedInput schema / properties / query / description
      Added value: +"The search query. Use natural language questions or keywords.\n        Example: \"latest developments in quantum computing\""
    • addedInput schema / properties / top_k / description
      Added value: +"Number of top-scored results to include in the final output.\n        These are the most semantically relevant results after scoring.\n        Default: 5"
  3. Addedv1.0.1

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and openWorldHint, yet the description adds genuine behavioral detail: multi-engine metasearch, automatic skipping of blocked engines, local semantic re-ranking, and a subsequent page-fetch step. This tells the agent the call may be slow and that results are re-ordered, though latency and failure modes are not quantified.

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

Conciseness4/5

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

Four short sentences with the core action front-loaded first and the mechanism after; nothing is redundant with the schema. The standalone "Default choice for lookups" sentence is terse but slightly orphaned from the mechanism paragraph.

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?

With an output schema present, return values need not be described, and the annotations cover the safety profile, so the description's remaining job is mechanism and default-status — both covered. The only real gap is sibling differentiation across the five related search/research tools.

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 four parameters are already documented, which sets the baseline at 3. The description does implicitly explain the pipeline (broad initial results get re-ranked, then top pages are fetched), which clarifies why num_results and top_k are distinct, but it adds no explicit parameter-level detail.

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

Purpose4/5

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

States a specific verb and resource ("Search the web and return the most relevant pages as text") and explains the underlying mechanism (ddgs "auto" metasearch over DuckDuckGo, Brave, Wikipedia). It calls itself the "Default choice for lookups," which weakly separates it from siblings, but it never contrasts the row with rag_search_google, search, or the deep_research variants.

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

Usage Guidelines3/5

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

"Default choice for lookups" is an implied rule for when to reach for this tool, and the mechanism note hints at fallback behavior when an engine is blocked. However, no sibling is named as an alternative and there is no statement of when NOT to use it (e.g., versus rag_search_google or deep_research), leaving the choice to inference.

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