Prediction Market X Sentiment MCP
An MCP server that provides live sentiment scores for Polymarket and Kalshi prediction markets by analyzing X (Twitter) chatter using Grok. It offers free access to daily scores and paid access to detailed sentiment analysis, shifts, and market briefs via the x402 payment protocol on Base.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://prediction-bot-iggf.onrender.com/mcpWhat its tools do
9 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Can change data (4)
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Retrieve latest daily X-sentiment scores for tracked prediction markets
- Get full Grok sentiment scores (-100 to 100) for specific market questions
- Analyze sentiment shifts compared to prior cached scores
- Obtain market briefs with scores, catalysts, and live odds
Source and maintenance
- Maintenance checked
Protocol and capabilities
- Server
- prediction-bot 0.2.0
- MCP protocol negotiated in check
- 2025-11-25
- Tools
- 9 advertised
- Resources
- 0 advertised
- Resource templates
- 0 advertised
- Prompts
- 0 advertised
{
"tools": {
"listChanged": false
},
"prompts": {
"listChanged": false
},
"resources": {
"subscribe": false,
"listChanged": false
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
9 advertised
get_daily_scores — Daily market scores (free)
Free. Latest daily X (Twitter) sentiment score for each prediction market we track (Polymarket), with the change since the previous day, the catalyst and the market's Yes price. For a fresh score on any other question use get_market_sentiment.
{
"type": "object",
"title": "get_daily_scoresArguments",
"properties": {}
}{
"type": "object",
"$defs": {
"ScoredMarket": {
"type": "object",
"title": "ScoredMarket",
"properties": {
"label": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Label",
"default": null,
"description": "Short market label"
},
"score": {
"anyOf": [
{
"type": "integer"
},
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Score",
"default": null,
"description": "X sentiment: -100 very bearish .. +100 very bullish"
},
"shift": {
"anyOf": [
{
"type": "integer"
},
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Shift",
"default": null,
"description": "score minus score_before"
},
"stale": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Stale",
"default": null,
"description": "True when the score is more than 36 hours old"
},
"catalyst": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Catalyst",
"default": null,
"description": "One-sentence driver of the chatter"
},
"question": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Question",
"default": null,
"description": "Market question"
},
"market_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Market Id",
"default": null,
"description": "Polymarket market id"
},
"scored_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Scored At",
"default": null,
"description": "ISO-8601 UTC time of the score"
},
"score_before": {
"anyOf": [
{
"type": "integer"
},
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Score Before",
"default": null,
"description": "Previous daily score, if any"
},
"volume_signal": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Volume Signal",
"default": null,
"description": "rising, falling or flat"
},
"prior_scored_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Prior Scored At",
"default": null
},
"polymarket_yes_price": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Polymarket Yes Price",
"default": null,
"description": "Polymarket Yes price (0..1) at scoring time"
}
},
"additionalProperties": true
}
},
"title": "DailyScores",
"properties": {
"note": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Note",
"default": null
},
"as_of": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "As Of",
"default": null,
"description": "Time of the newest score"
},
"count": {
"anyOf": [
{
"type": "integer"
},
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Count",
"default": null
},
"markets": {
"type": "array",
"items": {
"$ref": "#/$defs/ScoredMarket"
},
"title": "Markets"
}
},
"additionalProperties": true
}{
"title": "Daily market scores (free)",
"readOnlyHint": true,
"openWorldHint": true
}get_catalog — Route catalog (free)
Free. Machine-readable catalog of every route, price, network and pay-to address.
{
"type": "object",
"title": "get_catalogArguments",
"properties": {}
}{
"type": "object",
"title": "Catalog",
"properties": {
"free": {
"anyOf": [
{
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
},
{
"type": "null"
}
],
"title": "Free",
"default": null,
"description": "Free routes"
},
"paid": {
"anyOf": [
{
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
},
{
"type": "null"
}
],
"title": "Paid",
"default": null,
"description": "Paid routes with prices"
},
"asset": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Asset",
"default": null
},
"pay_to": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Pay To",
"default": null
},
"network": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Network",
"default": null,
"description": "Payment network (CAIP-2), e.g. eip155:8453 for Base"
},
"service": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Service",
"default": null
},
"base_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Base Url",
"default": null
}
},
"additionalProperties": true
}{
"title": "Route catalog (free)",
"readOnlyHint": true,
"openWorldHint": true
}get_pricing — Current prices (free)
Free. Current USDC prices for the paid tools.
{
"type": "object",
"title": "get_pricingArguments",
"properties": {}
}{
"type": "object",
"title": "Pricing",
"properties": {
"ladder": {
"anyOf": [
{
"type": "object",
"additionalProperties": true
},
{
"type": "null"
}
],
"title": "Ladder",
"default": null
},
"network": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Network",
"default": null
},
"currency": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Currency",
"default": null
},
"price_lite": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Price Lite",
"default": null,
"description": "Price of /top and /shift, e.g. $0.35"
},
"price_brief": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Price Brief",
"default": null,
"description": "Price of /sentiment and /brief, e.g. $0.35"
}
},
"additionalProperties": true
}{
"title": "Current prices (free)",
"readOnlyHint": true,
"openWorldHint": true
}get_sample — Example response (free)
Free. Static example of a sentiment response (not live data) to preview the shape.
{
"type": "object",
"title": "get_sampleArguments",
"properties": {}
}{
"type": "object",
"title": "Sample",
"properties": {
"demo": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Demo",
"default": null
},
"note": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Note",
"default": null
},
"example_request": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Example Request",
"default": null
},
"example_response": {
"anyOf": [
{
"type": "object",
"additionalProperties": true
},
{
"type": "null"
}
],
"title": "Example Response",
"default": null
}
},
"additionalProperties": true
}{
"title": "Example response (free)",
"readOnlyHint": true,
"openWorldHint": true
}get_health — Service status (free)
Free. Service status, prices and the routes available.
{
"type": "object",
"title": "get_healthArguments",
"properties": {}
}{
"type": "object",
"title": "Health",
"properties": {
"routes": {
"anyOf": [
{
"type": "object",
"additionalProperties": true
},
{
"type": "null"
}
],
"title": "Routes",
"default": null
},
"status": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Status",
"default": null
},
"network": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Network",
"default": null
},
"price_lite": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Price Lite",
"default": null
},
"price_brief": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Price Brief",
"default": null
}
},
"additionalProperties": true
}{
"title": "Service status (free)",
"readOnlyHint": true,
"openWorldHint": true
}get_top_markets — Most-discussed markets on X
Paid (see get_pricing). The three Polymarket/Kalshi markets most discussed on X right now, each with a sentiment score (-100..100), catalyst and volume trend.
{
"type": "object",
"title": "get_top_marketsArguments",
"properties": {}
}{
"type": "object",
"$defs": {
"PaymentOption": {
"type": "object",
"title": "PaymentOption",
"properties": {
"asset": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Asset",
"default": null
},
"pay_to": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Pay To",
"default": null
},
"scheme": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Scheme",
"default": null
},
"network": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Network",
"default": null
},
"amount_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Amount Usd",
"default": null
},
"amount_atomic": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Amount Atomic",
"default": null
}
},
"additionalProperties": true
}
},
"title": "TopMarkets",
"properties": {
"url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Url",
"default": null
},
"error": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Error",
"default": null,
"description": "Set when a spend cap blocked the call"
},
"accepts": {
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/$defs/PaymentOption"
}
},
{
"type": "null"
}
],
"title": "Accepts",
"default": null
},
"markets": {
"anyOf": [
{
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
}
},
{
"type": "null"
}
],
"title": "Markets",
"default": null,
"description": "Up to 3 markets, each with score, catalyst, volume_signal"
},
"price_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Price Usd",
"default": null
},
"scored_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Scored At",
"default": null
},
"how_to_pay": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "How To Pay",
"default": null
},
"payment_required": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Payment Required",
"default": null,
"description": "True when no payment was made; accepts and how_to_pay say how to pay"
}
},
"additionalProperties": true
}{
"title": "Most-discussed markets on X",
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}get_sentiment_shift — Sentiment change for a market
Paid (see get_pricing). Change in X sentiment for a market question since its previous score, with both timestamps and the catalyst.
{
"type": "object",
"title": "get_sentiment_shiftArguments",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"title": "Q",
"maxLength": 200,
"minLength": 1,
"description": "A Polymarket or Kalshi market question in plain words, e.g. 'Will the Fed cut rates in October 2026'. Up to 200 characters."
}
}
}{
"type": "object",
"$defs": {
"PaymentOption": {
"type": "object",
"title": "PaymentOption",
"properties": {
"asset": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Asset",
"default": null
},
"pay_to": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Pay To",
"default": null
},
"scheme": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Scheme",
"default": null
},
"network": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Network",
"default": null
},
"amount_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Amount Usd",
"default": null
},
"amount_atomic": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Amount Atomic",
"default": null
}
},
"additionalProperties": true
}
},
"title": "SentimentShift",
"properties": {
"url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Url",
"default": null
},
"error": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Error",
"default": null,
"description": "Set when a spend cap blocked the call"
},
"shift": {
"anyOf": [
{
"type": "integer"
},
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Shift",
"default": null
},
"accepts": {
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/$defs/PaymentOption"
}
},
{
"type": "null"
}
],
"title": "Accepts",
"default": null
},
"catalyst": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Catalyst",
"default": null
},
"question": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Question",
"default": null
},
"price_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Price Usd",
"default": null
},
"score_now": {
"anyOf": [
{
"type": "integer"
},
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Score Now",
"default": null
},
"scored_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Scored At",
"default": null
},
"how_to_pay": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "How To Pay",
"default": null
},
"score_before": {
"anyOf": [
{
"type": "integer"
},
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Score Before",
"default": null
},
"prior_scored_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Prior Scored At",
"default": null
},
"payment_required": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Payment Required",
"default": null,
"description": "True when no payment was made; accepts and how_to_pay say how to pay"
}
},
"additionalProperties": true
}{
"title": "Sentiment change for a market",
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}get_market_sentiment — Live sentiment for a market
Paid (see get_pricing). Fresh X (Twitter) sentiment for any Polymarket or Kalshi market question: score -100..100, the catalyst driving the chatter and the volume trend.
{
"type": "object",
"title": "get_market_sentimentArguments",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"title": "Q",
"maxLength": 200,
"minLength": 1,
"description": "A Polymarket or Kalshi market question in plain words, e.g. 'Will the Fed cut rates in October 2026'. Up to 200 characters."
}
}
}{
"type": "object",
"$defs": {
"PaymentOption": {
"type": "object",
"title": "PaymentOption",
"properties": {
"asset": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Asset",
"default": null
},
"pay_to": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Pay To",
"default": null
},
"scheme": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Scheme",
"default": null
},
"network": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Network",
"default": null
},
"amount_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Amount Usd",
"default": null
},
"amount_atomic": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Amount Atomic",
"default": null
}
},
"additionalProperties": true
}
},
"title": "MarketSentiment",
"properties": {
"url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Url",
"default": null
},
"error": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Error",
"default": null,
"description": "Set when a spend cap blocked the call"
},
"score": {
"anyOf": [
{
"type": "integer"
},
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Score",
"default": null,
"description": "-100 very bearish .. +100 very bullish"
},
"accepts": {
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/$defs/PaymentOption"
}
},
{
"type": "null"
}
],
"title": "Accepts",
"default": null
},
"catalyst": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Catalyst",
"default": null
},
"question": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Question",
"default": null
},
"price_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Price Usd",
"default": null
},
"scored_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Scored At",
"default": null
},
"how_to_pay": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "How To Pay",
"default": null
},
"volume_signal": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Volume Signal",
"default": null,
"description": "rising, falling or flat"
},
"payment_required": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Payment Required",
"default": null,
"description": "True when no payment was made; accepts and how_to_pay say how to pay"
}
},
"additionalProperties": true
}{
"title": "Live sentiment for a market",
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}get_market_brief — Market brief with live odds
Paid (see get_pricing). Full brief for a market question: score, catalyst, volume trend, change since the previous score, a one-line summary and live Polymarket and Kalshi odds.
{
"type": "object",
"title": "get_market_briefArguments",
"required": [
"q"
],
"properties": {
"q": {
"type": "string",
"title": "Q",
"maxLength": 200,
"minLength": 1,
"description": "A Polymarket or Kalshi market question in plain words, e.g. 'Will the Fed cut rates in October 2026'. Up to 200 characters."
}
}
}{
"type": "object",
"$defs": {
"PaymentOption": {
"type": "object",
"title": "PaymentOption",
"properties": {
"asset": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Asset",
"default": null
},
"pay_to": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Pay To",
"default": null
},
"scheme": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Scheme",
"default": null
},
"network": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Network",
"default": null
},
"amount_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Amount Usd",
"default": null
},
"amount_atomic": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Amount Atomic",
"default": null
}
},
"additionalProperties": true
}
},
"title": "MarketBrief",
"properties": {
"url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Url",
"default": null
},
"odds": {
"anyOf": [
{
"type": "object",
"additionalProperties": true
},
{
"type": "null"
}
],
"title": "Odds",
"default": null,
"description": "Live Polymarket and Kalshi Yes prices for the matched market"
},
"error": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Error",
"default": null,
"description": "Set when a spend cap blocked the call"
},
"score": {
"anyOf": [
{
"type": "integer"
},
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Score",
"default": null,
"description": "-100 very bearish .. +100 very bullish"
},
"shift": {
"anyOf": [
{
"type": "integer"
},
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Shift",
"default": null,
"description": "Change since the previous score"
},
"accepts": {
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/$defs/PaymentOption"
}
},
{
"type": "null"
}
],
"title": "Accepts",
"default": null
},
"summary": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Summary",
"default": null,
"description": "One-line summary"
},
"catalyst": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Catalyst",
"default": null
},
"question": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Question",
"default": null
},
"price_usd": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Price Usd",
"default": null
},
"scored_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Scored At",
"default": null
},
"how_to_pay": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "How To Pay",
"default": null
},
"score_before": {
"anyOf": [
{
"type": "integer"
},
{
"type": "number"
},
{
"type": "null"
}
],
"title": "Score Before",
"default": null
},
"volume_signal": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Volume Signal",
"default": null,
"description": "rising, falling or flat"
},
"payment_required": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Payment Required",
"default": null,
"description": "True when no payment was made; accepts and how_to_pay say how to pay"
}
},
"additionalProperties": true
}{
"title": "Market brief with live odds",
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}Prompts
0 advertised
Resources
0 advertised
90-day uptime
A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.
- 2026-11-07: 1 of 1 checks answered
- 2026-11-09: 1 of 1 checks answered
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 907 ms
- 95th percentile latency
- 907 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 907 ms · metadata changed · 9 tool(s), 0 resource(s), 0 resource template(s), 0 prompt(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http prediction-market-x-sentiment-mcp-onrender https://prediction-bot-iggf.onrender.com/mcpCodex
codex mcp add prediction-market-x-sentiment-mcp-onrender --url https://prediction-bot-iggf.onrender.com/mcpCursor
{
"mcpServers": {
"prediction-market-x-sentiment-mcp-onrender": {
"url": "https://prediction-bot-iggf.onrender.com/mcp"
}
}
}Cline
{
"mcpServers": {
"prediction-market-x-sentiment-mcp-onrender": {
"type": "streamableHttp",
"url": "https://prediction-bot-iggf.onrender.com/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"prediction-market-x-sentiment-mcp-onrender": {
"type": "http",
"url": "https://prediction-bot-iggf.onrender.com/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http prediction-market-x-sentiment-mcp-onrender https://prediction-bot-iggf.onrender.com/mcpClaude Desktop
https://prediction-bot-iggf.onrender.com/mcpWindsurf
{
"mcpServers": {
"prediction-market-x-sentiment-mcp-onrender": {
"serverUrl": "https://prediction-bot-iggf.onrender.com/mcp"
}
}
}Let your agent find its tools
Find servers like Prediction Market X Sentiment MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.