Guild Wars 1 MCP

Guild Wars 1 MCP

Read-only MCP server for public Guild Wars 1 sources (wiki, builds, YouTube, Reddit) and optional local install inventory.

Category
Visit Server

README

Guild Wars 1 MCP

Read-only Model Context Protocol server for Guild Wars 1 public sources and opt-in local install inventory.

Sources

  • Guild Wars Wiki: https://wiki.guildwars.com/api.php
  • PvXwiki: https://gwpvx.fandom.com/api.php
  • GW1 Builds: https://gw1builds.com/api/builds
  • YouTube public RSS feeds for official and creator channels
  • r/GuildWars public Atom search
  • Local Guild Wars install or VMware Fusion bundle metadata, only when explicit roots are provided

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 guildwars1 -- npx -y github:<owner>/guildwars1-mcp
codex mcp list

With opt-in local inventory:

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

Claude Code

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

With opt-in local inventory:

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

Claude Desktop

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

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

With opt-in local inventory:

{
  "mcpServers": {
    "guildwars1": {
      "command": "npx",
      "args": ["-y", "github:<owner>/guildwars1-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 guildwars1 -- npx -y github:<owner>/guildwars1-mcp
grok mcp list
grok mcp doctor

With opt-in local inventory:

grok mcp add --scope user guildwars1 \
  -e GW1_LOCAL_ROOTS="/path/to/Guild Wars/or VM.vmwarevm" \
  -- npx -y github:<owner>/guildwars1-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. The repo also includes a scheduled Source Smoke GitHub Actions workflow that runs live checks against the public source surfaces. It does not commit scraped data or publish artifacts; it catches dead feeds, API shape changes, and source breakage so the curated registry can be updated intentionally.

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" guildwars1-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.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured