联盟数据MCP
模型上下文协议(MCP)服务器,通过Riot Games API提供对英雄联盟游戏数据的访问。
特性
- 玩家PUUID查找:使用游戏名称和标记行获取玩家的PUUID
- 比赛历史记录列表:使用可选筛选检索玩家的比赛列表
- 匹配详细信息:获取详细的比赛信息,包括统计数据和比赛数据
- 比赛摘要列表:使用玩家特定的上下文获取截断的比赛数据(针对大型数据集进行了优化)
先决条件
- Python 3.13+
- Riot Games API密钥(从 Riot开发者门户)
- MCP兼容客户端(如克劳德桌面)
安装
方法1:从PyPI安装(推荐)
pip install league-data-mcp方法2:使用uvx安装
uvx install league-data-mcp方法3:开发安装
- 克隆存储库
git clone https://github.com/syy674998887/league-data-mcp.git
cd league-data-mcp- 安装依赖项
uv sync- 设置环境变量
export API="Your Riot API key here"配置
适用于克劳德桌面/樱桃工作室等。
- 配置MCP客户端
将服务器配置添加到MCP客户端:
{
"mcpServers": {
"League-Data-MCP": {
"command": "uvx",
"args": ["league-data-mcp@latest"],
"env": {
"API": "Your Riot API key here"
}
}
}
}可用工具
get_puuid
通过游戏名称和标记行获取玩家PUUID(支持批量查询)。
参数:
players(List\[dict\]):玩家字典列表game_name和tag_line钥匙
例子:
get_puuid([
{"game_name": "Faker", "tag_line": "KR1"},
{"game_name": "Untargetable", "tag_line": "666"}
])get_match_list
按PUUID获取玩家的比赛列表。
参数:
puuid(str):玩家的PUUIDtype(str,可选):匹配类型过滤器(正常、排名等)count(str,可选):要返回的匹配数
例子:
get_match_list(
puuid="Player's Puuid",
type="ranked",
count="20"
)get_match_detail
通过匹配ID获取详细的匹配数据。
参数:
match_id(str):匹配ID(例如,“NA1_5354690210”)
例子:
get_match_detail(match_id="NA1_5354690210")get_match_summary
获取具有玩家特定上下文的多场比赛(最多10场比赛)的截断比赛摘要。
参数:
match_ids(List\[str\]):匹配ID列表game_name(str):玩家的游戏名称,用于搜索其他上下文
例子:
get_match_summary(
match_ids=["NA1_5354690210", "NA1_5354690211"],
game_name="Faker"
)速率限制
服务器遵守Riot Games API速率限制。如果遇到速率限制问题,请考虑实现额外的重试逻辑或请求限制。
错误处理
服务器包括全面的错误处理:
- API错误记录为状态代码和错误消息
- 捕获并记录网络故障
- 无效请求返回
None价值观
许可证
此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。
免责声明
该项目与Riot Games无关。英雄联盟是Riot Games,股份有限公司的商标。
支持
对于问题和疑问:
- 检查 Riot Games API文档
- 在此打开一个问题 仓库
