A full summoner profile or a ten-player match detail is a lot of JSON, and dropping that into a conversation costs context that could have held the actual analysis. Naming the fields you want — down to particular keys inside the league_stats array — keeps the responses small enough that a session can look at several games instead of one. Everything is read-only public game data, so there is nothing to authorise and nothing to break.
OP.GG's official MCP server, hosted at https://mcp-api.op.gg/mcp over Streamable HTTP. It covers three games, and most tools take a desired_output_fields parameter — you name the fields you want, using a path syntax with nesting, arrays and grouping, and only those come back.
- League champions — lol_get_champion_analysis for win, pick and ban rates with builds, runes, counters and synergies; lol_list_lane_meta_champions for lane-by-lane tiers; lol_get_lane_matchup_guide, lol_get_champion_synergies, lol_list_champions, lol_list_champion_details and lol_list_champion_leaderboard
- League players — lol_get_summoner_profile for rank, LP, win rate and champion pool; lol_list_summoner_matches for recent games; lol_get_summoner_game_detail for one game across all ten players
- League extras — lol_list_items, lol_list_discounted_skins and lol_get_pro_player_riot_id
- League esports — lol_esports_list_schedules and lol_esports_list_team_standings
- Teamfight Tactics — tft_list_meta_decks, tft_get_champion_item_build, tft_list_champions_for_item, tft_list_item_combinations, tft_list_augments and tft_get_play_style
- Valorant — valorant_list_agent_statistics, valorant_list_agent_compositions_for_map, valorant_list_agents, valorant_list_maps, valorant_list_player_matches and valorant_list_leaderboard by region
- Field selection syntax that goes down to individual keys inside arrays, so a match history can come back as just the fields you asked for
Nothing — no account, no key. Point a client that speaks Streamable HTTP at the hosted endpoint. Most tools expect desired_output_fields, so it is worth learning the syntax rather than treating it as optional; the data is OP.GG's, on OP.GG's terms.
