Skip to main content
Glama
Guild Wars 1 MCP

Guild Wars 1 MCP

by ArtSabintsev

Guild Wars Reforged MCP

Read-only Model Context Protocol server for Guild Wars Reforged (the 2025 re-release of Guild Wars 1) public sources and opt-in local install inventory. Covers Prophecies, Factions, Nightfall, and Eye of the North.

Sources

Listed alphabetically by name:

  • Guild Wars Build Creator (mobile UI, pointer-only): https://guildwars.magical.ch/

  • Guild Wars Wiki: https://wiki.guildwars.com/api.php

  • GW1 Builds: https://gw1builds.com/api/builds

  • Kamadan Trade Chat Search (pointer-only): https://kamadan.gwtoolbox.com/

  • Local Guild Wars install or VMware Fusion bundle metadata (opt-in roots only)

  • PvXwiki: https://gwpvx.fandom.com/api.php

  • r/GuildWars public Atom search

  • Speedclear Wiki: https://wiki.gwscr.com/api.php (high-end SC tactics; niche meta)

  • YouTube public RSS feeds for official and creator channels

Related MCP server: OWASP Pentest Guide Knowledge Base

Install

This is a stdio MCP server distributed from GitHub. Replace <owner> with the GitHub owner or organization that hosts this repository.

Codex

codex mcp add guildwars-reforged -- npx -y github:<owner>/guildwars-reforged-mcp
codex mcp list

With opt-in local inventory:

codex mcp add guildwars-reforged \
  --env GW1_LOCAL_ROOTS="/path/to/Guild Wars/or VM.vmwarevm" \
  -- npx -y github:<owner>/guildwars-reforged-mcp

Claude Code

claude mcp add --scope user guildwars-reforged -- npx -y github:<owner>/guildwars-reforged-mcp
claude mcp list

With opt-in local inventory:

claude mcp add --scope user guildwars-reforged \
  -e GW1_LOCAL_ROOTS="/path/to/Guild Wars/or VM.vmwarevm" \
  -- npx -y github:<owner>/guildwars-reforged-mcp

Claude Desktop

Merge this into ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "guildwars-reforged": {
      "command": "npx",
      "args": ["-y", "github:<owner>/guildwars-reforged-mcp"]
    }
  }
}

With opt-in local inventory:

{
  "mcpServers": {
    "guildwars-reforged": {
      "command": "npx",
      "args": ["-y", "github:<owner>/guildwars-reforged-mcp"],
      "env": {
        "GW1_LOCAL_ROOTS": "/path/to/Guild Wars/or VM.vmwarevm"
      }
    }
  }
}

Restart Claude Desktop after changing the file.

Grok

grok mcp add --scope user guildwars-reforged -- npx -y github:<owner>/guildwars-reforged-mcp
grok mcp list
grok mcp doctor

With opt-in local inventory:

grok mcp add --scope user guildwars-reforged \
  -e GW1_LOCAL_ROOTS="/path/to/Guild Wars/or VM.vmwarevm" \
  -- npx -y github:<owner>/guildwars-reforged-mcp

Start a new Codex, Claude, or Grok session after adding the server. Existing sessions may not pick up newly configured MCP servers.

From a checkout:

npm install
npm run build
node dist/index.js

Tools

  • gw1_sources - list configured public and local source surfaces.

  • gw1_wiki_search - search Guild Wars Wiki, PvXwiki, or both.

  • gw1_wiki_page - fetch a wiki page with extracted text, links, categories, and revision metadata.

  • gw1_wiki_recent_changes - read recent public changes from a wiki source.

  • gw1_game_updates - parse recent Guild Wars game-update sections from Guild Wars Wiki.

  • gw1_builds_search - search GW1 Builds public API and/or PvXwiki.

  • gw1_template_code_analyze - validate, decode, and legality-check Guild Wars template/build codes (professions, attributes, skill names, build rules).

  • gw1_template_encode - build an importable template code from professions, attributes, and skill names, with a legality report (one elite, three PvE-only max, single allegiance, 200 attribute-point budget).

  • gw1_subreddit_search - search r/GuildWars public Atom results.

  • gw1_youtube_sources - list curated official and creator YouTube feeds.

  • gw1_youtube_videos - fetch recent public YouTube videos from curated feeds.

  • gw1_content_search - search across wiki, PvXwiki, GW1 Builds, YouTube, and r/GuildWars.

  • gw1_local_inventory - scan explicit local roots for Guild Wars or VMware Fusion metadata.

Resources

  • gw1://sources - public source registry.

  • gw1://wiki-sources - MediaWiki source registry.

  • gw1://youtube-sources - official and creator YouTube source registry.

Update Pipeline

Most content is fetched fresh at tool-call time from public APIs and feeds, so the server does not go stale between commits. Three scheduled workflows keep the rest current without manual upkeep:

  • Source Smoke (Tue/Fri) runs live checks against every public source surface. It commits nothing; it catches dead feeds, API shape changes, and source breakage.

  • Refresh skill index (Mondays) re-extracts the bundled skill index from the Guild Wars Wiki and commits it only when the extracted data actually changed. Because installs resolve github:<owner>/guildwars-reforged-mcp to the default branch, a refresh reaches users without needing a release.

  • Keepalive (Wednesdays) makes an empty commit if the repository has been quiet for 45 days, so GitHub's 60-day inactivity rule never disables the schedules above.

