OpenDota MCP Server
A Model Context Protocol (MCP) server implementation for accessing OpenDota API data. This server enables LLMs and AI assistants to retrieve real-time Dota 2 statistics, match data, player information, and more through a standard interface.
Features
- Access player profiles, statistics, and match history
- Retrieve detailed match information
- Look up professional players and teams
- Get hero statistics and rankings
- Search for players by name
- And more!
Installation
Installing via Smithery
To install opendota-mcp-server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @lieyanqzu/opendota-mcp-server --client claude
Manual Installation
# Clone the repository
git clone https://github.com/asusevski/opendota-mcp-server.git
cd opendota-mcp-server
# Install with uv and only uv (pip is for nerds)
uv add pyproject.toml
# For development dependencies
uv pip install -e ".[dev]"
Usage
Setting up your environment
- (Optional but recommended) Create an OpenDota API key at https://www.opendota.com/api-keys
- 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
If you use WSL, assuming you have cloned the repo and set up the python environment, this is how I wrote the 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"
]
}
}
}
Using the example client
python -m src.client
Specific tools included:
- get_player_by_id - Retrieve player information by account ID
- get_player_recent_matches - Get recent matches for a player
- get_match_data - Get detailed data for a specific match
- get_player_win_loss - Get win/loss statistics for a player
- get_player_heroes - Get a player’s most played heroes
- get_hero_stats - Get statistics for heroes
- search_player - Search for players by name
- get_pro_players - Get list of professional players
- get_pro_matches - Get recent professional matches
- get_player_peers - Get players who have played with a specified player
- get_heroes - Get list of all Dota 2 heroes
- get_player_totals - Get player’s overall stats totals
- get_player_rankings - Get player hero rankings
- get_player_wordcloud - Get most common words used by player in chat
- get_team_info - Get information about a team
- get_public_matches - Get recent public matches
- get_match_heroes - Get heroes played in a specific match
License
MIT
OpenDota API Server
Project Details
- lieyanqzu/opendota-mcp-server
- Last Updated: 4/27/2025
Recomended MCP Servers
MCP Server for the Mapbox API.
MCP Server that integrates with Security Copilot, Sentinel and other tools (in the future). It enhance the process...
An MCP server for AI agents to automate token swaps on Uniswap DEX across multiple blockchains.
DOC TALK - AI is an interactive application that allows users to chat with their documents using artificial...
A fully automated workflow for triggering, running & managing fine tuning, training & deploying custom stable diffusion models...
An MCP server that offers several commands to generate prompts based on the Git repository's content
A Model Context Protocol implementation for Value Change Dump (VCD) files.
An MCP server that exposes AWS EC2 pricing data with an option to search by CPU, RAM, networking
This project demonstrates how to use Cloudflare Browser Rendering to extract web content for LLM context. It includes...
MCP Server for Odoo





