Skip to main content
Glama

Set an alert

set_alert
Idempotent

Set an alert on a search for the person. The first time, they sign in to Near Fine. Near Fine checks the alert for six months and emails them once when a new listing turns up with everything the query asks for, such as a first edition, a signed copy or a price cap. The query reads as search_books reads it. Listings there already never count: the alert stays pending until its first check has noted them. Setting an alert that's already set keeps it as it is. Returns the alert, with its status and its link on Near Fine, and the person's plan: how many alerts it allows, how many are in use and how often each is checked. A full plan comes back as an error; paid plans, at plans_url, have more.

Input Schema

NameRequiredDescriptionDefault
queryYesISBN or title and author keywords, with anything the person wants beyond the book, as in "wolf hall signed first edition under £200"
countryYesCountry the book has to reach, as an ISO 3166-1 alpha-2 code such as US, GB or DE

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the annotations: discloses the six-month checking window, single email notification, that pre-existing listings never trigger, that an alert stays pending until its first check, that re-setting is a no-op (consistent with idempotentHint=true), and that a full plan returns an error with a plans_url workaround. This is exactly the mutation-side context the annotations do not carry.

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?

Purpose is front-loaded and the ordering (what it does, how it behaves, what it returns, error case) is logical. A few sentences are clause-heavy and slightly run-on, but every one carries information rather than repeating structured fields.

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?

With no output schema, the description correctly shoulders the burden by enumerating the return payload (alert, status, link, plan quota/usage/check frequency) and the failure mode (full plan as an error, upgrade at plans_url). Nothing needed to call it correctly is missing.

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, but the description adds real meaning by saying the query is parsed exactly as search_books parses it, and by spelling out what the alert matches (condition, signature, price cap) — semantics the schema example only hints at.

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 (Set) and resource (an alert) scoped to a search query, which is clearly distinct from sibling actions like cancel_alert and list_alerts. It also pins down what the resulting alert does — checks for six months, emails once — so the agent knows exactly what object it is creating.

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?

Gives clear context for the operation (an alert on a search that gets periodically re-checked) and clarifies the query syntax by reference to search_books. It does not explicitly state when to prefer this over a one-off search_books call or how it relates to list_alerts, so there is no explicit exclusion guidance.

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