Every League of Legends aggregator, plus a local SQLite for cross-champion queries no single page surfaces.
mobalytics-lol-pp-cli pulls champion data, builds, runes, counters, and tier ratings from Mobalytics and Riot Data Dragon, hydrates them into a local SQLite store, then exposes cross-champion SQL queries no aggregator page surfaces: counter-pool matrices, patch meta-shift deltas, head-to-head compares, region-split tier views, and ARAM batch item-set exports for the LoL client. Free, offline-after-sync, agent-native (--json + --select + --agent), and the only LoL data source agentically accessible without a headless browser.
Learn more at Mobalytics LoL.
Printed by @QuantumGlitch (QuantumGlitch).
Quick Start
# Hydrate the local store with the latest patch's champions, items, runes, tier snapshots, builds, and matchups
mobalytics-lol-pp-cli sync --full
# Look up the recommended Aatrox top build for Emerald+ — the single most common ritual
mobalytics-lol-pp-cli champion build aatrox
# Diamond+ mid-lane tier list with WR/PR/BR
mobalytics-lol-pp-cli tier-list --role mid
# Pool-vs-pool matchup matrix coaches do in their head
mobalytics-lol-pp-cli counter-pool --our darius,aatrox,garen --their fiora,sett,renekton
# What moved up or down since two patches ago
mobalytics-lol-pp-cli meta-shift --since-patch 14.10 --agent --select winner,loser,delta
Unique Features
These capabilities aren't available in any other tool for this API.
Cross-pool draft analysis
-
counter-pool — Given our champion pool and the enemy pool, return the full matchup matrix ranked by WR delta with sample-size floor — the SQL coaches do in their head.
Reach for this when an agent or coach needs to know 'given two confirmed champion pools, who picks into whom.' Avoids N×M page loads.
mobalytics-lol-pp-cli counter-pool --our darius,aatrox,garen --their fiora,sett,renekton --agent
-
meta-shift — Diff two tier_snapshots and list champions that gained or lost ≥1 tier or ≥2% WR since a prior patch, with sample-size guard.
Use when an agent or coach needs to answer 'what changed this patch' without manually diffing tier-list screenshots.
mobalytics-lol-pp-cli meta-shift --since-patch 14.10 --role top --agent --select winner,loser,delta
-
compare — Side-by-side join across tier, build, counters, and matchups for two champions — including item-overlap percentage.
Resolves draft-time 'which of these two is better right now' questions in one command.
mobalytics-lol-pp-cli compare aatrox darius
-
duo-finder — Best support pairings for a given ADC, restricted to a candidate support pool — coaches' player pools are fixed.
Use when the support pool is fixed (coach, duo queue, ranked flex) and you need WR-ranked picks from that subset.
mobalytics-lol-pp-cli duo-finder --bot jinx --supports-from lulu,nami,leona
Build artifact export
-
item-set — Write LoL client item-set JSON for N champions in ARAM mode in one command, refreshing all stale files in the client config folder.
Use when an ARAM player wants game-ready item-sets across their reroll pool without alt-tabbing between champ select and a website.
mobalytics-lol-pp-cli item-set --aram aatrox,jinx,lulu,yasuo,sett --to client
Daily-ritual collapse
-
pool-digest — For each champion in your pool: current tier, WR delta since last patch, top-1 counter, top-1 synergy — all in one composite query.
Use as a morning ritual or pre-queue command to surface what changed about your specific champions.
mobalytics-lol-pp-cli pool-digest --pool darius,aatrox,garen --agent
Mobalytics signature features
-
power-spike — List champions ranked by early/mid/late spike strength for a chosen role — inverts Mobalytics's per-champion data into a leaderboard.
Use when picking around a teammate's pick (ARAM, draft) to find spike-aligned champions.
mobalytics-lol-pp-cli power-spike --phase early --role jungle --top 20 --agent
Draft toolkit
-
flex — Champions that are ≥A-tier in 2+ roles for the same patch and rank — the SQL no aggregator surfaces because they index by role first.
Use when drafting champions who don't tip your hand about role — invaluable for fearless-draft formats and amateur scrims.
mobalytics-lol-pp-cli flex --min-roles 2
-
tier-list — Same patch, same rank — three regions side-by-side. Surfaces pick-priority drift between KR/EUW/NA that no aggregator defaults to.
Use to spot regional meta divergence — KR is usually 2 weeks ahead of NA, and this surfaces it in one view.
mobalytics-lol-pp-cli tier-list --compare-regions kr,euw,na
Usage
Run mobalytics-lol-pp-cli --help for the full command reference and flag list.
Commands
cdn
Manage cdn
versions-json
Manage versions json
mobalytics-lol-pp-cli versions-json - Returns the full list of LoL patch versions known to Data Dragon, newest
first. The first element is the current patch.
Output Formats
# Human-readable table (default in terminal, JSON when piped)
mobalytics-lol-pp-cli versions-json
# JSON for scripting and agents
mobalytics-lol-pp-cli versions-json --json
# Filter to specific fields
mobalytics-lol-pp-cli versions-json --json --select id,name,status
# Dry run — show the request without sending
mobalytics-lol-pp-cli versions-json --dry-run
# Agent mode — JSON + compact + no prompts in one flag
mobalytics-lol-pp-cli versions-json --agent
Agent Usage
This CLI is designed for AI agent consumption:
- Non-interactive - never prompts, every input is a flag
- Pipeable -
--json output to stdout, errors to stderr
- Filterable -
--select id,name returns only fields you need
- Previewable -
--dry-run shows the request without sending
- Read-only by default - this CLI does not create, update, delete, publish, send, or mutate remote resources
- Offline-friendly - sync/search commands can use the local SQLite store when available
- Agent-safe by default - no colors or formatting unless
--human-friendly is set
Exit codes: 0 success, 2 usage error, 3 not found, 5 API error, 7 rate limited, 10 config error.
Health Check
mobalytics-lol-pp-cli doctor
Verifies configuration and connectivity to the API.
Configuration
Config file: ~/.config/mobalytics-lol-cli-pp-cli/config.toml
Static request headers can be configured under headers; per-command header overrides take precedence.
Troubleshooting
Not found errors (exit code 3)
- Check the resource ID is correct
- Run the
list command to see available items
API-specific
- Empty results from any Mobalytics command — Run
mobalytics-lol-pp-cli sync --full once after first install; the local store has to be hydrated before queries return data.
- tier-list returns stale tier ratings — Run
mobalytics-lol-pp-cli sync --resources tier_snapshots --since 1d to refresh; tier data moves daily as games are played.
- HTTP 422 when calling Mobalytics commands — Mobalytics GraphQL rejects requests without
Origin: https://mobalytics.gg; verify with mobalytics-lol-pp-cli doctor.
- item-set --to client doesn't show in League client — Restart the League client after writing item sets; the client only reads the config folder on startup. Use
--to file for ad-hoc JSON export instead.
HTTP Transport
This CLI uses Chrome-compatible HTTP transport for browser-facing endpoints. It does not require a resident browser process for normal API calls.
Discovery Signals
This CLI was generated with browser-captured traffic analysis.
- Target observed: https://ddragon.leagueoflegends.com/api/versions.json
- Capture coverage: 6 API entries from 6 total network entries
- Reachability: standard_http (65% confidence)
- Protocols: rest_json (75% confidence)
- Candidate command ideas: list_Aatrox.json — Derived from observed GET /cdn/16.10.1/data/en_US/champion/Aatrox.json traffic.; list_champion.json — Derived from observed GET /cdn/16.10.1/data/en_US/champion.json traffic.; list_item.json — Derived from observed GET /cdn/16.10.1/data/en_US/item.json traffic.; list_runesReforged.json — Derived from observed GET /cdn/16.10.1/data/en_US/runesReforged.json traffic.; list_summoner.json — Derived from observed GET /cdn/16.10.1/data/en_US/summoner.json traffic.; list_versions.json — Derived from observed GET /api/versions.json traffic.
Sources & Inspiration
This CLI was built by studying these projects and resources:
Generated by CLI Printing Press