ttw-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_playersA | Ищет игроков по фамилии или части имени. Имя обязательно: без него сайт отдаёт весь список на 6.7 МБ. Сайт возвращает максимум 500 строк без пагинации; при достижении потолка поле truncated равно true и запрос надо сузить. Однофамильцев много, различать их следует по городу и рейтингу. Аргумент limit укорачивает только список players. Поле total_found всегда показывает, сколько строк реально нашлось на странице, поэтому эти два числа расходятся намеренно, а не по ошибке. |
| get_playerA | Возвращает профиль игрока: сводку, периоды рейтинга, турниры и все матчи. История не ограничена фиксированным окном: страница отдаёт все недельные периоды, в которых игрока обсчитывали. Замерено от 19 до 94 периодов у разных игроков, самый ранний — октябрь 2023 года. Глубина отражает активность самого игрока, а не срок хранения на сайте, поэтому многолетние вопросы к этим данным правомерны. Осторожно с summary["rated_periods"]: оно упирается в 30. У игрока с 94 периодами сводка покажет 30, то есть занизит. Считать периоды следует по длине periods, а не по этому полю. Важно: блок summary отстаёт на один недельный период и не включает самый свежий турнир, тогда как matches его включает. Расхождение между summary["games"] и длиной matches — нормальное поведение источника, а не ошибка. Для подсчётов используйте matches. Пустой best_wins означает отсутствие заметных побед, а не сбой. Техническая победа приходит с result "walkover", score_for и score_against равны null, а исходная запись сайта лежит в score_raw. Такой матч сыгран и учитывается наравне с остальными. Неопознанный счёт приходит с result "unparsed" — это признак изменившейся вёрстки, а не результат матча. |
| get_head_to_headA | Возвращает очное противостояние двух игроков. Даёт победы, проценты побед и партий, текущие рейтинги обоих и список всех их встреч. Рейтинги на этой странице округлены до целого; за точным значением с двумя знаками идите в get_player. Пустой matches означает, что игроки не встречались. Матч без разборчивого счёта — техническая победа или изменившаяся вёрстка — приходит с пустыми партиями и исходной записью в score_raw. В отличие от get_player, здесь нет поля result, поэтому различить эти два случая можно только по score_raw. |
| search_tournamentsA | Ищет турниры по названию и дате. Нужен хотя бы один аргумент. Дата задаётся в формате сайта DD.MM.YYYY, а не в ISO — это единственное место в проекте, где наружу смотрит формат источника, потому что значение уходит в его же поисковую форму. Сайт отдаёт максимум 20 результатов без пагинации; при достижении потолка truncated равно true. |
| get_tournamentA | Возвращает турнир: метаданные, итоговую таблицу и другие турниры серии. Страница содержит только итоговую таблицу. Отдельных матчей турнира на ней нет — чтобы узнать, кто с кем играл, нужны профили участников через get_player. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 5 tools
Each tool has a clearly distinct role: search vs. detail for both tournaments and players, plus a dedicated head-to-head endpoint. There is no overlap or ambiguity between the two search tools and their corresponding getter tools.
All tool names follow the same snake_case verb_noun pattern: search_tournaments, get_tournament, search_players, get_player, get_head_to_head. The naming is uniform and predictable.
Five tools is well-scoped for a read-only tournament and player statistics server: two search endpoints, two detail endpoints, and one head-to-head endpoint. Each tool covers a distinct need without bloat.
The tool surface covers the core read-only domain: finding tournaments, inspecting tournament results, searching players, viewing detailed player histories, and comparing two players. Documented source limitations such as missing tournament match lists are explicitly handled via player profiles, so no critical workflow dead-ends.