wow-casc-mcp-server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@wow-casc-mcp-serverfind all .m2 files in the creature directory"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
wow-casc-mcp-server
MCP server for reading World of Warcraft client files via CASC storage.
Tools
Tool | Description |
| Open CASC storage, returns handleId + buildNumber |
| Find files by wildcard mask (JS pre-filter, optional branch/readability filters) |
| Read file content (text or base64) |
| Close storage handle |
Use the WoW root Data directory for casc_open, for example
D:\Program Files\World of Warcraft\Data. Do not use _retail_\Data; the
_retail_ directory is the live client/addon folder, not the CASC storage
root.
Related MCP server: wow-mcp
casc_find — JS Pre-Filter
v1.3.0 replaced native CascFindFirstFile/CascFindNextFile iteration with JS readline streaming. The community listfile (2.1M entries, 139MB) is filtered line-by-line via regex in ~2-5 seconds. Native iteration previously took 3+ minutes.
Field | Description |
|
|
|
|
|
|
|
|
Mask matching: case-insensitive, * matches any characters, ? matches single character.
Performance: < 5s for full 2.1M entry scan. 60s timeout as safety net.
casc_find is discovery by default. A listfile match is only a candidate and
may not be readable in the active client build.
Branch / Flavor Filtering
Pass one of branch, environment, flavor, productFlavor, or
clientFlavor to reduce cross-version candidates. Supported values include:
retail/mainline, ptr, classic, vanilla, tbc, wrath, cata, and
mists.
Filtering is conservative: paths with explicit mismatched branch segments are skipped, while generic/shared paths remain included.
Example Retail/mainline search:
{
"mask": "interface/addons/blizzard_uiparent/mainline/*.lua",
"branch": "retail",
"maxResults": 20
}Readability Verification
Set verify: true to attempt an open/read check for each returned candidate.
Returned files are annotated with:
Field | Description |
|
|
| byte size when readable, otherwise |
|
|
| error text for unreadable candidates |
Verification is applied only to returned candidates, not to every matching
listfile row. For API/source cache provenance, use casc_read on the exact
readable path and record the buildNumber.
Example:
{
"mask": "interface/addons/blizzard_uiparent/mainline/uiparent.lua",
"branch": "mainline",
"verify": true,
"maxResults": 5
}casc_open — Build Detection
casc_open response includes buildNumber (Blizzard's internal build counter). Compare against last known value to detect client changes and invalidate cached CASC data.
Current Retail UI source is commonly under paths such as
interface/addons/blizzard_*/mainline/* or
interface/addons/blizzard_*/shared/*. Older Interface/FrameXML/*.lua
listfile hits can be stale for the current build; treat them as candidates
until casc_read succeeds.
Timeouts
Operation | Timeout |
| 30s |
| 60s |
| 30s |
Listfile download | 30s |
Setup
npm installCommunity Listfile
casc_find auto-downloads the latest community listfile on first use — no manual setup needed.
Source: wowdev/wow-listfile — the canonical community listfile, same source used by wow.tools.local.
How it works:
First
casc_findwithoutlistfilePath→ downloadscommunity-listfile.csvto server directorySubsequent calls → uses local cache
Cache older than 1 day → auto re-downloads
Failed download → falls back to stale cache (if exists), otherwise
casc_findreports that no listfile is available
Manual override: Pass listfilePath in casc_find to use a custom listfile instead.
Format: CSV with FileDataID;filename lines:
1;interface/cinematics/logo_800.avi
53183;sound/music/citymusic/darnassus/darnassus intro.mp3MCP Config
{
"mcpServers": {
"wow-casc": {
"type": "stdio",
"command": "node",
"args": ["path/to/mcp-casc/index.js"]
}
}
}Requirements
Node.js 18+
World of Warcraft installation (retail)
@jamiephan/cascliband@modelcontextprotocol/sdk(installed via npm)
Version
1.3.0 — JS pre-filter casc_find (2-5s vs 3min), 60s timeout, buildNumber in casc_open response, optional branch filtering and readable-candidate verification.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseCqualityDmaintenanceAn MCP (Model-Controller-Processor) server for accessing League of Legends client data. This server provides a collection of tools that communicate with the League of Legends Live Client Data API to retrieve in-game data.Last updated1212Apache 2.0
- Flicense-qualityFmaintenanceA comprehensive MCP server that wraps the complete World of Warcraft retail API into 197 tools for Game Data and Profile information. It enables users to query character statistics, achievements, collections, and game mechanics across all global regions and locales.Last updated7
- Alicense-qualityAmaintenanceA local MCP server that lets any MCP-compatible AI client manage a standalone World of Warcraft private server, including server control, database operations, NPC/quest/loot management, and more.Last updatedMIT
- Alicense-qualityCmaintenanceMCP server that exposes structured World of Warcraft API data (functions, deprecated replacements, enums, events, widget methods) to AI agents, enabling querying and exploration of WoW API without wiki parsing.Last updated3311MIT
Related MCP Connectors
MCP server for accessing curated awesome list documentation
MCP server for ScanMalware.com URL scanning, malware detection, and analysis.
The MCP server for Azure DevOps, bringing the power of Azure DevOps directly to your agents.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/annoft/wow-casc-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server