OP

OpenDota

Created 6 months ago

A Model Context Protocol (MCP) server implementation for accessing OpenDota API data.

development documentation public

What is OpenDota?

Interact with OpenDota API to retrieve Dota 2 match data, player statistics, and more.

Documentation

OpenDota MCP Server

Installation

git clone https://github.com/asusevski/opendota-mcp-server.git
cd opendota-mcp-server

# Option 1: Automated setup (works with bash, zsh, and other shells)
./scripts/setup_env.sh

# Option 2: Manual installation with uv
uv add pyproject.toml

# For development dependencies
uv pip install -e ".[dev]"

Usage# Setting up your environment

  1. (Optional but recommended) Create an OpenDota API key at https://www.opendota.com/api-keys
  2. Set your API key as an environment variable:
export OPENDOTA_API_KEY=your_api_key_here

Running the server directly

python -m src.opendota_server.server

Running the server with Claude Desktop

Follow this: https://modelcontextprotocol.io/quickstart/user

Using the example client

python -m src.client

Specific tools included:

  • get_player_by_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
  • get_player_totals
  • get_player_rankings
  • get_player_wordcloud
  • get_team_info
  • get_public_matches
  • get_match_heroes

Server Config

{
  "mcpServers": {
    "opendota-server": {
      "command": "npx",
      "args": [
        "opendota"
      ]
    }
  }
}

Links & Status

Repository: github.com
Hosted: No
Global: No
Official: No

Project Info

Hosted Featured
Created At: May 23, 2025
Updated At: Aug 07, 2025
Author: asusevski
Category: community
License: MIT
Tags:
development documentation public