Releases are cut only from human pushes to main. A data refresh is typically one or two corrected skill fields out of roughly 3,000 and does not merit a version of its own.

Local Inventory

Local inventory is opt-in. The server never scans default locations, home directories, VMware folders, or game installs by itself.

Use explicit roots:

GW1_LOCAL_ROOTS="/path/to/Guild Wars:/path/to/Some VM.vmwarevm" guildwars-reforged-mcp

Or pass roots to the gw1_local_inventory tool.

The scanner can detect:

  • Gw.exe

  • Gw.dat metadata only

  • Templates folders and plausible template codes in .txt files

  • .vmwarevm, .vmx, and .vmdk metadata

It does not mount virtual disks, parse Gw.dat, follow symlink escapes, or write scan output. Paths are redacted by default unless a caller explicitly opts out.

Development

npm install
npm run typecheck
npm test
npm run build
npm run smoke:sources

Notes

This project is not affiliated with ArenaNet, NCSoft, Guild Wars Wiki, PvXwiki, GW1 Builds, Reddit, or VMware. It fetches public, read-only data and returns source URLs so agents can attribute claims back to the original source.

Available Tools

14 tools
gw1_game_updatesRead GW1 game updatesC

Parse recent game-update sections from the Guild Wars Wiki Game updates page.

Inputs: limit, maxCharactersPerSection.

gw1_local_inventoryInventory local GW1 installA

Opt-in local scanner for Guild Wars installs or VMware Fusion bundles. It never scans default locations. Pass explicit roots or set GW1_LOCAL_ROOTS. Paths are redacted by default.

Inputs: roots, maxDepth, maxEntries, redactPaths, +2 more.

gw1_skill_index_provenanceSkill index provenanceA

Report where the bundled skill index came from (Guild Wars Wiki, not game files), when it was extracted, which wiki revision it reflects, and its content hash — use this to judge how stale template decode/encode data is.

Inputs: no named parameters.

gw1_sourcesList GW1 sourcesB

List public Guild Wars 1 sources and the opt-in local inventory surface known to this server.

Inputs: no named parameters.

gw1_template_code_analyzeAnalyze GW1 template codeA

Validate, classify, and decode a Guild Wars template/build code. Skill templates are fully decoded into primary/secondary professions, attributes with points, and the eight skills resolved to names via the bundled Guild Wars Wiki skill index.

Inputs: input (required).

gw1_template_encodeBuild & encode a GW1 skill templateA

Build a Guild Wars skill template from professions, attributes, and skill names. Returns an importable template code, a legality report (one elite max, three PvE-only max, single allegiance, 200 attribute-point budget, profession checks), per-skill energy/cast/recharge/adrenaline costs, and an energy-sustainability outlook. Use this to construct and sanity-check a build before sharing it.

Inputs: skills (required), primary (required), secondary, attributes.

gw1_wiki_pageRead GW1 wiki pageA

Fetch a page from Guild Wars Wiki or PvXwiki and return extracted text, links, categories, and revision metadata without editor usernames.

Inputs: title (required), source, maxCharacters.

gw1_wiki_recent_changesRead GW1 wiki recent changesA

Return recent public changes from Guild Wars Wiki or PvXwiki without editor usernames.

Inputs: limit, source.

gw1_youtube_sourcesList GW1 YouTube sourcesC

List curated official and creator YouTube channel feeds for Guild Wars 1, Reforged, build, skill, and guide content.

Inputs: scope.

gw1_youtube_videosSearch GW1 YouTube videosB

Fetch recent videos from curated public YouTube RSS feeds. Without a query, filters to likely Guild Wars 1/Reforged videos.

Inputs: query, scope, maxTotal, sourceIds, +1 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.6/5.0

    Scored across 14 tools

    Disambiguation4/5

    Each tool has a clearly defined target (wiki, Reddit, YouTube, builds, templates, local), and the cross-source content_search is explicitly an aggregate over the narrower searches. The only mild ambiguity is between gw1_sources and gw1_local_inventory, both touching local inventory, but one lists known surfaces and the other performs scanning.

    Naming Consistency5/5

    All 14 tools share the gw1_ prefix, snake_case, and a predictable gw1_<domain>_<kind/action> shape (search, page, encode, analyze, videos, sources). This is a consistent convention even though some suffixes are nouns rather than verbs.

    Tool Count5/5

    14 tools is within the ideal 3-15 range and each tool covers a distinct task, from wiki browsing to template encoding to cross-source search. None feel redundant or padding.

    Completeness4/5

    The set covers the main read/research workflows: wiki search/fetch/updates, community content search, build search, template encode/decode, and local inventory discovery. Minor gaps remain—no equipment/build template handling or wiki history/diff tools—but core workflows have no dead ends.

    Maintenance

    ActivitySlowing
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      MCP 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.
      30 npm
      15
      MIT
    • A
      license
      Not graded
      quality
      A
      maintenance
      An MCP server that gives LLM clients reliable, deterministic knowledge of Guild Wars 1 builds: skill data lookup, official template code encoding/decoding, and build validation.
      1
      MIT