Skip to main content
Glama
consecrated-hammer

wow-site-mcp

wow-site

wow-site es un sitio de fans personal de World of Warcraft servido en https://wow.batserver.au. Utiliza HTML, CSS y JavaScript escritos a mano sin framework ni paso de compilación, además de un pequeño servidor Node sin dependencias para la API de equipamiento de personajes de Blizzard.

Contenido

  • site/index.html — página de inicio e índice de herramientas

  • site/gear-advisor.html — herramienta de asesor de equipo

  • site/styles.css — tema compartido del sitio

  • site/gear-advisor.css / site/gear-advisor.js — solo para el asesor de equipo

  • site/season-data.js — pistas de temporada compartidas y mapeo de ID de bonificación de Blizzard

  • site/assets/ — favicon e imágenes

  • server.mjs — entrega estática, adaptador de API de Blizzard y cachés en memoria

  • mcp_server.py — superficie MCP v2 del SDK oficial respaldada por la misma API de personajes

  • Dockerfile.mcp / requirements-mcp.txt — imagen sidecar MCP aislada

  • test/ — suite de pruebas integrada de Node

Related MCP server: wow-mcp

Herramientas

Asesor de equipo

Compara las pistas de mejora de equipo de la temporada con tu nivel de objeto. Mueve el deslizador y cada rango se recolorea como mejora, cambio lateral o degradación; cada pista también informa el primer rango que te supera y cuánto cuesta en crestas.

Los números de temporada y los IDs de bonificación de mejora de Blizzard son específicos de cada parche y viven en un solo lugar: site/season-data.js.

La consulta de personaje utiliza el flujo de credenciales de cliente de servidor a servidor de Blizzard. El equipamiento del personaje se almacena en caché en memoria durante cinco minutos. Las solicitudes simultáneas para el mismo personaje se fusionan, y Actualizar ahora puede omitir la caché normal después de un enfriamiento de un minuto. Las respuestas de medios de Blizzard y el token OAuth tienen sus propias cachés con mayor duración. Los menús desplegables de reinos específicos de región provienen de la API de índice de reinos de Blizzard y se almacenan en caché durante un día. El selector comienza con un marcador de posición seguro y una lista corta de opciones útiles, se completa durante el tiempo de inactividad del navegador y guarda la lista obtenida más la última selección regional del visitante en el almacenamiento del navegador para visitas inmediatas posteriores.

Las pistas actuales de la Temporada 2 se resuelven desde el bonus_list del objeto de Blizzard, no se infieren del nivel de objeto. Los objetos sin una bonificación conocida de la temporada actual se muestran como heredados/desconocidos, mientras que los objetos especiales Ascendentes obtienen un estado especial explícito. Independientemente de esa procedencia, cada ranura equipada compara su nivel de objeto con cada pista de la Temporada 2 y muestra el primer rango en esa pista que sería una mejora estricta del nivel de objeto. Esta comparación detallada se colapsa de forma independiente en cada tarjeta de objeto para que el resumen de la ruta actual siga siendo la vista principal.

MCP v2

El punto final público Streamable HTTP en /mcp utiliza el SDK oficial de Python v2 y expone cinco herramientas estructuradas de solo lectura:

  • get_character_equipment devuelve los mismos datos de personaje, objeto, ruta actual, umbral de reemplazo, hora de obtención y caché que utiliza el sitio.

  • get_character_talents devuelve la especialización activa, el árbol de héroe, las selecciones actuales de talento de clase/especialización/héroe y el código de importación dentro del juego.

  • get_character_profile devuelve un contexto compacto de identidad y progresión, incluidos niveles de objeto, puntos de logro, puntuación de Mítica+ de la temporada actual y las mejores ejecuciones.

  • get_character_achievements devuelve totales de finalización, puntos y hasta 25 logros recientes sin emitir el historial completo de varios miles de entradas.

  • list_realms devuelve los IDs de reino de Blizzard, nombres para mostrar y slugs para una región, de modo que un agente pueda validar las entradas de consulta.

Todas las herramientas llaman a la API JSON interna existente, por lo que comparten su límite de 60 solicitudes por minuto por llamante, caché de personaje de cinco minutos, caché de reino de un día, fusión de solicitudes y enfriamiento de actualización forzada. Cada llamada a herramienta, incluidos errores de validación, de origen y de límite de velocidad, se escribe como JSON estructurado en los registros del contenedor y en /data/queries.jsonl. Los registros de auditoría incluyen la consulta, el resultado, la duración, el estado de la caché, los metadatos del protocolo/cliente y la dirección del llamante; nunca contienen credenciales de Blizzard ni tokens de acceso. El archivo persistente se crea con modo 0640 dentro de un directorio de estado 0750.

Ejecutar localmente

npm test
docker build -t wow-site .
docker run --rm --env-file /path/to/wow-site.env -p 8080:80 wow-site

Luego abre http://localhost:8080.

Despliegue

La producción está definida en el archivo Compose canónico del repositorio de infraestructura en /mnt/docker/infra/config/dockerconfigs/docker-compose.yml, como los servicios wow-site y wow-site-mcp. Ambos se compilan desde este directorio, por lo que un despliegue completo es:

docker compose -p config -f /mnt/docker/infra/config/dockerconfigs/docker-compose.yml \
  up -d --build wow-site wow-site-mcp

Traefik enruta wow.${DOMAIN_PRIMARY} al sitio en el puerto 80 y da la ruta específica /mcp al sidecar MCP en el puerto 8767.

La producción carga ${MOUNT_STATE}/secrets/wow-site.env, que contiene:

BLIZZARD_CLIENT_ID=...
BLIZZARD_CLIENT_SECRET=...

Las variables de ajuste opcionales son CHARACTER_CACHE_TTL_SECONDS (por defecto 300), REFRESH_COOLDOWN_SECONDS (por defecto 60), MEDIA_CACHE_TTL_SECONDS (por defecto 86400), REALM_CACHE_TTL_SECONDS (por defecto 86400) y BLIZZARD_TIMEOUT_MS (por defecto 10000).

Notas

  • El sitio actualmente es público — sin autenticación. *.batserver.au resuelve a la dirección WAN, por lo que todo lo servido aquí es accesible desde Internet.

  • La consulta pública ni guarda ni preestablece un personaje personal. El estado persistente del personaje personal pertenece al prefijo de URL reservado /my/, que permanece vacío y puede protegerse con autenticación más adelante.

  • robots.txt no permite el rastreo.

F
license - not found
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    -
    maintenance
    Provides comprehensive World of Warcraft guild analytics, player character analysis, and auction house market data through the Blizzard Battle.net API. Supports both Retail and Classic WoW with real-time market insights, guild roster management, and demographic analytics.
  • F
    license
    -
    quality
    F
    maintenance
    A comprehensive MCP server that wraps the complete World of Warcraft retail API into 197 tools for Game Data and Profile information. It enables users to query character statistics, achievements, collections, and game mechanics across all global regions and locales.
    7
  • F
    license
    -
    quality
    C
    maintenance
    MCP server for World of Warcraft that provides 26 tools for accessing characters, guilds, realms, game data, and auction house info via Blizzard's Battle.net APIs. It enables natural-language queries for character audits, Mythic+ reviews, market analysis, and more.

View all related MCP servers

Related MCP Connectors

  • Wynncraft MMO player + guild + leaderboard + item DB lookups.

  • Bungie.net Destiny 2 + clan API: manifest, profile, characters, stats.

  • Guild Wars 2 keyless public endpoints (worlds, items, achievements, build, commerce).

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/consecrated-hammer/wow-site'

If you have feedback or need assistance with the MCP directory API, please join our Discord server