NestDaddy

BetSlip Doctor

ai.betslipdoctor/mcp · v1.4.0

Your agent grades every slip A+ to F-, links your books and tracks your record. No wager placement.

Connect Remote server

Terminal
claude mcp add --transport http mcp https://api.betslipdoctor.ai/api/mcp
~/.cursor/mcp.json
{
  "mcpServers": {
    "mcp": {
      "url": "https://api.betslipdoctor.ai/api/mcp"
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "mcp": {
      "type": "http",
      "url": "https://api.betslipdoctor.ai/api/mcp"
    }
  }
}
Claude Desktop
Settings > Connectors > Add custom connector
URL: https://api.betslipdoctor.ai/api/mcp

Tools 80 found in our last check

  • get_game_file

    Read the shared game file by event key, or by league and team for the next game on the slate.

  • get_tracked_slips

    Read the authenticated account's saved-ticket library: the same list the app shows (GET tickets), newest first, with optional search, limit 1-20 and cursor. Provider placement ids and sportsbook deep links are never returned.

  • track_slip

    After the customer asks to save it, save one ticket to the authenticated account's saved slips through the app's own save (POST tickets), with the app ticket contract (the same ticket object quote_grade accepts). Keep client_mutation_id stable for retries. It stores the slip onl…

  • get_todays_board

    The app Live board (GET live/board): upcoming and in-play games, each with mainLines: its DraftKings game lines (slot, line, odds), optional league or sport, limit 1-20 and cursor. sport reads a sport chip's board across its leagues (SPRT_tennis, SPRT_soccer, SPRT_golf; tennis a…

  • grade_slip

    Combined form of quote_grade, start_grade and cancel_grade (same fields, same answers): version bsd-agent-grade-v1, action quote, start or cancel, and a commandKey. Paid plans can run Fast, Pro (wire depth deep) or Elite at the quoted price. If the Grade returns no letter, the u…

  • get_saved_reports

    Read the saved Grade jobs and reports behind list_grade_jobs, get_grade_job, get_grade_progress, get_grade_groups, get_grade_report, get_grade_evidence and get_grade_catalog. This combined tool requires version bsd-agent-grade-v1 and action list, job, progress, groups, report, e…

  • get_history_summary

    The authenticated account's app History summary (GET history/summary): record, stake and net over the chosen range, with its source, currency and limitation rules. Numbers come only from the account's own records; nothing is fabricated. category reads the other History pages the…

  • price_shop_slip

    Compare books on a saved slip, exactly the app's Compare books (POST tickets/compare-books): each leg's current price at up to 5 books (books: book ids; default the slip's own book, DraftKings and FanDuel), the best price for the bettor and how much the slip's own price gives up…

  • doctor_conversation

    Read or change a Doctor conversation with version bsd-agent-doctor-v1 and an action; the individual Doctor tools omit version and action. For quote send {version: "bsd-agent-doctor-v1", action: "quote", commandKey, threadId, sequence, text}: commandKey is a new 16–120 character…

  • tail_read

    Read Tail with version bsd-agent-tail-v1 and an action. Use doctor_record with profileId for the Doctor’s all-time record. The individual tools get_doctor_picks, get_doctor_parlays, get_crowd_parlay, get_league_order, get_tail_feed, tail_hot, tail_my_posts and get_tail_post omit…

  • tail_post

    Preview or change Tail with version bsd-agent-tail-v1 and an action; the individual Tail tools omit version and action. Make changes only when the customer asks. Publish only after showing the exact preview and getting their yes; publishing never places a wager.

  • grade_pickem_entry

    Use action settlement with ticketId to read this owned entry’s result (history.read also required). Use bsd-pickem-grade-v2. check returns per-pick availability without research or a model call; letters are not scored yet. quote saves the owned Power or complete Flex child-ticke…

  • quote_grade

    Quote a Grade for an owned saved ticketId or one confirmed manual ticket (which it may save), at the requested depth and optional funding. Returns the app’s allowance quote and starts nothing: show it before start_grade. A slip already graded answers existing_grade (its jobId an…

  • start_grade

    Start the owned Grade quoteId after the customer has seen and accepted its allowance quote. Reserves app allowance and queues the same durable Grade job; consent, tier, plan usage and admission rules apply. Optional doctorThreadId: the owned Doctor conversation whose parlay this…

  • cancel_grade

    Cancel an owned Grade jobId through the app service. Stops eligible work and releases its remaining reservation under the existing app rules; cannot undo provider work already performed. Reuse its commandKey on every retry.

  • list_grade_jobs

    Read the authenticated account’s current Grade library, with optional limit 1-20 and account-bound cursor. Each row’s headline is its Rocky letter and report.rockyGradeSummary its label and score. When letterFine is present, show it; otherwise show letter. Never starts research.

  • get_grade_job

    Read the owned Grade jobId and its current durable status. Never starts or resumes work.

  • get_grade_progress

    Read saved progress for the owned Grade jobId, with optional after sequence and limit 1-100. Progress is not proof that a saved report is ready; never starts work.

  • get_grade_catalog

    Read this account’s Grade research options and available capabilities, including in-play eligibility when enabled. Does not start a Grade.

  • get_grade_groups

    Read the owned Grade job’s group scores as they become available. Status is pending, partial or final; partial scores can change and are not a saved final report. Does not start work.

  • get_grade_report

    Return the verified saved report for a completed Grade this account owns, by jobId. Returns unavailable until the saved report is readable; never grades again. headline carries the saved coarse letter and, for newer Grades, letterFine; show letterFine when present, otherwise let…

  • get_grade_evidence

    Return the evidence behind an owned completed Grade jobId: each claim checked (price, injury and lineup, matchup, form, line move, situational, weather, correlation), its sources with tier 1-5, age and supports/contradicts tag, unknowns, and whether it was verified. Never grades…

  • open_doctor_conversation

    Persist an app Doctor thread, optionally attached to an owned ticket, report or history item. Does not start a reply or spend a consult allowance. Reuse its commandKey on every retry.

  • list_doctor_conversations

    Read this account’s saved app Doctor threads. Does not generate an answer.

  • get_doctor_conversation

    Read the owned threadId, saved user messages, Doctor answers and jobs; optional before pages older messages. Does not generate a new answer.

  • get_doctor_quota

    Read this account’s current app consult allowance, held and used amounts, and reset information. Does not reserve a consult.

  • get_bettor_profile

    Read this authenticated account’s bettor model, optionally filtered by topic: confirmed notes and revisions, separately attributed Honcho inferred context, source IDs when supplied, generation, recall state and as-of. Unavailable inference stays unavailable. Memory and AI consen…

  • get_doctor_memory

    Read this authenticated account’s confirmed notes, active status, current revisions and memory generation. Longer-term Honcho personalization is recalled inside consults. These notes are user-reported preferences and lessons, not authoritative betting outcomes.

  • remember_doctor_note

    Save only a preference, goal, constraint or context note the customer explicitly asked Doctor to remember. Corrections require the exact owned note id and expectedRevision from get_doctor_memory. note.confirmation must be save_for_future_consults. Do not silently infer mastery o…

  • forget_doctor_note

    Remove the exact owned note only after the customer explicitly asks to forget it. Requires current id/expectedRevision and confirmation forget_for_future_consults. Rotates inferred memory under the existing account service; saved conversations remain separately retained until de…

  • quote_doctor_reply

    Send commandKey (a new 16–120 character letters/digits/underscore/hyphen key), owned threadId UUID, current integer sequence from get_doctor_conversation, and text. Optional responseStyle learning/technical/roast applies to this reply; omit for the account default. Optional doct…

  • send_doctor_with_slip

    For an explicit customer Send, pass exact pendingSlip selections and confirmation SEND. Reserves the existing allowance and returns the durable thread, quote and job promptly. The server confirms current prices and open legs before using the slip. A changed or closed price fails…

  • cancel_doctor_send

    Stop an explicit pending send using its original sendKey commandKey, including before its job ID was received. Tombstones late starts and cancels any accepted job through the ordinary refund path. Reuse its commandKey on every retry.

  • start_doctor_reply

    Start the owned consult quoteId after the customer has seen and accepted the quote. Reserves app allowance and queues the existing Doctor job; app AI consent, tier, plan usage, cost cap and admission rules apply. Does not return an answer before it is saved. Reuse its commandKey…

  • get_doctor_job

    Read the owned Doctor jobId, including its real saved answer when available: paragraphs, the linked pages it cites (sources) and what it checked (checked: odds, scores, stats, news, the slip). Never generates or restarts a reply.

  • get_doctor_events

    Read saved events for the owned Doctor jobId, optionally after a sequence. While a reply is written, doctor_research_progress events say how many sources the Doctor is checking and which (stage checking, then writing). Never starts a consult.

  • cancel_doctor_reply

    Cancel an owned Doctor jobId under the app cancellation and reservation rules. Cannot undo a reply or provider work already completed. Reuse its commandKey on every retry.

  • get_doctor_parlays

    Read the Doctor’s posted parlays for one league (e.g. LGUE_nfl): 2-3 legs on different games, each B+ or better when posted. Upcoming first with the newest regrade (currentGrade), then recent WON/LOST/PUSH results and the parlays record. Items carry parlayType (lock = 2 legs, mo…

  • get_crowd_parlay

    Read the crowd parlay (the app’s Heat Check card): the one parlay bettors are on most right now, built in code, 2 to 4 legs on different games at one book, every game still to start, graded by the real Grade whatever the letter is (A to F). It is the crowd’s parlay, not the Doct…

  • get_league_order

    Read BetSlip Doctor’s league order right now: the same leagues in the same order as the app’s league strip (its Home and Odds chips: games in play first, then the soonest tip within 6 hours, then games in the next 24 hours); Tennis, Soccer and Golf are sport chips and carry thei…

  • get_doctor_picks

    Read today’s saved Doctor picks and recent settled WON/LOST/PUSH results. Each item carries league (first leg’s league id), sport (first leg’s sport id) and leagues (every leg’s league), the same fields the app’s league tabs filter by, for every reader. Optional league (e.g. LGU…

  • get_tail_feed

    Doctor ticket posts include result WON/LOST/PUSH when settled, null otherwise. Read the app Tail feed with its account-filtered community, following, own, profile, bookmark or private-list visibility. Uses app moderation, mutes and account-bound cursor rules; does not post.

  • add_doctor_parlay_to_slip

    Put one of the Doctor’s posted parlays (key from get_doctor_parlays) or the Home hero pick (get_league_order slate.doctorHero.key: a single, parlay or same-game parlay) on this account’s slip in one step, with a unique commandKey. Checks every leg’s current price at the parlay’s…

  • tail_react

    Add (active true) or remove (active false) this account’s fire reaction on a Tail postId, with a unique commandKey. One fire per account per post; fire feeds Hot picks. Reuse its commandKey on every retry.

  • save_tail_post

    Save (active true) or unsave (active false) a Tail postId for this account, with a unique commandKey: the app’s Save on a post and on another bettor’s Tail Grade report. Private to this account; read saved posts with get_tail_feed feed bookmarks. Never places a wager. Reuse its…

  • share_graded_ticket_to_tail

    Share an owned saved Grade report to Tail with nothing to type. Call with reportId and omit confirmation to get the exact preview and previewBinding: show it to the customer. After their explicit yes, call again with confirmation PUBLISH_POST, commandKey and that previewBinding…

  • tail_my_posts

    Read this account’s own Tail posts (newest first, cursor paging) with its record setting and post count (recordSettings: showRecord, postCount). Does not post.

  • set_synced_record_consent

    Turn on (consent true) or off (default) the use of this account’s connected-sportsbook bets on its public record, with a unique commandKey. On: posted picks settle from the connected sportsbook, and the results and units show on the profile, posts and the Top list. Off: posts se…

  • set_show_my_record

    Turn “Show my record” on (default) or off with show true/false and a unique commandKey. Off hides the W-L, units and ROI from everyone but the account owner (zero record on posts, out of Top lists); posts stay public. Reuse its commandKey on every retry.

  • tail_hot

    Read Hot picks: open Tail tickets (not settled, at least one game not started) from the last 24 hours, ranked by heat: fire reactions, tails, fades and how many graded slips and synced sportsbook bets carry the same open leg (anonymous counts only, at least 3 before a count is u…

  • get_tail_post

    Doctor ticket posts include result WON/LOST/PUSH when settled, null otherwise. Read one app Tail postId visible to this account under the same moderation and privacy rules. Supply fadedByLimit (1-25) or fadedByCursor to include the permitted public confirmed-Fade profile page. M…

  • preview_tail_post

    Compute the exact app sharing preview and binding from an owned saved Grade report or Doctor exchange draft. Does not publish. Show the returned preview to the customer before requesting publication.

  • publish_tail_post

    Submit the exact customer-approved draft and previewBinding to the app moderation queue. Requires confirmation PUBLISH_POST, placementConfirmation and fWarning. Shares approved content with the Tail community when moderation allows; this irreversible send never places a wager. R…

  • create_tracked_slip

    After the customer asks to save it, save one app ticket (the quote_grade ticket contract) to this account's saved slips through the app's POST tickets, with a stable client_mutation_id for retries. Stores the slip only; never prepares or places a wager.

  • onboarding_preferences

    Read the current league catalog and per-league team membership, or read/save your leagues and teams. Use original source-qualified IDs. Logos are unavailable. Get the current revision before a confirmed set: merge imports device selections with account order first; replace saves…

  • fade_post

    Preview actual supported opposite selections for a visible Tail post at the customer’s bookId and jurisdiction. Unavailable legs remain unavailable; this is not the mathematical complement of a parlay. After explicit customer review, confirm with the original preview binding, po…

  • view_tail_analysis

    Open the visible post’s original saved full Grade or Doctor analysis using the app’s existing paid research access. Requires Tail and saved-report read consent. A subscription_required response means the customer needs the approved upgrade flow; do not start research or substitu…

  • grade_settings

    Read or save this account’s Grade risk preference, analysis depth and unit size. Saving requires the exact confirmed settings, current revision and a stable command key. Risk preference is separate from computed report risk. No Grade or research starts.

  • get_bettor_history

    Read a visible bettor profile’s settled History in units.

  • set_profile_links

    Preview then explicitly confirm your own profile links. Supply draft {profileId,target: profile,expectedRevision,links:[{platform,handle?,url?}]}. Array order is display order; omit a platform to remove it. Use [] for no links. One per platform: x, instagram, tiktok, youtube, di…

  • list_sportsbooks

    Read this account’s linked sportsbooks exactly as the app shows them: whether sportsbook linking is allowed, each account (accountId, book, region, betsSynced), its connection (verified, paused, reconnect_required, revoked, disabled, unknown), needsReconnect, its last check and…

  • connect_sportsbook

    Return a 10-minute betslipdoctor.ai link (linkUrl, expiresAt) for the customer to open and finish connecting a sportsbook. The app checks the requested book and optional two-letter state; without a state it uses the account’s state when known, otherwise the sportsbook list opens…

  • refresh_sportsbook

    Check an owned linked sportsbook accountId for new bets, the same import the app runs: queues one history check for the account’s linked books (each allowed sportsbook is asked for its newest bets) and returns the check id and its state. Repeats within 30 seconds are refused wit…

  • disconnect_sportsbook

    Disconnect an owned linked sportsbook accountId, the same as the app’s Disconnect: BSD imports for it stop at once and the link to your sportsbook is removed in the background. Requires confirm true after the customer explicitly asks; without it nothing changes. Saved bets stay…

  • search_markets

    Search the same way the app’s Home and Live search does. query is the typed text (a team, game, player or market name, e.g. "Bears" or "Rasmussen"); category is games (default), players or markets. Optional league (LGUE_ id) or sport (SPRT_ id) narrows it, limit is 1-20 and curs…

  • get_box_score

    Read the in-play or final score and box score for one game (eventId from search_markets or the board), the same read as the app’s Live game page: status (in_progress, final or suspended), period and clock, each team’s score and period-by-period line, team statistics, and player…

  • list_linkable_sportsbooks

    List the sportsbooks this account can link, the same list as the app’s Settings > Sportsbooks picker: each book (bookId, name, abbr) with the two-letter states it can be linked in. state (two letters, e.g. NJ) filters to the books linkable there; without it the account’s own lin…

  • check_slip

    The app slip’s rule for this conversation’s slip. Send legs (ids plus the oddsAmerican, line, observedAt and startsAt they were added with) or a ticketId from add_doctor_parlay_to_slip or copy_tail_slip. Legs whose game started or finished or whose line is gone come back in remo…

  • get_plan

    Read this account’s BetSlip Doctor plan exactly as the app shows it: the plan (free, starter, pro or elite), where it is paid (paymentSource), its status and current period end, the plan limits, and this period’s usage: Grades left and when they reset, Doctor chats left this mon…

  • add_funds

    Return a link to add funds to the pay-as-you-go balance. The customer signs in and confirms there; this tool never charges.

  • start_plan_upgrade

    Return the betslipdoctor.ai link (linkUrl) where the customer upgrades or manages a card subscription. plan is the plan they want (starter, pro, elite, heavy_199, heavy_499, heavy_999, heavy_1999 or enterprise; default the next plan up), interval month or year (default month). C…

  • tail_social

    The Tail actions the app has, on its own routes, for this account. For actions marked with a confirmation, an otherwise valid call without that body.confirmation returns a preview: show it and get the customer’s yes before sending the literal. Other actions, including repost, se…

  • notifications

    This account's notification inbox and settings, the same as the app's bell. feed: GET notifications/feed params {filter all|mentions|verified, limit 1-25, cursor}; defaults all and 25; continue with next as cursor for the same account and filter; verified currently returns no it…

  • doctor_actions

    The Doctor actions beside the conversation, as the app does them. Record a decision only when the customer says what they did; change memory consent only when they ask. Delete and forget preview until confirmed; reuse the same commandKey on a retry. decision: GET doctor/messages…

  • account_settings

    Read and change this account through its signed-in product routes. Change AI and model-training privacy settings in the app. Sportsbook actions follow the app's plan permissions. Bug-report actions use server reports, separate from reports held only on a device; those routes mus…

  • history_actions

    Write this account's History as the app does. Record a bet only when the customer says they placed it. report_advice_response: POST history/advice/response {reportId, reportDigest, expectedRevision, confirmation: SAVE_RESPONSE, input: {exposure, decision, claimedViewedAt, claime…

  • ticket_actions

    Ticket actions the app has, on its own routes. Saving stores the slip only; nothing is placed. save_live: POST tickets/live the app Live slip body (selections at the prices shown); import: POST tickets/import the app import confirmation body; from_link: POST slip/from-link {url}…

  • read_pasted_slip

    Text the customer pasted (a book's slip, a chat or note list, Rocky's "Game 1: ... / Player — 8+ Rebounds (-225)" format) read exactly as the app's Grade › Paste reads it: legs with market, selection, line, odds, player, stat and game, printed same-game groups, stake, payout, bo…

  • get_betting_leaks

    Read deterministic patterns from this account’s settled betting history, with coverage, sample sizes, thresholds and source ticket IDs.

  • list_api_keys

    List your active personal BetSlip Doctor API keys (name, display prefix, scopes, created, last used). Secrets are never returned.

Details

Endpointhttps://api.betslipdoctor.ai/api/mcp (Streamable HTTP)
First published21 Oct 2026
Last updated21 Oct 2026
Registry nameai.betslipdoctor/mcp

More ai and media servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.