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-IDsite/assets/— фавикон и изображенияserver.mjs— статическая доставка, адаптер API Blizzard и кэши в памятиmcp_server.py— официальный SDK v2 MCP поверхность, поддерживаемая тем же API персонажаDockerfile.mcp/requirements-mcp.txt— изолированный образ MCP sidecartest/— встроенный набор тестов 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-mcpTraefik маршрутизирует 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запрещает сканирование.
This server cannot be installed
Maintenance
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
- Alicense-quality-maintenanceProvides 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.
- Flicense-qualityFmaintenanceA 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
- Flicense-qualityDmaintenanceEnables AI assistants to look up World of Warcraft character information and reputation from Blizzard's Armory website.
- Flicense-qualityCmaintenanceMCP 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.
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).
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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