Search / io.github.Graphmaxer/gw1-mcp
Guild Wars 1 Build Compiler
R0· no sign-inGW1 build compiler: skill data, template code encode/decode, validation, hero roster. Read-only.
v1.1.3 · active · repository · website · descriptor JSON · versions
Search / io.github.Graphmaxer/gw1-mcp
R0· no sign-inGW1 build compiler: skill data, template code encode/decode, validation, hero roster. Read-only.
v1.1.3 · active · repository · website · descriptor JSON · versions
{
"mcpServers": {
"gw1-mcp": {
"type": "http",
"url": "https://gw1-mcp.graphmaxer.workers.dev/mcp"
}
}
}claude mcp add --transport http gw1-mcp https://gw1-mcp.graphmaxer.workers.dev/mcp[mcp_servers.gw1-mcp]
url = "https://gw1-mcp.graphmaxer.workers.dev/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"gw1-mcp": {
"type": "remote",
"url": "https://gw1-mcp.graphmaxer.workers.dev/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"gw1-mcp": {
"type": "http",
"url": "https://gw1-mcp.graphmaxer.workers.dev/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=gw1-mcp&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vZ3cxLW1jcC5ncmFwaG1heGVyLndvcmtlcnMuZGV2L21jcCJ9"
}{
"servers": {
"gw1-mcp": {
"type": "http",
"url": "https://gw1-mcp.graphmaxer.workers.dev/mcp"
}
}
}{
"mcpServers": {
"gw1-mcp": {
"httpUrl": "https://gw1-mcp.graphmaxer.workers.dev/mcp"
}
}
}extensions:
"gw1-mcp":
enabled: true
name: "gw1-mcp"
type: streamable_http
uri: "https://gw1-mcp.graphmaxer.workers.dev/mcp"
timeout: 300
protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_lengthdescriptions are concisetools.schemasevery tool has an object input schematools.annotations8 of 8 tools declare readOnlyHint or destructiveHinttools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHinttools.token_costabout 2,567 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changesno tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namedeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packageNo tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo +website +reachable +uptime-97% ~updated-41d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://gw1-mcp.graphmaxer.workers.dev/mcp streamable-http | none | yes | 97% | 289 ms | 2025-11-25 | 2026-10-20 |
decode_pawned_teamread-only | Decode a paw-ned2 team build blob (the 'pwnd0001...>...<' format shared on PvXwiki team pages and by the paw-ned2 tool) into its individual builds: player/hero label, description, and each skill bar fully decoded. Whitespace and line wraps in the pasted blob are tolerated. For a single (non-team) build code, use decode_template instead. |
decode_templateread-only | Decode an in-game GW1 skill template code (e.g. "OwpiMypMBg1cxcBAMBdmtIKAA") into professions, attribute allocations and the 8 skills with their stats and descriptions. Whitespace and line wraps in the pasted code are tolerated. This decodes a SINGLE build code; for a multi-hero paw-ned2 team blob, use decode_pawned_team instead. |
encode_templateread-only | Compile a build (professions, attributes, 8 skills by exact English name) into an official in-game template code. The build is validated first; on rule violations the errors are returned instead of a code. Unknown skill names return closest-match suggestions. IMPORTANT: template codes MUST come from this tool — never write or guess a code by hand, hand-written codes are invalid in-game. If unsure, verify any code with decode_template. |
get_heroread-only | Look up a GW1 hero by name or by id (GWCA HeroID, matching the AccountExport plugin output). Returns profession, campaign and how the hero is unlocked. Remember: heroes can equip any skill unlocked at ACCOUNT level, but NO PvE-only skill at all — including Signet of Capture. validate_build with forHero=true reports each one as an error, not a warning. Use this for one known hero; to browse or filter the roster, use list_heroes instead. |
get_skillread-only | Look up a single GW1 skill by exact English name or by template skill id. Returns full stats (energy, activation, recharge, adrenaline, sacrifice), profession, attribute, campaign, elite flag and description. If the name is not found, returns the closest matches so you can correct spelling. Use this when you already know the exact skill; to discover skills by profession, attribute or name fragment, use search_skills instead. |
list_heroesread-only | List all GW1 heroes, optionally filtered by profession or campaign name. Useful for team-building: shows which professions are coverable by heroes and how each hero is unlocked. |
search_skillsread-only | Search the full GW1 skill database by profession, attribute, campaign, elite flag or name fragment (valid values are documented per parameter). Returns compact records, at most `limit` of them alongside a `total` count of every match — a full page is not the whole result, page with offset. Use get_skill for full details. |
validate_buildread-only | Check a build (professions, attributes, 8 skills by exact English name) against Guild Wars 1 rules: one elite max, profession/attribute ownership, primary attributes, duplicates, rank ranges. Returns { valid, errors, warnings } without encoding — use encode_template instead when you also want the template code, since it runs these same rules and refuses on any error. |
Schemas: list_tools.
{
"name": "io.github.Graphmaxer/gw1-mcp",
"title": "Guild Wars 1 Build Compiler",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://gw1-mcp.graphmaxer.workers.dev/mcp",
"type": "streamable-http"
}
],
"version": "1.1.3",
"repository": {
"url": "https://github.com/Graphmaxer/gw1-mcp",
"source": "github"
},
"websiteUrl": "https://github.com/Graphmaxer/gw1-mcp",
"description": "GW1 build compiler: skill data, template code encode/decode, validation, hero roster. Read-only."
}