AI-driven DFS lineup optimizer for MLB & NBA — build FanDuel & DraftKings lineups via MCP.
Abgeleitet aus den Transporten, die dieser Eintrag deklariert (streamable-http). Ein Client, der hier nicht steht, ist damit nicht ausgeschlossen — Forge kann ihn nur nicht bestätigen.
Die Verifizierung bestätigt die Identität des Publishers (die Inhaberschaft am Repo), nicht die Sicherheit des Codes. Der Sicherheits-Scan deckt bekannte CVEs und verdächtige Installationsskripte ab.
Aus einem echten MCP-Handshake initialize → tools/list gegen den deklarierten Endpunkt gelesen. Es wurde nie ein Tool aufgerufen — tools/list ist der lesende Introspektionsaufruf, den das Protokoll dafür vorsieht. Es spiegelt wider, was der Server in diesem Moment angeboten hat; ein gehosteter Endpunkt ist an keine Version gebunden und kann sich ohne Ankündigung ändern.
https://v12dfs-production.up.railway.app/mcp34 Tools · 325 msagent_guideInjektionsrisikoAgent Guide
Self-serve onboarding: connect any agent (Claude/MCP or REST) to drive the
V12 motor, the same engine the dashboard agent uses. No auth. Returns
copy-paste MCP + REST config with a PLACEHOLDER key, the endpoint map, and the
generate body fields. Operators: issue each user their OWN key…Agent Guide Self-serve onboarding: connect any agent (Claude/MCP or REST) to drive the V12 motor, the same engine the dashboard agent uses. No auth. Returns copy-paste MCP + REST config with a PLACEHOLDER key, the endpoint map, and the generate body fields. Operators: issue each user their OWN key…
e each user their OWN key via
POST /v1/admin/create-key — never share one key.
### Responses:
**200**: Su…Für dieses Tool wurde kein Eingabeschema veröffentlicht.
health_checkHealth
### Responses:
**200**: Successful Response (Success Response)
Content-Type: application/json
**Example Response:**
```json
{
"status": "Status",
"version": "Version",
"timestamp": "Timestamp"
}
```Health ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "status": "Status", "version": "Version", "timestamp": "Timestamp" } ```
Für dieses Tool wurde kein Eingabeschema veröffentlicht.
health_v12Health V12
Deep health check for the V12 pipeline. Surfaces:
- last nightly regression run (pass/fail + per-slate deltas)
- regression baseline metadata
- recent preflight blockers (if any cached)
No auth required — monitoring endpoint.
### Responses:
**200**: Successful Response (Success Res…Health V12 Deep health check for the V12 pipeline. Surfaces: - last nightly regression run (pass/fail + per-slate deltas) - regression baseline metadata - recent preflight blockers (if any cached) No auth required — monitoring endpoint. ### Responses: **200**: Successful Response (Success Res…
Für dieses Tool wurde kein Eingabeschema veröffentlicht.
list_slatesGet Slates
List available V12 slates for today. Returns slate IDs, game counts, and lock times.
### Responses:
**200**: Successful Response (Success Response)
Content-Type: application/json
**422**: Validation Error
Content-Type: application/json
**Example Response:**
```json
{
"detail": [
{…Get Slates List available V12 slates for today. Returns slate IDs, game counts, and lock times. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **422**: Validation Error Content-Type: application/json **Example Response:** ```json { "detail": [ {…
| Parameter | Typ | Beschreibung |
|---|---|---|
| site | string | — |
| sport | string | — |
| playable | boolean | — |
| compact | boolean | — |
| limit | integer | — |
get_slate_playersGet Slate Players Endpoint
Get the V12 player pool for a specific slate ID.
### Responses:
**200**: Successful Response (Success Response)
Content-Type: application/json
**422**: Validation Error
Content-Type: application/json
**Example Response:**
```json
{
"detail": [
{
"loc": [],
"msg":…Get Slate Players Endpoint Get the V12 player pool for a specific slate ID. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **422**: Validation Error Content-Type: application/json **Example Response:** ```json { "detail": [ { "loc": [], "msg":…
| Parameter | Typ | Beschreibung |
|---|---|---|
| slate_id* | integer | — |
| compact | boolean | — |
| limit | integer | — |
slate_healthSlate Health
Pre-flight diagnostic for a slate. Returns whether odds, projections,
matchup, and FD master-session are ready BEFORE the agent invokes
/v1/generate.
Either slate_id or date is required. When slate_id is given, the slate
metadata is also returned (games list, lock times). When only d…Slate Health Pre-flight diagnostic for a slate. Returns whether odds, projections, matchup, and FD master-session are ready BEFORE the agent invokes /v1/generate. Either slate_id or date is required. When slate_id is given, the slate metadata is also returned (games list, lock times). When only d…
| Parameter | Typ | Beschreibung |
|---|---|---|
| slate_id | integer | — |
| date | string | — |
| site | string | — |
| sport | string | — |
| last_known_fingerprint | string | — |
| include_snapshot | boolean | — |
slate_refreshSlate Refresh
Re-fetch projections + odds + slate metadata for a date.
Writes to the configured store (Supabase in prod). Returns a summary
dict (date, slate_id, n_games, n_players, n_upserted, n_odds, backend).
Auth: requires X-API-Key OR X-Internal-Secret (cron use). This is a
write op that co…Slate Refresh Re-fetch projections + odds + slate metadata for a date. Writes to the configured store (Supabase in prod). Returns a summary dict (date, slate_id, n_games, n_players, n_upserted, n_odds, backend). Auth: requires X-API-Key OR X-Internal-Secret (cron use). This is a write op that co…
| Parameter | Typ | Beschreibung |
|---|---|---|
| date | string | — |
| sport | string | — |
| site | string | — |
slate_diffSlate Diff
Compute what changed since a previously-stored snapshot.
Body shape:
{
"slate_id": 32867,
"date": "2026-05-11",
"sport": "NBA",
"site": "FD",
"previous": {
"v": "v1",
"players": [{"id","name","status","salary","proj"}, ...],
"odds": [{"game","ou","spread","home_ml","away_ml"},…Slate Diff Compute what changed since a previously-stored snapshot. Body shape: { "slate_id": 32867, "date": "2026-05-11", "sport": "NBA", "site": "FD", "previous": { "v": "v1", "players": [{"id","name","status","salary","proj"}, ...], "odds": [{"game","ou","spread","home_ml","away_ml"},…
Für dieses Tool wurde kein Eingabeschema veröffentlicht.
list_presetsGet Presets
List the available strategy presets (gpp_pro_pattern, gpp_sniper, gpp_balanced, gpp_volume, cash_grinder, gpp_contrarian, gpp_mass_entry) with their configurations. No auth required.
### Responses:
**200**: Successful Response (Success Response)
Content-Type: application/json
**422**…Get Presets List the available strategy presets (gpp_pro_pattern, gpp_sniper, gpp_balanced, gpp_volume, cash_grinder, gpp_contrarian, gpp_mass_entry) with their configurations. No auth required. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **422**…
| Parameter | Typ | Beschreibung |
|---|---|---|
| sport | string | — |
generate_lineupsGenerate Lineups
### Responses:
**200**: Successful Response (Success Response)
Content-Type: application/json
**Example Response:**
```json
{
"status": "Status",
"generated_at": "Generated At",
"warnings": [],
"exposures": {},
"lineups": []
}
```
**422**: Validation Error
Content-Type: app…Generate Lineups ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "status": "Status", "generated_at": "Generated At", "warnings": [], "exposures": {}, "lineups": [] } ``` **422**: Validation Error Content-Type: app…
| Parameter | Typ | Beschreibung |
|---|---|---|
| date* | string | Slate date YYYY-MM-DD |
| sport | string | Sport engine to run: nba or mlb. |
| preset | string | Strategy preset key. |
| platform | string | V12 platform profile: fd or dk. |
| slate_id | integer | Specific slate ID from /v1/slates. Overrides date-based lookup. |
| contest_id | string | Optional contest handle for building an entry-update CSV from the user's existing contest entries. |
| entry_template_csv | string | Raw CSV of a FanDuel entries-upload-template the operator already downloaded. When present, the entry-upload is filled from its OWN entry_ids locally — no FanD… |
| contest_max_entries | integer | Max entries per user for the selected contest. Used to identify multi-entry mass GPPs (>=4) which keep the caller's preset. Field SIZE, not this, governs the M… |
| contest_field_size | integer | Total entries (field size) of the selected contest. Governs the MLB objective: field <= 10 -> max-mean (mlb_small_field_se); field > 10 -> ceiling (mlb_se_ceil… |
| contest_fallback | string | Escape hatch when a contest_id cannot be mapped to a slate (contest_slate_unresolved). 'slate_only' + an explicit slate_id builds on THAT slate and skips conte… |
| plan_only | boolean | When true, the server resolves preset / contest / authoritative slate / top-run-env / locks but does NOT run the optimizer. Returns a Plan response so the user… |
| fd_user_id | string | DEPRECATED on /v1/generate: fd_user_id is bound server-side to your API key (see /v1/admin/bind-fd-user). Body value is IGNORED on the public route unless X-In… |
| lineups | integer | Number of lineups (overrides preset default) |
| strategy | string | GPP or cash game strategy |
| style | string | — |
| runs | integer | Accepted for tier limits and response metadata. Portfolio quality is controlled by preset, candidate_pool_size, pool_oversample_multiplier, and simulation sett… |
| seed | integer | Random seed for reproducibility |
| locks | array | Players to lock in |
| avoids | array | Players to avoid |
| exposure_caps | object | Per-player exposure caps {name: 0.0-1.0} |
| max_hitter_exposure | number | Portfolio cap: max share of delivered lineups any ONE hitter may appear in (0.4 = 40%). Pitchers exempt. |
| max_pitcher_exposure | number | Portfolio cap: max share of delivered lineups any ONE pitcher may appear in. |
| auto_team_exposure_cap | number | Default per-team portfolio cap (share of lineups containing ANY given team). Per-team entries in team_exposure_caps win over it. |
| team_exposure_caps | object | Per-team portfolio caps, as [["COL",0.5],...] pairs or {"COL":0.5} dict. |
run_mlb_postmortemRun Mlb Postmortem
### Responses:
**200**: Successful Response (Success Response)
Content-Type: application/json
**Example Response:**
```json
{
"status": "Status",
"generated_at": "Generated At",
"date": "Date",
"game_id": "Game Id",
"entries": 1,
"field_lineups": 1,
"training_rows": 1,…Run Mlb Postmortem ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "status": "Status", "generated_at": "Generated At", "date": "Date", "game_id": "Game Id", "entries": 1, "field_lineups": 1, "training_rows": 1,…
| Parameter | Typ | Beschreibung |
|---|---|---|
| date* | string | Slate date YYYY-MM-DD |
| game_id* | string | V12 slate/game handle, e.g. 129715. |
| history_csv* | string | Raw FanDuel contest-history CSV content. |
| history_filename | string | — |
| upload_csvs | array | — |
| sabersim_csv | string | Optional external lineup export for comparison. |
| top_field_rank | integer | — |
| sync_supabase | boolean | Upsert simulator training rows to production store when configured. |
list_contestsContest Registry
List contest strategy registry entries for agents and the dashboard.
### Responses:
**200**: Successful Response (Success Response)
Content-Type: application/json
**422**: Validation Error
Content-Type: application/json
**Example Response:**
```json
{
"detail": [
{
"loc": []…Contest Registry List contest strategy registry entries for agents and the dashboard. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **422**: Validation Error Content-Type: application/json **Example Response:** ```json { "detail": [ { "loc": []…
| Parameter | Typ | Beschreibung |
|---|---|---|
| platform | string | — |
| sport | string | — |
list_live_contestsLive Contests
Return latest V12 contest context without backend identifiers.
### Responses:
**200**: Successful Response (Success Response)
Content-Type: application/json
**422**: Validation Error
Content-Type: application/json
**Example Response:**
```json
{
"detail": [
{
"loc": [],
"msg":…Live Contests Return latest V12 contest context without backend identifiers. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **422**: Validation Error Content-Type: application/json **Example Response:** ```json { "detail": [ { "loc": [], "msg":…
| Parameter | Typ | Beschreibung |
|---|---|---|
| platform | string | — |
| sport | string | — |
| compact | boolean | — |
| limit | integer | — |
contest_semaforoContest Semaforo
VIP-only: per-contest play/skip verdict from the owner's verified P&L
bands + structure gates + rake/fill math. See core/data/contest_semaforo.
### Responses:
**200**: Successful Response (Success Response)
Content-Type: application/json
**422**: Validation Error
Content-Type: a…Contest Semaforo VIP-only: per-contest play/skip verdict from the owner's verified P&L bands + structure gates + rake/fill math. See core/data/contest_semaforo. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **422**: Validation Error Content-Type: a…
| Parameter | Typ | Beschreibung |
|---|---|---|
| platform | string | — |
| sport | string | — |
| limit | integer | — |
scout_fieldScout Field
VIP-only (owner order 8/16): opponent-scouting profiles for the small
single-entry band. The owner's $65 table runs the SAME regulars nightly;
this returns each regular's fingerprint — days seen, avg score,
chalkiness (overlap with field consensus), favorite pitchers/bats and
head-to-h…Scout Field VIP-only (owner order 8/16): opponent-scouting profiles for the small single-entry band. The owner's $65 table runs the SAME regulars nightly; this returns each regular's fingerprint — days seen, avg score, chalkiness (overlap with field consensus), favorite pitchers/bats and head-to-h…
| Parameter | Typ | Beschreibung |
|---|---|---|
| contest | string | — |
| min_days | integer | — |
contest_adviceContest Advice
Advice for a concrete contest name. Resolves the name against the LIVE
lobby FIRST so a real live contest is never reported missing (the curated
registry is only a subset — that was the "$800 Wed MLB Home Run no existe"
bug), then layers registry strategy advice on top when a templa…Contest Advice Advice for a concrete contest name. Resolves the name against the LIVE lobby FIRST so a real live contest is never reported missing (the curated registry is only a subset — that was the "$800 Wed MLB Home Run no existe" bug), then layers registry strategy advice on top when a templa…
| Parameter | Typ | Beschreibung |
|---|---|---|
| name* | string | — |
| platform | string | — |
| sport | string | — |
fill_templateInjektionsrisikoFill Template
Fill a downloaded FanDuel/DK entries-template with already-generated
lineups WITHOUT re-running the optimizer — the MCP-callable equivalent of the
dashboard's fill_template. Keeps each entry row's leading columns (entry_id,
contest_id, fee) and replaces the roster-slot columns with a…Fill Template Fill a downloaded FanDuel/DK entries-template with already-generated lineups WITHOUT re-running the optimizer — the MCP-callable equivalent of the dashboard's fill_template. Keeps each entry row's leading columns (entry_id, contest_id, fee) and replaces the roster-slot columns with a…
lineups: Exfiltration-shaped instructionEach lineup = upload tokens in template roster-slot order.| Parameter | Typ | Beschreibung |
|---|---|---|
| template_csv* | string | Raw CSV of the entries-template (headers + entry rows). |
| lineups* | array | Each lineup = upload tokens in template roster-slot order. |
admin_issue_keyIssue Key
Idempotently issue a user's API key and ALWAYS return the paste-able
connect block. Returns the email's existing active key (or mints one) so a
user keeps a single key across dashboard reloads; with rotate=true, revokes
the existing keys and mints a fresh one. Admin-gated — the dashboard…Issue Key Idempotently issue a user's API key and ALWAYS return the paste-able connect block. Returns the email's existing active key (or mints one) so a user keeps a single key across dashboard reloads; with rotate=true, revokes the existing keys and mints a fresh one. Admin-gated — the dashboard…
| Parameter | Typ | Beschreibung |
|---|---|---|
| email* | string | — |
| tier | string | — |
| rotate | boolean | Revoke existing keys and mint a fresh one. |
betting_agent_guideBetting Agent Guide
How any agent uses the MLB betting tools + how to read the output.
### Responses:
**200**: Successful Response (Success Response)
Content-Type: application/jsonBetting Agent Guide How any agent uses the MLB betting tools + how to read the output. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
Für dieses Tool wurde kein Eingabeschema veröffentlicht.
betting_player_formPlayer Form
Streak / splits / recent form for any player ('racha de X').
### Responses:
**200**: Successful Response (Success Response)
Content-Type: application/json
**422**: Validation Error
Content-Type: application/json
**Example Response:**
```json
{
"detail": [
{
"loc": [],
"msg": "Me…Player Form Streak / splits / recent form for any player ('racha de X'). ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **422**: Validation Error Content-Type: application/json **Example Response:** ```json { "detail": [ { "loc": [], "msg": "Me…
| Parameter | Typ | Beschreibung |
|---|---|---|
| name* | string | — |
| season | integer | — |
betting_analyze_propAnalyze Prop
Model a single player's prop vs tonight's FanDuel line -> edge.
### Responses:
**200**: Successful Response (Success Response)
Content-Type: application/json
**422**: Validation Error
Content-Type: application/json
**Example Response:**
```json
{
"detail": [
{
"loc": [],
"msg":…Analyze Prop Model a single player's prop vs tonight's FanDuel line -> edge. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **422**: Validation Error Content-Type: application/json **Example Response:** ```json { "detail": [ { "loc": [], "msg":…
| Parameter | Typ | Beschreibung |
|---|---|---|
| name* | string | — |
| prop | string | — |
| threshold | integer | — |
| season | integer | — |
betting_scan_edgesScan Edges
Tonight's prop board ranked by model edge (VALUE first).
### Responses:
**200**: Successful Response (Success Response)
Content-Type: application/json
**422**: Validation Error
Content-Type: application/json
**Example Response:**
```json
{
"detail": [
{
"loc": [],
"msg": "Message…Scan Edges Tonight's prop board ranked by model edge (VALUE first). ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **422**: Validation Error Content-Type: application/json **Example Response:** ```json { "detail": [ { "loc": [], "msg": "Message…
| Parameter | Typ | Beschreibung |
|---|---|---|
| prop | string | — |
| min_edge | number | — |
| limit | integer | — |
| threshold | integer | — |
| coors | boolean | — |
| season | integer | — |
betting_best_betsBest Bets
THE board sweep — scans EVERY main prop market (HR/RBI/hit/total_bases/
2+hits/stolen_base) in one call and returns the top edges across all of them,
not just home runs. Power props carry the Savant validation (CONFIRMED power
ranked above neutral/noise). Use this for an open 'what's hot…Best Bets THE board sweep — scans EVERY main prop market (HR/RBI/hit/total_bases/ 2+hits/stolen_base) in one call and returns the top edges across all of them, not just home runs. Power props carry the Savant validation (CONFIRMED power ranked above neutral/noise). Use this for an open 'what's hot…
| Parameter | Typ | Beschreibung |
|---|---|---|
| min_edge | number | — |
| limit | integer | — |
betting_build_parlayBuild Parlay
Deterministic parlay analysis for BOTH leg shapes. Body:
{legs:[...], ticket_odds?}. PROP legs {name, prop, threshold} keep the
legacy correlation-aware EV. GAME-side legs (ML / run line / total / team
total / F5, selected by the `market` field) — the slips users actually
paste — are…Build Parlay Deterministic parlay analysis for BOTH leg shapes. Body: {legs:[...], ticket_odds?}. PROP legs {name, prop, threshold} keep the legacy correlation-aware EV. GAME-side legs (ML / run line / total / team total / F5, selected by the `market` field) — the slips users actually paste — are…
| Parameter | Typ | Beschreibung |
|---|---|---|
| legs* | array | — |
| ticket_odds | integer | — |
betting_log_betLog Bet
Record a bet you placed (per user) so we can track P&L + CLV over time.
Body: {uid, market, selection, odds (American), stake, line?, prop?, team?,
game?, book?}. Append-only — this is the evidence base that PROVES edge.
### Responses:
**200**: Successful Response (Success Response)
Cont…Log Bet Record a bet you placed (per user) so we can track P&L + CLV over time. Body: {uid, market, selection, odds (American), stake, line?, prop?, team?, game?, book?}. Append-only — this is the evidence base that PROVES edge. ### Responses: **200**: Successful Response (Success Response) Cont…
| Parameter | Typ | Beschreibung |
|---|---|---|
| uid* | string | — |
| market* | string | — |
| selection* | string | — |
| odds* | integer | — |
| stake* | number | — |
| line | number | — |
| prop | string | — |
| team | string | — |
| game | string | — |
| book | string | — |
betting_my_betsMy Bets
A user's bet history + P&L / CLV summary. avg_clv_pct > 0 over time = you're
beating the closing line = real edge (the only durable proof).
### Responses:
**200**: Successful Response (Success Response)
Content-Type: application/json
**422**: Validation Error
Content-Type: application/js…My Bets A user's bet history + P&L / CLV summary. avg_clv_pct > 0 over time = you're beating the closing line = real edge (the only durable proof). ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **422**: Validation Error Content-Type: application/js…
| Parameter | Typ | Beschreibung |
|---|---|---|
| uid* | string | — |
betting_settle_betSettle Bet
Settle a logged bet. Body: {uid, bet_id, result: won|lost|push,
closing_odds?}. closing_odds lets us compute CLV (did you beat the close).
### Responses:
**200**: Successful Response (Success Response)
Content-Type: application/json
**422**: Validation Error
Content-Type: application/…Settle Bet Settle a logged bet. Body: {uid, bet_id, result: won|lost|push, closing_odds?}. closing_odds lets us compute CLV (did you beat the close). ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **422**: Validation Error Content-Type: application/…
| Parameter | Typ | Beschreibung |
|---|---|---|
| uid* | string | — |
| bet_id* | string | — |
| result* | string | — |
| closing_odds | integer | — |
betting_cross_bookCross Book
Cross-book value: FanDuel vs DraftKings (DK pulled via ESPN's public API,
no key/WS). LINE_SHOP (the books hang different numbers — take the easier
side) and PRICE_SHOP (better price, same line) are CONFIRMED edges, no model
needed. Arbitrage is NOT auto-reported (needs over/under sides…Cross Book Cross-book value: FanDuel vs DraftKings (DK pulled via ESPN's public API, no key/WS). LINE_SHOP (the books hang different numbers — take the easier side) and PRICE_SHOP (better price, same line) are CONFIRMED edges, no model needed. Arbitrage is NOT auto-reported (needs over/under sides…
| Parameter | Typ | Beschreibung |
|---|---|---|
| prop | string | — |
betting_game_linesGame Lines
GAME markets — moneyline / run total / run line for today's MLB games. This
answers the 'quién gana / cuántas carreras / pronóstico Yankees vs Toronto'
questions that player props CAN'T (V12 used to just refuse them). Optional
team filter ('Yankees', 'NYY'). MARKET data from ESPN's publ…Game Lines GAME markets — moneyline / run total / run line for today's MLB games. This answers the 'quién gana / cuántas carreras / pronóstico Yankees vs Toronto' questions that player props CAN'T (V12 used to just refuse them). Optional team filter ('Yankees', 'NYY'). MARKET data from ESPN's publ…
| Parameter | Typ | Beschreibung |
|---|---|---|
| team | string | — |
| date | string | — |
betting_marketMarket
FULL FanDuel market board for a team's game — EVERY market with real odds +
de-vig fair price, so NO market question goes unanswered. Game lines (ML /
total / run line), FIRST 5 INNINGS (F5), TEAM TOTALS, NRFI/YRFI, alternate
lines, AND the full player-prop menu (HR / 2+ HR / hit / 2+ hits…Market FULL FanDuel market board for a team's game — EVERY market with real odds + de-vig fair price, so NO market question goes unanswered. Game lines (ML / total / run line), FIRST 5 INNINGS (F5), TEAM TOTALS, NRFI/YRFI, alternate lines, AND the full player-prop menu (HR / 2+ HR / hit / 2+ hits…
| Parameter | Typ | Beschreibung |
|---|---|---|
| team* | string | — |
| date | string | — |
betting_sharpSharp
SHARP value — FanDuel vs PINNACLE (the sharpest book, ~2% hold). Pinnacle's
de-vigged line ≈ TRUE probability, so this is the most reliable value signal in
the kit, NO model needed: edge_vs_sharp = FD's price minus the sharp's true
prob; POSITIVE means FanDuel pays MORE than fair (real value…Sharp SHARP value — FanDuel vs PINNACLE (the sharpest book, ~2% hold). Pinnacle's de-vigged line ≈ TRUE probability, so this is the most reliable value signal in the kit, NO model needed: edge_vs_sharp = FD's price minus the sharp's true prob; POSITIVE means FanDuel pays MORE than fair (real value…
| Parameter | Typ | Beschreibung |
|---|---|---|
| team* | string | — |
| date | string | — |
betting_game_modelGame Model
MODEL the GAME run markets — TEAM TOTALS (over/under) and NRFI/YRFI — vs
the FanDuel line, MARKET-ANCHORED: expected_runs = the book's de-vigged
implied mean + 0.25×(structural model − book), and every edge is computed vs
the FAIR (de-vigged) probability, never the raw vig price. The st…Game Model MODEL the GAME run markets — TEAM TOTALS (over/under) and NRFI/YRFI — vs the FanDuel line, MARKET-ANCHORED: expected_runs = the book's de-vigged implied mean + 0.25×(structural model − book), and every edge is computed vs the FAIR (de-vigged) probability, never the raw vig price. The st…
| Parameter | Typ | Beschreibung |
|---|---|---|
| team* | string | — |
| date | string | — |
betting_matchupMatchup
GROUNDING — the real game for a team today: probable pitchers + the POSTED
lineup (ACTUAL player names from MLB statsapi) + the market line + the CONTEXT
a pro reasons with: home-plate UMPIRE (strike zone → totals/Ks), the INJURY
report (who's OUT / Day-To-Day), and BULLPEN health (ERA / b…Matchup GROUNDING — the real game for a team today: probable pitchers + the POSTED lineup (ACTUAL player names from MLB statsapi) + the market line + the CONTEXT a pro reasons with: home-plate UMPIRE (strike zone → totals/Ks), the INJURY report (who's OUT / Day-To-Day), and BULLPEN health (ERA / b…
| Parameter | Typ | Beschreibung |
|---|---|---|
| team* | string | — |
| date | string | — |
betting_market_moversMarket Movers
MARKET pattern (not model opinion): how FanDuel lines MOVED today, from the
captured snapshots. A line that shortened = money coming in (sharp/news); a
drift = money off. This is the 'obvious opportunity' signal — market-confirmed,
independent of our unproven model. Needs accumulated…Market Movers MARKET pattern (not model opinion): how FanDuel lines MOVED today, from the captured snapshots. A line that shortened = money coming in (sharp/news); a drift = money off. This is the 'obvious opportunity' signal — market-confirmed, independent of our unproven model. Needs accumulated…
| Parameter | Typ | Beschreibung |
|---|---|---|
| prop | string | — |
| min_move | number | — |
| date | string | — |
34 von 34 Tools haben eine Beschreibung veröffentlicht.
Tool-Namen und -Beschreibungen stammen vom Publisher und werden wortgetreu als inerter Text angezeigt. Es sind die Zeichenketten, die ein MCP-Client an ein Modell übergibt, deshalb prüft Forge sie auf Prompt-Injection-Muster — jeder Befund erscheint oben beim Sicherheits-Scan. „Privilegiert“ ist ein Schlagwort-Treffer im Tool-Namen, keine Prüfung dessen, was das Tool tut: ein harmlos klingender Name kann trotzdem alles tun.
AI-driven DFS lineup optimizer for MLB & NBA — build FanDuel & DraftKings lineups via MCP.
Verlinkte Namen öffnen den Forge-Index aller Einträge, bei denen dieses Tool beobachtet wurde. Alle indexierten Tools durchsuchen.
Dieser Eintrag veröffentlicht kein npm-Paket, daher hat Forge keinen Abhängigkeitsbaum dafür. Das ist eine Lücke in der Abdeckung — keine Aussage, dass er keine Abhängigkeiten hat.