Mantis
Server Details
Cross-venue prediction market routing for AI agents with arbitrage, quotes, history, and signals.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 3.9/5 across 6 of 6 tools scored.
Each tool has a distinct purpose: URL generation for trades, arbitrage detection, historical data, live quotes, unmet demand discovery, and market routing. No two tools overlap in functionality.
Most tools follow a get_ prefix, but execute_url and route_market use different verbs. However, all names are clear and follow a verb_noun pattern, with only minor inconsistency.
With 6 tools covering all core prediction market activities (data retrieval, analysis, execution), the count is well-scoped and appropriate for the domain.
The tool set covers key workflows: historical and live data, arbitrage, routing, unmet demand, and trade URL generation. Minor gaps like detailed market description or account tools exist but are outside the apparent scope.
Available Tools
6 toolsexecute_urlAInspect
Get a deep link URL to place a trade on the best venue for a given market. The URL has a referral code embedded so the platform earns commission. Call this to get the URL, then direct the user to open it.
| Name | Required | Description | Default |
|---|---|---|---|
| side | No | Which side to trade | unknown |
| amount | No | USD amount to trade (for tracking) | |
| source | No | Tool path that produced this execution intent | direct |
| market_id | No | Platform-specific market ID (e.g. "polymarket-abc123") | |
| route_query | No | Original route_market query when source is route | |
| canonical_id | No | Cross-venue canonical market ID |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must cover behavioral traits. It discloses that the URL embeds a referral code for commission, but does not mention other traits like authentication needs or side effects of generating the URL. This is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, each serving a purpose: stating the function, explaining the referral code, and providing usage instruction. It is front-loaded with the core purpose and has no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 6 parameters and no output schema, the description is relatively minimal. It explains the primary function and a key trait (commission), but lacks details on URL format, error handling, or expected output. It is adequate for a simple tool but could be more informative.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already explains each parameter. The description adds no additional meaning beyond the schema, meeting the baseline for full coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get a deep link URL to place a trade on the best venue for a given market.' It specifies the verb (get), the resource (deep link URL), and the context (trade on best venue). This distinguishes it from sibling tools like get_arbitrage or route_market.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says 'Call this to get the URL, then direct the user to open it,' providing clear when-to-use guidance. However, it does not explicitly state when not to use the tool or compare it to alternatives, though the sibling context implies some differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_arbitrageBInspect
Find live cross-venue arbitrage opportunities — markets where the same event trades at different prices on Polymarket vs Kalshi vs other venues. Can also estimate fee-normalized net spread for a position size.
| Name | Required | Description | Default |
|---|---|---|---|
| venue_a | No | Optional venue filter for one side of the arbitrage pair, e.g. polymarket | |
| venue_b | No | Optional venue filter for the other side of the arbitrage pair, e.g. kalshi | |
| include_fees | No | Whether to include estimated fee/friction normalization | |
| position_size | No | USD position size used for fee/slippage estimation | |
| min_spread_pct | No | Minimum spread in percentage points (default 4 = 4¢) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits (e.g., live data retrieval, external API calls, authentication needed). It only describes functional capability without any behavioral context, such as whether it is a read-only operation or has rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no fluff. The main purpose is front-loaded. Each sentence adds value: first explains core function, second adds an optional capability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema and no annotations. The description does not explain what the tool returns (shape, pagination, number of results, error handling). For a data-fetching tool, this is a significant gap beyond the coverage of parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds context (live cross-venue, fee normalization) but does not provide new semantic details beyond the schema descriptions. It does not explain parameter relationships or syntax.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool finds live cross-venue arbitrage opportunities, specifies venues (Polymarket vs Kalshi vs others), and mentions fee normalization. It is distinct from siblings which deal with execution, history, quotes, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (to find arbitrage across venues), but does not explicitly state when not to use or compare with alternatives. The secondary use (fee estimation) is mentioned, but no direct usage guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_historyAInspect
Get historical OHLCV-style prediction market candles over a time range, including the latest stored depth snapshot within each bucket when available. Can also export CSV text or base64-encoded Parquet.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Inclusive ISO 8601 end timestamp | |
| from | Yes | Inclusive ISO 8601 start timestamp | |
| venue | No | Venue filter, e.g. polymarket or kalshi | |
| format | No | Return JSON candles, CSV text payload, or base64-encoded Parquet payload | json |
| market_id | No | Platform-specific market ID | |
| granularity | No | Bucket size for history candles | 1d |
| canonical_id | No | Cross-venue canonical market ID |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It mentions that depth snapshots are included 'when available' and describes export formats, but does not disclose side effects, authorization needs, or data limitations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no fluff, front-loaded with core purpose. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters and no output schema, the description is brief. It explains core functionality but lacks details on parameter interactions, response structure, or limitations. Adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds meaning by explaining OHLCV-style candles, depth snapshots, and export format encoding (CSV text, base64 Parquet). This enriches understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves historical OHLCV-style candles with depth snapshots, distinguishing it from siblings like get_quote or get_arbitrage.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., get_quote for current data, get_arbitrage for arbitrage). Does not mention temporal constraints or data freshness.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_quoteAInspect
Get the live probability, liquidity, and volume for a prediction market across all venues. Can also return venue order book depth and size-aware VWAP/slippage estimates.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | USD size for YES-buy VWAP/slippage estimation | |
| market_id | No | Platform-specific market ID | |
| canonical_id | No | Cross-venue canonical market ID |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
In the absence of annotations, the description discloses main returns (probability, liquidity, volume) and optional returns (depth, VWAP/slippage) when size is provided. It does not cover rate limits or authentication, but for a read-style tool this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no redundancy. The main purpose is stated first, followed by optional capabilities. Very efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a quote tool with no output schema, the description covers the main return fields (probability, liquidity, volume) and optional depth/slippage. It lacks explicit structure or format, but is sufficient for an agent to understand what data it will receive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema provides 100% parameter descriptions. The description adds value by explaining the optional size parameter enables VWAP/slippage estimation and that market_id and canonical_id serve different scopes (platform-specific vs cross-venue).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns live probability, liquidity, and volume for a prediction market across all venues, with optional depth and VWAP/slippage. This distinguishes it from siblings like get_arbitrage (arbitrage) and get_history (historical).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use guidance is provided. The description implies it is for live market stats across venues, but does not contrast with alternatives like get_unmet_demand or get_arbitrage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_unmet_demandAInspect
Find questions that users are searching for but no prediction market exists. Useful for discovering new market creation opportunities or identifying emerging topics with real trading interest.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Lookback window in days (default 7) | |
| limit | No | Max results (default 20) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It indicates a read-only search behavior (finding existing data) but doesn't disclose details like authentication requirements, rate limits, or any side effects. The description is minimal but not misleading.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no redundancy. The first sentence states the action clearly, and the second adds value by specifying use cases. Every word is purposeful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with 2 parameters and no output schema, the description covers purpose and usage context well. It could be more complete by mentioning what the output contains (e.g., list of questions with scores), but this is not critical for tool selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description does not add any additional meaning beyond what the schema already provides for the 'days' and 'limit' parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'find' and the resource 'questions that users are searching for but no prediction market exists'. It distinguishes itself from siblings like get_quote (price quotes) and get_arbitrage (arbitrage opportunities) by focusing on unmet demand for new markets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The second sentence explicitly mentions two use cases: 'discovering new market creation opportunities' and 'identifying emerging topics with real trading interest'. While it doesn't explicitly say when not to use it or compare to siblings, the context implies its niche.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
route_marketAInspect
Find the best prediction market for a natural-language question or trading intent. Returns the best cross-venue match, current probability, liquidity, and any arbitrage opportunity between venues.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Natural language question or trading intent, e.g. "Will BTC reach $200k in 2025?" or "Fed rate cut September" |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so description carries full burden. It describes the tool as a query/read operation that returns market data, but does not disclose side effects, permissions, or constraints. The behavior is clear enough for a search tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is a single, front-loaded sentence that efficiently conveys purpose and outputs. Every word adds value, with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the single parameter and no output schema, the description adequately covers what the tool does and what it returns. However, it could be more explicit about the output structure (e.g., fields returned) to fully compensate for the missing output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a description for parameter 'q'. The tool description adds concrete examples (e.g., 'Will BTC reach $200k in 2025?') that clarify the parameter's natural-language format, providing value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool finds the best prediction market for a natural-language question and lists specific outputs (best match, probability, liquidity, arbitrage). It distinguishes from sibling tools like execute_url and get_arbitrage by focusing on routing a query to the best venue.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies use when you have a natural-language question, but does not explicitly state when to avoid it or compare with alternatives like get_arbitrage or get_quote. No when-not guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!