Skip to main content
Glama

Route alerts

wever_alert-route

Standing jobs: register one routing rule for the paying wallet. Watch fires and standing-job results for this wallet that match the filter also post to callback_url, byte for byte, with their own Idempotency-Key. filter.source_tool is wever_watch-fire or a schedulable tool name; filter.condition reads a field of the delivered report (for example /outcome equals failed, /result/report/verdict equals outside_window, or /observation/value above 120) with equals, not_equals, above, below, at_or_above, at_or_below or exists. Routing never changes the original delivery; it adds one. The rule ends at expires_at, up to 30 days ahead, or after max_deliveries. POST /api/alert-route. Standing jobs check and report: they run read-and-report Wever tools only and never move money, place orders or change state. Paid URL: 0.10 USDC per call on Base via x402 exact, with the shared 10 signed-wallet free calls per rolling 30 days. Every call carries X-Wever-Wallet-Proof bound to the exact JSON arguments and the tool route; a paid call adds Payment-Signature from the same wallet. Returns a report with an Ed25519 signed receipt. Contract: /api/standing-jobs-contract. Human page: https://weverlabs.com/standing-jobs/.

Input Schema

NameRequiredDescriptionDefault
labelNoOptional name shown in lists, reports and digests.
filterYessource_tool, condition or both. Both must match.
expires_atYesWhen the rule ends, up to 30 days ahead.
callback_urlYesPublic HTTPS URL that receives a copy of each matching delivery, byte for byte.
max_deliveriesNoOptional delivery count after which the rule completes.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the annotations it discloses pricing (0.10 USDC per call on Base via x402, 10 free signed-wallet calls per rolling 30 days), required auth headers (X-Wever-Wallet-Proof bound to exact JSON arguments, plus Payment-Signature for paid calls), lifecycle bounds (expires_at up to 30 days, max_deliveries), and the return shape (a report with an Ed25519 signed receipt). It also confirms the additive, non-mutating nature of routing, consistent with destructiveHint=false.

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 the core action before cost, auth, and lifecycle details, and every major sentence carries useful information. Minor redundancy: the operator list duplicates the schema enum verbatim, and 'byte for byte' plus the non-alteration guarantee is repeated across the description.

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 nested-object, mutation-style registration tool with no output schema, the description covers everything an agent needs: what is created, how filtering works, when the rule expires, auth and payment requirements, and the fact that a signed-receipt report is returned. Nothing material is left to inference.

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 concrete condition examples (/outcome equals failed, /result/report/verdict equals outside_window, /observation/value above 120) that show how field paths and operators combine in practice. It also restates the 30-day expires_at ceiling and the 'both must match' semantics for filter, adding modest value over 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?

Opens with a specific verb and resource: "register one routing rule for the paying wallet," and names the endpoint POST /api/alert-route. It also distinguishes itself from the underlying watch/schedule tools by stating "Routing never changes the original delivery; it adds one," so an agent can tell it apart from wever_watch-create or wever_schedule-create.

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?

The description establishes clear context for use — forwarding matching watch fires or standing-job results to a callback_url — and clarifies the source_tool domain (wever_watch-fire or a schedulable tool). It never states when NOT to use it or points to a sibling (e.g., to create the underlying watch use wever_watch-create), so it stops short of full alternative routing.

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.