Guild Wars 1 MCP
A read-only MCP server for Guild Wars 1 that lets you query public sources (wikis, builds, YouTube, Reddit) and optionally scan a local GW1 installation for metadata.
List Sources (
gw1_sources): View all configured public and local source surfaces.Search Wikis (
gw1_wiki_search): Search Guild Wars Wiki, PvXwiki, or both via their public MediaWiki APIs.Read Wiki Pages (
gw1_wiki_page): Fetch full wiki pages including extracted text, links, categories, and revision metadata.View Recent Wiki Changes (
gw1_wiki_recent_changes): Browse recent public edits on Guild Wars Wiki or PvXwiki.Read Game Updates (
gw1_game_updates): Parse and retrieve recent Guild Wars game update notes from Guild Wars Wiki.Search Builds (
gw1_builds_search): Search the GW1 Builds public API and/or PvXwiki build pages, with optional author inclusion.Analyze Template Codes (
gw1_template_code_analyze): Validate and classify Guild Wars skill/build template codes.Search Reddit (
gw1_subreddit_search): Search r/GuildWars public posts via Atom feed, with sort options and optional author inclusion.List YouTube Sources (
gw1_youtube_sources): View curated official and creator YouTube channel feeds for Guild Wars 1.Fetch YouTube Videos (
gw1_youtube_videos): Retrieve recent videos from curated GW1 YouTube RSS feeds, filterable by query or channel.Cross-Source Search (
gw1_content_search): Search across wiki, PvXwiki, GW1 Builds, YouTube, and Reddit in a single query.Local Install Inventory (
gw1_local_inventory): Opt-in scanner to detect and inventory a local Guild Wars installation or VMware Fusion bundle (e.g.,Gw.exe,Gw.dat, templates,.vmwarevmmetadata), with path redaction by default.
Allows searching and fetching pages from PvXwiki, a Fandom-hosted wiki, including extraction of text, links, categories, and revision metadata.
Provides search of r/GuildWars public Atom results, allowing retrieval of Reddit posts and comments related to Guild Wars.
Supports scanning local VMware Fusion bundle metadata (.vmwarevm, .vmx, .vmdk) when explicit roots are provided, for inventory purposes.
Enables fetching recent public videos from curated official and creator YouTube feeds, returning video metadata and links.
Click on "Deploy 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., "@Guild Wars 1 MCP Find updated PvE builds on GW1 Builds"
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.
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.phpGW1 Builds:
https://gw1builds.com/api/buildsKamadan 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.phpr/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 listWith 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-mcpClaude Code
claude mcp add --scope user guildwars-reforged -- npx -y github:<owner>/guildwars-reforged-mcp
claude mcp listWith 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-mcpClaude 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 doctorWith 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-mcpStart 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.jsTools
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 resolvegithub:<owner>/guildwars-reforged-mcpto 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-mcpOr pass roots to the gw1_local_inventory tool.
The scanner can detect:
Gw.exeGw.datmetadata onlyTemplatesfolders and plausible template codes in.txtfiles.vmwarevm,.vmx, and.vmdkmetadata
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:sourcesNotes
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 toolsgw1_builds_searchSearch GW1 buildsB
Search GW1 Builds public API and/or PvXwiki build pages. Author/handle fields are omitted unless includeAuthors is true.
Inputs: limit, query, source, includeAuthors.
gw1_content_searchSearch GW1 contentA
Search across Guild Wars Wiki, PvXwiki, GW1 Builds, YouTube, and r/GuildWars for current public content.
Inputs: query (required), sources, includeAuthors, limitPerSource.
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_subreddit_searchSearch r/GuildWarsA
Search r/GuildWars public Atom results. Author/handle fields are omitted unless includeAuthors is true.
Inputs: query (required), sort, limit, maxCharacters, +1 more.
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_wiki_searchSearch GW1 wikisB
Search Guild Wars Wiki, PvXwiki, or both via their public MediaWiki APIs.
Inputs: query (required), 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
Scored across 14 tools
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.
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.
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.
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
Related MCP Connectors
Public read-only MCP server for Genvernium product and developer resources.
Read-only MCP for the Eco game wiki: search, Markdown pages, and wiki_* lookups. No keys, no writes.
Read-only MCP server for The Quiet Protocol's engines, benchmarks, proof, and business data.
Read-only MCP server for ClassQuill, a tutoring-business-management platform.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceMCP 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.14 npm15MIT
- AlicenseAqualityDmaintenanceRead-only MCP server for precise lookup, search, and versioned retrieval of OWASP testing guides (WSTG, MASTG, ISTG, AITG) with full provenance on every result.11Apache 2.0
- FlicenseAqualityDmaintenanceAn MCP server that answers Guild Wars 2 questions by searching the official wiki and GW2 API, with citations.19-
- AlicenseNot gradedqualityAmaintenanceAn 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.1MIT