io. github. parkyucheol-del/ alphapipeline
by parkyucheol-del · remote · no sign-in to list tools · v1.3.0 · published by GitHub user parkyucheol-del
Pay-per-call x402 API for AI trading agents: pre-trade security checks, Polymarket & HIP-4 odds.
30 tools: 27 change things and 3 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things27Claude Code: ask: see these tools
- Only reads3Claude Code: allow: see these tools
2 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http alphapipeline https://alphapipeline-eu.onrender.com/mcpFindings
Matches of fixed checks, with the text they matched.
The server marks "derivatives.funding_apr_matrix" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false}; The description's first verb is "evaluate": a word for a change.
The server marks "unlocks.dump_risk" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false}; The name "unlocks.dump_risk" says "unlock": a word for a change.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
30 tools
Changes things 27Claude Code: ask
arb.spread_matrixUse this tool before executing a cross-venue arbitrage trade to check whether a global reference price (Coinbase spot, CoinGecko fallback - not a specific exchange orderbook) and a…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use this tool before executing a cross-venue arbitrage trade to check whether a global reference price (Coinbase spot, CoinGecko fallback - not a specific exchange orderbook) and a DEX pool price diverge enough to be worth trading after an assumed flat gas cost. Returns gross/net spread percentages and an is_profitable boolean - note net_spread_pct does NOT subtract the DEX pool's own swap fee (see pool_fee_pct), CEX trading fees, or slippage, so a spread that clears the threshold before those costs may not clear it after. Do not use for DEX-only liquidity depth checks or contract security. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
calendar.macro_ddayUse this tool when an agent plans trading schedules around major US macroeconomic volatility, specifically days remaining until FOMC rate decisions, CPI prints, or NFP jobs reports…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use this tool when an agent plans trading schedules around major US macroeconomic volatility, specifically days remaining until FOMC rate decisions, CPI prints, or NFP jobs reports. Zero-dependency static 2026 macro calendar with 100% uptime and no upstream failure risk. Do not use for real-time market price data or economic forecast consensus figures. No input parameters. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
derivatives.funding_apr_matrixUse this tool to evaluate a spot+perpetual carry trade: annualizes the current perpetual funding rate into an APR, flags which side (SHORT or LONG perp) currently collects funding,…1 finding
Why it is in this group
- The description's first verb is "evaluate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "derivatives.funding_apr_matrix" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false}; The description's first verb is "evaluate": a word for a change.
Description, as the server wrote it Use this tool to evaluate a spot+perpetual carry trade: annualizes the current perpetual funding rate into an APR, flags which side (SHORT or LONG perp) currently collects funding, and computes how many days of that funding income it takes to recoup an assumed round-trip trading cost. Pure calculation on top of funding_rate data - no extra upstream call. Do not use for the raw current funding rate alone (use derivatives.funding_rate) or for spot price data. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
derivatives.funding_rateUse this tool when analyzing perpetual futures funding rates, long/short market sentiment crowding, or timing hedging strategies before settlement periods.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use this tool when analyzing perpetual futures funding rates, long/short market sentiment crowding, or timing hedging strategies before settlement periods. Aggregates Bybit (primary) and Binance (fallback) perpetual funding rates, plus mark_price/index_price (both paths) and open_interest_usd (Bybit path only - null on the Binance fallback). Do not use for spot market volume or token security checks. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
derivatives.funding_rate_valueCheapest-tier thin wrapper around derivatives.funding_rate - use this when you only need the funding rate number itself (decimal and percentage), not mark_price/index_price/open_in…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Cheapest-tier thin wrapper around derivatives.funding_rate - use this when you only need the funding rate number itself (decimal and percentage), not mark_price/index_price/open_interest_usd. Same Bybit-primary/Binance-fallback data. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
derivatives.whale_position_auditUse this tool to audit a Hyperliquid wallet address you already know: every open perpetual position with side, size, leverage, max_leverage, unrealized PnL, return_on_equity_pct, l…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use this tool to audit a Hyperliquid wallet address you already know: every open perpetual position with side, size, leverage, max_leverage, unrealized PnL, return_on_equity_pct, liquidation price, and distance-to-liquidation percentage (max_leverage and return_on_equity_pct are Hyperliquid's own reported fields, not derived by this tool). This does not discover or rank 'smart money' wallets - Hyperliquid's public API has no leaderboard or large-trader disclosure endpoint, so it only audits an address you supply. risk_flags (HIGH_LEVERAGE, NEAR_LIQUIDATION) come from fixed numeric thresholds only. Do not use for spot price data or any exchange other than Hyperliquid. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
dex.liquidity_slippageUse this tool to calculate expected DEX price slippage, pool liquidity depth, and optimal routing before executing an on-chain token swap.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use this tool to calculate expected DEX price slippage, pool liquidity depth, and optimal routing before executing an on-chain token swap. GeckoTerminal-backed pool analytics with constant-product slippage estimation for the requested trade_size_usd, plus a slippage_tiers array with the same estimate at fixed $1,000/$5,000/$10,000 sizes so an agent can gauge depth at a glance without extra calls. When called with token_address, also returns direct_stablecoin_pool_exists and, when the selected pool isn't USD-quoted, alternate_direct_pool - a different pool for the same token that is, so you know before swapping whether a multi-hop route is actually required or whether a direct pool exists elsewhere. Do not use for centralized exchange (CEX) orderbooks or contract risk analysis. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
market.kimchi_alertUse this tool when evaluating Korean exchange price premiums, the 'kimchi premium', Upbit price gaps vs a global reference price, cross-border crypto arbitrage, or sudden Korea-spe…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use this tool when evaluating Korean exchange price premiums, the 'kimchi premium', Upbit price gaps vs a global reference price, cross-border crypto arbitrage, or sudden Korea-specific price anomalies. Real-time Upbit vs Coinbase spot (CoinGecko fallback) - NOT a live Binance orderbook, despite the legacy binance_price_usdt field name kept for backward compatibility - with reverse-premium and surge alerts. Do not use for general USD spot prices or on-chain DEX swaps. Paid in USDC on Base (free while KIMCHI_ALERT_ENABLED=false).
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
market.oracle_gapUse this tool to check whether a protocol pricing off Hyperliquid's raw mid (instead of mark/oracle) is currently exposed to a mid-price swing - the exact failure mode behind the 2…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use this tool to check whether a protocol pricing off Hyperliquid's raw mid (instead of mark/oracle) is currently exposed to a mid-price swing - the exact failure mode behind the 2026-10-10 Papertrade incident on HyperEVM. elevated is a fixed-threshold flag (abs(mid_oracle_gap_bp) >= alert_threshold_bp), not a manipulation determination. Single snapshot, no trade-flow/volume data (Hyperliquid doesn't expose it). Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
market.oracle_gap_bpCheapest-tier thin wrapper around market.oracle_gap - use this when you only need mid_oracle_gap_bp/mark_oracle_gap_bp and the elevated flag, not the absolute mid/mark/oracle price…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Cheapest-tier thin wrapper around market.oracle_gap - use this when you only need mid_oracle_gap_bp/mark_oracle_gap_bp and the elevated flag, not the absolute mid/mark/oracle prices. Same Hyperliquid data. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
prediction.bid_ask_spread_pctCheap tier - a single Polymarket outcome's live top-of-book bid/ask spread as a percentage of mid_price.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Cheap tier - a single Polymarket outcome's live top-of-book bid/ask spread as a percentage of mid_price. Not a liquidity or executability measure (use prediction.exit_capacity_audit/order_split_guide for that). Accepts either a raw token_id or a market_slug (+ outcome) to resolve it automatically - exact slug only, no fuzzy keyword search. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
prediction.exit_capacity_auditWalk a single Polymarket outcome's live order book to determine how much of a given position size can actually be filled right now, at what average price, and with how much price i…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Walk a single Polymarket outcome's live order book to determine how much of a given position size can actually be filled right now, at what average price, and with how much price impact versus the best quote - a live snapshot, not historical liquidity. Also returns book_snapshot_time (the book's own reported timestamp) and Polymarket's own tick_size/min_order_size for this market (null if the book response didn't include them). Accepts either a raw token_id or a market_slug (+ outcome) to resolve it automatically - exact slug only, no fuzzy keyword search. Do not use for multi-outcome basket arbitrage detection (use prediction.neg_risk_arbitrage instead). Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
prediction.hip4_priceCheapest-tier thin wrapper around prediction.hip4_price_ladder - use this when you only need one strike's Yes probability, not the full ladder.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Cheapest-tier thin wrapper around prediction.hip4_price_ladder - use this when you only need one strike's Yes probability, not the full ladder. Returns the single rung closest to the requested strike - check matched_strike against your requested strike before relying on yes_price; a large gap means no rung exists near your target (use hip4_price_ladder to see what's actually available). Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
prediction.hip4_price_ladderUse this tool to see one underlying's Hyperliquid HIP-4 'above $X' price-binary markets laid out as a strike-sorted ladder, each rung with its live Yes probability - e.g.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use this tool to see one underlying's Hyperliquid HIP-4 'above $X' price-binary markets laid out as a strike-sorted ladder, each rung with its live Yes probability - e.g. to read the market's implied BTC price distribution at a glance. Reuses the same cached data as prediction.hip4_snapshot - no new upstream call. No volume field (Hyperliquid doesn't expose per-outcome volume for HIP-4). Do not use for mutually-exclusive multi-outcome groups (use prediction.hip4_snapshot's grouped_questions instead) or for Polymarket data. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
prediction.liquidity_depth_after_haircutA single Polymarket outcome's executable depth within max_price_impact_pct (default 5.0%) of the best quote, both before and after discounting the top-of-book level's size by hairc…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it A single Polymarket outcome's executable depth within max_price_impact_pct (default 5.0%) of the best quote, both before and after discounting the top-of-book level's size by haircut_pct (default 10.0%) to model the risk that the very best resting order gets cancelled before you can trade against it. Does not detect or flag actual spoofing (out of scope). Accepts either a raw token_id or a market_slug (+ outcome) to resolve it automatically. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
prediction.neg_risk_arbitrageDetect basket arbitrage in a Polymarket neg-risk (mutually-exclusive, multi-outcome) event - a full YES basket across all outcomes always settles to exactly $1, so a basket price a…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Detect basket arbitrage in a Polymarket neg-risk (mutually-exclusive, multi-outcome) event - a full YES basket across all outcomes always settles to exactly $1, so a basket price away from $1 (after costs) is a near risk-free edge. Also returns buy/sell_basket_capacity_shares, the actual liquidity-bottleneck size executable right now, so this isn't just a top-of-book mirage - note *_capacity_notional_usd still prices that size at top-of-book (optimistic), so use *_capacity_vwap_notional_usd for the realistic fill cost. Also returns oldest_book_snapshot_time, the staleness bottleneck across all legs. Polymarket only. Do not use for binary Yes/No markets (no basket to arbitrage) or for Kalshi (its Data ToS forbids this use). Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
prediction.order_split_guideWalks a Polymarket outcome's live order book to recommend how many clips to split a large position into, so each clip's own price impact stays at or under max_price_impact_pct_per_…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Walks a Polymarket outcome's live order book to recommend how many clips to split a large position into, so each clip's own price impact stays at or under max_price_impact_pct_per_slice (default 1.0%). Also returns full_size_price_impact_pct - the baseline impact if filled in one shot right now, for comparison. Single-snapshot calculation - it has no idea whether the book refills between clips in real trading. Accepts either a raw token_id or a market_slug (+ outcome) to resolve it automatically - exact slug only, no fuzzy keyword search. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
prediction.orderbook_imbalance_ratioA single Polymarket outcome's bid-side vs ask-side order-book depth ratio, summed within depth_band_pct (default 5.0%) of each side's own best quote.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it A single Polymarket outcome's bid-side vs ask-side order-book depth ratio, summed within depth_band_pct (default 5.0%) of each side's own best quote. 0.5 = balanced, closer to 1.0 = bid-side depth dominant, closer to 0.0 = ask-side dominant. A descriptive statistic only - not a prediction of price direction. Accepts either a raw token_id or a market_slug (+ outcome) to resolve it automatically. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
prediction.polymarket_fee_estimatePolymarket's own taker fee (NOT gas, slippage, or AlphaPipeline's own charge) for a hypothetical fill of `shares` at `price`, using the official bell-curve formula shares * fee_rat…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Polymarket's own taker fee (NOT gas, slippage, or AlphaPipeline's own charge) for a hypothetical fill of `shares` at `price`, using the official bell-curve formula shares * fee_rate * price * (1 - price). fee_rate is read live from Polymarket's own GET /fee-rate for the exact token_id - never hardcoded, since per-category rates have changed before. Makers pay 0 across every category - this is the taker fee only. Omit price to use the live best book quote for side. Accepts either a raw token_id or a market_slug (+ outcome) to resolve it automatically. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
prediction.polymarket_mispricingMonotonicity check (higher strike must not be priced above a lower strike) across a set of Polymarket markets that YOU have already confirmed share the same underlying asset and ex…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Monotonicity check (higher strike must not be priced above a lower strike) across a set of Polymarket markets that YOU have already confirmed share the same underlying asset and expiry/resolution date. Does NOT verify or infer that settlement-condition equivalence itself - Polymarket's API has no reliable field for it; passing unrelated markets produces a meaningless or false arbitrage signal. Accepts token_ids or market_slugs (+ optional outcomes, default all 'yes'), same length/order as strikes. Not investment advice. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
security.contract_health_auditUse this tool to check whether a token's liquidity pool is locked, burned, or freely held by a single wallet before trusting its liquidity - a rug-pull signal that security.token_r…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use this tool to check whether a token's liquidity pool is locked, burned, or freely held by a single wallet before trusting its liquidity - a rug-pull signal that security.token_risk does not cover. Reuses the same GoPlus data as token_risk (no extra upstream call) and rolls it up into a liquidity_health category (LOCKED/PARTIALLY_LOCKED/UNLOCKED/NO_LP_DATA). Does not include any qualitative 'suspicious transaction' judgment - only GoPlus's own lock/burn numbers. Do not use for honeypot or tax checks (use security.token_risk) or market price data. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
security.token_authenticityUse this tool to check whether a contract impersonates a known mainstream asset (e.g.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use this tool to check whether a contract impersonates a known mainstream asset (e.g. a fake 'USDC'), using GoPlus's fake_token/trust_list/honeypot_with_same_creator fields - same underlying token_security call as security.token_risk / contract_health_audit / token_prescreen, no extra upstream cost. flagged_as_counterfeit=false is NOT proof of authenticity - it only means GoPlus found no such flag at query time. true_token_address is only set when flagged_as_counterfeit is true. No honeypot/tax/LP checks here - use security.token_risk / security.contract_health_audit for those. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
security.token_diagnosticUse this tool right before buying or swapping an unfamiliar token when you need a single-call combined security check: runs security.token_risk and security.contract_health_audit i…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use this tool right before buying or swapping an unfamiliar token when you need a single-call combined security check: runs security.token_risk and security.contract_health_audit in parallel against the same GoPlus data and returns both, plus a deduped union of risk_flags and a plain risk_flags_count. Deliberately does not compute a composite score or letter grade - every field is copied unchanged from the two underlying tools. Cheaper than calling both separately. Do not use for token unlock/vesting risk (use unlocks.dump_risk) or if you only need one of the two checks (call that tool directly and pay less). Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
security.token_prescreenUse this tool to cheaply drop obviously-bad candidates out of a batch before spending the pricier security.token_risk / security.token_diagnostic calls on survivors - built for exa…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use this tool to cheaply drop obviously-bad candidates out of a batch before spending the pricier security.token_risk / security.token_diagnostic calls on survivors - built for exactly the high-volume new-pool screening pattern where most candidates fail a basic liquidity/LP-lock check anyway. Combines GoPlus's LP lock/burn status (same underlying call as security.contract_health_audit, no extra upstream cost) with GeckoTerminal's top-pool USD liquidity (same source as dex.liquidity_slippage) into one minimal response. Does NOT check honeypot/tax/mint risk and does NOT give the full LP-holder breakdown - use security.token_risk / security.contract_health_audit for that. liquidity_usd is null when chain_id isn't mapped to a GeckoTerminal network (currently Base, Ethereum, BSC, Polygon, Arbitrum, Optimism, Avalanche). Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
security.token_riskUse this tool before executing any on-chain swap to verify if an ERC-20 contract is a honeypot, rug-pull risk, or has malicious buy/sell taxes and mintability backdoors.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use this tool before executing any on-chain swap to verify if an ERC-20 contract is a honeypot, rug-pull risk, or has malicious buy/sell taxes and mintability backdoors. GoPlus/Honeypot.is-backed security audit for a given contract address - beyond is_honeypot, also surfaces individual GoPlus risk signals (cannot_buy, cannot_sell_all, hidden_owner, transfer_pausable, selfdestruct, is_blacklisted, slippage_modifiable, owner_percent) into risk_flags, plus is_proxy/trading_cooldown as informational-only fields (not flagged, since both are common in legitimate contracts). All of these are null when the Honeypot.is fallback path is used. Do not use for market price discovery or liquidity depth. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
tools.ai_markdownUse this tool when an agent needs to parse clean webpage article content without wasting context tokens on ads, scripts, navigation, and HTML boilerplate, or when summarizing a spe…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use this tool when an agent needs to parse clean webpage article content without wasting context tokens on ads, scripts, navigation, and HTML boilerplate, or when summarizing a specific URL. Converts any URL into clean Markdown optimized for LLM context windows. Do not use for raw API endpoints or binary files (PDF/images). Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
unlocks.dump_riskUse this tool to evaluate token unlock/vesting supply overhang risk before taking mid-to-long term positions - returns tokens whose currently-locked or unlock-eligible supply excee…1 finding
Why it is in this group
- The name "unlocks.dump_risk" says "unlock": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "unlocks.dump_risk" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false}; The name "unlocks.dump_risk" says "unlock": a word for a change.
Description, as the server wrote it Use this tool to evaluate token unlock/vesting supply overhang risk before taking mid-to-long term positions - returns tokens whose currently-locked or unlock-eligible supply exceeds a materiality threshold, each with a computed risk_level (LOW/MEDIUM/HIGH). Default data source (on-chain Sablier vesting, the current configuration - no DropsTab key set) does NOT classify VC/team vs. other holders (is_insider_vc_team is always null) and does NOT provide exact unlock timing (days_until_unlock is always null, timing_precision='pending_schema_verification') - it only reports the currently-locked supply ratio. It does report vesting_deposit_amount/vesting_withdrawn_amount (Sablier's own depositAmount/withdrawnAmount, aggregated across streams) and vesting_progress_pct (withdrawn/deposit * 100), showing how far along the vesting schedule already is. Treat a null value as 'unknown', never as 'no risk'. Always check the response's coverage_notice field. Do not use for intra-day slippage or real-time transaction simulation. Paid in USDC on Base (free while DUMP_RISK_ENABLED=false).
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
Only reads 3Claude Code: allow
market.cycle_compareUse this tool to see BTC/ETH's own price position vs the same day-offset in the 2016 and 2020 halving cycles, plus today's real BTC dominance.No findings
Why it is in this group
- The name "market.cycle_compare" says "compare": a word for reading.
Description, as the server wrote it Use this tool to see BTC/ETH's own price position vs the same day-offset in the 2016 and 2020 halving cycles, plus today's real BTC dominance. This is NOT a historical dominance comparison (no free data source exists for that - see the response's notice field). Derived from a cache refreshed once daily, so prices can be up to ~24h stale. No input params. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
prediction.hip4_mispricingFinds monotonicity violations among Hyperliquid HIP-4 'above $X' price-binary markets: within the same underlying/expiry/period, a higher strike's Yes price should never exceed a l…No findings
Why it is in this group
- The description's first verb is "find": a word for reading.
Description, as the server wrote it Finds monotonicity violations among Hyperliquid HIP-4 'above $X' price-binary markets: within the same underlying/expiry/period, a higher strike's Yes price should never exceed a lower strike's - any reversal is a logical inconsistency, quantified as violation_bp and a textbook max_riskless_profit_per_usd (before fees/slippage/execution risk - not investment advice). Reuses prediction.hip4_price_ladder's cache - no new upstream call. Only rungs sharing the exact same (expiry, period) are ever compared. Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
prediction.hip4_snapshotReal-time probability snapshot of Hyperliquid's HIP-4 outcome (prediction) markets - crypto price binaries, sports game winners, tournament winners, Fed rate decisions, and any oth…No findings
Why it is in this group
- The name "prediction.hip4_snapshot" says "snapshot": a word for reading.
Description, as the server wrote it Real-time probability snapshot of Hyperliquid's HIP-4 outcome (prediction) markets - crypto price binaries, sports game winners, tournament winners, Fed rate decisions, and any other market type Hyperliquid adds, all in one call. No curated market list - every field under 'fields' on each row is parsed verbatim from Hyperliquid's own description string, so new HIP-4 market types appear automatically. standalone_markets covers two-sided markets (most crypto/sports games); grouped_questions covers mutually-exclusive multi-outcome groups (e.g. a league winner) with a fallback price for 'none of the above'. Optional template/underlying filters narrow the result. Do not use for Polymarket data (use prediction.neg_risk_arbitrage/exit_capacity_audit instead). Paid in USDC on Base.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.3.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http alphapipeline https://alphapipeline-eu.onrender.com/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__alphapipeline__prediction_hip4_snapshot",
"mcp__alphapipeline__prediction_hip4_mispricing",
"mcp__alphapipeline__market_cycle_compare"
],
"ask": [
"mcp__alphapipeline__market_kimchi_alert",
"mcp__alphapipeline__tools_ai_markdown",
"mcp__alphapipeline__security_token_risk",
"mcp__alphapipeline__security_contract_health_audit",
"mcp__alphapipeline__security_token_prescreen",
"mcp__alphapipeline__security_token_authenticity",
"mcp__alphapipeline__security_token_diagnostic",
"mcp__alphapipeline__derivatives_funding_rate",
"mcp__alphapipeline__derivatives_funding_rate_value",
"mcp__alphapipeline__derivatives_funding_apr_matrix",
"mcp__alphapipeline__dex_liquidity_slippage",
"mcp__alphapipeline__arb_spread_matrix",
"mcp__alphapipeline__derivatives_whale_position_audit",
"mcp__alphapipeline__calendar_macro_dday",
"mcp__alphapipeline__prediction_neg_risk_arbitrage",
"mcp__alphapipeline__prediction_exit_capacity_audit",
"mcp__alphapipeline__prediction_order_split_guide",
"mcp__alphapipeline__prediction_bid_ask_spread_pct",
"mcp__alphapipeline__prediction_orderbook_imbalance_ratio",
"mcp__alphapipeline__prediction_liquidity_depth_after_haircut",
"mcp__alphapipeline__prediction_polymarket_fee_estimate",
"mcp__alphapipeline__prediction_polymarket_mispricing",
"mcp__alphapipeline__prediction_hip4_price_ladder",
"mcp__alphapipeline__prediction_hip4_price",
"mcp__alphapipeline__market_oracle_gap",
"mcp__alphapipeline__market_oracle_gap_bp",
"mcp__alphapipeline__unlocks_dump_risk"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as alphapipeline. Review it before you use it.
