Skip to main content
Glama

League of Legends Stats MCP Server

models.py21.8 kB
# generated by fastapi-codegen: # filename: openapi.yaml # timestamp: 2025-06-29T09:37:32+00:00 from __future__ import annotations from enum import Enum from typing import List, Optional from pydantic import BaseModel, Field, RootModel class Area(BaseModel): AreaId: Optional[int] = None CountryCode: Optional[str] = None Name: Optional[str] = None class Champion(BaseModel): Armor: Optional[float] = None ArmorPerLevel: Optional[float] = None Attack: Optional[float] = None AttackDamage: Optional[float] = None AttackDamagePerLevel: Optional[float] = None AttackRange: Optional[float] = None AttackSpeedOffset: Optional[float] = None ChampionId: Optional[int] = None Defense: Optional[float] = None Difficulty: Optional[float] = None Hp: Optional[float] = None HpRegen: Optional[float] = None HpRegenPerLevel: Optional[float] = None HpUpPerLevel: Optional[float] = None Magic: Optional[float] = None MoveSpeed: Optional[float] = None Mp: Optional[float] = None MpRegen: Optional[float] = None MpRegenPerLevel: Optional[float] = None MpUpPerLevel: Optional[float] = None Name: Optional[str] = None SpellBlock: Optional[float] = None SpellBlockPerLevel: Optional[float] = None Title: Optional[str] = None class ChampionInfo(BaseModel): ChampionId: Optional[int] = None Name: Optional[str] = None Title: Optional[str] = None class Game(BaseModel): BestOf: Optional[str] = None DateTime: Optional[str] = None Day: Optional[str] = None DrawMoneyLine: Optional[int] = None GameId: Optional[int] = None Group: Optional[str] = None IsClosed: Optional[bool] = None PointSpread: Optional[float] = None RoundId: Optional[int] = None Season: Optional[int] = None SeasonType: Optional[int] = None Status: Optional[str] = None TeamAId: Optional[int] = None TeamAKey: Optional[str] = None TeamAMoneyLine: Optional[int] = None TeamAName: Optional[str] = None TeamAPointSpreadPayout: Optional[int] = None TeamAScore: Optional[int] = None TeamBId: Optional[int] = None TeamBKey: Optional[str] = None TeamBMoneyLine: Optional[int] = None TeamBName: Optional[str] = None TeamBPointSpreadPayout: Optional[int] = None TeamBScore: Optional[int] = None Updated: Optional[str] = None UpdatedUtc: Optional[str] = None VenueId: Optional[int] = None VenueType: Optional[str] = None Week: Optional[int] = None Winner: Optional[str] = None class Item(BaseModel): GoldBase: Optional[int] = None GoldSell: Optional[int] = None GoldTotal: Optional[int] = None ItemId: Optional[int] = None Name: Optional[str] = None class MatchBan(BaseModel): Champion: Optional[ChampionInfo] = None ChampionId: Optional[int] = None MatchId: Optional[int] = None TeamId: Optional[int] = None class Membership(BaseModel): Active: Optional[bool] = None EndDate: Optional[str] = None MembershipId: Optional[int] = None PlayerId: Optional[int] = None PlayerName: Optional[str] = None StartDate: Optional[str] = None TeamArea: Optional[str] = None TeamId: Optional[int] = None TeamName: Optional[str] = None Updated: Optional[str] = None class Player(BaseModel): BirthCity: Optional[str] = None BirthCountry: Optional[str] = None BirthDate: Optional[str] = None CommonName: Optional[str] = None FirstName: Optional[str] = None Gender: Optional[str] = None LastName: Optional[str] = None MatchName: Optional[str] = None Nationality: Optional[str] = None PlayerId: Optional[int] = None Position: Optional[str] = None Updated: Optional[str] = None class PlayerGame(BaseModel): Assists: Optional[float] = None CombatPlayerScore: Optional[float] = None DateTime: Optional[str] = None Day: Optional[str] = None Deaths: Optional[float] = None DoubleKills: Optional[float] = None FantasyPoints: Optional[float] = None GameId: Optional[int] = None Games: Optional[int] = None GoldEarned: Optional[float] = None GoldSpent: Optional[float] = None InhibitorKills: Optional[float] = None IsClosed: Optional[bool] = None KillingSpree: Optional[float] = None Kills: Optional[float] = None LargestCriticalStrike: Optional[float] = None LargestKillingSpree: Optional[float] = None LargestMultiKill: Optional[float] = None LongestTimeSpentLiving: Optional[float] = None MagicDamageDealt: Optional[float] = None MagicDamageDealtToChampions: Optional[float] = None MagicDamageTaken: Optional[float] = None MatchName: Optional[str] = None Matches: Optional[int] = None Name: Optional[str] = None NeutralMinionsKIlled: Optional[float] = None NeutralMinionsKIlledTeamJungle: Optional[float] = None NeutralMinionsKilledEnemyJungle: Optional[float] = None ObjectivePlayerScore: Optional[float] = None Opponent: Optional[str] = None OpponentId: Optional[int] = None PentaKills: Optional[float] = None PhysicalDamageDealt: Optional[float] = None PhysicalDamageDealtToChampions: Optional[float] = None PhysicalDamageTaken: Optional[float] = None PlayerId: Optional[int] = None Position: Optional[str] = None QuadraKills: Optional[float] = None SightWardsBoughtInGame: Optional[float] = None Team: Optional[str] = None TeamId: Optional[int] = None TenKillsOrAssists: Optional[float] = None TotalDamageDealt: Optional[float] = None TotalDamageDealtToChampions: Optional[float] = None TotalDamageTaken: Optional[float] = None TotalHeal: Optional[float] = None TotalMinionsKilled: Optional[float] = None TotalPlayerScore: Optional[float] = None TotalTimeCrowdControlDealt: Optional[float] = None TotalUnitsHealed: Optional[float] = None TripleKills: Optional[float] = None TrueDamageDealt: Optional[float] = None TrueDamageDealtToChampions: Optional[float] = None TrueDamageTaken: Optional[float] = None TurretKills: Optional[float] = None UnrealKills: Optional[float] = None Updated: Optional[str] = None VisionWardsBoughtInGame: Optional[float] = None WardsKilled: Optional[float] = None WardsPlaced: Optional[float] = None class Round(BaseModel): CurrentRound: Optional[bool] = None CurrentWeek: Optional[int] = None EndDate: Optional[str] = None Name: Optional[str] = None RoundId: Optional[int] = None Season: Optional[int] = None SeasonId: Optional[int] = None SeasonType: Optional[int] = None StartDate: Optional[str] = None Type: Optional[str] = None class Season(BaseModel): CompetitionId: Optional[int] = None CompetitionName: Optional[str] = None CurrentSeason: Optional[bool] = None EndDate: Optional[str] = None Name: Optional[str] = None Rounds: Optional[List[Round]] = None Season: Optional[int] = None SeasonId: Optional[int] = None StartDate: Optional[str] = None class Spell(BaseModel): Name: Optional[str] = None SpellId: Optional[int] = None class Standing(BaseModel): Games: Optional[int] = None Group: Optional[str] = None Losses: Optional[int] = None Name: Optional[str] = None Order: Optional[int] = None Points: Optional[int] = None RoundId: Optional[int] = None ScoreAgainst: Optional[int] = None ScoreDifference: Optional[int] = None ScoreFor: Optional[int] = None StandingId: Optional[int] = None TeamId: Optional[int] = None Wins: Optional[int] = None class Team(BaseModel): Active: Optional[bool] = None AreaId: Optional[int] = None AreaName: Optional[str] = None Email: Optional[str] = None Facebook: Optional[str] = None Founded: Optional[int] = None Gender: Optional[str] = None Instagram: Optional[str] = None Key: Optional[str] = None Name: Optional[str] = None PrimaryColor: Optional[str] = None QuaternaryColor: Optional[str] = None SecondaryColor: Optional[str] = None ShortName: Optional[str] = None TeamId: Optional[int] = None TertiaryColor: Optional[str] = None Twitter: Optional[str] = None Type: Optional[str] = None Website: Optional[str] = None YouTube: Optional[str] = None class TeamDetail(BaseModel): Active: Optional[bool] = None AreaId: Optional[int] = None AreaName: Optional[str] = None Email: Optional[str] = None Facebook: Optional[str] = None Founded: Optional[int] = None Gender: Optional[str] = None Instagram: Optional[str] = None Key: Optional[str] = None Name: Optional[str] = None Players: Optional[List[Player]] = None PrimaryColor: Optional[str] = None QuaternaryColor: Optional[str] = None SecondaryColor: Optional[str] = None ShortName: Optional[str] = None TeamId: Optional[int] = None TertiaryColor: Optional[str] = None Twitter: Optional[str] = None Type: Optional[str] = None Website: Optional[str] = None YouTube: Optional[str] = None class TeamGame(BaseModel): Assists: Optional[float] = None CombatPlayerScore: Optional[float] = None DateTime: Optional[str] = None Day: Optional[str] = None Deaths: Optional[float] = None DoubleKills: Optional[float] = None FantasyPoints: Optional[float] = None FirstBaron: Optional[float] = None FirstBlood: Optional[float] = None FirstDragon: Optional[float] = None FirstInhibitor: Optional[float] = None FirstRiftHerald: Optional[float] = None FirstTower: Optional[float] = None GameId: Optional[int] = None Games: Optional[int] = None GoldEarned: Optional[float] = None GoldSpent: Optional[float] = None InhibitorKills: Optional[float] = None IsClosed: Optional[bool] = None KillingSpree: Optional[float] = None Kills: Optional[float] = None LargestCriticalStrike: Optional[float] = None LargestKillingSpree: Optional[float] = None LargestMultiKill: Optional[float] = None LongestTimeSpentLiving: Optional[float] = None MagicDamageDealt: Optional[float] = None MagicDamageDealtToChampions: Optional[float] = None MagicDamageTaken: Optional[float] = None MatchName: Optional[str] = None Matches: Optional[int] = None Name: Optional[str] = None NeutralMinionsKIlled: Optional[float] = None NeutralMinionsKIlledTeamJungle: Optional[float] = None NeutralMinionsKilledEnemyJungle: Optional[float] = None ObjectivePlayerScore: Optional[float] = None Opponent: Optional[str] = None OpponentId: Optional[int] = None PentaKills: Optional[float] = None PhysicalDamageDealt: Optional[float] = None PhysicalDamageDealtToChampions: Optional[float] = None PhysicalDamageTaken: Optional[float] = None PlayerId: Optional[int] = None Position: Optional[str] = None QuadraKills: Optional[float] = None SightWardsBoughtInGame: Optional[float] = None Team: Optional[str] = None TeamId: Optional[int] = None TenKillsOrAssists: Optional[float] = None TotalDamageDealt: Optional[float] = None TotalDamageDealtToChampions: Optional[float] = None TotalDamageTaken: Optional[float] = None TotalHeal: Optional[float] = None TotalMinionsKilled: Optional[float] = None TotalPlayerScore: Optional[float] = None TotalTimeCrowdControlDealt: Optional[float] = None TotalUnitsHealed: Optional[float] = None TripleKills: Optional[float] = None TrueDamageDealt: Optional[float] = None TrueDamageDealtToChampions: Optional[float] = None TrueDamageTaken: Optional[float] = None TurretKills: Optional[float] = None UnrealKills: Optional[float] = None Updated: Optional[str] = None VisionWardsBoughtInGame: Optional[float] = None WardsKilled: Optional[float] = None WardsPlaced: Optional[float] = None class TeamMatch(BaseModel): Assists: Optional[float] = None CombatPlayerScore: Optional[float] = None DateTime: Optional[str] = None Day: Optional[str] = None Deaths: Optional[float] = None DoubleKills: Optional[float] = None FantasyPoints: Optional[float] = None FirstBaron: Optional[float] = None FirstBlood: Optional[float] = None FirstDragon: Optional[float] = None FirstInhibitor: Optional[float] = None FirstRiftHerald: Optional[float] = None FirstTower: Optional[float] = None GameId: Optional[int] = None Games: Optional[int] = None GoldEarned: Optional[float] = None GoldSpent: Optional[float] = None InhibitorKills: Optional[float] = None IsClosed: Optional[bool] = None KillingSpree: Optional[float] = None Kills: Optional[float] = None LargestCriticalStrike: Optional[float] = None LargestKillingSpree: Optional[float] = None LargestMultiKill: Optional[float] = None LongestTimeSpentLiving: Optional[float] = None MagicDamageDealt: Optional[float] = None MagicDamageDealtToChampions: Optional[float] = None MagicDamageTaken: Optional[float] = None MatchName: Optional[str] = None Matches: Optional[int] = None Name: Optional[str] = None NeutralMinionsKIlled: Optional[float] = None NeutralMinionsKIlledTeamJungle: Optional[float] = None NeutralMinionsKilledEnemyJungle: Optional[float] = None ObjectivePlayerScore: Optional[float] = None Opponent: Optional[str] = None OpponentId: Optional[int] = None PentaKills: Optional[float] = None PhysicalDamageDealt: Optional[float] = None PhysicalDamageDealtToChampions: Optional[float] = None PhysicalDamageTaken: Optional[float] = None PlayerId: Optional[int] = None Position: Optional[str] = None QuadraKills: Optional[float] = None SightWardsBoughtInGame: Optional[float] = None Team: Optional[str] = None TeamId: Optional[int] = None TenKillsOrAssists: Optional[float] = None TotalDamageDealt: Optional[float] = None TotalDamageDealtToChampions: Optional[float] = None TotalDamageTaken: Optional[float] = None TotalHeal: Optional[float] = None TotalMinionsKilled: Optional[float] = None TotalPlayerScore: Optional[float] = None TotalTimeCrowdControlDealt: Optional[float] = None TotalUnitsHealed: Optional[float] = None TripleKills: Optional[float] = None TrueDamageDealt: Optional[float] = None TrueDamageDealtToChampions: Optional[float] = None TrueDamageTaken: Optional[float] = None TurretKills: Optional[float] = None UnrealKills: Optional[float] = None Updated: Optional[str] = None VisionWardsBoughtInGame: Optional[float] = None WardsKilled: Optional[float] = None WardsPlaced: Optional[float] = None class Venue(BaseModel): Address: Optional[str] = None Capacity: Optional[int] = None City: Optional[str] = None Country: Optional[str] = None GeoLat: Optional[float] = None GeoLong: Optional[float] = None Name: Optional[str] = None Nickname1: Optional[str] = None Nickname2: Optional[str] = None Open: Optional[bool] = None Opened: Optional[int] = None VenueId: Optional[int] = None Zip: Optional[str] = None class FieldFormatActiveMembershipsGetResponse(RootModel[List[Membership]]): root: List[Membership] class Format(Enum): xml = 'xml' json = 'json' class FieldFormatAreasGetResponse(RootModel[List[Area]]): root: List[Area] class FieldFormatChampionsGetResponse(RootModel[List[Champion]]): root: List[Champion] class FieldFormatGamesByDateDateGetResponse(RootModel[List[Game]]): root: List[Game] class FieldFormatHistoricalMembershipsGetResponse(RootModel[List[Membership]]): root: List[Membership] class FieldFormatHistoricalMembershipsByTeamTeamidGetResponse( RootModel[List[Membership]] ): root: List[Membership] class FieldFormatItemsGetResponse(RootModel[List[Item]]): root: List[Item] class FieldFormatMembershipsByTeamTeamidGetResponse(RootModel[List[Membership]]): root: List[Membership] class FieldFormatPlayersGetResponse(RootModel[List[Player]]): root: List[Player] class FieldFormatPlayersByTeamTeamidGetResponse(RootModel[List[Player]]): root: List[Player] class FieldFormatScheduleRoundidGetResponse(RootModel[List[Game]]): root: List[Game] class FieldFormatSpellsGetResponse(RootModel[List[Spell]]): root: List[Spell] class FieldFormatStandingsRoundidGetResponse(RootModel[List[Standing]]): root: List[Standing] class FieldFormatTeamsGetResponse(RootModel[List[Team]]): root: List[Team] class FieldFormatVenuesGetResponse(RootModel[List[Venue]]): root: List[Venue] class Competition(BaseModel): AreaId: Optional[int] = None AreaName: Optional[str] = None CompetitionId: Optional[int] = None Format: Optional[str] = None Gender: Optional[str] = None Name: Optional[str] = None PlayerStatsCoverage: Optional[bool] = None Seasons: Optional[List[Season]] = None Type: Optional[str] = None class CompetitionDetail(BaseModel): AreaId: Optional[int] = None AreaName: Optional[str] = None CompetitionId: Optional[int] = None CurrentSeason: Optional[Season] = None Format: Optional[str] = None Games: Optional[List[Game]] = None Gender: Optional[str] = None Name: Optional[str] = None PlayerStatsCoverage: Optional[bool] = None Seasons: Optional[List[Season]] = None Teams: Optional[List[TeamDetail]] = None Type: Optional[str] = None class PlayerMatch(BaseModel): Assists: Optional[float] = None Champion: Optional[ChampionInfo] = None ChampionId: Optional[int] = None ChampionLevel: Optional[int] = None CombatPlayerScore: Optional[float] = None DateTime: Optional[str] = None Day: Optional[str] = None Deaths: Optional[float] = None DoubleKills: Optional[float] = None FantasyPoints: Optional[float] = None GameId: Optional[int] = None Games: Optional[int] = None GoldEarned: Optional[float] = None GoldSpent: Optional[float] = None InhibitorKills: Optional[float] = None IsClosed: Optional[bool] = None Items: Optional[List[Item]] = None KillingSpree: Optional[float] = None Kills: Optional[float] = None Lane: Optional[str] = None LargestCriticalStrike: Optional[float] = None LargestKillingSpree: Optional[float] = None LargestMultiKill: Optional[float] = None LongestTimeSpentLiving: Optional[float] = None MagicDamageDealt: Optional[float] = None MagicDamageDealtToChampions: Optional[float] = None MagicDamageTaken: Optional[float] = None MatchId: Optional[int] = None MatchName: Optional[str] = None Matches: Optional[int] = None Name: Optional[str] = None NeutralMinionsKIlled: Optional[float] = None NeutralMinionsKIlledTeamJungle: Optional[float] = None NeutralMinionsKilledEnemyJungle: Optional[float] = None ObjectivePlayerScore: Optional[float] = None Opponent: Optional[str] = None OpponentId: Optional[int] = None PentaKills: Optional[float] = None PhysicalDamageDealt: Optional[float] = None PhysicalDamageDealtToChampions: Optional[float] = None PhysicalDamageTaken: Optional[float] = None PlayerId: Optional[int] = None Position: Optional[str] = None QuadraKills: Optional[float] = None Role: Optional[str] = None SightWardsBoughtInGame: Optional[float] = None Spells: Optional[List[Spell]] = None Team: Optional[str] = None TeamId: Optional[int] = None TenKillsOrAssists: Optional[float] = None TotalDamageDealt: Optional[float] = None TotalDamageDealtToChampions: Optional[float] = None TotalDamageTaken: Optional[float] = None TotalHeal: Optional[float] = None TotalMinionsKilled: Optional[float] = None TotalPlayerScore: Optional[float] = None TotalTimeCrowdControlDealt: Optional[float] = None TotalUnitsHealed: Optional[float] = None TripleKills: Optional[float] = None TrueDamageDealt: Optional[float] = None TrueDamageDealtToChampions: Optional[float] = None TrueDamageTaken: Optional[float] = None TurretKills: Optional[float] = None UnrealKills: Optional[float] = None Updated: Optional[str] = None VisionWardsBoughtInGame: Optional[float] = None WardsKilled: Optional[float] = None WardsPlaced: Optional[float] = None class SeasonTeam(BaseModel): Active: Optional[bool] = None Gender: Optional[str] = None SeasonId: Optional[int] = None SeasonTeamId: Optional[int] = None Team_1: Optional[Team] = Field(None, alias='Team') TeamId: Optional[int] = None TeamName: Optional[str] = None Type: Optional[str] = None class FieldFormatCompetitionsGetResponse(RootModel[List[Competition]]): root: List[Competition] class FieldFormatSeasonTeamsSeasonidGetResponse(RootModel[List[SeasonTeam]]): root: List[SeasonTeam] class Match(BaseModel): GameId: Optional[int] = None GameVersion: Optional[str] = None MapName: Optional[str] = None MatchBans: Optional[List[MatchBan]] = None Number: Optional[int] = None PlayerMatches: Optional[List[PlayerMatch]] = None TeamMatches: Optional[List[TeamMatch]] = None WinningTeamId: Optional[int] = None class BoxScore(BaseModel): Game_1: Optional[Game] = Field(None, alias='Game') Matches: Optional[List[Match]] = None PlayerGames: Optional[List[PlayerGame]] = None TeamGames: Optional[List[TeamGame]] = None class FieldFormatBoxScoreGameidGetResponse(RootModel[List[BoxScore]]): root: List[BoxScore] class FieldFormatBoxScoresDateGetResponse(RootModel[List[BoxScore]]): root: List[BoxScore]

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ag2-mcp-servers/lol-v3-stats'

If you have feedback or need assistance with the MCP directory API, please join our Discord server