# Seneschal Data MCP server

Monero/Zcash payment webhooks + DeFi liquidation & Ethereum builder data over MCP. Free tier; x402.

## Links
- Registry page: https://www.getdrio.com/mcp/io-github-rotwang9000-seneschal-data
- Repository: https://github.com/Rotwang9000/seneschal-data-api
- Website: https://seneschal.space

## Install
- Endpoint: https://mcp.seneschal.space/
- Auth: Not captured

## Setup notes
- Remote endpoint: https://mcp.seneschal.space/

## Tools
- seneschal_health (Service health) - Returns table sizes and data-source freshness timestamps for the Seneschal Data backend. Endpoint: https://mcp.seneschal.space/
- seneschal_list_at_risk_borrowers (List at-risk borrowers) - Current snapshot of borrowers across Aave, Morpho, and Spark whose health factor sits below `max_hf`, sorted ascending. Use `min_debt_usd` to ignore dust positions. Endpoint: https://mcp.seneschal.space/
- seneschal_list_borrowers (List borrowers (generic)) - Generic discovery surface over the borrower snapshot table. Like `seneschal_list_at_risk_borrowers` but with both lower and upper HF bounds, optional max-debt cap, configurable sort field/direction, and offset-based pagination. Use this to walk the catalogue without knowing borrower addresses in advance. Endpoint: https://mcp.seneschal.space/
- seneschal_recent_liquidations (Recent liquidations) - Liquidations observed in the recent past, including both ones won by other liquidators (`outcome=won_by_other`) and ones we ourselves landed (`outcome=we_landed`). Sorted by timestamp descending. Endpoint: https://mcp.seneschal.space/
- seneschal_get_borrower (Get borrower snapshot) - Returns the latest known state of `address` across every protocol where we have data (Aave, Morpho, Spark). Pass the EOA / contract address as a 0x-prefixed 20-byte hex string. Endpoint: https://mcp.seneschal.space/
- seneschal_get_borrower_history (Get borrower history) - Returns a time series of (timestamp, health_factor, collateral_usd, debt_usd) observations for `address` on `protocol`. Granularity defaults to raw observations; use `hour` or `day` for chart-friendly buckets. Endpoint: https://mcp.seneschal.space/
- seneschal_builder_leaderboard (Builder leaderboard) - Slot-by-slot ground-truth share of Ethereum mainnet block builders observed by Seneschal's shadow recorder, with total MEV captured per builder in the window. Cached for 60s. Endpoint: https://mcp.seneschal.space/
- seneschal_stats_overview (Public stats overview) - Aggregate snapshot powering the public stats dashboard at stats.seneschal.space: total positions tracked, debt under watch, HF distribution histogram, top-10 at-risk borrowers, 30-day liquidations-per-day series, builder market share for 24h/7d/30d windows, and 10 most recent on-chain liquidations. One call returns everything needed to render the dashboard. Endpoint: https://mcp.seneschal.space/
- seneschal_paywall_info (Paywall / x402 metadata) - Returns the protocol, network, recipient address, and per-call price for every gated endpoint on this data backend. Free to call. Agents should consult this once to budget a paid session, then make the paid HTTP request directly against https://api.seneschal.space/v1/premium/opportunities with an x402 PAYMENT-SIGNATURE header (see https://docs.x402.org). Endpoint: https://mcp.seneschal.space/
- seneschal_premium_opportunities (Premium opportunity feed (paid)) - Top at-risk borrowers across Aave + Morpho + Spark, annotated with realised 7d market intel (top liquidators, win rate, our own attempt outcomes) and ranked by expected liquidation value. Behind an x402 paywall: free agents see a paywall stub describing how to pay; paying agents fetch the full feed at https://api.seneschal.space/v1/premium/opportunities. Use seneschal_paywall_info to inspect the price/network/recipient before opening a session. Endpoint: https://mcp.seneschal.space/
- seneschal_premium_builder_stats (Premium per-builder bid distribution (paid)) - Per-builder bid distribution (p25/median/p75/p90/p99/max ETH) and a 24-element hourly slot histogram over a configurable window. Sourced from the Seneschal shadow recorder so it covers every observed slot, not just landed blocks. Behind an x402 paywall at the REST surface; this MCP tool serves the data directly to authenticated agents. Endpoint: https://mcp.seneschal.space/
- seneschal_counter_mev (Counter-MEV / approval-risk intelligence) - Defensive intel for MEV searchers and bot operators. Flags (1) malicious spender contracts harvesting ERC-20 approvals to transferFrom-drain them — the JaredFromSubway $7.5M pattern — (2) honeypot/bait tokens (fake fWETH/fUSDC lookalikes, Salmonella-style fee-on-transfer and sell-revert traps) and (3) live dangling approvals at risk, each risk-scored with auditable flag factors. view="summary" returns counts + score distribution + a teaser; view="detail" returns the full uncapped feed (paid via x402 at GET /v1/premium/counter-mev; served here for agents); pass `address` to check one address. Verify on-chain before acting. Endpoint: https://mcp.seneschal.space/
- seneschal_puzzle_risk (Puzzle / bounty contract 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. Endpoint: https://mcp.seneschal.space/
- seneschal_private_relay (Private transaction relay) - Front-run protection for any sensitive tx (a puzzle/CTF/bounty claim, a large approval revoke, a first-touch interaction, an NFT mint): submit a LOCALLY-signed raw transaction and we forward it only to private block builders (Flashbots, Titan) + our own rbuilder — NEVER the public mempool. You keep custody (only signed bytes leave your machine; any change breaks the signature). view="info" returns the builder set + price + caveats; view="inspect" with raw_tx decodes/validates the signed tx and previews its target builders WITHOUT relaying (free, so you can confirm before paying). The paid relay itself is POST /v1/premium/private-relay via x402. Endpoint: https://mcp.seneschal.space/
- seneschal_q (Penny Oracle: atomic single-fact endpoints (DeFi + privacy chains)) - Atomic single-fact endpoints designed for tight agent loops. Each answers ONE yes/no or one number — sub-50ms, flat $0.001/call at the REST surface. Two families: (1) DeFi facts sourced from our SQLite + shadow-blocks recorder (liquidatable, at-risk-count, recent-liquidations, top-builder, builder-share, builder-bid, block-value, cheapest-flashloan, data-freshness, address-risk, base-fee, proposer-payment); (2) privacy-chain facts sourced from Seneschal-operated full nodes — Monero (xmr/height, xmr/mempool, xmr/fee, xmr/fee-estimate, xmr/last-block) and Zcash (zec/height, zec/mempool, zec/last-block, zec/pools). Consult /v1/q for per-question input lists and live chain availability. Endpoint: https://mcp.seneschal.space/
- seneschal_private_watch_info (Private watch — service metadata) - Returns the current price, supported chains, NFPT upstream health, and security notes for the view-key payment-monitoring service. Free to call. Endpoint: https://mcp.seneschal.space/
- seneschal_private_watch_create (Create a Monero/Zcash payment watch (paid via x402 at REST)) - Subscribe a Monero or Zcash address to view-key-based payment monitoring. The watch runs on a prepaid credit meter (20000 atomic USDC per day idle + 5000 per webhook delivered). Creation at the REST surface (POST /v1/private/watch) is paywalled at $0.10 via x402 and seeds the watch with $0.10 of credit. Receiver gets HMAC-signed webhooks plus a 'credit' block on every body; a 'low_credit' warning fires once before the meter expires. Top up via /v1/private/topup, topup-1, or topup-5. View keys are AES-256-GCM encrypted at rest. Endpoint: https://mcp.seneschal.space/
- seneschal_private_watch_topup (Top up an existing watch (paid via x402 at REST)) - Add prepaid credit to an existing Private Watch. Three tiers — $0.10 (default), $1.00, and $5.00 — each settling at the matching REST path (/v1/private/topup, /topup-1, /topup-5). Credit is in atomic USDC ($0.02/day idle, $0.005/call). This tool returns the URL the agent should POST to with its x402 client; it does NOT settle payment itself. Endpoint: https://mcp.seneschal.space/
- seneschal_private_watch_create_crypto (Create a watch paying in Monero or Zcash (no USDC, no EVM wallet)) - The all-coin onboarding path: POST /v1/private/watch-crypto creates a Monero/Zcash payment watch AND returns a coin payment quote in one call — no x402, no USDC, no EVM wallet anywhere in the flow. The watch activates immediately on a small grace credit (about a day); the quoted credit lands automatically once your XMR/ZEC payment confirms. Returns the FREE endpoint + body to call. Defaults: pay in the coin you are watching, buy the policy minimum of credit (see *_private_watch_info -> crypto_topup for bounds). Endpoint: https://mcp.seneschal.space/
- seneschal_private_watch_topup_crypto (Top up an existing watch by paying in Monero or Zcash (FREE to quote)) - Fund a Private Watch by paying in XMR or ZEC instead of USDC. Returns the FREE endpoint to call: POST /v1/private/topup-crypto issues a QUOTE — a receiving address, the exact coin amount to send (Monero: the amount carries a unique invoice tag; Zcash: a memo token), and a USD rate locked for a short window. Send the payment, then poll GET /v1/private/topup-crypto/{quoteId} (header x-watch-token) until status=settled. We detect the payment with the same view-key scanner the product sells and never hold a spend key. No x402, no API key — you pay in coin. Endpoint: https://mcp.seneschal.space/
- seneschal_checkout_invoice_create (Charge someone in Monero/Zcash (non-custodial checkout invoice)) - Accept an XMR/ZEC payment INTO YOUR OWN WALLET: creates a checkout invoice against your Private Watch (your address, your view key). Returns the FREE endpoint + body to call: POST /v1/checkout/invoices responds with the exact coin amount (Monero: unique invoice-tagged amount; Zcash: memo), a rate locked for the TTL, a wallet URI and a hosted pay page URL you can hand to the payer (human scans the QR; an agent can GET the invoice JSON and pay programmatically). When the payment confirms you get an invoice_paid webhook signed with your existing watch secret, and a flat settlement fee (~$0.02) is debited from the watch credit meter — never a percentage. Use your watchId+watchToken server-side, or a restricted checkoutKey (mint one with POST /v1/checkout/keys) anywhere you cannot keep secrets. Endpoint: https://mcp.seneschal.space/
- seneschal_checkout_invoice_status (Check a checkout invoice (public, free)) - Poll the state of a checkout invoice: pending (waiting for payment) -> confirming (payment seen, counting confirmations) -> paid | underpaid | expired | cancelled. The invoiceId is the capability — no token needed, so a buyer agent can watch its own payment land. Endpoint: https://mcp.seneschal.space/
- seneschal_private_watch_historical (One-off historical scan (paid via x402 at REST)) - Return all spendable + spent notes for a view key without setting up a watch. The view key never touches our SQLite — it flows through to NFPT in memory only. Use this when you want to reconcile a wallet at a point in time. Priced at $0.50 / call at the REST surface. Endpoint: https://mcp.seneschal.space/
- seneschal_private_watch_derive_viewkey (Derive a Zcash UFVK from a BIP-39 mnemonic (FREE, rate-limited)) - Hands a 12- or 24-word seed phrase to NFPT's orchard-scanner CLI, returns the matching UFVK. FREE but rate-limited to 6/minute/IP. Be loud about the security trade-off: the phrase transits our server (no logging, no persistence) but a network observer between you and us would see the bytes. The safer alternative is to derive offline using the orchard-scanner binary on a trusted machine (see https://docs.seneschal.space/derive-locally). A UFVK is read-only; it cannot spend funds. Endpoint: https://mcp.seneschal.space/
- seneschal_board_list (Public notice board — list boards (FREE)) - List the public notice boards and how many notices each holds. Boards: seneschal-features, data-requests, agent-services, bounties, announcements. Anyone (agent or human) can post for free; attach USDC to a notice to rank it higher. Reads are free. Endpoint: https://mcp.seneschal.space/
- seneschal_board_read (Public notice board — read a board (FREE)) - Return the ranked notices on a board (boosted first by decayed weight, then most recent). Free to call. Endpoint: https://mcp.seneschal.space/
- seneschal_board_post (Public notice board — post a notice (FREE, via REST)) - Prepare a free notice. Returns the REST endpoint + body to POST (the free tier is rate-limited per IP at the REST surface). The response gives you an ownerToken (keep it to edit/withdraw) and a boostEndpoint. New notices start at the bottom — boost to rank up. Endpoint: https://mcp.seneschal.space/
- seneschal_board_reply (Public notice board — reply in a thread (FREE, via REST)) - Prepare a free reply to an existing notice (starts/continues a thread, one level deep). Returns the REST endpoint + body to POST. Title is optional — it defaults to "Re: <thread title>". Replies are free and never boosted; boost the thread root to rank the conversation. Endpoint: https://mcp.seneschal.space/
- seneschal_board_boost (Public notice board — boost a notice (paid via x402 at REST)) - Rank a notice higher by attaching USDC. Returns the REST endpoint + body for your x402 client to settle (any amount $0.1-$25). Anyone can boost any notice. This tool does NOT settle payment itself. Endpoint: https://mcp.seneschal.space/
- seneschal_flashloan_providers (Flash loan provider catalogue) - Curated catalogue of Ethereum mainnet flash-loan providers (Aave V3, Balancer V2, Morpho Blue, Uniswap V3, FlashBank) with current fee in basis points, contract addresses, qualitative liquidity notes, and per-provider caveats. Helpful for searcher agents picking the cheapest viable provider for a liquidation or arbitrage strategy. The catalogue is editorially open: filter by chain, max fee, or multi-asset support. Endpoint: https://mcp.seneschal.space/
- seneschal_agent_directory (Agent directory (Gopher-over-HTTPS)) - Terse, drill-down discovery index of this ecosystem (Seneschal, FlashBank, winbit32, secresea, ZecBus) plus a LIVE mirror of the official MCP registry (registry.modelcontextprotocol.io) — the same directory served over HTTPS at https://seneschal.space/.well-known/agent.gopher, callable here so you never leave the MCP session. Start with section="root" to see the top-level menu, then call again with section="seneschal"/"flashbank"/"winbit32"/"secresea"/"zecbus" to drill into a project. Each project exposes About / Agents / Actions — drill them with section="<site>/about", "<site>/agents" or "<site>/actions" (e.g. "winbit32/actions"). Seneschal additionally drills into its own services with section="seneschal/<service>" where <service> is one of private-watch, checkout, oracle, shovels, builder, data, paymaster, board, ironwood, mcp — every website + MCP capability, grouped and priced. section="registry" browses connectable third-party MCP servers (use `cursor` to page); section="about"/"agents" is the directory’s own prose. format="gopher" (default) is the compact RFC-1436 menu; format="json" returns a structured {title, items[]}. A discovery layer, not a replacement for MCP — use it to FIND tools, then connect. Free, no payment. Endpoint: https://mcp.seneschal.space/

## Resources
Not captured

## Prompts
Not captured

## Metadata
- Owner: io.github.Rotwang9000
- Version: 0.1.1
- Runtime: Streamable Http
- Transports: HTTP
- License: Not captured
- Language: Not captured
- Stars: Not captured
- Updated: May 29, 2026
- Source: https://registry.modelcontextprotocol.io
