Skip to main content
Glama

Polymarket Arbitrage

polymarket_arbitrage
Read-onlyIdempotent

Find arbitrage opportunities on Polymarket via monotonicity violations + partition-sum checks. Call with NO args for a trending_scan of the top ~200 markets by weekly volume; pass event for the strongest per-event partition_check, or topic for a themed cross-event scan. event (recommended for a specific market): pass a Polymarket event slug like "fed-decision-may-2026" or "when-will-bitcoin-hit-150k"; walks child markets, checks date-axis / threshold-axis ordering AND computes the partition_check (sum of YES prices across mutually-exclusive legs — should ≈1; deviations >3pp emit a BUY/SELL EVERY LEG signal). topic (for cross-event scanning): pass a seed question like "Strait of Hormuz traffic returns to normal" or "Fed rate decision"; searches related events across the platform, flattens markets, runs the comparator on the union. Cross-event mode catches "...by May 31" vs "...by Jun 30" patterns that single-event misses. SEMANTIC ANCHOR: cross-event pairs require ≥0.30 Jaccard similarity on question tokens (prevents Powell-Fed-Pause being paired with Powell-DOJ-probe); skipped_low_similarity surfaces the rejected pair count. PARTITION FILTER: drops will-person-X / will-manager-Y / will-someone-else- placeholder slugs; partitions with >20% placeholder fraction return null arb signal. Response: opportunities[] (gap_pp, suggested_trade, reasoning, monotonicity violation context), and in event mode partition_check{sum_yes_prices, gap_from_1, placeholders_filtered, suggested_trade}. FILL CHECK: when the partition signal fires, arbitrage.fill_check prices it against live CLOB depth (theoretical_edge_pp_at_book vs realizable_edge_pp at 1000 shares/leg, thin_legs[]) — realizable_edge_pp ≤ 0 means the overround exists only at last-trade, not in the book; do not trade it. For custom sizing use polymarket_fill_risk.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
eventNoSingle-event mode (use this if you know the specific Polymarket event): event slug like "fed-decision-may-2026" or "when-will-bitcoin-hit-150k". Full Polymarket URLs also accepted.
topicNoCross-event mode (use this if you want to scan related events across the platform): a topic or seed question like "Fed rate decision" or "Strait of Hormuz traffic returns to normal". Tool searches Polymarket for related events and checks monotonicity across them.

TDQS

A5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, idempotentHint=true, and destructiveHint=false. Description adds extensive behavioral context: explains scanning logic, partition checks, semantic anchor filters, placeholder handling, response structure, and fill check mechanism. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is front-loaded with purpose, then systematically covers modes, parameters, filters, response, and fill check. Every sentence adds value; no redundancy. While lengthy, the complexity of the tool justifies the length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, description fully specifies response format (opportunities[], partition_check fields, fill check outputs). Covers all parameters, use cases, edge cases (placeholders, low similarity), and cautionary notes. Complete and self-contained for agent understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with parameter descriptions, but description significantly enriches understanding: details event mode operations (child market walks, ordering checks, partition sum), topic mode (cross-event search, Jaccard similarity, flattened market union), and explains the semantic anchor and partition filter. Goes well beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states 'Find arbitrage opportunities on Polymarket via monotonicity violations + partition-sum checks', specifies verb (find), resource (arbitrage), and methods. Distinguishes from sibling tools like polymarket_edges, polymarket_fill_risk, and polymarket_kalshi_spread by focusing on arbitrage detection with specific checks.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit guidance on when to use each parameter: no args for trending_scan, event for specific market context, topic for cross-event scanning. Includes exclusion criteria (fill check warns not to trade if realizable edge ≤ 0) and references alternative tool polymarket_fill_risk for custom sizing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A3.8/5.0
Disambiguation2/5

Multiple tool families overlap heavily: ask_pipeworx/ask_pipeworx_beta/ask_pipeworx_grounded all route through the same 5,721 tools, polymarket_edges/polymarket_arbitrage/bet_research/polymarket_fill_risk all target prediction-market opportunities, and ai_visibility_check vs scan_competitor_ai_presence cover the same probe. An agent would struggle to pick the right one without reading every description carefully.

Naming Consistency3/5

There are coherent subfamilies (ask_pipeworx_*, polymarket_*, remember/recall/forget, list/read/fetch_feed), but the overall set mixes verb-first names (list_feeds, validate_claim, fetch_feed) with noun-first names (entity_profile, bet_research, deep_research) and adjective-led names (recent_alerts, recent_changes). The inconsistency is noticeable but not chaotic.

Tool Count2/5

34 tools is heavy for a server branded 'Law Feeds,' and many tools are off-domain (Polymarket betting, npm dependency scanning, AI visibility marketing, generic memory). The breadth could justify a larger catalog, but the overlapping research/Polymarket tools inflate the count beyond what the surface needs.

Completeness3/5

As a general data-gateway, the set is fairly complete: routing, grounded answers, deep research, entity resolution, comparison, subscriptions, memory, and feedback are all covered. Relative to the 'Law Feeds' identity, though, the surface is shallow — only list_feeds, read_feed, and fetch_feed serve that purpose, with no feed search, management, or update capabilities.