MCPサーバー

WaveGuard

io.github.gpartin/waveguard
暗号資産・Web3 データ・分析 公開・接続可能 MCP 2026-07-28

このMCPでできること

Detects anomalies, drift, instability, structural similarity, manipulation, and risk in structured data, time series, crypto markets, tokens, wallets, and trading activity.

waveguard_action_surface
Score candidate actions and extract robust action zones.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['training', 'action_tests'], 'properties': {'training': {'type': 'array', 'minItems': 2, 'description': '2+ baseline normal samples used to define the reference profile.'}, 'field_level': {'enum': [0, 1], 'type': 'integer', 'description': '0 = real scalar field, 1 = complex field.'}, 'sensitivity': {'type': 'number', 'description': 'Anomaly sensitivity multiplier (default: 1.0).'}, 'action_tests': {'type': 'array', 'minItems': 1, 'description': '1+ candidate actions/scenarios to score against baseline.'}, 'encoder_type': {'type': 'string', 'description': 'Optional encoder override. Omit to auto-detect.'}, 'action_labels': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional labels for each action variant.'}}}
waveguard_cascade_risk
Estimate shock propagation and resilience from adjacency-linked entities.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['training_context', 'entities', 'adjacency_matrix', 'shock_indices'], 'properties': {'entities': {'type': 'array', 'minItems': 2, 'description': '2+ entities/nodes participating in the cascade graph.'}, 'field_level': {'enum': [0, 1], 'type': 'integer', 'default': 1, 'description': 'Field representation level. Default 1 for graph interaction dynamics.'}, 'sensitivity': {'type': 'number', 'description': 'Anomaly sensitivity multiplier (default: 1.0).'}, 'encoder_type': {'type': 'string', 'description': 'Optional encoder override. Omit to auto-detect.'}, 'shock_indices': {'type': 'array', 'items': {'type': 'integer'}, 'description': 'Indices of initially shocked entities within the entities array.'}, 'shock_strength': {'type': 'number', 'default': 0.05, 'description': 'Initial perturbation magnitude injected at shock indices.'}, 'adjacency_matrix': {'type': 'array', 'items': {'type': 'array', 'items': {'type': 'number'}}, 'description': 'N×N weighted adjacency matrix describing link strengths between entities.'}, 'training_context': {'type': 'array', 'minItems': 2, 'description': '2+ baseline context samples used for normalization.'}}}
waveguard_compare
Compare two data items for structural similarity using physics-based fingerprints. Returns cosine similarity (0–1) and Euclidean distance. Use for duplicate detection, behavioral matching, drift analysis, or checking if two tokens/wallets/contracts are structurally similar. Cosine similarity > 0.95 = very similar. < 0.80 = structurally different.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['data_a', 'data_b'], 'properties': {'data_a': {'description': 'First data item to compare.'}, 'data_b': {'description': 'Second data item to compare (same type as data_a).'}, 'encoder_type': {'enum': ['json', 'numeric', 'text', 'timeseries', 'tabular'], 'type': 'string', 'description': 'Data encoder. Omit to auto-detect.'}}}
waveguard_counterfactual
Run baseline plus counterfactual variants and measure verdict/score sensitivity.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['training', 'base_test', 'counterfactual_tests'], 'properties': {'training': {'type': 'array', 'minItems': 2, 'description': '2+ baseline normal samples used to build the reference profile.'}, 'base_test': {'description': 'Baseline candidate sample to evaluate before counterfactual perturbations.'}, 'field_level': {'enum': [0, 1], 'type': 'integer', 'description': '0 = real scalar field (faster), 1 = complex field (richer phase dynamics).'}, 'sensitivity': {'type': 'number', 'description': 'Anomaly sensitivity multiplier (default: 1.0). Higher values flag more aggressively.'}, 'encoder_type': {'type': 'string', 'description': 'Optional encoder override. Omit to auto-detect from input structure.'}, 'counterfactual_tests': {'type': 'array', 'minItems': 1, 'description': '1+ perturbed variants of base_test for sensitivity analysis.'}}}
waveguard_fingerprint
Get a physics embedding of any data item (52-dim at Level 0, 62-dim at Level 1 with phase statistics). The fingerprint captures structural properties via wave-equation dynamics — useful for similarity search, clustering, baseline comparison, and drift detection. Works on JSON objects, token metrics, wallet activity, trading data, or any structured data. Returns a deterministic vector with labeled dimensions (chi statistics, energy distribution, gradient patterns, and phase coherence at Level 1).
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['data'], 'properties': {'data': {'description': 'Any data item to fingerprint: JSON object, numeric array, string, or structured record.'}, 'field_level': {'enum': [0, 1], 'type': 'integer', 'description': '0 = real scalar 52-dim (default), 1 = complex field 62-dim.'}, 'encoder_type': {'enum': ['json', 'numeric', 'text', 'timeseries', 'tabular', 'complex_numeric'], 'type': 'string', 'description': 'Data encoder. Omit to auto-detect.'}}}
waveguard_health
Check WaveGuard API health, GPU availability, version, and engine status. No authentication required. Returns status, version, and GPU info.
読み取り専用 冪等
入力スキーマ
{'type': 'object', 'properties': {'verbose': {'type': 'boolean', 'default': False, 'description': 'Return detailed health info including memory and uptime (default: false).'}}, 'additionalProperties': False}
waveguard_instability
Estimate instability under controlled perturb-and-resolve trials.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['training', 'test'], 'properties': {'test': {'type': 'array', 'minItems': 1, 'description': '1+ candidate samples to stress-test with perturbation trials.'}, 'trials': {'type': 'integer', 'default': 12, 'minimum': 1, 'description': 'Number of perturbation trials per sample.'}, 'training': {'type': 'array', 'minItems': 2, 'description': '2+ baseline normal samples for reference dynamics.'}, 'field_level': {'enum': [0, 1], 'type': 'integer', 'description': '0 = real scalar field, 1 = complex field.'}, 'sensitivity': {'type': 'number', 'description': 'Anomaly sensitivity multiplier (default: 1.0).'}, 'encoder_type': {'type': 'string', 'description': 'Optional encoder override. Omit to auto-detect.'}, 'perturbation_strength': {'type': 'number', 'default': 0.02, 'description': 'Relative perturbation amplitude applied during instability assay.'}}}
waveguard_interaction_matrix
Compute pairwise interaction matrix and cluster decomposition for entities.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['training_context', 'entities'], 'properties': {'entities': {'type': 'array', 'minItems': 2, 'description': '2+ entities to evaluate for pairwise interaction effects.'}, 'field_level': {'enum': [0, 1], 'type': 'integer', 'default': 1, 'description': 'Field representation level. Default 1 for interaction/phase features.'}, 'sensitivity': {'type': 'number', 'description': 'Anomaly sensitivity multiplier (default: 1.0).'}, 'encoder_type': {'type': 'string', 'description': 'Optional encoder override. Omit to auto-detect.'}, 'training_context': {'type': 'array', 'minItems': 2, 'description': '2+ baseline context samples used for normalization.'}}}
waveguard_market_data
Fetch live crypto market data from CoinGecko and DexScreener. No external data needed — WaveGuard pulls it for you. Use 'coin_id' for CoinGecko (e.g. 'bitcoin', 'ethereum', 'solana'). Use 'contract_address' for DexScreener (any chain). Use 'search' to find token IDs by name/symbol. Returns: price, volume, market cap, liquidity, price history, OHLC candles — ready to feed into waveguard_token_risk, waveguard_volume_check, or waveguard_price_manipulation.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['action'], 'properties': {'days': {'type': 'integer', 'default': 90, 'description': 'Number of days of history (default: 90 for price_history, 30 for ohlc).'}, 'count': {'type': 'integer', 'default': 25, 'description': 'Number of results for top_coins (default: 25).'}, 'query': {'type': 'string', 'description': 'Search query. Required for search, dex_search.'}, 'action': {'enum': ['token_data', 'price_history', 'ohlc', 'top_coins', 'search', 'dex_token', 'dex_search'], 'type': 'string', 'description': 'What data to fetch:\n- token_data: full metrics for a CoinGecko coin\n- price_history: daily prices (for price_manipulation)\n- ohlc: OHLC candles (for volume_check)\n- top_coins: top N by market cap (training baseline)\n- search: find CoinGecko coin IDs\n- dex_token: DEX data by contract address\n- dex_search: search DEX pairs'}, 'coin_id': {'type': 'string', 'description': "CoinGecko coin ID (e.g. 'bitcoin', 'ethereum'). Required for token_data, price_history, ohlc."}, 'contract_address': {'type': 'string', 'description': 'Token contract address (any chain). Required for dex_token.'}}}
waveguard_mechanism_probe
Run targeted interventions and rank effect sizes.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['training', 'base_test', 'intervention_tests'], 'properties': {'training': {'type': 'array', 'minItems': 2, 'description': '2+ baseline normal samples used to construct the reference profile.'}, 'base_test': {'description': 'Baseline candidate sample before interventions.'}, 'field_level': {'enum': [0, 1], 'type': 'integer', 'description': '0 = real scalar field, 1 = complex field.'}, 'sensitivity': {'type': 'number', 'description': 'Anomaly sensitivity multiplier (default: 1.0).'}, 'encoder_type': {'type': 'string', 'description': 'Optional encoder override. Omit to auto-detect.'}, 'intervention_tests': {'type': 'array', 'minItems': 1, 'description': '1+ intervention variants used to estimate effect sizes.'}, 'intervention_labels': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional labels for intervention variants (same order as intervention_tests).'}}}
waveguard_multi_horizon_outlook
Compute horizon-specific anomaly outlook and consistency across windows.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['training', 'sequence', 'horizons'], 'properties': {'horizons': {'type': 'array', 'items': {'type': 'integer'}, 'minItems': 1, 'description': 'List of horizon lengths (in sequence steps) to evaluate.'}, 'sequence': {'type': 'array', 'minItems': 1, 'description': 'Ordered sample sequence used for multi-horizon outlook analysis.'}, 'training': {'type': 'array', 'minItems': 2, 'description': '2+ baseline normal samples used to establish reference behavior.'}, 'field_level': {'enum': [0, 1], 'type': 'integer', 'description': '0 = real scalar field, 1 = complex field.'}, 'sensitivity': {'type': 'number', 'description': 'Anomaly sensitivity multiplier (default: 1.0).'}, 'encoder_type': {'type': 'string', 'description': 'Optional encoder override. Omit to auto-detect.'}}}
waveguard_phase_coherence
Measure coherence/entropy and collapse-risk indicators for candidate data.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['training', 'test'], 'properties': {'test': {'type': 'array', 'minItems': 1, 'description': '1+ candidate samples to evaluate for phase coherence and entropy.'}, 'training': {'type': 'array', 'minItems': 2, 'description': '2+ baseline normal samples for reference coherence metrics.'}, 'field_level': {'enum': [0, 1], 'type': 'integer', 'default': 1, 'description': 'Field representation level. Default 1 for phase-aware analysis.'}, 'sensitivity': {'type': 'number', 'description': 'Anomaly sensitivity multiplier (default: 1.0).'}, 'encoder_type': {'type': 'string', 'description': 'Optional encoder override. Omit to auto-detect.'}}}
waveguard_price_manipulation
Detect price manipulation in time-series data. Send a price or price+volume history as a numeric array. Early windows define 'normal' trading, recent windows are tested for manipulation patterns (pump-and-dump, spoofing, layering). Example: Send 90 days of closing prices → detect manipulated windows.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['data'], 'properties': {'data': {'type': 'array', 'items': {'type': 'number'}, 'minItems': 6, 'description': 'Price time-series array (chronological). At least 20 data points.'}, 'sensitivity': {'type': 'number', 'description': 'Detection sensitivity (default: 1.5).'}, 'window_size': {'type': 'integer', 'default': 10, 'minimum': 2, 'description': 'Window size (default: 10). Smaller = finer detection.'}, 'test_windows': {'type': 'integer', 'minimum': 1, 'description': 'Number of recent windows to test (default: half).'}}}
waveguard_scan
Find outliers and anomalies in structured data — ideal as a second step after pulling records from Google Sheets, Airtable, Supabase, Notion databases, HubSpot, Financial APIs, GitHub, NPM, or any source that returns rows of JSON. Fully stateless: send known-good rows as training and suspect rows as test in ONE call. Returns per-row anomaly scores, confidence levels, and the top features explaining WHY each row was flagged. Typical workflow: (1) Pull data from another tool (e.g. Google Sheets, Supabase query, HubSpot deals). (2) Pass the first N rows as training (normal baseline). (3) Pass remaining or new rows as test. (4) Report which rows are anomalous and why. Works on JSON objects, numbers, text, arrays. No separate training step required. Examples: - Spreadsheet QA: Pull 500 sales rows from Sheets → train on first 400 → test last 100 → flag outlier entries - Financial screening: Get ratios for 50 stocks from a financial API → find anomalous ones - CRM hygiene: Pull HubSpot deals → flag deals with unusual discount/value patterns - Dependency audit: Get NPM package metrics → flag packages with anomalous quality scores - Commit review: Pull GitHub commit metadata → flag unusual commit patterns
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['training', 'test'], 'properties': {'test': {'type': 'array', 'minItems': 1, 'description': '1+ data points to check for anomalies — new entries, recent rows, or the subset you want validated. Same type/shape as training. Each sample is scored independently.'}, 'training': {'type': 'array', 'minItems': 2, 'description': '2+ examples of NORMAL/expected data — the known-good baseline. Typically the bulk of rows from a spreadsheet, database query, or API response. All samples should be the same type/shape. More samples = better baseline (10-100 is ideal for tabular data).'}, 'field_level': {'enum': [0, 1], 'type': 'integer', 'description': 'Physics field complexity. 0 = real scalar (default). 1 = complex field (phase-aware, 62-dim fingerprint).'}, 'sensitivity': {'type': 'number', 'description': 'Anomaly threshold multiplier (default: 2.0). Lower = more sensitive. Higher = less sensitive. Range: 0.5 to 5.0.'}, 'encoder_type': {'enum': ['json', 'numeric', 'text', 'timeseries', 'tabular', 'image', 'correlation', 'complex_numeric'], 'type': 'string', 'description': 'Data encoder type. Omit to auto-detect from data shape.'}}}
waveguard_scan_timeseries
Detect anomalies in time-series data — use after pulling numeric metrics from monitoring APIs, financial data sources, IoT sensors, or spreadsheet columns. Send a single numeric array and specify a window size. Early windows define 'normal', recent windows are tested for anomalies. Typical workflow: (1) Pull a column of numbers from Sheets, a Supabase time-series table, or a metrics API. (2) Pass the array here. (3) Get back which time windows are anomalous. Examples: - Revenue monitoring: Pull monthly revenue from Sheets → detect anomalous months - Stock screening: Pull 90 days of closing prices → find unusual price windows - Server health: Pull response-time metrics → identify degradation windows - Sensor QA: Pull temperature readings from IoT API → flag sensor drift
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['data'], 'properties': {'data': {'type': 'array', 'items': {'type': 'number'}, 'minItems': 6, 'description': 'Numeric time-series array, ordered chronologically. Should have at least 3x window_size data points.'}, 'sensitivity': {'type': 'number', 'description': 'Anomaly sensitivity (default: 1.0). Higher = more sensitive.'}, 'window_size': {'type': 'integer', 'default': 10, 'minimum': 2, 'description': 'Number of data points per window (default: 10). Smaller windows detect finer-grained anomalies.'}, 'test_windows': {'type': 'integer', 'minimum': 1, 'description': 'Number of most recent windows to test (default: half of total windows). The rest are used as training (normal baseline).'}}}
waveguard_token_risk
Assess crypto token legitimacy risk. Send metrics from known-good tokens as training (price, volume, holders, liquidity, market_cap, age_days, etc.) and suspect tokens as test. Detects pump-and-dump patterns, fake metrics, and anomalous token profiles. Example: Pull CoinGecko data for 20 established tokens → train. Test a new token → get risk score and which metrics are suspicious.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['training', 'test'], 'properties': {'test': {'type': 'array', 'minItems': 1, 'description': '1+ suspect token metric objects to evaluate.'}, 'training': {'type': 'array', 'minItems': 2, 'description': '3+ known-good token metric objects. Each should include fields like price, volume_24h, market_cap, holders, liquidity, age_days, etc.'}, 'sensitivity': {'type': 'number', 'description': 'Risk sensitivity (default: 1.5). Higher = more flags.'}}}
waveguard_trajectory_scan
Analyze sequence drift and regime shifts over ordered samples.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['training', 'sequence'], 'properties': {'sequence': {'type': 'array', 'minItems': 1, 'description': 'Ordered samples (time sequence) to scan for drift and regime shifts.'}, 'training': {'type': 'array', 'minItems': 2, 'description': '2+ baseline normal samples used to establish the reference regime.'}, 'field_level': {'enum': [0, 1], 'type': 'integer', 'description': '0 = real scalar field, 1 = complex field.'}, 'sensitivity': {'type': 'number', 'description': 'Anomaly sensitivity multiplier (default: 1.0).'}, 'encoder_type': {'type': 'string', 'description': 'Optional encoder override. Omit to auto-detect.'}}}
waveguard_volume_check
Detect wash trading and fake volume in OHLCV candle data. Send known-legitimate candles as training and suspect candles as test. Detects artificial volume spikes, suspiciously regular patterns, and manipulated price-volume relationships. Example: Send 100 candles from a liquid pair as baseline, test candles from a suspicious pair.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['training', 'test'], 'properties': {'test': {'type': 'array', 'minItems': 1, 'description': '1+ suspect candle objects to evaluate.'}, 'training': {'type': 'array', 'minItems': 2, 'description': '3+ OHLCV candle objects from known-legitimate trading. Fields: open, high, low, close, volume.'}, 'sensitivity': {'type': 'number', 'description': 'Detection sensitivity (default: 1.5).'}}}
waveguard_wallet_profile
Profile wallet behavior against baselines. Send normal wallet transaction patterns as training (tx_count, avg_value, unique_tokens, gas_spent, active_days, etc.) and suspect wallets as test. Detects bot activity, wash trading wallets, and sybil patterns. Example: Profile 50 organic wallets → test 10 suspect addresses.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'required': ['training', 'test'], 'properties': {'test': {'type': 'array', 'minItems': 1, 'description': '1+ suspect wallet profiles to evaluate.'}, 'training': {'type': 'array', 'minItems': 2, 'description': '3+ known-organic wallet activity profiles.'}, 'sensitivity': {'type': 'number', 'description': 'Detection sensitivity (default: 1.5).'}}}
追加
waveguard_multi_horizon_outlook
2026年9月17日12:42
追加
waveguard_action_surface
2026年9月17日12:42
追加
waveguard_mechanism_probe
2026年9月17日12:42
追加
waveguard_cascade_risk
2026年9月17日12:42
追加
waveguard_interaction_matrix
2026年9月17日12:42
追加
waveguard_phase_coherence
2026年9月17日12:42
追加
waveguard_instability
2026年9月17日12:42
追加
waveguard_trajectory_scan
2026年9月17日12:42
追加
waveguard_counterfactual
2026年9月17日12:42
追加
waveguard_market_data
2026年9月17日12:42
追加
waveguard_price_manipulation
2026年9月17日12:42
追加
waveguard_volume_check
2026年9月17日12:42
追加
waveguard_wallet_profile
2026年9月17日12:42
追加
waveguard_token_risk
2026年9月17日12:42
追加
waveguard_compare
2026年9月17日12:42
追加
waveguard_fingerprint
2026年9月17日12:42
追加
waveguard_health
2026年9月17日12:42
追加
waveguard_scan_timeseries
2026年9月17日12:42
追加
waveguard_scan
2026年9月17日12:42