Skip to main content
Glama
consecrated-hammer

wow-site-mcp

wow-site

wow-site — это личный фанатский сайт World of Warcraft, доступный по адресу https://wow.batserver.au. Он использует написанные вручную HTML, CSS и JavaScript без фреймворков и этапов сборки, а также небольшой сервер Node.js без зависимостей для API экипировки персонажей Blizzard.

Содержание

  • site/index.html — целевая страница и индекс инструментов

  • site/gear-advisor.html — инструмент советника по экипировке

  • site/styles.css — общая тема сайта

  • site/gear-advisor.css / site/gear-advisor.js — только для советника по экипировке

  • site/season-data.js — общие треки сезона и отображение Blizzard bonus-ID

  • site/assets/ — фавикон и изображения

  • server.mjs — статическая доставка, адаптер API Blizzard и кэши в памяти

  • mcp_server.py — официальный SDK v2 MCP поверхность, поддерживаемая тем же API персонажа

  • Dockerfile.mcp / requirements-mcp.txt — изолированный образ MCP sidecar

  • test/ — встроенный набор тестов Node.js

Related MCP server: wow-mcp

Инструменты

Советник по экипировке

Сравнивает треки улучшения экипировки сезона с вашим уровнем предметов. Передвигайте ползунок, и каждый ранг перекрашивается как улучшение, побочное улучшение или ухудшение; каждый трек также сообщает первый ранг, который превосходит вас, и сколько это стоит в гребнях.

Номера сезонов и Blizzard upgrade bonus IDs зависят от патча и находятся в одном месте: site/season-data.js.

Поиск персонажа использует поток учетных данных клиента Blizzard сервер-сервер. Экипировка персонажа кэшируется в памяти на пять минут. Одновременные запросы одного и того же персонажа объединяются, и Refresh now может обойти обычный кэш после минутной перезарядки. Медиа-ответы Blizzard и токен OAuth имеют свои собственные более долгоживущие кэши. Выпадающие списки миров, специфичные для региона, берутся из Blizzard Realm Index API и кэшируются на один день. Селектор начинается с безопасного заполнителя и короткого списка полезных опций, заполняется во время простоя браузера и сохраняет полученный список вместе с последним региональным выбором посетителя в хранилище браузера для немедленных последующих посещений.

Текущие треки 2-го сезона определяются из bonus_list предметов Blizzard, а не выводятся из уровня предмета. Предметы без известного бонуса текущего сезона отображаются как legacy/unknown, в то время как особые предметы Ascendant получают явное специальное состояние. Независимо от этого происхождения, каждый экипированный слот сравнивает свой уровень предмета с каждым треком 2-го сезона и показывает первый ранг на этом треке, который был бы строгим улучшением уровня предмета. Это подробное сравнение независимо свернуто на каждой карточке предмета, так что сводка текущего пути остается основным видом.

MCP v2

Общедоступная конечная точка Streamable HTTP по адресу /mcp использует официальный Python SDK v2 и предоставляет пять структурированных инструментов только для чтения:

  • get_character_equipment — возвращает те же данные персонажа, предмета, текущего пути, порога замены, времени получения и кэша, которые используются сайтом.

  • get_character_talents — возвращает активную специализацию, дерево героя, текущие выборы талантов класса/специализации/героя и внутриигровой код импорта.

  • get_character_profile — возвращает компактную информацию о личности и прогрессе, включая уровни предметов, очки достижений, рейтинг Mythic+ текущего сезона и лучшие забеги.

  • get_character_achievements — возвращает итоги выполнения, очки и до 25 последних достижений без выдачи полной многотысячной истории.

  • list_realms — возвращает ID миров Blizzard, отображаемые имена и слагги для региона, чтобы агент мог проверить входные данные поиска.

Все инструменты вызывают существующий внутренний JSON API, поэтому они разделяют его ограничение на 60 запросов в минуту на вызывающего, пятиминутный кэш персонажей, однодневный кэш миров, объединение запросов и перезарядку принудительного обновления. Каждый вызов инструмента, включая ошибки валидации, вышестоящие и ограничения скорости, записывается в виде структурированного JSON в журналы контейнера и /data/queries.jsonl. Записи аудита включают запрос, результат, продолжительность, статус кэша, протокол/метаданные клиента и адрес вызывающего; они никогда не содержат учетные данные Blizzard или токены доступа. Постоянный файл создается с режимом 0640 внутри каталога состояния 0750.

Запуск локально

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

Затем откройте http://localhost:8080.

Развертывание

Продакшн описан в каноническом Compose-файле репозитория инфраструктуры по адресу /mnt/docker/infra/config/dockerconfigs/docker-compose.yml как сервисы wow-site и wow-site-mcp. Оба собираются из этого каталога, поэтому полное развертывание:

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

Traefik маршрутизирует wow.${DOMAIN_PRIMARY} на сайт на порту 80 и отдает специфичный для пути /mcp маршрут MCP sidecar на порт 8767.

Продакшн загружает ${MOUNT_STATE}/secrets/wow-site.env, содержащий:

BLIZZARD_CLIENT_ID=...
BLIZZARD_CLIENT_SECRET=...

Необязательные переменные настройки: CHARACTER_CACHE_TTL_SECONDS (по умолчанию 300), REFRESH_COOLDOWN_SECONDS (по умолчанию 60), MEDIA_CACHE_TTL_SECONDS (по умолчанию 86400), REALM_CACHE_TTL_SECONDS (по умолчанию 86400) и BLIZZARD_TIMEOUT_MS (по умолчанию 10000).

Примечания

  • Сайт в настоящее время публичный — без аутентификации. *.batserver.au разрешается в WAN-адрес, поэтому все, что здесь обслуживается, доступно через интернет.

  • Публичный поиск не сохраняет и не предустанавливает личного персонажа. Постоянное состояние личного персонажа относится к зарезервированному префиксу URL /my/, который остается пустым и может быть закрыт аутентификацией позже.

  • robots.txt запрещает сканирование.

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