Skip to main content
Glama

Dipper

Web search

web_search
Read-onlyIdempotent

Search the web and get a ranked list of results with title, URL, date and a short summary.

Use it when you need current or external information: recent events, documentation, prices, facts you are not sure about. Prefer one well-chosen query over many similar ones; if the summaries are not enough, call web_fetch on the most relevant URL instead of searching again.

Query rules:

  • At most 128 characters. Write concise keywords, not a long question.

  • Operators (combine freely): site:example.com only results from that site -site:example.com exclude that site lang:en results in a language (e.g. lang:zh, lang:en) after:2025-01-01 published on or after a date (YYYY-MM-DD) before:2025-12-31 published before a date

  • Example: "cloudflare durable objects pricing site:developers.cloudflare.com after:2025-06-01"

max_results: number of results (1-50, default 10). Asking for more does not cost more but uses more context. include_content: include the full page text of every result. This is very large (often thousands of tokens per result) and rarely needed — leave it false and use web_fetch on one or two chosen URLs instead.

Results may come from a shared cache. refresh: skip the cache and search again now; the new results also replace the cached copy for everyone. Billed at the full (uncached) rate, so only set it when the user needs the latest information or a cached result looks out of date.

Input Schema

NameRequiredDescriptionDefault
queryYesSearch query, 1-128 characters. Supports site:, -site:, lang:, after:YYYY-MM-DD, before:YYYY-MM-DD.
refreshNoSkip the cache and search again now (full price); the fresh results replace the cached copy. Default false.
max_resultsNoNumber of results to return, 1-50. Default 10.
include_contentNoInclude full page text for every result. Very large; rarely needed. Default false.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only declare read-only/open-world/idempotent; the description goes well beyond them by disclosing the shared cache, the fact that refresh overwrites the cached copy for all users, the full uncached billing rate, and the large context cost of include_content. These are non-obvious side effects and costs an agent could not infer from annotations or schema.

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?

Front-loaded with purpose, then when-to-use, then a clearly headed operator block, then per-parameter guidance. Well organized, but some parameter sentences duplicate the schema descriptions, and the operator list is longer than strictly needed.

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?

There is no output schema, and the description compensates by describing the result fields, the caching model, the refresh overwrite semantics, and billing behavior. An agent can call this correctly and predict consequences without any further information.

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?

Schema coverage is 100%, so the baseline is 3; the description adds genuine meaning by spelling out each operator with a worked combined example and by framing the max_results/include_content/refresh tradeoffs in cost and context terms. It loses a point only because the parameter definitions themselves largely restate 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?

States a specific verb and resource ('Search the web') plus the exact return shape (ranked list with title, URL, date, short summary), so an agent knows what it gets back. The contrast with the sibling web_fetch is implicit in the return shape and made explicit later in the usage guidance.

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?

Gives explicit triggers ('recent events, documentation, prices, facts you are not sure about') and an explicit anti-pattern ('Prefer one well-chosen query over many similar ones'). It names the alternative tool and the condition that selects it: if summaries are insufficient, call web_fetch on the chosen URL rather than re-searching.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources