Skip to main content
Glama

search

Read-onlyIdempotent

Search any SeaWeb vertical by natural-language intent.

    vertical: one of list_verticals() (e.g. "restaurants"). intent: free
    text. location: neighborhood filter; empty = all SF. goal:
    discover|book. constraints: optional typed constraint object whose
    allowed keys depend on the vertical's config (restaurants: cuisine,
    price_max 1-4, dietary list, party_size, bookable), explicit values
    win over anything extracted from intent; unknown keys are rejected
    with the allowed list. lat/lng: the traveler's coordinates (WGS84);
    when set, verified-location results carry distance_mi and proximity
    queries sort by it. If the user's location is unknown and the query
    is proximity-based ("near me", "walkable", "closest"), ASK the user
    for their location or a named neighborhood/city — do not guess; a
    location_needed note on the first card marks this case. Use recall()
    for the account's stored preferences (e.g. home_neighborhood) when
    available. Returns ranked entity cards with canonical
    seaweb://{vertical}/{slug} ids.

    On corpus verticals the cards may be preceded by a plain-text line,
    "[SEAWEB_QUERY] verdict=... [degraded=...]", emitted only when there
    is something non-default to say. Other "[SEAWEB_*]" banner lines can
    precede it (an experiment marker, when that flag is on), so skip
    leading banner lines rather than checking only the first. Read it: `uncertain` means retrieval
    returned nothing and is NOT a claim that the corpus lacks the subject
    (rephrasing often finds it); `not_found` means a subject term has zero
    title hits corpus-wide, which IS an observation about the corpus;
    `unsupported_intent` means a list/superlative ask a reference corpus
    cannot rank. `degraded=...` means a serving stage failed and the
    results are incomplete -- an outage, never an abstention. Absent
    header = answerable, nominal.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
latNo
lngNo
goalNo
intentYes
locationNo
verticalYes
constraintsNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the readOnly/idempotent annotations, the description discloses substantial behavior: constraints validation and precedence, coordinate-based distance/sorting, location_needed note semantics, the SEAWEB_QUERY verdict meanings, and degraded-mode outage semantics. It also warns about banner lines and how to parse them—context not inferable from annotations.

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?

The description is front-loaded with a one-sentence purpose then parameter semantics, and the long response-parsing section is dense with operationally necessary distinctions (uncertain vs not_found vs degraded). It is not overly verbose for the complexity, but the banner/verdict explanation is lengthy enough that a tighter presentation might improve scannability.

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?

For a complex tool with 7 parameters, no schema descriptions, and rich annotations, the description covers all essential behavior: parameter semantics, location fallback, constraints validation, output format, and error/verdict interpretation. The presence of an output schema covers formal return fields, while the description explains the non-obvious header line semantics, making it complete for safe invocation.

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

Parameters5/5

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

Schema description coverage is 0%, so the description carries the full burden, and it delivers. Each parameter is explained: vertical via list_verticals(), intent as free text, location as neighborhood filter, goal as discover|book, constraints with allowed keys and rejection behavior, and lat/lng as WGS84 coordinates with sorting effects. This more than compensates for the bare 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 opens with a specific verb+resource: 'Search any SeaWeb vertical by natural-language intent.' This clearly distinguishes the generic cross-vertical search from vertical-specific siblings like search_restaurants and search_salons, and from search_web, by emphasizing 'any SeaWeb vertical' and returning canonical seaweb://{vertical}/{slug} entity cards.

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

Usage Guidelines4/5

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

It provides clear usage context: use list_verticals() to enumerate verticals, pass free-text intent, and use recall() for stored preferences. It also gives explicit handling guidance (ASK the user for location on proximity queries rather than guessing). However, it never names alternative tools or states when not to use this tool, so the when-vs-alternatives guidance is only implicit.

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