Claude
Skills
Sign in
Back

mlb-two-start-scout

Included with Lifetime
$97 forever

For a given fantasy week (Monday-Sunday), identifies every starting pitcher scheduled to start twice, validates both probable starts, grades each matchup against the league's Quality Starts (QS) scoring rules, and ranks the list by streamability_score. Flags bullpen-game and opener risks that nearly never produce QS. Use when user mentions "two-start pitchers", "weekly streaming", "Monday-Sunday pitcher plan", "double start", "2-start SP", or preparing the weekly streaming plan on Sunday nights.

General

What this skill does

# MLB Two-Start Scout

## Table of Contents
- [Example](#example)
- [Workflow](#workflow)
- [Common Patterns](#common-patterns)
- [Guardrails](#guardrails)
- [Quick Reference](#quick-reference)

## Example

**Scenario**: Fantasy week of Monday 2026-04-20 through Sunday 2026-04-26. League scores Quality Starts (QS = 6+IP and <=3ER), not Wins. User needs to decide which two-start SPs to stream from free agency.

**Step 1 outputs (from web search)** -- FantasyPros two-start-pitchers.php plus FanGraphs probables-grid cross-check:

| SP | Team | Start 1 | Start 2 | Notes |
|---|---|---|---|---|
| Logan Webb | SFG | Mon 4/20 @ COL | Sat 4/25 vs WSH | confirmed on both sources |
| Seth Lugo | KCR | Tue 4/21 @ DET | Sun 4/26 vs NYY | confirmed |
| Bryan Woo | SEA | Mon 4/20 vs HOU | Sun 4/26 @ OAK | confirmed |
| Ranger Suarez | PHI | Tue 4/21 vs NYM | Sun 4/26 @ ATL | confirmed |
| (Team TBD) | MIA | Wed 4/23 vs STL | Mon (next wk)?? | OPENER RISK -- drop |

**Step 2 outputs** -- matchup signals per start:

Logan Webb: Start 1 at Coors (park_pitcher_factor 25, brutal) but weak COL lineup; Start 2 vs WSH at home (park 55). qs_probability 58, k_ceiling 62, era_whip_risk 55, streamability_score 62.

Seth Lugo: Start 1 at DET (avg), Start 2 vs NYY (top-3 wOBA). qs_probability 45, era_whip_risk 68, streamability_score 48.

Bryan Woo: Start 1 vs HOU (tough), Start 2 at OAK (weakest AL lineup, pitcher park 60). qs_probability 66, k_ceiling 70, streamability_score 71.

Ranger Suarez: Start 1 vs NYM (tough), Start 2 at ATL (top-2 wOBA, hitter park). qs_probability 40, era_whip_risk 72, streamability_score 42.

**Step 3 output** -- ranked two-start board (only free agents shown to user):

| Rank | SP | FA status | Streamability | QS prob | K ceiling | Risk | Verdict |
|---|---|---|---|---|---|---|---|
| 1 | Bryan Woo | FA in your league | 71 | 66 | 70 | 45 | ADD + START both |
| 2 | Logan Webb | Rostered | 62 | 58 | 62 | 55 | - (not available) |
| 3 | Seth Lugo | FA | 48 | 45 | 58 | 68 | SKIP -- risky vs NYY |
| 4 | Ranger Suarez | FA | 42 | 40 | 55 | 72 | SKIP -- both matchups bad |
| -- | MIA opener | FA | -- | -- | -- | -- | IGNORE -- bullpen game |

**User-facing recommendation (delivered by streaming-strategist via communication-storytelling skill):**

> "This week has one strong two-start streamer: Bryan Woo of Seattle. He pitches twice (Monday vs Houston, Sunday at Oakland) and Oakland has the weakest hitting lineup in the American League. ADD Bryan Woo if he is a free agent. Bid $3-5 FAAB. Two starts means double the strikeouts and double the chance at a Quality Start -- even if Monday's matchup vs Houston goes poorly, the Oakland start is likely to salvage the week."

## Workflow

Copy this checklist and track progress:

```
Two-Start Scout Progress:
- [ ] Step 1: Define the fantasy week (Mon-Sun dates) and pull the two-start list
- [ ] Step 2: Cross-reference two lists and validate both probable starts per SP
- [ ] Step 3: Flag bullpen-game and opener risks -- remove from board
- [ ] Step 4: Compute per-start matchup signals (qs_probability, k_ceiling, era_whip_risk)
- [ ] Step 5: Aggregate to per-SP streamability_score
- [ ] Step 6: Cross-reference with Yahoo free-agent pool, rank, and emit signal file
```

**Step 1: Define the week and pull the two-start list**

Confirm the Monday-Sunday dates in ISO format (e.g., 2026-04-20 through 2026-04-26). Yahoo fantasy weeks lock at 9am ET Monday. See [resources/methodology.md](resources/methodology.md#week-definition) for week-boundary handling.

- [ ] Monday date confirmed (start of week)
- [ ] Sunday date confirmed (end of week)
- [ ] Web-search FantasyPros two-start-pitchers.php for the upcoming week
- [ ] Record URL and `computed_at` timestamp for the signal frontmatter

**Step 2: Cross-reference and validate both starts**

FantasyPros is primary but lags short-notice rotation changes. Cross-check FanGraphs probables-grid to verify both starts are still scheduled and neither has been pushed or bumped. See [resources/methodology.md](resources/methodology.md#cross-reference-validation).

- [ ] For each SP on the FantasyPros list, find both probable-start dates on FanGraphs grid
- [ ] If FanGraphs shows a different pitcher for one of the two dates, reduce confidence and note the conflict
- [ ] If the SP has been scratched or pushed (injury news, weather makeup), remove from board or flag
- [ ] Record both sources in `source_urls`

**Step 3: Flag bullpen-game and opener risks**

Teams that deploy openers (e.g., rebuilding clubs using a 1-inning reliever to start the game) rarely produce QS for the "nominal starter". These hurt ERA/WHIP and give zero QS. De-prioritize or drop entirely. See [resources/methodology.md](resources/methodology.md#opener-bullpen-detection).

- [ ] Check each SP's recent game logs -- is their typical outing <5 IP? Opener risk.
- [ ] Check if the team has announced a "bullpen day" for either scheduled start
- [ ] Flag any SP whose team is known to use openers regularly (mark `opener_risk: true`)
- [ ] Remove opener-risk SPs from the top of the ranking or drop entirely

**Step 4: Compute per-start matchup signals**

For EACH of the two starts, compute matchup signals individually. A two-start SP with one great matchup and one terrible matchup is materially different from one with two average matchups. See [resources/methodology.md](resources/methodology.md#per-start-scoring).

- [ ] For each start: pull opponent team wOBA vs pitcher handedness
- [ ] For each start: pull park factor (hitter vs pitcher park)
- [ ] For each start: pull weather (rain-out and wind risk)
- [ ] For each start: compute `qs_probability`, `k_ceiling`, `era_whip_risk` per the signal-framework definitions

**Step 5: Aggregate to per-SP streamability_score**

Average the two starts, weighted toward QS probability because our league is QS-scoring (not W-scoring). See [Quick Reference](#quick-reference) for the exact weighting formula.

- [ ] Compute per-SP `streamability_score` using the QS-weighted formula
- [ ] Flag SPs with one "great" matchup and one "disaster" matchup separately -- variance matters
- [ ] Apply opener-risk penalty if any
- [ ] Rank SPs from highest to lowest `streamability_score`

**Step 6: Cross-reference free agents, rank, and emit signal**

The user can only stream SPs who are free agents (FA). Filter the board to rostered vs available, and annotate the Yahoo FA status. Emit the signal file following [resources/template.md](resources/template.md).

- [ ] Pull Yahoo FA pool for SP position (via `mlb-league-state-reader` or handoff)
- [ ] Annotate each SP as `roster_status: fa | rostered-other | rostered-user`
- [ ] Emit signal file `signals/YYYY-MM-DD-two-start.md` using the template
- [ ] Validate via `mlb-signal-emitter` (all scores in range, confidence >= 0.4, sources cited)
- [ ] Hand off to `mlb-streaming-strategist` (which runs advocate + critic variants)

Minimum standard: average rubric score of 3.5 or above. Validate using [resources/evaluators/rubric_mlb_two_start_scout.json](resources/evaluators/rubric_mlb_two_start_scout.json).

## Common Patterns

**Pattern 1: Two good matchups (rare, high-value stream)**
- **Profile**: Both starts vs bottom-tier offenses, at least one in a pitcher-friendly park, neither in Coors or GABP.
- **Action**: Strong ADD candidate. Willing to bid real FAAB (see `mlb-faab-sizer`). Start both games.
- **Watch for**: A hot FA is likely to draw multiple bids -- the `mlb-waiver-analyst` will size the bid.

**Pattern 2: One good, one disaster (split decision)**
- **Profile**: One start vs WSH or COL hitters (disaster), one vs OAK or CHW (plum).
- **Action**: Depends on daily-lineup flexibility. If the user can START the good day and BENCH the bad day, this becomes a high-value add. If the league locks weekly, score this lower -- the bad start will tank ratios.
- **Watch for**: Note the league's lineup cadence. Yahoo daily lineup lock means we can bench the bad star
Files: 4
Size: 44.7 KB
Complexity: 41/100
Category: General

Related in General