Skip to main content
Glama

Locus Web Search

router_web_search

Search the live web and return a ranked, deduplicated list of sources (title, URL, snippet) merged from several search providers; no language model summarizes on this path. Use when you need links to cite or read next; use router/web-research for a synthesized answer and router/web-extract to read URLs. Billed per fulfilled provider call; mode fast, balanced, or comprehensive sets provider breadth and cost, and maxCredits caps the total. rails and strategy are legacy fields; prefer mode. Usually costs ~10.1 credits per call. The result reports credits charged.

Input Schema

NameRequiredDescriptionDefault
modeNobalanced
queryYesSearch or research request.
railsNoLegacy access-path field retained for compatible clients.
topicNogeneral
_locusNoOptional Locus execution controls; provider arguments remain top-level.
countryNo
strategyNoLegacy mode selector retained for compatible clients.
providersNo
maxCreditsNoAggregate hard charge ceiling in workspace credits. Decimal strings support up to six fractional digits; numeric values are rounded down to six digits.
maxResultsNo
attributionNoOptional JSON ledger metadata such as a task or customer identifier.
recencyDaysNo
maxProvidersNo
includeImagesNo
excludeDomainsNo
externalUserIdNoOptional end-user billing attribution for a tenant secret key.
includeDomainsNo

Output Schema

NameRequiredDescriptionDefault
dataYesRaw provider response.
usd_chargedNoUSD charged (secret-key auth only).
credits_balanceNo
credits_chargedNo
idempotent_replayNoStored replay; no new charge.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / maxResults / maximum
      Previous value: -20New value: +10
  2. Changed4 schema fields changed
    • removedOutput schema / properties / credits_balance / description
      Removed value: -"Remaining credit balance."
    • removedOutput schema / properties / credits_charged / description
      Removed value: -"Credits debited for this call."
    • changedOutput schema / properties / data / description
      Previous value: -"Raw upstream provider response body."New value: +"Raw provider response."
    • changedOutput schema / properties / idempotent_replay / description
      Previous value: -"True when a stored identical call was replayed; no new charge was made."New value: +"Stored replay; no new charge."
  3. Added

TDQS

A4.3/5.0
Behavior4/5

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

Annotations only declare readOnlyHint=false, openWorldHint=true and idempotentHint=false; the description adds the reason for the non-read-only flag (billed per fulfilled provider call), a concrete cost estimate (~10.1 credits), how mode drives provider breadth and cost, how maxCredits caps spend, and that the result reports credits charged. It also flags rails/strategy as legacy, which structured fields cannot express. Minor gap: the schema exposes an idempotency_key while idempotentHint=false, and the description does not reconcile that for retry behavior.

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?

Two front-loaded sentences; purpose comes first, then alternatives, then billing. The second sentence is dense with semicolon-chained clauses (billing, mode, maxCredits, legacy fields, cost estimate), which is efficient but slightly harder to scan than a short bulleted flow.

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 17-parameter, cost-bearing tool with an output schema, the description covers what the output schema cannot: routing versus siblings, spend semantics, and deprecation of legacy fields. It leaves the geo/recency/domain-filter parameters and the idempotency question unaddressed, so it is strong but not fully complete.

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?

With 17 parameters and only 41% schema description coverage, the description compensates for the highest-risk fields: it explains mode's fast/balanced/comprehensive trade-off between provider breadth and cost, that maxCredits is a total ceiling, and that rails/strategy are legacy with 'prefer mode'. It says nothing about topic, country, recencyDays, maxResults, maxProviders, includeImages, include/excludeDomains, providers, attribution, or externalUserId, which remain undocumented in both places.

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 live web) plus the exact return shape (ranked, deduplicated sources with title, URL, snippet merged from several providers) and explicitly notes no LLM summarization on this path. That negative clause alone separates it from web_research and web_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?

Gives an explicit when: 'use when you need links to cite or read next', and names two alternatives with the condition that selects each (web-research for a synthesized answer, web-extract to read URLs). Nothing is left to inference.

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.