Skip to main content
Glama

Puzzle / bounty contract risk

seneschal_puzzle_risk

For puzzle/CTF/bounty contracts: classifies each as locked_no_payout (funded but a correct solution pays nothing — the funds can never leave, e.g. TeikhosBounty), frontrun_bait (pays msg.sender/tx.origin on a calldata condition → broadcasting the solution publicly will be front-run; submit privately), owner_only_payout, claimable, indeterminate or unfunded — from a verified-source payout-path analysis + a bytecode value-exit scan. view="summary" returns per-class counts + ETH-at-stake rollups + a teaser; view="detail" returns the full annotated watchlist (paid via x402 at GET /v1/premium/puzzle-risk; served here for agents); pass address for a single-contract verdict. Heuristic — verify on-chain before acting.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
viewNosummary (default) = counts + rollups + teaser; detail = full annotated watchlist.
limitNodetail view: row cap (1..500). Default 1000-capped.
addressNoIf set, return a single-contract verdict instead of the feed.
funded_onlyNodetail view: drop unfunded entries.
classificationNodetail view: restrict to one class. Default all.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Added

TDQS

A4.5/5.0
Behavior5/5

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

The description discloses the analysis methodology (verified-source payout-path analysis + bytecode value-exit scan), the paid nature of the detail view (via x402), and a heuristic caveat ('verify on-chain before acting'). Since no annotations are provided, the description fully compensates with rich behavioral context.

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 dense but well-structured: it front-loads the main purpose, then covers categories, methodology, views, pricing, and caveat. Every sentence adds value, though it is longer than the minimal needed. No wasted words or repetition.

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?

Despite having no output schema and no annotations, the description provides sufficient context for invocation: it describes what summary and detail views return (counts + rollups + teaser vs full watchlist), mentions payment requirements for detail, and includes a caveat. It could be more explicit about the exact return structure, but it is adequate for typical use.

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 meaning beyond the schema by explaining the classification semantics (e.g., what frontrun_bait means), clarifying the view parameter's behavior, and detailing the address override for single-contract verdicts. This goes beyond mere schema repetition.

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 specifically identifies the tool's purpose: classifying puzzle/CTF/bounty contracts into distinct risk categories (locked_no_payout, frontrun_bait, etc.) with concrete definitions. It clearly differentiates itself from sibling tools by focusing on this niche domain and mentions a single-contract verdict mode.

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?

Provides clear context for when to use the tool (for puzzle/bounty contracts needing risk classification) and explains the available views (summary/detail) and single-contract override. However, it doesn't explicitly name alternative tools or state when not to use this tool, leaving the guidance slightly incomplete.

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.

TDQS

A3.9/5.0
Disambiguation4/5

Tools are grouped by domain (board, private_watch, zecmon) with clear lifecycle separation, but seneschal_list_at_risk_borrowers and seneschal_list_borrowers overlap heavily, and the USDC vs crypto variants of private_watch_create/topup could be confused without careful reading.

Naming Consistency4/5

Most tools follow a seneschal_<domain>_<action> pattern, but verb/noun order varies (get_borrower vs list_borrowers vs board_list) and outliers like seneschal_health and seneschal_q break the pattern.

Tool Count3/5

At 35 tools, the server is definitely heavy, but it covers multiple distinct domains (DeFi data, privacy-chain monitoring, notice boards, payments), so the count is at the high end of reasonable rather than absurdly bloated.

Completeness4/5

Core workflows are well covered: borrower discovery/analysis, liquidations, private watch lifecycle, Zcash scanning lifecycle, board operations, and checkout invoices. Minor gaps like board deletion or watch cancellation exist but are workaround-able.