Prediction Market MCP
This server provides prediction-market analysis tools: probability estimates, Kelly sizing, market scanning, ensemble analysis, and service info.
prediction_market_estimate: get a probability estimate, confidence, reasoning, and recommended trade direction for a question.prediction_market_size: calculate Kelly-optimal position sizing using estimated probability, market price, confidence, and optional bankroll/category.prediction_market_scan: submit multiple markets to be filtered and ranked by tradeable edge with Kelly sizing.prediction_market_ensemble: run the full pipeline combining probability estimation, social signal detection, ensemble weighting, Kelly sizing, and market filters.prediction_market_info: read free service information, endpoints, pricing, and methodology; no payment required.Most tools require x402 micropayments in USDC on Base, with costs ranging from $0.05 to $0.15.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Prediction Market MCPestimate the probability of a Fed rate cut in September"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Prediction Market MCP
A legacy TypeScript MCP client that connects an MCP host to a separate prediction-market research API. Maintained by King Made as the source and support destination for the historical npm package @kingmadellc/prediction-market-mcp@1.0.1.
Maintenance mode · experimental client · no automatic payments.
How it works
flowchart LR
A[Your MCP host] -->|stdio| B[This client]
B -->|HTTPS request| C[Separate hosted API]
C --> D{Response}
D -->|Success| E[JSON research output]
D -->|HTTP 402| F[Payment-required information]
E --> A
F --> AThe repository contains the client, not the hosted service. It does not contain a wallet, sign a payment, place trades, or retry an HTTP 402 response with payment authorization. Requests send the supplied tool arguments to the external API configured in src/index.ts.
Related MCP server: PredictionMarketsPicks Quant
Available tools
Tool | Client request | Purpose |
|
| Request a probability estimate |
|
| Request a sizing calculation |
|
| Submit markets for ranking |
|
| Request combined analysis |
|
| Read service information |
Service availability, paid execution, and previously advertised performance figures have not been validated end to end. The client includes historical price strings; use the actual service response for current requirements rather than treating those strings as an offer.
Use the historical npm release
Requires Node.js 18 or newer, as declared in the package metadata. Repository CI uses Node.js 22.
For an MCP host that accepts a command and arguments, configure:
{
"mcpServers": {
"prediction-market": {
"command": "npx",
"args": ["-y", "@kingmadellc/prediction-market-mcp@1.0.1"]
}
}
}Alternatively, install the command globally:
npm install -g @kingmadellc/prediction-market-mcp@1.0.1The published npm version is historical. Commits to this repository do not update it automatically. The stdio process is designed to be launched by an MCP host, not opened as a website.
Develop locally
git clone https://github.com/kingmadellc/prediction-market-mcp.git
cd prediction-market-mcp
npm ci --ignore-scripts
npm run build
npm pack --dry-runPoint your MCP host at node with the absolute path to the resulting dist/index.js when testing your checkout. npm run dev starts the TypeScript entry point for development.
Path | Purpose |
| Tool definitions, API routing, and stdio server |
| Compiled CLI entry point |
| Command, package metadata, and scripts |
| Build, package inspection, and dependency audit |
CI does not call the service or publish to npm. No live financial transaction is part of repository verification.
Support and license
Report reproducible client bugs, including the tool name and sanitized error output. Do not include credentials, wallet keys, account exports, or private financial data. No response-time commitment is offered for this legacy client.
MIT license, matching the existing package declaration. Preserve the license notice when redistributing the client. The separate hosted API has its own service requirements.
Available Tools
5 toolsprediction_market_ensembleB
Full prediction market analysis pipeline — Kalshalyst probability estimation + Xpulse social signal detection + ensemble weighting (0.75/0.25 Kalshalyst/Xpulse) + Kelly position sizing + market filter. Includes the complete prediction workflow with experimental estimation and signal detection. Costs $0.15 via x402 micropayment (USDC on Base).
| Name | Required | Description | Default |
|---|---|---|---|
| context | No | Additional context to improve analysis (optional) | |
| category | No | Market category (optional) | |
| question | Yes | The prediction market question | |
| market_price | Yes | Current market price as a probability (0.0 to 1.0) | |
| xpulse_posts | No | X/Twitter posts related to the question for social signal analysis (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full burden. It does add useful behavioral context absent from structured fields: the $0.15 x402/USDC-on-Base cost, the internal model names, and the 0.75/0.25 ensemble weighting. However, it omits auth requirements for payment, latency expectations, failure behavior, and what happens if xpulse_posts is missing.
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?
Front-loads the pipeline name and then lists components, which is reasonable, but the component enumeration plus cost sentence is dense and arguably pads rather than clarifies. It is not wasteful enough to score lower, but not tight enough for 4-5.
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 complex multi-model pipeline with 5 params, no annotations, and no output schema, the description covers the what and the cost but not return shape, error modes, or the semantics of the ensemble output. It is adequate but leaves significant gaps for correct invocation.
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 every parameter is already documented in the schema including the enum category. The description mentions Xpulse social signals, which loosely connects to xpulse_posts, but adds no format, range, or constraint detail beyond the schema. Baseline 3 is appropriate.
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?
States a specific pipeline: probability estimation, social signal detection, ensemble weighting, and Kelly sizing. It is richer than siblings like prediction_market_estimate, but it never explicitly states what it does NOT do compared to them, so an agent cannot fully disambiguate without opening schemas.
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 this is a full pipeline but gives no when-to-use guidance, no when-not-to-use, and no indication of when the cheaper single-purpose siblings (estimate, size, scan, info) should be preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prediction_market_estimateA
Experimental probability estimate for a prediction market question. Historical performance claims have not been independently reproduced for this client. Returns probability estimate, confidence, reasoning, and recommended trade direction. Costs $0.05 via x402 micropayment (USDC on Base).
| Name | Required | Description | Default |
|---|---|---|---|
| context | No | Additional context or background information to refine the estimate (optional) | |
| category | No | Market category for improved estimation (optional). Supported: policy, crypto, fed, geopolitics, technology, markets, politics, economics, other | |
| question | Yes | The prediction market question to estimate (e.g. 'Will the Fed cut rates by June 2026?') | |
| market_price | Yes | Current market price as a probability (0.0 to 1.0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the estimate is experimental, that historical performance claims are unverified, what the return includes, and the cost mechanism ($0.05 x402 USDC on Base). This is strong behavioral context. It doesn't state failure modes, rate limits, or whether the micropayment is per-call or per-success, leaving minor gaps.
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?
Four sentences, front-loaded with the core purpose, then the experimental caveat, then the return values, then the cost. No wasted words; each sentence adds value.
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 no output schema and no annotations, the description covers purpose, caveats, return fields, and cost. It is nearly complete. The only minor gap is the absence of guidance on when to use this versus siblings like prediction_market_ensemble, but overall it provides enough for an agent to call correctly.
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 all parameters (question, market_price, context, category) are already documented in the schema. The description adds no additional parameter semantics beyond what the schema provides. Baseline 3 is appropriate when schema does the heavy lifting.
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?
States a clear verb+resource: it produces a probability estimate for a prediction market question. It distinguishes itself from siblings like prediction_market_ensemble or prediction_market_size by being a single-model estimate, though it doesn't explicitly name an alternative. Purpose is unambiguous.
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 the tool is for estimating probabilities on prediction market questions, but it doesn't say when to choose this over prediction_market_ensemble or prediction_market_scan. No explicit when/when-not guidance or prerequisites are stated. Usage is inferred from the name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prediction_market_infoA
Get information about the Prediction Market Analyst service — available endpoints, pricing, methodology overview, and how x402 payment works. Free, no payment required.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full load and does disclose a real behavioral trait: the call is free and requires no payment, which matters because the siblings clearly involve x402 payment. It does not explicitly state read-only/no-side-effect status, but for a documentation-style fetch the cost/auth disclosure is the meaningful missing piece and it is present.
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?
A single front-loaded sentence that states purpose, content, and cost with no filler. Every clause 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?
For a zero-parameter discovery tool with no output schema, the description is nearly sufficient: it names what the response contains and removes the payment concern. A brief note on when in the workflow to call it would close the remaining gap.
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?
The tool takes zero parameters and the schema is empty, so there is nothing to disambiguate; baseline is 4. The description correctly implies no inputs are needed.
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?
Names a specific verb and resource ('Get information about the Prediction Market Analyst service') and enumerates the returned content (endpoints, pricing, methodology, x402 payment). This clearly separates it from the analytic siblings (estimate, size, scan, ensemble), which compute results rather than describe the service.
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 'Free, no payment required' note implies a zero-cost discovery call, but there is no explicit statement of when to call this versus the sibling tools (e.g. 'call this first to learn pricing/endpoints before invoking the paid analytic tools'). Usage is implied, not specified.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prediction_market_scanB
Scan and rank multiple prediction markets by tradeable edge. Applies the market filter (skip rules remove low-quality markets, boost rules amplify high-edge categories). Returns ranked opportunities with Kelly sizing and filter status. Costs $0.10 via x402 micropayment (USDC on Base).
| Name | Required | Description | Default |
|---|---|---|---|
| markets | Yes | Array of markets to scan and rank |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral disclosure burden. It does disclose useful traits: filter rules (skip/boost), output contents (ranked opportunities with Kelly sizing and filter status), and cost ($0.10 via x402 micropayment in USDC on Base). However, it omits auth requirements beyond payment, rate limits, and safety profile, so it is not fully 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 four sentences, front-loaded with the core action, then filter behavior, output format, and cost. Each sentence contributes useful information with no obvious waste. It could be slightly tighter, but it is well-structured and appropriately sized.
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?
There is no output schema and no annotations, so the description must carry more weight. It explains what is returned (ranked opportunities with Kelly sizing and filter status) and the cost model, which is important. It is largely complete for a scan tool, though usage context could be richer.
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 documents the single 'markets' parameter and its nested fields. The description adds no param-specific syntax or format details beyond what the schema provides. Baseline 3 is appropriate when the schema does the heavy lifting.
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 states a specific verb and resource: 'Scan and rank multiple prediction markets by tradeable edge.' It clearly defines the scope as batch scanning of multiple markets. However, it does not explicitly differentiate from sibling tools like prediction_market_estimate or prediction_market_size, leaving that distinction to the agent.
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?
There is no explicit guidance on when to use this tool versus alternatives, nor any when-not-to-use conditions. The name and description imply batch scanning, but the agent must infer that from context rather than being told.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prediction_market_sizeA
Kelly-optimal position sizing for a prediction market trade. Uses configured Kelly parameters (α=0.75, conf_exp=1.0); no performance improvement is guaranteed. Applies market filter rules (skip fed/ultra-low/short-duration, boost policy/tech/markets). Costs $0.08 via x402 micropayment (USDC on Base).
| Name | Required | Description | Default |
|---|---|---|---|
| bankroll | No | Total available capital in USD for kelly sizing (default: 200) | |
| category | No | Market category for filter application (optional) | |
| confidence | Yes | Your confidence in the estimate (0.0 to 1.0), typically from prediction_market_estimate | |
| market_price | Yes | Current market price as a probability (0.0 to 1.0) | |
| estimated_prob | Yes | Your estimated probability of the event (0.0 to 1.0), typically from prediction_market_estimate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it discloses the $0.08 x402/USDC-on-Base cost, the configured Kelly parameters (α=0.75, conf_exp=1.0), and that market filter rules may skip or boost categories, which materially changes output. It omits auth/wallet requirements for x402 and the shape of what is returned.
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?
Three dense sentences, front-loaded with the core purpose, with no filler. The 'no performance improvement is guaranteed' disclaimer earns its place, though the sentence packs α/conf_exp, filter rules, and payment into a jargon-heavy block.
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 5-parameter mutation-style tool with no output schema and no annotations, the description covers cost, configuration, filtering behavior, and a risk disclaimer. The main gap is that the returned value (e.g., position size/fraction) is never characterized.
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 all five parameters are already documented, establishing a baseline of 3. The description adds only indirect context – the Kelly parameters and category filter behavior that 'category' feeds into – without explaining units or formats 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?
States a specific verb and resource: 'Kelly-optimal position sizing for a prediction market trade.' This is clearly distinct in intent from siblings like estimate/scan/ensemble/info, though the description never names or contrasts those alternatives explicitly.
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?
Usage is only implied: sizing logically follows an estimate, and the schema notes inputs 'typically from prediction_market_estimate.' The description itself gives no explicit when-to-use, when-not, or transition guidance relative to the sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
v1.0.1- First observed
prediction_market_ensemble - First observed
prediction_market_estimate - First observed
prediction_market_info - First observed
prediction_market_scan - First observed
prediction_market_size
TDQS
Scored across 5 tools
Each tool has a distinct primary purpose: estimate for single-question probability, size for position sizing, scan for ranking multiple markets, ensemble for a full pipeline, and info for service details. However, ensemble overlaps with estimate and size by including them, which could confuse agents choosing between atomic and composite options.
All tools follow the same snake_case pattern with a consistent 'prediction_market_' prefix followed by a clear action or noun (estimate, size, scan, ensemble, info). This makes the set highly predictable and readable.
Five tools is well-scoped for a prediction market analysis service, with each tool earning its place by covering a distinct step in the workflow from information to estimation, sizing, scanning, and full pipeline execution.
The surface covers the core analysis lifecycle: service info, single-market estimation, position sizing, multi-market scanning, and an ensemble pipeline. Minor gaps exist around raw market data retrieval or trade execution, but agents can work around these for the stated analysis purpose.
Maintenance
Related MCP Connectors
Prediction market data and crowd-sourced probability forecasts
Hosted MCP for Kalshi prediction markets: search, odds, order books, settlement rules, and trading.
Discover machine-payable APIs, probe x402 payment terms, and run seller operations. Non-custodial.
Sportsbook-derived no-vig fair value with confidence, provenance, and history over REST/MCP.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables interaction with the PolyMarket API to fetch prediction market data such as market information, prices, and historical data, with robust error handling and rate limit management.4142MIT
- AlicenseAqualityAmaintenancePrediction-market quant tools — expected value, Kelly sizing, Bayesian updating, odds conversion, base-rate gaps, cross-platform arbitrage, and mispricing edge — for Kalshi and Polymarket contracts, exposed as a remote MCP server.265 npmMIT
- AlicenseAqualityDmaintenanceEnables querying consolidated Bitcoin pricing, ML signals, funding skew, and market briefings via the BPE API, without HTTP boilerplate.517 npmMIT
- AlicenseAqualityCmaintenanceExposes a machine-callable proof-market surface for agents to submit proof requests, monitor market state, compare coordination regimes, and compose multi-step workflows with no human in the loop.5MIT