Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

io.tooloracle/predictionguard

REMOTE · FEEDORACLE.IO · SCANNED AUG 3

Polymarket integrity MCP — 28 tools for wallet risk, whales, UMA scans, SAR/STR reports.

Available components

+4 this week 62 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →

Endpoint Security57
Transport & Reachability100
Schema Quality & AI Usability67
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 4881 tokens (~119/item across 41 items; 41 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage96
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 88% of tool parameters carry a description.Partial
Capabilities40
  • Spec-recency check failed: implements MCP spec 2025-03-26; the latest is 2026-07-28. See how to fix → Fail
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

remote · feedoracle.io

# add to Claude Code
claude mcp add --transport http io-tooloracle-predictionguard https://feedoracle.io/predictionguard/mcp/
# ~/.codex/config.toml
[mcp_servers.io-tooloracle-predictionguard]
url = "https://feedoracle.io/predictionguard/mcp/"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "io-tooloracle-predictionguard": {
      "type": "remote",
      "url": "https://feedoracle.io/predictionguard/mcp/",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add io-tooloracle-predictionguard --url https://feedoracle.io/predictionguard/mcp/ --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  io-tooloracle-predictionguard:
    url: "https://feedoracle.io/predictionguard/mcp/"
// mcp.json
{
  "mcpServers": {
    "io-tooloracle-predictionguard": {
      "type": "http",
      "url": "https://feedoracle.io/predictionguard/mcp/"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 3 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

  • 1 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.

  • 31 Jul 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 29 Jul 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

  • 28 Jul 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.

  • 27 Jul 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 26 Jul 26 58

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 3 Aug 2026 · Probed https://feedoracle.io/predictionguard/mcp/

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=feedoracle.io CN=YE1,O=Let's Encrypt,C=US 18 Jul 2026 16 Oct 2026 ECDSA 256 ECDSA-SHA384 527ff2ca2ba4bed1e35b2c7b10b28b8a069
SANs: feedoracle.io, www.feedoracle.io
CN=YE1,O=Let's Encrypt,C=US (CA) CN=Root YE,O=ISRG,C=US 3 Sept 2025 2 Sept 2028 ECDSA 384 ECDSA-SHA384 5ddd70dd31f801c85c186a7a04b80afe
CN=Root YE,O=ISRG,C=US (CA) CN=ISRG Root X2,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 ECDSA-SHA384 872165fc34b6e5fba8add5b3705fb53a
CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) CN=ISRG Root X1,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 SHA256-RSA 6c8f1dc727c7117f7baf853ac980f9cd
DNSSEC insecure

Validation of feedoracle.io. Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
io. present 57355 8 Verified
feedoracle.io. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200
Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://feedoracle.io/predictionguard/mcp/ Verified 200
http (plaintext) http://feedoracle.io/predictionguard/mcp/ HTTPS enforced 308 https://feedoracle.io/predictionguard/mcp/
MCP tools — 41 exposed · ~4,881 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
pg_adverse_media_entity ~98

Adverse media scan — negative news on fraud, money laundering, corruption, sanctions. Delegates to AMLOracle. Core building block for evidence chains that link a wallet or trader to publicly reported concerns (always cite the source, never attribute).

NameTypeReqDescription
langstringOptional language (e.g. en, de)
limitintegerMax results (default upstream)
namestringyesPerson or entity name

No output schema declared.

No examples provided.

pg_classified_keyword_match ~149

Daily compliance triage: scans top Polymarket markets by 24h volume and flags those whose question text matches curated sensitive-keyword categories — military action, regime change, leadership death, diplomacy, intelligence ops, monetary policy, regulatory action. Returns flagged markets with monitoring severity (HIGH/MEDIUM/LOW), matched categories and keywords, and volume. Pair flagged HIGH markets with pg_insider_signal_scan for active surveillance.

NameTypeReqDescription
categorystringOptional: filter to one category (military_action, regime_change, leadership_death, diplomacy, intelligence, monetary_policy, regulatory_action)
limitintegerMax markets to scan (default 25, max 100)

No output schema declared.

No examples provided.

pg_evidence_bundle_market ~78

Complete forensic dossier for a single Polymarket market: market details + integrity scan + volume anomaly profile + Trust Layer provenance trace — aggregated into one dossier ready for manual review, press inquiry, or as input to a SAR report.

NameTypeReqDescription
idstringMarket id / conditionId
slugstringMarket slug

No output schema declared.

No examples provided.

pg_information_advantage_score ~159

Composite A-F rating for whether a wallet appears to have had non-public information on a specific market. Aggregates pg_position_timing_anomaly (50% weight) + pg_insider_signal_scan (30%) plus bonuses for being in top positioners (+10), new to market (+10), and sensitive category (+10). Returns letter grade A-F, composite score 0-100, all component scores, and interpretation guide. Pattern-matches reported cases (Van Dyke, Hyperliquid whale). Statistical signal only — not a legal determination.

NameTypeReqDescription
idstringMarket id / conditionId
slugstringMarket slug
walletstringyesWallet to score (0x + 40 hex)

No output schema declared.

No examples provided.

pg_insider_alert_signed ~139

Issue a cryptographically signed, on-chain anchored integrity alert for a Polymarket market. Combines evidence_anchor + get_signed_fact from FeedOracle Trust Layer. Alerts are anchored on Polygon with an ECDSA signature and are externally verifiable via pg_verify_alert and the JWKS at feedoracle.io/.well-known/jwks.json.

NameTypeReqDescription
claimstringyesShort human-readable claim being asserted
market_slugstringyesPolymarket market slug
severitystringAlert severity
signalsarrayList of integrity signals triggered
walletsarrayOptional list of related wallet addresses

No output schema declared.

No examples provided.

pg_insider_signal_scan ~200

Real-time insider-trading signal scan for a single Polymarket market. Aggregates 5 signals: (1) very large pre-event positions, (2) high ratio of wallets new to this market, (3) coordinated minute-bucket timing clusters, (4) one-sided positioning, (5) sensitive-keyword category match (military/regime/intel). Returns a 0-100 score (CLEAN/LOW/MEDIUM/HIGH/CRITICAL), triggered signals with evidence, top 5 positioners with new-wallet flag, and full methodology for audit. Default window = 72h before market end.

NameTypeReqDescription
idstringMarket id / conditionId
min_position_usdnumberMin notional to flag (default $1000)
slugstringPolymarket market slug
window_hoursintegerPre-event window to analyze (default 72h)

No output schema declared.

No examples provided.

pg_kalshi_conflict_of_interest_check ~196

CFTC Rule 5.17(z) conflict-of-interest pre-trade check. Analyzes a Kalshi market's metadata to detect whether trading it would expose decision-makers (election candidates, government officials, athletes, regulators) to insider-trading liability. Pattern-matches against the Kalshi April 2026 disciplinary cases (Moran/Klein/Enriquez) and the CFTC Van Dyke complaint. Returns ALLOW/MONITOR/WARN/BLOCK recommendation + 0-100 score + reference cases. Cannot identify actual trader identity (Kalshi public API anonymizes users) — pair with internal surveillance for full enforcement.

NameTypeReqDescription
candidate_namestringOptional: specific person's name to match against title (e.g. 'Mark Moran')
event_tickerstringOr event_ticker for the whole event
tickerstringKalshi market ticker

No output schema declared.

No examples provided.

pg_kalshi_market_details ~133

Detailed Kalshi market or event info. Pass 'ticker' for a single market (returns yes/no bids+asks, last price, volume, OI, spread, hours until close) or 'event_ticker' for all markets in an event (multi-outcome). Includes the rules_primary text (Kalshi's settlement criteria) which is critical for understanding resolution risk.

NameTypeReqDescription
event_tickerstringKalshi event ticker (returns all child markets)
tickerstringKalshi market ticker (e.g. KXG7LEADEROUT-45JAN01-DJT)

No output schema declared.

No examples provided.

pg_kalshi_orderbook_analysis ~142

Forensic orderbook analysis for one Kalshi market. Detects manipulation-vulnerable patterns: (1) wide spread (>$0.10), (2) shallow depth (<10 contracts), (3) few price levels, (4) single-order dominance (>80% in top level), (5) penny-wall pattern (large bids at ≤$0.005, commonly used to fake depth). Returns 0-100 score, severity, and full level-by-level data. Kalshi returns bids only — implied asks computed via yes_bid + no_bid = $1 reciprocity.

NameTypeReqDescription
tickerstringyesKalshi market ticker

No output schema declared.

No examples provided.

pg_kalshi_resolution_calendar ~125

Compliance briefing: which Kalshi markets resolve in the next N hours? Bucketed by 6h, 24h, 48h, 1 week. Flags markets in CFTC-sensitive categories (Elections, Politics). Use for daily surveillance prep — markets near resolution have highest insider-trading risk window.

NameTypeReqDescription
categorystringOptional category filter
hours_aheadintegerLook-ahead window (default 48h, max 168h)
min_open_interestnumberOnly markets with at least this OI

No output schema declared.

No examples provided.

pg_kalshi_search ~144

Search Kalshi prediction markets (CFTC-regulated event contracts). Returns events ranked by aggregate 24h volume across all markets in the event. Kalshi categories include Elections, Politics, Economics, Climate, Sports, Entertainment, Financials. Public data, no auth needed. Each event has one or more child markets (mutually exclusive or yes/no).

NameTypeReqDescription
categorystringOptional category filter (Elections, Politics, Economics, ...)
limitintegerMax events to return (default 25, max 100)
querystringKeyword search in title, sub_title, event_ticker
statusstring

No output schema declared.

No examples provided.

pg_kalshi_thin_market_alert ~108

Scan all open Kalshi markets and flag those that are manipulation-vulnerable: closing soon (<24h), low open interest, low liquidity, wide spread, low volume. Daily triage tool. Returns markets ranked by risk_score (≥30 threshold). Best paired with pg_kalshi_resolution_calendar for full compliance briefing.

NameTypeReqDescription
categorystringOptional category filter
max_resultsintegerMax flagged markets (default 25, max 50)

No output schema declared.

No examples provided.

pg_kalshi_trending ~84

Top trending Kalshi events ranked by aggregate 24h volume across child markets. Filterable by category. Daily-briefing-ready output. Includes the highest-volume sub-market per event.

NameTypeReqDescription
categorystringOptional category filter (Elections, Politics, ...)
limitintegerMax events to return (default 25, max 50)

No output schema declared.

No examples provided.

pg_known_cases ~97

Registry of publicly reported prediction-market integrity cases (Théo / French whale, Hyperliquid whale, Venezuela, Iran strikes, Nuclear, UMA Ukraine). Filter by category or minimum AML relevance (low/medium/high). Summaries only — no accusations against named parties.

NameTypeReqDescription
categorystringOptional category substring (e.g. 'geopolitical', 'oracle')
min_aml_relevancestringMinimum AML relevance

No output schema declared.

No examples provided.

pg_kyc_bundle_entity ~77

Full KYC bundle for a named entity: sanctions + PEP + adverse media + country risk in a single call. Delegates to AMLOracle.kyc_bundle.

NameTypeReqDescription
countrystringISO country code
entity_typestring'person' or 'organization'
namestringyes

No output schema declared.

No examples provided.

pg_market_details ~64

Full market info: outcomes, outcome prices, volume, liquidity, best bid/ask, spread, resolution source, conditionId. Provide 'slug' or 'id'.

NameTypeReqDescription
idstringMarket id / conditionId
slugstringMarket slug

No output schema declared.

No examples provided.

pg_market_integrity_scan ~81

Multi-signal integrity scan: combines thin-book flag, spread, low liquidity, geopolitical-term pattern, end-date proximity, and 24h volume concentration. Returns score 0-100, level HIGH/MEDIUM/LOW/CLEAN, triggered signals, and an operational recommendation.

NameTypeReqDescription
idstring
slugstring

No output schema declared.

No examples provided.

pg_market_search ~87

Search Polymarket markets by keyword (e.g. 'election', 'fed', 'bitcoin'). Returns question, slug, 24h volume, liquidity, end date.

NameTypeReqDescription
active_onlybooleanOnly active / non-closed markets
limitintegerMax results (default 10, max 50)
querystringyesKeyword to search

No output schema declared.

No examples provided.

pg_market_trades ~238

Raw trade access for a Polymarket market via the Polymarket Data API. Supports client-side filters: time range (from/to, ISO 8601), side (BUY/SELL), minimum trade size, or a specific wallet. Paginates server-side (max 25 pages × 1000 trades). Returns compact records with wallet, pseudonym, side, size, price, notional USD, outcome, timestamp, tx_hash.

NameTypeReqDescription
fromstringOnly include trades from this ISO timestamp
idstringMarket id / conditionId
limitintegerMax trades to return after filtering (default 100, max 5000)
max_pagesintegerHow many pages of 1000 to fetch (default 2, max 25)
min_sizenumberMinimum trade size (shares)
sidestringOnly trades on this side
slugstringPolymarket market slug
tostringOnly include trades up to this ISO timestamp
walletstringFilter to a single wallet address

No output schema declared.

No examples provided.

pg_market_volume_profile ~60

Volume anomaly heuristic: compares 24h volume vs average daily volume since market start (z-like ratio) and flags thin-book situations where 24h volume >> on-book liquidity.

NameTypeReqDescription
idstring
slugstring

No output schema declared.

No examples provided.

pg_overview ~39

PredictionGuard platform overview: covered platforms, tool inventory, Polymarket Gamma API ping, Polygon RPC ping (Ankr-backed), known-case count.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

pg_pep_check_entity ~63

Politically Exposed Person (PEP) check via Wikidata. Delegates to AMLOracle. Relevant for prediction markets where reported traders overlap with political figures.

NameTypeReqDescription
countrystringOptional ISO country code
namestringyesPerson name

No output schema declared.

No examples provided.

pg_position_timing_anomaly ~171

Statistical timing analysis of a single wallet's position on a specific market. Checks: (1) how close to resolution the wallet entered (<6h=35pts, <24h=25pts, <72h=10pts), (2) position size vs market average (>20× avg=25pts, >5× avg=10pts), (3) single-bet pattern (≤3 trades=10pts, no historical trading rationale). Returns 0-100 score, first-trade timestamp, total notional, and methodology. Pair with pg_information_advantage_score for full assessment.

NameTypeReqDescription
idstringMarket id / conditionId
slugstringMarket slug
walletstringyesWallet to analyze (0x + 40 hex)

No output schema declared.

No examples provided.

pg_pre_event_flow_analysis ~176

Analyze pre-resolution positioning on a Polymarket market. For the N days before the market's endDate, aggregates trades by wallet, classifies wallets new to the market in that window, detects volume concentration, timing clusters (minutes where ≥5 distinct wallets trade in sync), and pre-event volume spikes vs historical average. Returns a 0–100 risk score (CRITICAL/HIGH/MEDIUM/LOW/CLEAN) with triggered signals, top 10 positioners, and top 10 new wallets. Default window = 7 days.

NameTypeReqDescription
days_before_endnumberPre-event window size in days (1–90, default 7)
idstring
max_pagesintegerTrade pagination depth (default 10, max 25)
slugstring

No output schema declared.

No examples provided.

pg_prediction_market_integrity_gate ~255

Pre-trade integrity gate for AI agents and compliance teams. ONE call returns ALLOW/WARN/BLOCK decision + risk_level (0-100) + signed evidence receipt. Aggregates orderbook analysis, resolution-window risk, CFTC Rule 5.17(z) conflict-of-interest check, and (Polymarket) insider signal scan. Supports both Polymarket (slug) and Kalshi (ticker). Optional inputs: wallet (Polymarket-side checks), candidate name (Kalshi Rule 5.17(z) name match), amount_usd (amplifies risk for large bets on thin markets). Returns hashable + ECDSA-signed receipt for audit. Designed for x402 paywall pre-trade calls — agent pays once, gets binary go/no-go.

NameTypeReqDescription
amount_usdnumberOptional: bet size for risk amplification
candidatestringOptional: candidate name for Kalshi Rule 5.17(z) name match
market_idstringyesPolymarket slug or Kalshi ticker/event_ticker
platformstringyesWhich prediction market
walletstringOptional: Polygon wallet address (Polymarket only)

No output schema declared.

No examples provided.

pg_resolution_risk_score ~117

Multi-signal resolution-risk score (0–100, CLEAN/LOW/MEDIUM/HIGH/CRITICAL) for a Polymarket market. Combines category priors (geopolitical/election/sanctions patterns from pg_known_cases), resolution-phase proximity, market volume, resolution-source sanity check (is the UMA adapter a real deployed contract), UMA global dispute ratio, and thin-book flag. Returns triggered signals with point deductions for full auditability.

NameTypeReqDescription
idstring
slugstring

No output schema declared.

No examples provided.

pg_sanctions_screen_entity ~103

Screen a named entity against global sanctions lists (OFAC SDN, EU FSF, UN SC, Interpol). Delegates to AMLOracle. Use after resolving a wallet/trader to a real name via public reporting or known-case registry.

NameTypeReqDescription
entity_typestringOptional: 'person' or 'organization'
namestringyesPerson or entity name
thresholdnumberOptional fuzzy-match threshold (0..1)

No output schema declared.

No examples provided.

pg_sar_report ~249

Generate a draft Suspicious Activity Report (SAR/STR) from structured inputs. Supports EU_GENERIC (FATF-aligned STR, default), US_FINCEN (Form 111 structure), and DE_goAML (German FIU draft). Takes subject, market, activity window, integrity signals, and evidence references — auto-classifies the primary suspicious activity type, generates a narrative, and renders regulator-style markdown. Output is marked draft_for_review; PredictionGuard does not submit SARs directly.

NameTypeReqDescription
activityobjectActivity window and amounts.
evidenceobjectReferences to prior evidence.
filerobjectInformation about the preparing institution.
filing_jurisdictionstringReport format. Default EU_GENERIC.
marketobjectOptional. Polymarket market context.
narrative_addendumstringOptional free-text addendum from the analyst.
signalsarrayIntegrity signals (strings or objects with 'term'/'reason'/'layer'). Pass the 'triggered_signals' array from pg_market_integrity_scan or pg_resolution_risk_score directly.
subjectobjectyesRequired. The subject of the report.

No output schema declared.

No examples provided.

pg_trending_markets ~56

Top Polymarket markets by 24h volume. Useful for daily compliance triage / catching news catalysts before they land in mainstream coverage.

NameTypeReqDescription
limitintegerMax results (default 10, max 25)

No output schema declared.

No examples provided.

pg_uma_market_resolution ~92

Resolution source and phase for a specific Polymarket market. Fetches market metadata from Gamma, extracts the resolutionSource address, verifies it's a deployed contract on Polygon, and classifies the resolution phase (active_trading / approaching_resolution / imminent_resolution_window / past_end_awaiting_resolution / resolved).

NameTypeReqDescription
idstringMarket id / conditionId
slugstringMarket slug

No output schema declared.

No examples provided.

pg_uma_status ~127

Global UMA Optimistic Oracle health on Polygon. Scans event logs from OOv2 (and optionally OOv1) over a configurable window, tallies events by type (RequestPrice / ProposePrice / DisputePrice / Settle), computes per-hour rate, and derives a dispute/propose ratio — a leading indicator of oracle-level contention.

NameTypeReqDescription
blocks_backintegerBlocks to scan back (default 5000 ≈ 3h, max 20000)
include_v1booleanAlso scan UMA OOv1 (legacy, default false)

No output schema declared.

No examples provided.

pg_verify_alert ~83

Verify a previously issued signed alert (JWS or content-hash). Delegates to Trust Layer verify_signature. Returns validity, signer, and timestamp. JWKS at feedoracle.io/.well-known/jwks.json.

NameTypeReqDescription
content_hashstringSHA-256 content hash (alternative to JWS)
jwsstringFull JWS string

No output schema declared.

No examples provided.

pg_wallet_correlation_match ~142

Find wallets that co-trade across multiple sensitive Polymarket markets with a target wallet. Given a wallet and 2-10 market slugs, returns: which markets the target traded, top 20 cotraders ranked by overlap count, and an aggregate severity score (≥3 shared markets = MEDIUM, ≥5 = HIGH). Use case: detect coordinated trading rings, shared-info syndicates, or wallet clusters that consistently bet on the same sensitive events.

NameTypeReqDescription
marketsarrayyes2-10 market slugs to check for co-trading overlap
walletstringyesTarget wallet address (0x + 40 hex)

No output schema declared.

No examples provided.

pg_wallet_entity_resolve ~89

Resolve a Polygon address to a known entity via PredictionGuard's Wallet Registry (Polymarket core contracts, major stablecoins, known CEX hot wallets), falling back to on-chain heuristic classification for unknown addresses. Returns entity name, type, category, AML relevance, confidence, and source-of-record URL.

NameTypeReqDescription
addressstringyesPolygon address (0x + 40 hex chars)

No output schema declared.

No examples provided.

pg_wallet_lookup ~72

Polygon wallet base profile via JSON-RPC (Ankr-backed when RPC_POLYGON is set, public fallback otherwise). Returns MATIC balance, outbound tx count, contract-vs-EOA detection, and a lightweight risk heuristic.

NameTypeReqDescription
addressstringyesPolygon address (0x + 40 hex chars)

No output schema declared.

No examples provided.

pg_wallet_risk_profile ~103

Aggregated A–F risk profile for a Polygon wallet. Combines on-chain behavior (pg_wallet_lookup), entity resolution (pg_wallet_entity_resolve), and — where the entity can be screened — AML bundle (sanctions + PEP + adverse media via AMLOracle). Grade A = clean, F = blocked. Includes triggered flags with points deductions for full auditability.

NameTypeReqDescription
addressstringyesPolygon address (0x + 40 hex chars)

No output schema declared.

No examples provided.

pg_whale_add ~140

Add a Polygon wallet to the PredictionGuard watchlist. Takes an initial baseline snapshot so subsequent pg_whale_scan calls can detect movement. Set alert_threshold_matic to tune sensitivity (default 100 MATIC). Tags are free-form.

NameTypeReqDescription
addressstringyesPolygon address (0x + 40 hex)
alert_threshold_maticnumberBalance delta threshold in MATIC for alerts (default 100)
aliasstringOptional human-readable label
notesstringFree-form notes
tagsarrayFree-form tags (e.g. ['polymarket','pre-election','whale'])

No output schema declared.

No examples provided.

pg_whale_alerts ~114

Retrieve alerts from the watchlist audit log. Filter by address, severity (LOW/MEDIUM/HIGH/CRITICAL), and/or ISO timestamp 'since'. Default returns the 50 most recent alerts across the whole watchlist.

NameTypeReqDescription
addressstring
limitintegerMax results (max 500)
severitystring
sincestringISO 8601 timestamp (e.g. 2026-04-20T00:00:00Z)

No output schema declared.

No examples provided.

pg_whale_list ~57

List all watched wallets with their alias, threshold, tags, notes, and last snapshot. Optionally filter by tag.

NameTypeReqDescription
limitintegerMax results (max 500)
tagstringOptional tag filter

No output schema declared.

No examples provided.

pg_whale_remove ~64

Remove a wallet from the watchlist. By default keeps historical snapshots and alerts (for audit trail). Set keep_history=false to purge everything for this address.

NameTypeReqDescription
addressstringyes
keep_historybooleanKeep snapshot + alert history (default true)

No output schema declared.

No examples provided.

pg_whale_scan ~110

Scan one or all watched wallets against Polygon RPC. Compares current balance + nonce to the last snapshot, writes a new snapshot, and emits an alert when the delta exceeds the wallet's configured threshold. Severity is MEDIUM / HIGH / CRITICAL by delta size. Omit 'address' to scan the entire watchlist. Designed to be called periodically via SchedulerOracle or a systemd timer.

NameTypeReqDescription
addressstringOptional — scan a single address. Omit to scan the whole list.

No output schema declared.

No examples provided.