PinnWire — Pinnacle Odds, Price Drops & No-Vig Fair Prices
Live and prematch Pinnacle odds, price drops and no-vig fair prices. Free demo access, no key.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"pinnacle-odds": {
"url": "https://pinnwire.com/mcp"
}
}
}Puntos de conexión remotos
https://pinnwire.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (7)
🟢get_live_odds(sport_id, include_specials, max_events)
Current live (in-play) sports betting odds from Pinnacle, the sharp bookmaker whose prices arbitrage scanners, betting models and prediction markets treat as the market reference. Returns available decimal moneylines/match-winner prices, spreads/handicaps, totals/over-under and team totals per period, plus optional props & specials. Use for live odds displays, +EV / expected-value screens, model features, or the Pinnacle leg of a cross-book comparison. Not a multi-book aggregator, historical archive, or bet-placement tool.
Esquema de entrada
{
"type": "object",
"properties": {
"sport_id": {
"type": "integer",
"description": "Sport identifier: 1 Soccer, 2 Tennis, 3 Basketball, 4 Hockey, 5 Football, 6 Baseball, 7 Rugby, 8 MMA, 9 Boxing, 10 Volleyball/Handball, 11 Esports, 12 Golf, 13 Cricket. Call list_sports when unknown."
},
"include_specials": {
"type": "boolean",
"description": "Also include currently published player props, team props, exact-score markets, futures and other specials"
},
"max_events": {
"type": "integer",
"description": "Max events returned. Default 25, max 100"
}
},
"required": [
"sport_id"
]
}🟢get_prematch_odds(sport_id, include_specials, max_events)
Current prematch (pregame / upcoming-match) Pinnacle odds for one sport — sharp lines for handicapping, expected-value screens and model features. Same shape as get_live_odds. Callers can store snapshots for their own line-history or closing-line-value analysis; this is not a historical opening/closing-odds archive.
Esquema de entrada
{
"type": "object",
"properties": {
"sport_id": {
"type": "integer",
"description": "Sport identifier: 1 Soccer, 2 Tennis, 3 Basketball, 4 Hockey, 5 Football, 6 Baseball, 7 Rugby, 8 MMA, 9 Boxing, 10 Volleyball/Handball, 11 Esports, 12 Golf, 13 Cricket. Call list_sports when unknown."
},
"include_specials": {
"type": "boolean",
"description": "Also include currently published props & specials"
},
"max_events": {
"type": "integer",
"description": "Max events returned. Default 25, max 100"
}
},
"required": [
"sport_id"
]
}🟢get_event(event_id)
Current full odds detail for one event (live, prematch or special) by event_id. Use after get_live_odds / get_prematch_odds returns the id.
Esquema de entrada
{
"type": "object",
"properties": {
"event_id": {
"type": "integer",
"description": "Event id from another odds tool"
}
},
"required": [
"event_id"
]
}🟢get_prematch_lines(event_id, market_type)
Compact current full-game lines for one prematch event (no period structure). Optional market_type filter: money_line | spreads | totals | team_total.
Esquema de entrada
{
"type": "object",
"properties": {
"event_id": {
"type": "integer",
"description": "Event id from another odds tool"
},
"market_type": {
"type": "string",
"enum": [
"money_line",
"spreads",
"totals",
"team_total"
],
"description": "Limit the response to one market type"
}
},
"required": [
"event_id"
]
}🟢get_drops(mode, min_drop_pct, sport_id, limit)
Recent Pinnacle price DROPS — the dropping-odds / odds-shortening / steam-move signal: every outcome whose price fell, with from/to decimal prices, drop %, and nvp, the no-vig decimal fair price (1/nvp = fair implied probability — a de-vigged baseline for arbitrage checks, +EV / value betting, prediction-market pricing and model calibration; an estimate, not a guarantee). Buffer covers roughly the last 3 hours. Does not compare other sportsbooks or prove a move is informed money.
Esquema de entrada
{
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"live",
"prematch"
],
"description": "Live or prematch drops. Default live"
},
"min_drop_pct": {
"type": "number",
"description": "Minimum price decrease in percent. Default 2 for this tool (REST default is 5)"
},
"sport_id": {
"type": "integer",
"description": "Sport identifier: 1 Soccer, 2 Tennis, 3 Basketball, 4 Hockey, 5 Football, 6 Baseball, 7 Rugby, 8 MMA, 9 Boxing, 10 Volleyball/Handball, 11 Esports, 12 Golf, 13 Cricket. Call list_sports when unknown."
},
"limit": {
"type": "integer",
"description": "Max drop records returned. Default 25, max 100"
}
}
}🟢get_health
Current feed status: events in store and last_odds_update_seconds_ago (feed-update age). generated_at is response time, not the source odds tick.
Esquema de entrada
{
"type": "object",
"properties": {}
}🟢list_sports
Map the 13 covered sports to sport_id values before calling the odds tools. Does not consume API quota.
Esquema de entrada
{
"type": "object",
"properties": {}
}Comunidad
Evidencia