返回市场
开放点塔-MCP服务器

开放点塔-MCP服务器

作者:asusevski5 星标更新:2025-10-17

项目介绍

OpenDota MCP 服务器

smithery 徽章

这是一个用于访问 OpenDota API 数据的 Model Context Protocol (MCP) 服务器实现。此服务器使 LLM 和 AI 助手能够通过标准接口检索实时的 Dota 2 统计数据、比赛数据、玩家信息等。

特性

  • 访问玩家资料、统计数据和比赛历史
  • 获取详细的比赛信息
  • 查找职业选手和队伍
  • 获取英雄统计数据和排名
  • 按姓名搜索玩家
  • 更多功能!

安装

通过 Smithery 安装

要通过 Smithery 自动安装 OpenDota API 服务器到 Claude Desktop:

npx -y @smithery/cli install @asusevski/opendota-mcp-server --client claude

手动安装

# 克隆仓库
git clone https://github.com/asusevski/opendota-mcp-server.git
cd opendota-mcp-server

# 选项 1:自动设置(适用于 bash、zsh 和其他 shell)
./scripts/setup_env.sh

# 选项 2:使用 uv 进行手动安装
uv add pyproject.toml

# 安装开发依赖
uv pip install -e ".[dev]"

使用方法

设置环境

  1. (可选但推荐)在 https://www.opendota.com/api-keys 创建一个 OpenDota API 密钥
  2. 将你的 API 密钥设置为环境变量:
export OPENDOTA_API_KEY=your_api_key_here

直接运行服务器

python -m src.opendota_server.server

使用 Claude Desktop 运行服务器

请参考:https://modelcontextprotocol.io/quickstart/user

如果你使用 WSL,假设你已经克隆了仓库并设置了 Python 环境,这是我写的 claude_desktop_config.json:

{
  "mcpServers": {
    "opendota": {
      "command": "wsl.exe",
      "args": [
        "--",
        "bash",
        "-c",
        "cd ~/opendota-mcp-server && source .venv/bin/activate && python src/opendota_server/server.py"
      ]
    }
  }
}

使用示例客户端

python -m src.client

包含的具体工具:

  • get_player_by_id - 通过账号ID获取玩家信息
  • get_player_recent_matches - 获取玩家最近的比赛
  • get_match_data - 获取特定比赛的详细数据
  • get_player_win_loss - 获取玩家的胜败统计
  • get_player_heroes - 获取玩家最常玩的英雄
  • get_hero_stats - 获取英雄的统计数据
  • search_player - 按姓名搜索玩家
  • get_pro_players - 获取职业选手名单
  • get_pro_matches - 获取最近的职业比赛
  • get_player_peers - 获取与指定玩家一起玩过的玩家
  • get_heroes - 获取所有 Dota 2 英雄的列表
  • get_player_totals - 获取玩家的整体统计数据
  • get_player_rankings - 获取玩家英雄排名
  • get_player_wordcloud - 获取玩家在聊天中使用的最常见的词汇
  • get_team_info - 获取关于队伍的信息
  • get_public_matches - 获取最近的公开比赛
  • get_match_heroes - 获取特定比赛中使用的英雄

安全

MseeP.ai 安全评估徽章

许可证

MIT