{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_n4tcuzxgncx4","handle":"seneschal-data","url":"https://wellknown.network/agents/seneschal-data","links":{"self":"https://wellknown.network/agents/seneschal-data/record.json","html":"https://wellknown.network/agents/seneschal-data","markdown":"https://wellknown.network/agents/seneschal-data/record.md","api":"https://wellknown.network/api/v1/agents/seneschal-data","status":"https://wellknown.network/api/v1/agents/seneschal-data/status","claim":"https://wellknown.network/agents/seneschal-data/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/seneschal-data/claim.json","badge":"https://wellknown.network/agents/seneschal-data/badge.svg","openapi":"https://wellknown.network/openapi.json"},"ard":{"identifier":"urn:air:mcp.seneschal.space:server:seneschal-data","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Seneschal Data","summary":"Monero/Zcash payment webhooks + DeFi liquidation & Ethereum builder data over MCP. Free tier; x402.","description":"Monero/Zcash payment webhooks + DeFi liquidation & Ethereum builder data over MCP. Free tier; x402.","publisher":{"name":"Rotwang9000","url":null},"homepage":"https://seneschal.space","repository":"https://github.com/Rotwang9000/seneschal-data-api","version":"0.1.1","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://mcp.seneschal.space","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-05-29T06:08:39.440181Z","publishedAt":"2026-05-29T06:08:39.440181Z","registryName":"io.github.Rotwang9000/seneschal-data"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"commerce.payments","name":"Payments","confidence":1,"provenance":"derived"},{"slug":"finance.markets","name":"Markets & Trading","confidence":1,"provenance":"derived"},{"slug":"dev.monitoring","name":"Monitoring & Observability","confidence":0.554,"provenance":"derived"},{"slug":"dev.filesystem","name":"Filesystem","confidence":0.54,"provenance":"derived"},{"slug":"analytics.reporting","name":"Reporting & Dashboards","confidence":0.54,"provenance":"derived"},{"slug":"ai.agent-discovery","name":"Agent Discovery","confidence":0.54,"provenance":"derived"},{"slug":"documents.contracts","name":"Contracts & Legal","confidence":0.525,"provenance":"derived"},{"slug":"documents.invoice-processing","name":"Invoice Processing","confidence":0.51,"provenance":"derived"}],"categories":["ai","analytics","commerce","dev","documents","finance"]},"observed":{"status":"live","statusReason":"Responded 6h ago.","lastOkAt":"2026-09-08T03:23:19.294Z","lastProbedAt":"2026-09-08T03:23:19.294Z","statusComputedAt":"2026-09-08T03:35:14.810Z","reliability30d":{"probes":5,"successRate":1,"p50Ms":47},"latestObservations":[{"at":"2026-09-08T03:23:19.294Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":48,"error":null,"detail":{"tools":[{"name":"seneschal_health","description":"Returns table sizes and data-source freshness timestamps for the Seneschal Data backend."},{"name":"seneschal_list_at_risk_borrowers","description":"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 positi"},{"name":"seneschal_list_borrowers","description":"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 c"},{"name":"seneschal_recent_liquidations","description":"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"},{"name":"seneschal_get_borrower","description":"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-"},{"name":"seneschal_get_borrower_history","description":"Returns a time series of (timestamp, health_factor, collateral_usd, debt_usd) observations for `address` on `protocol`. Granularity defaults to raw observations"},{"name":"seneschal_builder_leaderboard","description":"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. C"},{"name":"seneschal_stats_overview","description":"Aggregate snapshot powering the public stats dashboard at stats.seneschal.space: total positions tracked, debt under watch, HF distribution histogram, top-10 at"},{"name":"seneschal_paywall_info","description":"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 onc"},{"name":"seneschal_premium_opportunities","description":"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 "},{"name":"seneschal_premium_builder_stats","description":"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 shad"},{"name":"seneschal_counter_mev","description":"Defensive intel for MEV searchers and bot operators. Flags (1) malicious spender contracts harvesting ERC-20 approvals to transferFrom-drain them — the JaredFro"},{"name":"seneschal_puzzle_risk","description":"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"},{"name":"seneschal_private_relay","description":"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 "},{"name":"seneschal_q","description":"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 familie"},{"name":"seneschal_private_watch_info","description":"Returns the current price, supported chains, NFPT upstream health, and security notes for the view-key payment-monitoring service. Free to call."},{"name":"seneschal_private_watch_create","description":"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 we"},{"name":"seneschal_private_watch_topup","description":"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, /"},{"name":"seneschal_private_watch_create_crypto","description":"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"},{"name":"seneschal_private_watch_topup_crypto","description":"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 addr"},{"name":"seneschal_checkout_invoice_create","description":"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 +"},{"name":"seneschal_checkout_invoice_status","description":"Poll the state of a checkout invoice: pending (waiting for payment) -> confirming (payment seen, counting confirmations) -> paid | underpaid | expired | cancell"},{"name":"seneschal_private_watch_historical","description":"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. U"},{"name":"seneschal_private_watch_derive_viewkey","description":"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 tr"},{"name":"seneschal_board_list","description":"List the public notice boards and how many notices each holds. Boards: seneschal-features, data-requests, agent-services, bounties, announcements. Anyone (agent"},{"name":"seneschal_board_read","description":"Return the ranked notices on a board (boosted first by decayed weight, then most recent). Free to call."},{"name":"seneschal_board_post","description":"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"},{"name":"seneschal_board_reply","description":"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 default"},{"name":"seneschal_board_boost","description":"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"},{"name":"seneschal_zecmon_info","description":"Live chain tip, scanner reachability and the current free-tier limits for Zcash UFVK scanning. Free to call. Start here before scanning. FREE and rate-limited ("},{"name":"seneschal_zecmon_scan","description":"Open a scan of a Zcash UFVK. Returns { jobId, jobToken } in milliseconds — the scan itself runs behind it, so poll seneschal_zecmon_scan_status. Omitting birthd"},{"name":"seneschal_zecmon_scan_status","description":"Poll a scan opened by zecmon_scan. Returns phase, progress and the notes found SO FAR — notes accumulate during the scan, so you can read them before it finishe"},{"name":"seneschal_zecmon_scan_cancel","description":"Stop a running scan and release the scanner slot. Do this as soon as you stop caring about a scan — concurrency is finite and an abandoned chain walk blocks som"},{"name":"seneschal_flashloan_providers","description":"Curated catalogue of Ethereum mainnet flash-loan providers (Aave V3, Balancer V2, Morpho Blue, Uniswap V3, FlashBank) with current fee in basis points, contract"},{"name":"seneschal_agent_directory","description":"Terse, drill-down discovery index of this ecosystem (Seneschal, FlashBank, winbit32, secresea, ZecBus, Zecmon, Ziving, Bit ID, McPai) plus a LIVE mirror of the "}],"toolCount":35,"serverName":"seneschal-data","capabilities":["tools"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-07T20:19:04.210Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":84,"error":null,"detail":{"tools":[{"name":"seneschal_health","description":"Returns table sizes and data-source freshness timestamps for the Seneschal Data backend."},{"name":"seneschal_list_at_risk_borrowers","description":"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 positi"},{"name":"seneschal_list_borrowers","description":"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 c"},{"name":"seneschal_recent_liquidations","description":"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"},{"name":"seneschal_get_borrower","description":"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-"},{"name":"seneschal_get_borrower_history","description":"Returns a time series of (timestamp, health_factor, collateral_usd, debt_usd) observations for `address` on `protocol`. Granularity defaults to raw observations"},{"name":"seneschal_builder_leaderboard","description":"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. C"},{"name":"seneschal_stats_overview","description":"Aggregate snapshot powering the public stats dashboard at stats.seneschal.space: total positions tracked, debt under watch, HF distribution histogram, top-10 at"},{"name":"seneschal_paywall_info","description":"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 onc"},{"name":"seneschal_premium_opportunities","description":"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 "},{"name":"seneschal_premium_builder_stats","description":"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 shad"},{"name":"seneschal_counter_mev","description":"Defensive intel for MEV searchers and bot operators. Flags (1) malicious spender contracts harvesting ERC-20 approvals to transferFrom-drain them — the JaredFro"},{"name":"seneschal_puzzle_risk","description":"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"},{"name":"seneschal_private_relay","description":"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 "},{"name":"seneschal_q","description":"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 familie"},{"name":"seneschal_private_watch_info","description":"Returns the current price, supported chains, NFPT upstream health, and security notes for the view-key payment-monitoring service. Free to call."},{"name":"seneschal_private_watch_create","description":"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 we"},{"name":"seneschal_private_watch_topup","description":"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, /"},{"name":"seneschal_private_watch_create_crypto","description":"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"},{"name":"seneschal_private_watch_topup_crypto","description":"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 addr"},{"name":"seneschal_checkout_invoice_create","description":"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 +"},{"name":"seneschal_checkout_invoice_status","description":"Poll the state of a checkout invoice: pending (waiting for payment) -> confirming (payment seen, counting confirmations) -> paid | underpaid | expired | cancell"},{"name":"seneschal_private_watch_historical","description":"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. U"},{"name":"seneschal_private_watch_derive_viewkey","description":"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 tr"},{"name":"seneschal_board_list","description":"List the public notice boards and how many notices each holds. Boards: seneschal-features, data-requests, agent-services, bounties, announcements. Anyone (agent"},{"name":"seneschal_board_read","description":"Return the ranked notices on a board (boosted first by decayed weight, then most recent). Free to call."},{"name":"seneschal_board_post","description":"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"},{"name":"seneschal_board_reply","description":"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 default"},{"name":"seneschal_board_boost","description":"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"},{"name":"seneschal_zecmon_info","description":"Live chain tip, scanner reachability and the current free-tier limits for Zcash UFVK scanning. Free to call. Start here before scanning. FREE and rate-limited ("},{"name":"seneschal_zecmon_scan","description":"Open a scan of a Zcash UFVK. Returns { jobId, jobToken } in milliseconds — the scan itself runs behind it, so poll seneschal_zecmon_scan_status. Omitting birthd"},{"name":"seneschal_zecmon_scan_status","description":"Poll a scan opened by zecmon_scan. Returns phase, progress and the notes found SO FAR — notes accumulate during the scan, so you can read them before it finishe"},{"name":"seneschal_zecmon_scan_cancel","description":"Stop a running scan and release the scanner slot. Do this as soon as you stop caring about a scan — concurrency is finite and an abandoned chain walk blocks som"},{"name":"seneschal_flashloan_providers","description":"Curated catalogue of Ethereum mainnet flash-loan providers (Aave V3, Balancer V2, Morpho Blue, Uniswap V3, FlashBank) with current fee in basis points, contract"},{"name":"seneschal_agent_directory","description":"Terse, drill-down discovery index of this ecosystem (Seneschal, FlashBank, winbit32, secresea, ZecBus, Zecmon, Ziving, Bit ID, McPai) plus a LIVE mirror of the "}],"toolCount":35,"serverName":"seneschal-data","capabilities":["tools"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-07T12:24:16.382Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":44,"error":null,"detail":{"tools":[{"name":"seneschal_health","description":"Returns table sizes and data-source freshness timestamps for the Seneschal Data backend."},{"name":"seneschal_list_at_risk_borrowers","description":"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 positi"},{"name":"seneschal_list_borrowers","description":"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 c"},{"name":"seneschal_recent_liquidations","description":"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"},{"name":"seneschal_get_borrower","description":"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-"},{"name":"seneschal_get_borrower_history","description":"Returns a time series of (timestamp, health_factor, collateral_usd, debt_usd) observations for `address` on `protocol`. Granularity defaults to raw observations"},{"name":"seneschal_builder_leaderboard","description":"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. C"},{"name":"seneschal_stats_overview","description":"Aggregate snapshot powering the public stats dashboard at stats.seneschal.space: total positions tracked, debt under watch, HF distribution histogram, top-10 at"},{"name":"seneschal_paywall_info","description":"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 onc"},{"name":"seneschal_premium_opportunities","description":"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 "},{"name":"seneschal_premium_builder_stats","description":"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 shad"},{"name":"seneschal_counter_mev","description":"Defensive intel for MEV searchers and bot operators. Flags (1) malicious spender contracts harvesting ERC-20 approvals to transferFrom-drain them — the JaredFro"},{"name":"seneschal_puzzle_risk","description":"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"},{"name":"seneschal_private_relay","description":"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 "},{"name":"seneschal_q","description":"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 familie"},{"name":"seneschal_private_watch_info","description":"Returns the current price, supported chains, NFPT upstream health, and security notes for the view-key payment-monitoring service. Free to call."},{"name":"seneschal_private_watch_create","description":"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 we"},{"name":"seneschal_private_watch_topup","description":"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, /"},{"name":"seneschal_private_watch_create_crypto","description":"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"},{"name":"seneschal_private_watch_topup_crypto","description":"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 addr"},{"name":"seneschal_checkout_invoice_create","description":"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 +"},{"name":"seneschal_checkout_invoice_status","description":"Poll the state of a checkout invoice: pending (waiting for payment) -> confirming (payment seen, counting confirmations) -> paid | underpaid | expired | cancell"},{"name":"seneschal_private_watch_historical","description":"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. U"},{"name":"seneschal_private_watch_derive_viewkey","description":"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 tr"},{"name":"seneschal_board_list","description":"List the public notice boards and how many notices each holds. Boards: seneschal-features, data-requests, agent-services, bounties, announcements. Anyone (agent"},{"name":"seneschal_board_read","description":"Return the ranked notices on a board (boosted first by decayed weight, then most recent). Free to call."},{"name":"seneschal_board_post","description":"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"},{"name":"seneschal_board_reply","description":"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 default"},{"name":"seneschal_board_boost","description":"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"},{"name":"seneschal_zecmon_info","description":"Live chain tip, scanner reachability and the current free-tier limits for Zcash UFVK scanning. Free to call. Start here before scanning. FREE and rate-limited ("},{"name":"seneschal_zecmon_scan","description":"Open a scan of a Zcash UFVK. Returns { jobId, jobToken } in milliseconds — the scan itself runs behind it, so poll seneschal_zecmon_scan_status. Omitting birthd"},{"name":"seneschal_zecmon_scan_status","description":"Poll a scan opened by zecmon_scan. Returns phase, progress and the notes found SO FAR — notes accumulate during the scan, so you can read them before it finishe"},{"name":"seneschal_zecmon_scan_cancel","description":"Stop a running scan and release the scanner slot. Do this as soon as you stop caring about a scan — concurrency is finite and an abandoned chain walk blocks som"},{"name":"seneschal_flashloan_providers","description":"Curated catalogue of Ethereum mainnet flash-loan providers (Aave V3, Balancer V2, Morpho Blue, Uniswap V3, FlashBank) with current fee in basis points, contract"},{"name":"seneschal_agent_directory","description":"Terse, drill-down discovery index of this ecosystem (Seneschal, FlashBank, winbit32, secresea, ZecBus, Zecmon, Ziving, Bit ID, McPai) plus a LIVE mirror of the "}],"toolCount":35,"serverName":"seneschal-data","capabilities":["tools"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-07T04:27:07.099Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":37,"error":null,"detail":{"tools":[{"name":"seneschal_health","description":"Returns table sizes and data-source freshness timestamps for the Seneschal Data backend."},{"name":"seneschal_list_at_risk_borrowers","description":"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 positi"},{"name":"seneschal_list_borrowers","description":"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 c"},{"name":"seneschal_recent_liquidations","description":"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"},{"name":"seneschal_get_borrower","description":"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-"},{"name":"seneschal_get_borrower_history","description":"Returns a time series of (timestamp, health_factor, collateral_usd, debt_usd) observations for `address` on `protocol`. Granularity defaults to raw observations"},{"name":"seneschal_builder_leaderboard","description":"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. C"},{"name":"seneschal_stats_overview","description":"Aggregate snapshot powering the public stats dashboard at stats.seneschal.space: total positions tracked, debt under watch, HF distribution histogram, top-10 at"},{"name":"seneschal_paywall_info","description":"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 onc"},{"name":"seneschal_premium_opportunities","description":"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 "},{"name":"seneschal_premium_builder_stats","description":"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 shad"},{"name":"seneschal_counter_mev","description":"Defensive intel for MEV searchers and bot operators. Flags (1) malicious spender contracts harvesting ERC-20 approvals to transferFrom-drain them — the JaredFro"},{"name":"seneschal_puzzle_risk","description":"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"},{"name":"seneschal_private_relay","description":"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 "},{"name":"seneschal_q","description":"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 familie"},{"name":"seneschal_private_watch_info","description":"Returns the current price, supported chains, NFPT upstream health, and security notes for the view-key payment-monitoring service. Free to call."},{"name":"seneschal_private_watch_create","description":"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 we"},{"name":"seneschal_private_watch_topup","description":"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, /"},{"name":"seneschal_private_watch_create_crypto","description":"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"},{"name":"seneschal_private_watch_topup_crypto","description":"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 addr"},{"name":"seneschal_checkout_invoice_create","description":"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 +"},{"name":"seneschal_checkout_invoice_status","description":"Poll the state of a checkout invoice: pending (waiting for payment) -> confirming (payment seen, counting confirmations) -> paid | underpaid | expired | cancell"},{"name":"seneschal_private_watch_historical","description":"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. U"},{"name":"seneschal_private_watch_derive_viewkey","description":"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 tr"},{"name":"seneschal_board_list","description":"List the public notice boards and how many notices each holds. Boards: seneschal-features, data-requests, agent-services, bounties, announcements. Anyone (agent"},{"name":"seneschal_board_read","description":"Return the ranked notices on a board (boosted first by decayed weight, then most recent). Free to call."},{"name":"seneschal_board_post","description":"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"},{"name":"seneschal_board_reply","description":"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 default"},{"name":"seneschal_board_boost","description":"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"},{"name":"seneschal_zecmon_info","description":"Live chain tip, scanner reachability and the current free-tier limits for Zcash UFVK scanning. Free to call. Start here before scanning. FREE and rate-limited ("},{"name":"seneschal_zecmon_scan","description":"Open a scan of a Zcash UFVK. Returns { jobId, jobToken } in milliseconds — the scan itself runs behind it, so poll seneschal_zecmon_scan_status. Omitting birthd"},{"name":"seneschal_zecmon_scan_status","description":"Poll a scan opened by zecmon_scan. Returns phase, progress and the notes found SO FAR — notes accumulate during the scan, so you can read them before it finishe"},{"name":"seneschal_zecmon_scan_cancel","description":"Stop a running scan and release the scanner slot. Do this as soon as you stop caring about a scan — concurrency is finite and an abandoned chain walk blocks som"},{"name":"seneschal_flashloan_providers","description":"Curated catalogue of Ethereum mainnet flash-loan providers (Aave V3, Balancer V2, Morpho Blue, Uniswap V3, FlashBank) with current fee in basis points, contract"},{"name":"seneschal_agent_directory","description":"Terse, drill-down discovery index of this ecosystem (Seneschal, FlashBank, winbit32, secresea, ZecBus, Zecmon, Ziving, Bit ID, McPai) plus a LIVE mirror of the "}],"toolCount":35,"serverName":"seneschal-data","capabilities":["tools"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-06T21:26:45.019Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":46,"error":null,"detail":{"tools":[{"name":"seneschal_health","description":"Returns table sizes and data-source freshness timestamps for the Seneschal Data backend."},{"name":"seneschal_list_at_risk_borrowers","description":"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 positi"},{"name":"seneschal_list_borrowers","description":"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 c"},{"name":"seneschal_recent_liquidations","description":"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"},{"name":"seneschal_get_borrower","description":"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-"},{"name":"seneschal_get_borrower_history","description":"Returns a time series of (timestamp, health_factor, collateral_usd, debt_usd) observations for `address` on `protocol`. Granularity defaults to raw observations"},{"name":"seneschal_builder_leaderboard","description":"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. C"},{"name":"seneschal_stats_overview","description":"Aggregate snapshot powering the public stats dashboard at stats.seneschal.space: total positions tracked, debt under watch, HF distribution histogram, top-10 at"},{"name":"seneschal_paywall_info","description":"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 onc"},{"name":"seneschal_premium_opportunities","description":"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 "},{"name":"seneschal_premium_builder_stats","description":"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 shad"},{"name":"seneschal_counter_mev","description":"Defensive intel for MEV searchers and bot operators. Flags (1) malicious spender contracts harvesting ERC-20 approvals to transferFrom-drain them — the JaredFro"},{"name":"seneschal_puzzle_risk","description":"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"},{"name":"seneschal_private_relay","description":"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 "},{"name":"seneschal_q","description":"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 familie"},{"name":"seneschal_private_watch_info","description":"Returns the current price, supported chains, NFPT upstream health, and security notes for the view-key payment-monitoring service. Free to call."},{"name":"seneschal_private_watch_create","description":"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 we"},{"name":"seneschal_private_watch_topup","description":"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, /"},{"name":"seneschal_private_watch_create_crypto","description":"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"},{"name":"seneschal_private_watch_topup_crypto","description":"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 addr"},{"name":"seneschal_checkout_invoice_create","description":"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 +"},{"name":"seneschal_checkout_invoice_status","description":"Poll the state of a checkout invoice: pending (waiting for payment) -> confirming (payment seen, counting confirmations) -> paid | underpaid | expired | cancell"},{"name":"seneschal_private_watch_historical","description":"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. U"},{"name":"seneschal_private_watch_derive_viewkey","description":"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 tr"},{"name":"seneschal_board_list","description":"List the public notice boards and how many notices each holds. Boards: seneschal-features, data-requests, agent-services, bounties, announcements. Anyone (agent"},{"name":"seneschal_board_read","description":"Return the ranked notices on a board (boosted first by decayed weight, then most recent). Free to call."},{"name":"seneschal_board_post","description":"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"},{"name":"seneschal_board_reply","description":"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 default"},{"name":"seneschal_board_boost","description":"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"},{"name":"seneschal_zecmon_info","description":"Live chain tip, scanner reachability and the current free-tier limits for Zcash UFVK scanning. Free to call. Start here before scanning. FREE and rate-limited ("},{"name":"seneschal_zecmon_scan","description":"Open a scan of a Zcash UFVK. Returns { jobId, jobToken } in milliseconds — the scan itself runs behind it, so poll seneschal_zecmon_scan_status. Omitting birthd"},{"name":"seneschal_zecmon_scan_status","description":"Poll a scan opened by zecmon_scan. Returns phase, progress and the notes found SO FAR — notes accumulate during the scan, so you can read them before it finishe"},{"name":"seneschal_zecmon_scan_cancel","description":"Stop a running scan and release the scanner slot. Do this as soon as you stop caring about a scan — concurrency is finite and an abandoned chain walk blocks som"},{"name":"seneschal_flashloan_providers","description":"Curated catalogue of Ethereum mainnet flash-loan providers (Aave V3, Balancer V2, Morpho Blue, Uniswap V3, FlashBank) with current fee in basis points, contract"},{"name":"seneschal_agent_directory","description":"Terse, drill-down discovery index of this ecosystem (Seneschal, FlashBank, winbit32, secresea, ZecBus, Zecmon, Ziving, Bit ID, McPai) plus a LIVE mirror of the "}],"toolCount":35,"serverName":"seneschal-data","capabilities":["tools"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-06T15:26:37.441Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":50,"error":null,"detail":{"tools":[{"name":"seneschal_health","description":"Returns table sizes and data-source freshness timestamps for the Seneschal Data backend."},{"name":"seneschal_list_at_risk_borrowers","description":"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 positi"},{"name":"seneschal_list_borrowers","description":"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 c"},{"name":"seneschal_recent_liquidations","description":"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"},{"name":"seneschal_get_borrower","description":"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-"},{"name":"seneschal_get_borrower_history","description":"Returns a time series of (timestamp, health_factor, collateral_usd, debt_usd) observations for `address` on `protocol`. Granularity defaults to raw observations"},{"name":"seneschal_builder_leaderboard","description":"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. C"},{"name":"seneschal_stats_overview","description":"Aggregate snapshot powering the public stats dashboard at stats.seneschal.space: total positions tracked, debt under watch, HF distribution histogram, top-10 at"},{"name":"seneschal_paywall_info","description":"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 onc"},{"name":"seneschal_premium_opportunities","description":"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 "},{"name":"seneschal_premium_builder_stats","description":"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 shad"},{"name":"seneschal_counter_mev","description":"Defensive intel for MEV searchers and bot operators. Flags (1) malicious spender contracts harvesting ERC-20 approvals to transferFrom-drain them — the JaredFro"},{"name":"seneschal_puzzle_risk","description":"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"},{"name":"seneschal_private_relay","description":"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 "},{"name":"seneschal_q","description":"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 familie"},{"name":"seneschal_private_watch_info","description":"Returns the current price, supported chains, NFPT upstream health, and security notes for the view-key payment-monitoring service. Free to call."},{"name":"seneschal_private_watch_create","description":"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 we"},{"name":"seneschal_private_watch_topup","description":"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, /"},{"name":"seneschal_private_watch_create_crypto","description":"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"},{"name":"seneschal_private_watch_topup_crypto","description":"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 addr"},{"name":"seneschal_checkout_invoice_create","description":"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 +"},{"name":"seneschal_checkout_invoice_status","description":"Poll the state of a checkout invoice: pending (waiting for payment) -> confirming (payment seen, counting confirmations) -> paid | underpaid | expired | cancell"},{"name":"seneschal_private_watch_historical","description":"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. U"},{"name":"seneschal_private_watch_derive_viewkey","description":"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 tr"},{"name":"seneschal_board_list","description":"List the public notice boards and how many notices each holds. Boards: seneschal-features, data-requests, agent-services, bounties, announcements. Anyone (agent"},{"name":"seneschal_board_read","description":"Return the ranked notices on a board (boosted first by decayed weight, then most recent). Free to call."},{"name":"seneschal_board_post","description":"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"},{"name":"seneschal_board_reply","description":"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 default"},{"name":"seneschal_board_boost","description":"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"},{"name":"seneschal_zecmon_info","description":"Live chain tip, scanner reachability and the current free-tier limits for Zcash UFVK scanning. Free to call. Start here before scanning. FREE and rate-limited ("},{"name":"seneschal_zecmon_scan","description":"Open a scan of a Zcash UFVK. Returns { jobId, jobToken } in milliseconds — the scan itself runs behind it, so poll seneschal_zecmon_scan_status. Omitting birthd"},{"name":"seneschal_zecmon_scan_status","description":"Poll a scan opened by zecmon_scan. Returns phase, progress and the notes found SO FAR — notes accumulate during the scan, so you can read them before it finishe"},{"name":"seneschal_zecmon_scan_cancel","description":"Stop a running scan and release the scanner slot. Do this as soon as you stop caring about a scan — concurrency is finite and an abandoned chain walk blocks som"},{"name":"seneschal_flashloan_providers","description":"Curated catalogue of Ethereum mainnet flash-loan providers (Aave V3, Balancer V2, Morpho Blue, Uniswap V3, FlashBank) with current fee in basis points, contract"},{"name":"seneschal_agent_directory","description":"Terse, drill-down discovery index of this ecosystem (Seneschal, FlashBank, winbit32, secresea, ZecBus, Zecmon, Ziving, Bit ID, McPai) plus a LIVE mirror of the "}],"toolCount":35,"serverName":"seneschal-data","capabilities":["tools"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-06T09:21:47.968Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":48,"error":null,"detail":{"tools":[{"name":"seneschal_health","description":"Returns table sizes and data-source freshness timestamps for the Seneschal Data backend."},{"name":"seneschal_list_at_risk_borrowers","description":"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 positi"},{"name":"seneschal_list_borrowers","description":"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 c"},{"name":"seneschal_recent_liquidations","description":"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"},{"name":"seneschal_get_borrower","description":"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-"},{"name":"seneschal_get_borrower_history","description":"Returns a time series of (timestamp, health_factor, collateral_usd, debt_usd) observations for `address` on `protocol`. Granularity defaults to raw observations"},{"name":"seneschal_builder_leaderboard","description":"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. C"},{"name":"seneschal_stats_overview","description":"Aggregate snapshot powering the public stats dashboard at stats.seneschal.space: total positions tracked, debt under watch, HF distribution histogram, top-10 at"},{"name":"seneschal_paywall_info","description":"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 onc"},{"name":"seneschal_premium_opportunities","description":"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 "},{"name":"seneschal_premium_builder_stats","description":"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 shad"},{"name":"seneschal_counter_mev","description":"Defensive intel for MEV searchers and bot operators. Flags (1) malicious spender contracts harvesting ERC-20 approvals to transferFrom-drain them — the JaredFro"},{"name":"seneschal_puzzle_risk","description":"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"},{"name":"seneschal_private_relay","description":"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 "},{"name":"seneschal_q","description":"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 familie"},{"name":"seneschal_private_watch_info","description":"Returns the current price, supported chains, NFPT upstream health, and security notes for the view-key payment-monitoring service. Free to call."},{"name":"seneschal_private_watch_create","description":"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 we"},{"name":"seneschal_private_watch_topup","description":"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, /"},{"name":"seneschal_private_watch_create_crypto","description":"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"},{"name":"seneschal_private_watch_topup_crypto","description":"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 addr"},{"name":"seneschal_checkout_invoice_create","description":"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 +"},{"name":"seneschal_checkout_invoice_status","description":"Poll the state of a checkout invoice: pending (waiting for payment) -> confirming (payment seen, counting confirmations) -> paid | underpaid | expired | cancell"},{"name":"seneschal_private_watch_historical","description":"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. U"},{"name":"seneschal_private_watch_derive_viewkey","description":"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 tr"},{"name":"seneschal_board_list","description":"List the public notice boards and how many notices each holds. Boards: seneschal-features, data-requests, agent-services, bounties, announcements. Anyone (agent"},{"name":"seneschal_board_read","description":"Return the ranked notices on a board (boosted first by decayed weight, then most recent). Free to call."},{"name":"seneschal_board_post","description":"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"},{"name":"seneschal_board_reply","description":"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 default"},{"name":"seneschal_board_boost","description":"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"},{"name":"seneschal_zecmon_info","description":"Live chain tip, scanner reachability and the current free-tier limits for Zcash UFVK scanning. Free to call. Start here before scanning. FREE and rate-limited ("},{"name":"seneschal_zecmon_scan","description":"Open a scan of a Zcash UFVK. Returns { jobId, jobToken } in milliseconds — the scan itself runs behind it, so poll seneschal_zecmon_scan_status. Omitting birthd"},{"name":"seneschal_zecmon_scan_status","description":"Poll a scan opened by zecmon_scan. Returns phase, progress and the notes found SO FAR — notes accumulate during the scan, so you can read them before it finishe"},{"name":"seneschal_zecmon_scan_cancel","description":"Stop a running scan and release the scanner slot. Do this as soon as you stop caring about a scan — concurrency is finite and an abandoned chain walk blocks som"},{"name":"seneschal_flashloan_providers","description":"Curated catalogue of Ethereum mainnet flash-loan providers (Aave V3, Balancer V2, Morpho Blue, Uniswap V3, FlashBank) with current fee in basis points, contract"},{"name":"seneschal_agent_directory","description":"Terse, drill-down discovery index of this ecosystem (Seneschal, FlashBank, winbit32, secresea, ZecBus, Zecmon, Ziving, Bit ID, McPai) plus a LIVE mirror of the "}],"toolCount":35,"serverName":"seneschal-data","capabilities":["tools"],"serverVersion":"0.1.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"seneschal_health","description":"Returns table sizes and data-source freshness timestamps for the Seneschal Data backend."},{"name":"seneschal_list_at_risk_borrowers","description":"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 positi"},{"name":"seneschal_list_borrowers","description":"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 c"},{"name":"seneschal_recent_liquidations","description":"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"},{"name":"seneschal_get_borrower","description":"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-"},{"name":"seneschal_get_borrower_history","description":"Returns a time series of (timestamp, health_factor, collateral_usd, debt_usd) observations for `address` on `protocol`. Granularity defaults to raw observations"},{"name":"seneschal_builder_leaderboard","description":"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. C"},{"name":"seneschal_stats_overview","description":"Aggregate snapshot powering the public stats dashboard at stats.seneschal.space: total positions tracked, debt under watch, HF distribution histogram, top-10 at"},{"name":"seneschal_paywall_info","description":"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 onc"},{"name":"seneschal_premium_opportunities","description":"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 "},{"name":"seneschal_premium_builder_stats","description":"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 shad"},{"name":"seneschal_counter_mev","description":"Defensive intel for MEV searchers and bot operators. Flags (1) malicious spender contracts harvesting ERC-20 approvals to transferFrom-drain them — the JaredFro"},{"name":"seneschal_puzzle_risk","description":"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"},{"name":"seneschal_private_relay","description":"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 "},{"name":"seneschal_q","description":"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 familie"},{"name":"seneschal_private_watch_info","description":"Returns the current price, supported chains, NFPT upstream health, and security notes for the view-key payment-monitoring service. Free to call."},{"name":"seneschal_private_watch_create","description":"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 we"},{"name":"seneschal_private_watch_topup","description":"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, /"},{"name":"seneschal_private_watch_create_crypto","description":"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"},{"name":"seneschal_private_watch_topup_crypto","description":"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 addr"},{"name":"seneschal_checkout_invoice_create","description":"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 +"},{"name":"seneschal_checkout_invoice_status","description":"Poll the state of a checkout invoice: pending (waiting for payment) -> confirming (payment seen, counting confirmations) -> paid | underpaid | expired | cancell"},{"name":"seneschal_private_watch_historical","description":"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. U"},{"name":"seneschal_private_watch_derive_viewkey","description":"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 tr"},{"name":"seneschal_board_list","description":"List the public notice boards and how many notices each holds. Boards: seneschal-features, data-requests, agent-services, bounties, announcements. Anyone (agent"},{"name":"seneschal_board_read","description":"Return the ranked notices on a board (boosted first by decayed weight, then most recent). Free to call."},{"name":"seneschal_board_post","description":"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"},{"name":"seneschal_board_reply","description":"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 default"},{"name":"seneschal_board_boost","description":"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"},{"name":"seneschal_zecmon_info","description":"Live chain tip, scanner reachability and the current free-tier limits for Zcash UFVK scanning. Free to call. Start here before scanning. FREE and rate-limited ("},{"name":"seneschal_zecmon_scan","description":"Open a scan of a Zcash UFVK. Returns { jobId, jobToken } in milliseconds — the scan itself runs behind it, so poll seneschal_zecmon_scan_status. Omitting birthd"},{"name":"seneschal_zecmon_scan_status","description":"Poll a scan opened by zecmon_scan. Returns phase, progress and the notes found SO FAR — notes accumulate during the scan, so you can read them before it finishe"},{"name":"seneschal_zecmon_scan_cancel","description":"Stop a running scan and release the scanner slot. Do this as soon as you stop caring about a scan — concurrency is finite and an abandoned chain walk blocks som"},{"name":"seneschal_flashloan_providers","description":"Curated catalogue of Ethereum mainnet flash-loan providers (Aave V3, Balancer V2, Morpho Blue, Uniswap V3, FlashBank) with current fee in basis points, contract"},{"name":"seneschal_agent_directory","description":"Terse, drill-down discovery index of this ecosystem (Seneschal, FlashBank, winbit32, secresea, ZecBus, Zecmon, Ziving, Bit ID, McPai) plus a LIVE mirror of the "}],"package":null},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.Rotwang9000/seneschal-data","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.Rotwang9000%2Fseneschal-data","firstSeenAt":"2026-09-06T06:18:07.249Z","fetchedAt":"2026-09-08T04:18:56.929Z","normalizedAt":"2026-09-08T04:18:56.929Z"}]},"firstSeenAt":"2026-09-06T06:18:07.249Z","updatedAt":"2026-09-08T03:35:41.545Z"}