このMCPでできること
Provides empirical competitive-game statistics, matchup and synergy data, tier lists, draft predictions, pick recommendations, and tournament analysis.
ツール
入力スキーマ
{'type': 'object', 'title': 'analyze_draftArguments', 'required': ['game', 'my_heroes', 'enemy_heroes', 'context'], 'properties': {'game': {'enum': ['dota2', 'deadlock', 'marvel-rivals'], 'type': 'string', 'title': 'Game', 'description': 'Which game: "dota2", "deadlock" or "marvel-rivals". Required — hero names alone do not identify the game.'}, 'context': {'type': 'string', 'description': 'Explain in 15-25 words, in third person, why this tool is called and how it supports the user\'s goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer\'s recent orders to investigate a billing issue and help support determine the appropriate resolution."'}, 'my_side': {'enum': ['radiant', 'dire'], 'type': 'string', 'title': 'My Side', 'default': 'radiant', 'description': 'Dota 2 only: the side your team plays, "radiant" or "dire". Ignored for deadlock / marvel-rivals.'}, 'my_heroes': {'type': 'array', 'items': {'type': 'string'}, 'title': 'My Heroes', 'description': 'Heroes already on YOUR team, as a list of hero names (any alias or short name; normalised internally). May be empty for a fresh draft. To see every valid hero name for a game, call lookup_hero with an EMPTY query (query="", game=...) — it returns the full roster (displayName + shortName + aliases).'}, 'enemy_heroes': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Enemy Heroes', 'description': 'Heroes on the ENEMY team, as a list of hero names (any alias or short name; normalised internally). To see every valid hero name for a game, call lookup_hero with an EMPTY query (query="", game=...) — it returns the full roster (displayName + shortName + aliases).'}}}
出力スキーマ
{'type': 'object', '$defs': {'DraftRecommendation': {'type': 'object', 'title': 'DraftRecommendation', 'required': ['hero', 'score_pct', 'metric_kind'], 'properties': {'hero': {'type': 'string', 'title': 'Hero'}, 'score_pct': {'type': 'number', 'title': 'Score Pct'}, 'short_name': {'type': 'string', 'title': 'Short Name', 'default': ''}, 'metric_kind': {'enum': ['calibrated_win_rate', 'pair_data_score'], 'type': 'string', 'title': 'Metric Kind'}}, 'description': 'One recommendation row rendered by the cross-client draft board.'}}, 'title': 'DraftBoardResult', 'required': ['game', 'game_label', 'my_label', 'enemy_label', 'prediction_status', 'recommendation_metric_label', 'note'], 'properties': {'game': {'enum': ['dota2', 'deadlock', 'marvel-rivals'], 'type': 'string', 'title': 'Game'}, 'note': {'type': 'string', 'title': 'Note'}, 'error': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Error', 'default': None}, 'citation': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Citation', 'default': None}, 'my_label': {'type': 'string', 'title': 'My Label'}, 'my_heroes': {'type': 'array', 'items': {'type': 'string'}, 'title': 'My Heroes'}, 'game_label': {'type': 'string', 'title': 'Game Label'}, 'source_url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Source Url', 'default': None}, 'enemy_label': {'type': 'string', 'title': 'Enemy Label'}, 'did_you_mean': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Did You Mean'}, 'enemy_heroes': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Enemy Heroes'}, 'my_win_rate_pct': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'My Win Rate Pct', 'default': None}, 'recommendations': {'type': 'array', 'items': {'$ref': '#/$defs/DraftRecommendation'}, 'title': 'Recommendations'}, 'prediction_status': {'enum': ['complete', 'needs_full_draft', 'unavailable'], 'type': 'string', 'title': 'Prediction Status'}, 'enemy_win_rate_pct': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Enemy Win Rate Pct', 'default': None}, 'recommendation_metric_label': {'type': 'string', 'title': 'Recommendation Metric Label'}}, 'description': 'Stable structured payload consumed by MCP Apps and plain MCP clients.'}
入力スキーマ
{'type': 'object', 'title': 'fetchArguments', 'required': ['id', 'context'], 'properties': {'id': {'type': 'string', 'title': 'Id', 'description': 'A document id exactly as returned by search.'}, 'context': {'type': 'string', 'description': 'Explain in 15-25 words, in third person, why this tool is called and how it supports the user\'s goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer\'s recent orders to investigate a billing issue and help support determine the appropriate resolution."'}}}
入力スキーマ
{'type': 'object', 'title': 'get_ban_ratesArguments', 'required': ['game', 'context'], 'properties': {'game': {'enum': ['dota2', 'deadlock', 'marvel-rivals'], 'type': 'string', 'title': 'Game', 'description': '"deadlock" or "marvel-rivals" (Dota 2 has no draft-phase ban data here).'}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 15, 'description': 'Maximum number of rows to return.'}, 'context': {'type': 'string', 'description': 'Explain in 15-25 words, in third person, why this tool is called and how it supports the user\'s goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer\'s recent orders to investigate a billing issue and help support determine the appropriate resolution."'}}}
入力スキーマ
{'type': 'object', 'title': 'get_countersArguments', 'required': ['game', 'hero', 'context'], 'properties': {'game': {'enum': ['dota2', 'deadlock', 'marvel-rivals'], 'type': 'string', 'title': 'Game', 'description': 'Which game: "dota2", "deadlock" or "marvel-rivals". Required — hero names alone do not identify the game.'}, 'hero': {'type': 'string', 'title': 'Hero', 'description': 'Hero name — any alias or short name is accepted and normalised internally. To see every valid hero name for a game, call lookup_hero with an EMPTY query (query="", game=...) — it returns the full roster (displayName + shortName + aliases).'}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 12, 'description': 'Max opponents to list per direction (best / worst matchups).'}, 'context': {'type': 'string', 'description': 'Explain in 15-25 words, in third person, why this tool is called and how it supports the user\'s goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer\'s recent orders to investigate a billing issue and help support determine the appropriate resolution."'}}}
入力スキーマ
{'type': 'object', 'title': 'get_hero_momentumArguments', 'required': ['game', 'context'], 'properties': {'game': {'enum': ['dota2', 'deadlock', 'marvel-rivals'], 'type': 'string', 'title': 'Game', 'description': 'Which game: "dota2", "deadlock" or "marvel-rivals". Required — hero names alone do not identify the game.'}, 'hero': {'type': 'string', 'title': 'Hero', 'default': '', 'description': 'Optional: one hero to report on. Empty = the biggest movers of the current window.'}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 10, 'description': 'Maximum number of rows to return.'}, 'context': {'type': 'string', 'description': 'Explain in 15-25 words, in third person, why this tool is called and how it supports the user\'s goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer\'s recent orders to investigate a billing issue and help support determine the appropriate resolution."'}}}
入力スキーマ
{'type': 'object', 'title': 'get_matchupArguments', 'required': ['game', 'hero', 'opponent', 'context'], 'properties': {'game': {'enum': ['dota2', 'deadlock', 'marvel-rivals'], 'type': 'string', 'title': 'Game', 'description': 'Which game: "dota2", "deadlock" or "marvel-rivals". Required — hero names alone do not identify the game.'}, 'hero': {'type': 'string', 'title': 'Hero', 'description': 'The hero you are asking about (any alias; normalised internally).'}, 'context': {'type': 'string', 'description': 'Explain in 15-25 words, in third person, why this tool is called and how it supports the user\'s goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer\'s recent orders to investigate a billing issue and help support determine the appropriate resolution."'}, 'opponent': {'type': 'string', 'title': 'Opponent', 'description': 'The opposing hero (any alias; normalised internally).'}}}
入力スキーマ
{'type': 'object', 'title': 'get_model_track_recordArguments', 'required': ['context'], 'properties': {'limit': {'type': 'integer', 'title': 'Limit', 'default': 10, 'description': 'Number of most recent weekly evaluations to return.'}, 'context': {'type': 'string', 'description': 'Explain in 15-25 words, in third person, why this tool is called and how it supports the user\'s goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer\'s recent orders to investigate a billing issue and help support determine the appropriate resolution."'}}}
入力スキーマ
{'type': 'object', 'required': ['context'], 'properties': {'context': {'type': 'string', 'description': 'A description of your goal and what kind of tool would help accomplish it.'}}}
入力スキーマ
{'type': 'object', 'title': 'get_synergyArguments', 'required': ['game', 'hero', 'context'], 'properties': {'game': {'enum': ['dota2', 'deadlock', 'marvel-rivals'], 'type': 'string', 'title': 'Game', 'description': 'Which game: "dota2", "deadlock" or "marvel-rivals". Required — hero names alone do not identify the game.'}, 'hero': {'type': 'string', 'title': 'Hero', 'description': 'Hero name — any alias or short name is accepted and normalised internally. To see every valid hero name for a game, call lookup_hero with an EMPTY query (query="", game=...) — it returns the full roster (displayName + shortName + aliases).'}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 12, 'description': 'Max teammates to list per direction (best / worst duos).'}, 'context': {'type': 'string', 'description': 'Explain in 15-25 words, in third person, why this tool is called and how it supports the user\'s goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer\'s recent orders to investigate a billing issue and help support determine the appropriate resolution."'}}}
入力スキーマ
{'type': 'object', 'title': 'get_tier_listArguments', 'required': ['game', 'context'], 'properties': {'game': {'enum': ['dota2', 'deadlock', 'marvel-rivals'], 'type': 'string', 'title': 'Game', 'description': 'Which game: "dota2", "deadlock" or "marvel-rivals". Required — hero names alone do not identify the game.'}, 'rank': {'type': 'string', 'title': 'Rank', 'default': '', 'description': 'Optional skill bracket. dota2: herald, guardian, crusader, archon, legend, ancient (or a band like "legend-ancient"). deadlock / marvel-rivals: low, mid, high or top. Empty = all ranks.'}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 20, 'description': 'Maximum number of rows to return.'}, 'context': {'type': 'string', 'description': 'Explain in 15-25 words, in third person, why this tool is called and how it supports the user\'s goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer\'s recent orders to investigate a billing issue and help support determine the appropriate resolution."'}}}
入力スキーマ
{'type': 'object', 'title': 'get_tournament_game_statsArguments', 'required': ['context'], 'properties': {'game': {'enum': ['dota2', 'deadlock', 'marvel-rivals'], 'type': 'string', 'title': 'Game', 'default': 'dota2', 'description': 'Only "dota2" has replay-parsed box scores today.'}, 'team': {'type': 'string', 'title': 'Team', 'default': '', 'description': 'Optional team-name filter (either side of the game).'}, 'event': {'type': 'string', 'title': 'Event', 'default': 'ti-2026', 'description': 'Event slug, e.g. "ti-2026" or "ewc-2026".'}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 3, 'description': 'Max games to return (each is a full box score).'}, 'stage': {'type': 'string', 'title': 'Stage', 'default': '', 'description': 'Optional stage filter (group stage, playoffs, ...).'}, 'context': {'type': 'string', 'description': 'Explain in 15-25 words, in third person, why this tool is called and how it supports the user\'s goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer\'s recent orders to investigate a billing issue and help support determine the appropriate resolution."'}, 'match_id': {'type': 'integer', 'title': 'Match Id', 'default': 0, 'description': 'Optional: a single Dota match id to fetch; 0 = no filter.'}}}
入力スキーマ
{'type': 'object', 'title': 'get_tournament_statsArguments', 'required': ['context'], 'properties': {'game': {'enum': ['dota2', 'deadlock', 'marvel-rivals'], 'type': 'string', 'title': 'Game', 'default': 'dota2', 'description': 'Only "dota2" has pro tournament coverage today.'}, 'event': {'type': 'string', 'title': 'Event', 'default': 'ti-2026', 'description': 'Event slug, e.g. "ti-2026" (The International 2026) or "ewc-2026" (Esports World Cup).'}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 15, 'description': 'Maximum number of rows to return.'}, 'context': {'type': 'string', 'description': 'Explain in 15-25 words, in third person, why this tool is called and how it supports the user\'s goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer\'s recent orders to investigate a billing issue and help support determine the appropriate resolution."'}}}
入力スキーマ
{'type': 'object', 'title': 'lookup_heroArguments', 'required': ['query', 'context'], 'properties': {'game': {'type': 'string', 'title': 'Game', 'default': 'dota2', 'description': '"dota2" (default), "deadlock", or "marvel-rivals".'}, 'query': {'type': 'string', 'title': 'Query', 'description': "A hero name, alias or short name as the user typed it. Pass an EMPTY string to list the game's full roster instead."}, 'context': {'type': 'string', 'description': 'Explain in 15-25 words, in third person, why this tool is called and how it supports the user\'s goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer\'s recent orders to investigate a billing issue and help support determine the appropriate resolution."'}}}
入力スキーマ
{'type': 'object', 'title': 'predict_winrateArguments', 'required': ['game', 'my_heroes', 'enemy_heroes', 'context'], 'properties': {'game': {'enum': ['dota2', 'deadlock', 'marvel-rivals'], 'type': 'string', 'title': 'Game', 'description': 'Which game: "dota2", "deadlock" or "marvel-rivals". Required — hero names alone do not identify the game.'}, 'context': {'type': 'string', 'description': 'Explain in 15-25 words, in third person, why this tool is called and how it supports the user\'s goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer\'s recent orders to investigate a billing issue and help support determine the appropriate resolution."'}, 'my_side': {'enum': ['radiant', 'dire'], 'type': 'string', 'title': 'My Side', 'default': 'radiant', 'description': 'Dota 2 only: the side your team plays, "radiant" or "dire". Ignored for deadlock / marvel-rivals.'}, 'my_heroes': {'type': 'array', 'items': {'type': 'string'}, 'title': 'My Heroes', 'description': 'Heroes already on YOUR team, as a list of hero names (any alias or short name; normalised internally). May be empty for a fresh draft. To see every valid hero name for a game, call lookup_hero with an EMPTY query (query="", game=...) — it returns the full roster (displayName + shortName + aliases).'}, 'enemy_heroes': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Enemy Heroes', 'description': 'Heroes on the ENEMY team, as a list of hero names (any alias or short name; normalised internally). To see every valid hero name for a game, call lookup_hero with an EMPTY query (query="", game=...) — it returns the full roster (displayName + shortName + aliases).'}}}
入力スキーマ
{'type': 'object', 'title': 'predict_winrate_batchArguments', 'required': ['my_heroes', 'enemy_heroes', 'candidates', 'context'], 'properties': {'game': {'enum': ['dota2', 'deadlock', 'marvel-rivals'], 'type': 'string', 'title': 'Game', 'default': 'dota2', 'description': 'Only "dota2" is supported today.'}, 'context': {'type': 'string', 'description': 'Explain in 15-25 words, in third person, why this tool is called and how it supports the user\'s goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer\'s recent orders to investigate a billing issue and help support determine the appropriate resolution."'}, 'my_side': {'enum': ['radiant', 'dire'], 'type': 'string', 'title': 'My Side', 'default': 'radiant', 'description': 'Dota 2 only: the side your team plays, "radiant" or "dire". Ignored for deadlock / marvel-rivals.'}, 'my_heroes': {'type': 'array', 'items': {'type': 'string'}, 'title': 'My Heroes', 'description': 'Heroes your team already picked (0-4), as a list of hero names.'}, 'candidates': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Candidates', 'description': 'Candidate heroes to evaluate as your next pick (1-150), as a list of hero names.'}, 'enemy_heroes': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Enemy Heroes', 'description': 'Enemy heroes (0-5), as a list of hero names.'}}}
入力スキーマ
{'type': 'object', 'title': 'recommend_pickArguments', 'required': ['game', 'enemy_heroes', 'context'], 'properties': {'game': {'enum': ['dota2', 'deadlock', 'marvel-rivals'], 'type': 'string', 'title': 'Game', 'description': 'Which game: "dota2", "deadlock" or "marvel-rivals". Required — hero names alone do not identify the game.'}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 5, 'description': 'Max recommendations (Deadlock / Marvel Rivals; Dota always returns its top 3).'}, 'context': {'type': 'string', 'description': 'Explain in 15-25 words, in third person, why this tool is called and how it supports the user\'s goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer\'s recent orders to investigate a billing issue and help support determine the appropriate resolution."'}, 'my_side': {'enum': ['radiant', 'dire'], 'type': 'string', 'title': 'My Side', 'default': 'radiant', 'description': 'Dota 2 only: the side your team plays, "radiant" or "dire". Ignored for deadlock / marvel-rivals.'}, 'my_heroes': {'type': 'array', 'items': {'type': 'string'}, 'title': 'My Heroes', 'default': [], 'description': 'Heroes your team already has, as a list of hero names (may be empty).'}, 'enemy_heroes': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Enemy Heroes', 'description': 'Enemy heroes to pick against, as a list of hero names.'}}}
入力スキーマ
{'type': 'object', 'title': 'searchArguments', 'required': ['query', 'context'], 'properties': {'query': {'type': 'string', 'title': 'Query', 'description': "Free-text search over Batru's live esports data (hero names, matchups, tournaments, patches)."}, 'context': {'type': 'string', 'description': 'Explain in 15-25 words, in third person, why this tool is called and how it supports the user\'s goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer\'s recent orders to investigate a billing issue and help support determine the appropriate resolution."'}}}
最近のツール変更
類似のMCPサーバー
Stratz
Provides Dota 2 data including heroes, players, matches, live games, player histories, hero statistics, and custom STRATZ GraphQL…
Riot Games
Provides Riot Games and League of Legends data for accounts, champions, mastery, ranked ladders, matches, timelines, and player h…
Wynncraft
Provides Wynncraft player, guild, leaderboard, online-player, news, and item database lookups.
Balldontlie
Provides NBA schedules, games, players, rosters, and game-level basketball statistics.
sportiq-mcp
Provides football, Formula 1, and cricket schedules, scores, statistics, simulations, fantasy recommendations, odds analysis, and…
Api Football
Provides soccer data including fixtures, leagues, squads, injuries, head-to-head records, and match predictions.
Opendota
Provides Dota 2 player profiles, professional match data, and hero pick, win, and ban statistics.
Betsapi
Retrieves upcoming and live sports events along with bookmaker odds across supported sports.