Skip to main content
MCP server CX Codex

Hated WoW MCP — Claude Code MCP server for WoW addon code

Hands your coding agent the real WoW Lua API, Blizzard's shipped UI code and the game's texture data, so addon work stops relying on invented function names.

Install into Claude Code · Platform CLI All methods and platforms ↓
claude mcp add --env WOW_DEFAULT_FLAVOR=<WOW_DEFAULT_FLAVOR> --env WOW_INSTALL_PATH=<WOW_INSTALL_PATH> --env WOW_ADDON_PATH=<WOW_ADDON_PATH> --env WOW_MCP_DATA_DIR=<WOW_MCP_DATA_DIR> --transport stdio hated-wow-mcp -- npx -y hated-wow-mcp
Open on GitHub

What Hated WoW MCP does

Three gaps get filled here. The assistant gets the in-game Lua functions and events for the client you target, the interface source Blizzard actually ships, and a lookup for art files and texture paths. Twenty tools in total. All but one only read local data; wow_addon_scaffold can create addon files, but only when you pass write, and it will not touch an existing addon without overwrite.

You need Node 20+. The Lua API indexes travel inside the package, so API search, TOC/XML checks, linting and scaffolding work right after you connect it. The rest waits for a one-time sync via npx -y hated-wow-mcp sync all, which pulls the UI source and the file list. Open wago.tools in a browser once and let it finish loading before that run. Bot protection there can otherwise reject the atlas download with HTTP 403. The UI source is about 44 MB and the listfile about 149 MB on the first pass; later runs only revalidate.

Transport is plain stdio, so any MCP client fits. Config formats differ: mcpServers in Cursor and Cline, servers in VS Code, TOML at ~/.codex/config.toml for Codex. Bump startup_timeout_sec in Codex because the first npx run downloads the package. On Windows some clients spawn without a shell and plain npx dies with ENOENT; wrap it as cmd /c. No Battle.net web API here, so armory and auction lookups are out.

What it helps with

  • look up the exact Lua function names for a given client
  • read how Blizzard builds a UI element in its own source
  • find a real texture path instead of a guessed one
  • validate addon TOC and XML files
  • scaffold a fresh addon from scratch

Example prompts for the agent

  • Find the Lua API function that registers a handler for the player entering world event
  • Show me how Blizzard draws the cast bar in the UI source
  • Run the linter over my MyAddon.toc and XML files

How to install Hated WoW MCP

Platform CLI

claude mcp add --env WOW_DEFAULT_FLAVOR=<WOW_DEFAULT_FLAVOR> --env WOW_INSTALL_PATH=<WOW_INSTALL_PATH> --env WOW_ADDON_PATH=<WOW_ADDON_PATH> --env WOW_MCP_DATA_DIR=<WOW_MCP_DATA_DIR> --transport stdio hated-wow-mcp -- npx -y hated-wow-mcp

Replace <…> with your own values

Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more

Questions about Hated WoW MCP

How do I install Hated WoW MCP in Claude Code?

Run claude mcp add hated-wow-mcp -- npx -y hated-wow-mcp. To pass environment variables, add --env flags and --transport stdio as in the longer form of the command. Then check it with claude mcp list.

What does Hated WoW MCP do?

It supplies the agent with the WoW Lua API, Blizzard's interface source, art and file data, plus tools for linting and scaffolding an addon.

What does the server need to work?

Node 20+ to run. Syncing the UI source and atlas data also needs git on your PATH, and you should load wago.tools in a browser once beforehand. Without the sync some tools stay unavailable.

Similar MCP servers

Everything for Game dev and 3D: Unity, Unreal, Godot, Blender →

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor