npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@wowlab/mcp-server

v0.7.0

Published

MCP server for querying WoW spell and item data from WowLab

Downloads

185

Readme

WowLab MCP Server

MCP (Model Context Protocol) server for querying World of Warcraft spell and item data from the WowLab database.

Features

  • Full Spell/Item Data: Get complete transformed data including all computed fields
  • DBC Table Access: Query 38 game data tables directly
  • Extractor Functions: Call 25 specialized functions to compute damage, durations, cooldowns, etc.
  • Schema Discovery: Introspect available tables and columns
  • Zero Configuration: Works out of the box with the WowLab database
  • Efficient Batch Queries: Retrieve multiple spells or items in a single request

Installation

Quick Start (Recommended)

Use npx to run without installation:

npx @wowlab/mcp-server@latest

Global Installation

npm install -g @wowlab/mcp-server

Available Tools

Spell & Item Retrieval

| Tool | Description | | ------------------ | -------------------------------------------------------------------- | | get_spell | Get complete spell data by ID (transformed with all computed fields) | | get_item | Get complete item data by ID (transformed with all computed fields) | | get_spells_batch | Get multiple spells by ID (max 50) | | get_items_batch | Get multiple items by ID (max 50) | | search_spells | Search spells by name | | search_items | Search items by name |

DBC Table Access

| Tool | Description | | ------------- | ---------------------------------------------------------------- | | query_table | Query DBC tables with filters, sorting, and column selection | | get_schema | List available tables or get column details for a specific table |

Available Tables:

  • Spell: spell, spell_name, spell_misc, spell_effect, spell_power, spell_cooldowns, spell_categories, spell_category, spell_class_options, spell_cast_times, spell_casting_requirements, spell_duration, spell_range, spell_radius, spell_interrupts, spell_empower, spell_empower_stage, spell_aura_options, spell_target_restrictions, spell_procs_per_minute, spell_procs_per_minute_mod, spell_aura_restrictions, spell_description_variables, spell_learn_spell, spell_levels, spell_replacement, spell_shapeshift, spell_shapeshift_form, spell_totems, spell_x_description_variables
  • Item: item, item_sparse, item_effect, item_x_item_effect
  • Shared: difficulty, expected_stat, expected_stat_mod, content_tuning_x_expected, manifest_interface_data

Extractor Functions

| Tool | Description | | ---------------- | -------------------------------------------------- | | call_function | Call an extractor function to compute derived data | | list_functions | List available extractor functions with signatures |

Available Functions:

  • getDamage - Calculate spell damage for a level/difficulty
  • getEffectsForDifficulty - Get spell effects filtered by difficulty
  • getVarianceForDifficulty - Get damage variance for difficulty
  • hasAoeDamageEffect - Check if spell has AoE damage
  • extractAuraRestrictions - Get aura restrictions
  • extractCooldown - Get cooldown info
  • extractCastTime - Get cast time
  • extractDescriptionVariables - Get description variable substitutions
  • extractDuration - Get duration
  • extractRange - Get range
  • extractRadius - Get AoE radius
  • extractCharges - Get charge info
  • extractLearnSpells - Get spells learned from this spell
  • extractLevels - Get spell level requirements
  • extractPower - Get resource costs
  • extractReplacement - Get spell replacement info
  • extractScaling - Get SP/AP coefficients
  • extractShapeshift - Get shapeshift requirements
  • extractEmpower - Get Evoker empower stages
  • extractInterrupts - Get interrupt flags
  • extractClassOptions - Get class restrictions
  • extractName - Get spell name
  • extractDescription - Get spell description
  • extractTargetRestrictions - Get target restrictions
  • extractTotems - Get totem requirements

Utility

| Tool | Description | | ------------ | ----------------------------------------- | | get_status | Check server health and connection status |

Configuration

Claude Code

Add to your Claude Code MCP settings:

{
  "mcpServers": {
    "wowlab": {
      "command": "npx",
      "args": ["-y", "@wowlab/mcp-server@latest"]
    }
  }
}

Windows Troubleshooting

If npx doesn't work on Windows (especially with nvm4w), use direct node execution:

Step 1: Install globally

npm install -g @wowlab/mcp-server

Step 2: Find your Node.js binary and global modules location

(Get-Command node).Source
npm root -g

Step 3: Use this configuration (adjust paths based on your output):

{
  "mcpServers": {
    "wowlab": {
      "command": "C:\\nvm4w\\nodejs\\node.exe",
      "args": ["C:\\nvm4w\\nodejs\\node_modules\\@wowlab\\mcp-server\\bin.mjs"]
    }
  }
}

Example Usage

// Get Fireball spell (ID 133)
await get_spell({ id: 133 });

// Search for fire spells
await search_spells({ query: "fire", limit: 10 });

// Get multiple spells at once
await get_spells_batch({ ids: [133, 2136, 3140] });

// Query raw spell_effect table for damage effects
await query_table({
  table: "spell_effect",
  filters: { EffectIndex: 0 },
  limit: 20,
});

// Get spell damage for Mythic difficulty
await call_function({
  function: "getDamage",
  args: { spellId: 133, difficultyId: 16 },
});

// List all tables
await get_schema({});

// Get columns for spell_misc table
await get_schema({ table: "spell_misc" });

License

PolyForm Noncommercial License 1.0.0