Skip to main content
Glama

Lichess MCP

Общайтесь с Lichess на естественном языке для взаимодействия с шахматной платформой. Используйте его вместе с Claude Desktop, чтобы играть в игры, анализировать позиции и управлять своей шахматной активностью.

Создано с использованием Model Context Protocol.

Сервер позволяет:

  • Управлять вашей учетной записью Lichess

  • Играть в шахматные партии и принимать вызовы

  • Анализировать позиции и партии

  • Присоединяться к турнирам и командам

  • Взаимодействовать с другими игроками

Конфигурация

API-токен Lichess можно задать двумя способами:

  1. Переменные окружения: Добавьте его в ваш файл .env в корне проекта или установите напрямую:

    LICHESS_TOKEN=your-lichess-api-token
  2. Использование инструмента set_token во время выполнения:

    set_token({
      token: "your-lichess-api-token"
    });

Токен можно сгенерировать по адресу https://lichess.org/account/oauth/token

Related MCP server: Lichess MCP

Доступные инструменты

1. Управление учетной записью

// Set your Lichess API token
set_token({
  token: "your-lichess-api-token"
});

// Get your Lichess profile
get_my_profile();

// Get another user's profile
get_user_profile({
  username: "player_name",
  trophies: true  // include trophies, optional
});

2. Игровой процесс

// Create a challenge against another player
create_challenge({
  username: "opponent_username",
  timeControl: "10+0",  // 10 minutes, no increment
  color: "random"       // or "white", "black"
});

// Make a move in a game
make_move({
  gameId: "abcd1234",
  move: "e2e4",
  offeringDraw: false
});

// Get your ongoing games
get_ongoing_games({
  nb: 10  // number of games to fetch
});

3. Анализ игры

// Export a game in PGN format
export_game({
  gameId: "abcd1234",
  clocks: true,
  evals: true
});

// Get cloud evaluation for a position
get_cloud_eval({
  fen: "rnbqkbnr/ppp1pppp/8/3p4/4P3/8/PPPP1PPP/RNBQKBNR w KQkq - 0 2"
});

4. Турниры

// List current tournaments
get_arena_tournaments();

// Join a tournament
join_arena({
  tournamentId: "abc123"
});

// Create a new tournament
create_arena({
  name: "My Tournament",
  clockTime: 3,
  clockIncrement: 2,
  minutes: 45
});

5. Интерактивные интерфейсы (Claude Desktop)

Эти инструменты открывают настоящую шахматную доску прямо в чате — перетаскивайте фигуры, перемещайтесь по ходам и кликайте по дебютным деревьям — используя расширение MCP Apps. В клиентах без поддержки интерфейса каждый инструмент возвращает текстовый ответ, содержащий ссылки на FEN/PGN/Lichess.

// Open today's daily puzzle (or a specific id) as an interactive solver.
play_puzzle({ puzzleId: "Bmfot" });

// Step through a Lichess game or raw PGN with prev/next/play controls.
view_pgn({ gameId: "abcd1234" });
view_pgn({ pgn: "1. e4 e5 2. Nf3 ..." });

// Walk the opening tree: click moves to drill down; toggle masters/lichess.
explore_openings({ source: "masters" });

Шахматная нотация

Форматы ходов

API Lichess принимает ходы в следующих форматах:

  • UCI: формат Universal Chess Interface (например, e2e4, g8f6)

  • SAN: стандартная алгебраическая нотация (например, e4, Nf6) — только для некоторых эндпоинтов

Формат FEN

Нотация Форсайта-Эдвардса (FEN) используется для представления шахматных позиций:

rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1

Это представляет:

  • Позиции фигур (с 8-й горизонтали по 1-ю)

  • Активный цвет (w/b)

  • Возможность рокировки (KQkq)

  • Поле для взятия на проходе

  • Счетчик полуходов

  • Номер полного хода

Обработка ошибок

Сервер предоставляет подробные сообщения об ошибках для:

  • Недопустимых ходов или позиций

  • Проблем с аутентификацией

  • Ограничений по частоте запросов (Rate limits)

  • Случаев, когда ресурс не найден

Инструкции по установке

Установка через Smithery

Чтобы установить интеграцию Lichess для Claude Desktop автоматически через Smithery:

npx -y @smithery/cli install @karayaman/lichess-mcp --client claude

Ручная установка

  1. Клонируйте репозиторий:

    git clone https://github.com/karayaman/lichess-mcp.git
    cd lichess-mcp
  2. Установите зависимости:

    npm install
  3. Настройте переменные окружения: Создайте файл .env в корневом каталоге:

    LICHESS_TOKEN=your-lichess-api-token
  4. Соберите проект:

    npm run build
  5. Установите пакет глобально (рекомендуется для интеграции с Claude Desktop):

    npm install -g
  6. Запустите сервер (для автономного использования):

    npm start

Настройка Claude Desktop

Чтобы использовать этот MCP-сервер с Claude Desktop:

  1. Найдите файл конфигурации Claude Desktop:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

    • Windows: %APPDATA%\Claude\claude_desktop_config.json

    • Linux: ~/.config/Claude/claude_desktop_config.json

  2. Добавьте MCP-сервер Lichess в вашу конфигурацию:

    {
      "mcpServers": {
        "lichess": {
          "command": "lichess-mcp",
          "env": {
            "LICHESS_TOKEN": "your-lichess-api-token",
            "DEBUG": "*"
          }
        }
      }
    }

    Примечание: Замените your-lichess-api-token на ваш реальный API-токен Lichess. Переменная окружения DEBUG является необязательной, но полезна для устранения неполадок.

  3. (Опционально) Вы можете добавить и другие MCP-серверы:

    {
      "mcpServers": {
        "filesystem": {
          "command": "npx",
          "args": [
            "-y",
            "@modelcontextprotocol/server-filesystem",
            "/Users/username/Desktop",
            "/Users/username/Downloads"
          ]
        },
        "lichess": {
          "command": "lichess-mcp",
          "env": {
            "LICHESS_TOKEN": "your-lichess-api-token"
          }
        }
      }
    }
  4. Перезапустите Claude Desktop, чтобы применить изменения.

    • Убедитесь, что полностью закрыли Claude Desktop (включая значок в системном трее/панели задач)

    • Запустите Claude Desktop снова

    • Ищите значок молотка в интерфейсе, который указывает на то, что MCP-серверы подключены

  5. Протестируйте интеграцию, спросив Claude о вашей учетной записи Lichess:

    • "Show me my Lichess profile"

    • "Start a new chess game with 10 minutes time control"

Устранение неполадок

Если вы столкнулись с проблемами при подключении к MCP-серверу:

  1. Убедитесь, что вы установили пакет глобально с помощью npm install -g

  2. Проверьте, доступна ли команда lichess-mcp в вашем PATH (which lichess-mcp)

  3. Проверьте, имеет ли ваш файл конфигурации правильный формат (новый формат mcpServers вместо mcp_servers)

  4. Полностью перезапустите Claude Desktop

  5. Попробуйте включить режим разработчика (Developer Mode) в Claude Desktop (если доступно) для получения дополнительных логов

  6. Проверьте, действителен ли ваш API-токен Lichess

Ссылки

Available Tools

88 tools
abort_board_gameC

Abort a board game

ParametersJSON Schema
NameRequiredDescriptionDefault
gameIdYesThe game ID

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Abort' implies a destructive/mutative action, but the description doesn't specify permissions required, whether the action is reversible, what happens to game state/records, or error conditions. For a mutation tool with zero annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero wasted words. It's appropriately sized for a simple tool and front-loads the core action, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (a destructive operation with no annotations and no output schema), the description is incomplete. It doesn't explain the outcome of aborting a game, error handling, side effects, or how it differs from similar sibling tools. For a mutation tool in a context-rich server with many alternatives, more detail is needed to guide proper use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage (the 'gameId' parameter is documented), so the baseline score is 3. The description adds no additional parameter semantics beyond what the schema provides—it doesn't clarify format, validation, or sourcing of 'gameId', nor does it mention any implicit parameters or constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Abort a board game' clearly states the verb ('abort') and resource ('board game'), providing a basic understanding of the tool's function. However, it doesn't differentiate from sibling tools like 'resign_board_game' or 'handle_draw_board_game', leaving ambiguity about when to use this specific termination method versus alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'resign_board_game' or 'handle_draw_board_game'. It lacks context about prerequisites (e.g., who can abort a game, what game states allow abortion) or explicit exclusions, leaving the agent to infer usage from the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

accept_challengeC

Accept an incoming challenge

ParametersJSON Schema
NameRequiredDescriptionDefault
challengeIdYesID of the challenge to accept

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but offers minimal behavioral insight. 'Accept' implies a state change (likely from pending to accepted), but it doesn't disclose permissions needed, side effects (e.g., starting a game), error conditions, or what happens after acceptance. This is inadequate for a mutation tool with zero annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with a single sentence that directly states the tool's purpose. There's no wasted verbiage or unnecessary elaboration, making it front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool likely performs a mutation (accepting a challenge) with no annotations and no output schema, the description is insufficient. It lacks details on behavioral traits, expected outcomes, error handling, and how it fits within the broader challenge workflow, leaving significant gaps for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the single parameter 'challengeId' clearly documented in the schema. The description adds no additional meaning about the parameter beyond what the schema provides, such as format examples or where to obtain the ID. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Accept an incoming challenge' clearly states the action (accept) and resource (challenge), but it's somewhat vague about what 'accept' entails in this context. It distinguishes from obvious siblings like 'decline_challenge' but doesn't specify how it differs from 'cancel_challenge' or 'claim_victory' in terms of challenge lifecycle.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. While 'accept_challenge' and 'decline_challenge' are clearly opposites, there's no mention of prerequisites (e.g., must have an incoming challenge), timing constraints, or how it relates to other challenge-related tools like 'create_challenge' or 'list_challenges'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

accept_join_requestB

Accept a join request for your team

ParametersJSON Schema
NameRequiredDescriptionDefault
teamIdYesThe team ID
userIdYesThe user ID

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions 'accept' which implies a mutation, but doesn't specify required permissions, whether the action is reversible, or what happens after acceptance (e.g., user becomes team member). This leaves significant gaps for an agent to understand the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, straightforward sentence that efficiently conveys the core action without any unnecessary words. It's front-loaded with the essential information, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is minimally adequate but incomplete. It identifies the action and resource but lacks details on permissions, side effects, or return values. Given the context of team management among siblings, more guidance would be helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with clear documentation for both 'teamId' and 'userId' parameters. The description doesn't add any additional meaning beyond what the schema provides, such as explaining where to find these IDs or their format. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Accept a join request for your team' clearly states the action (accept) and resource (join request for your team), making the purpose immediately understandable. However, it doesn't explicitly differentiate from its sibling 'decline_join_request' beyond the verb choice, which is why it doesn't reach a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'decline_join_request' or 'kick_user_from_team', nor does it mention prerequisites such as needing to be a team admin or having pending join requests. It only states what the tool does, not when it's appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

add_user_noteC

Add a private note about a user

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesUsername of the player
textYesThe contents of the note

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It implies a write operation ('Add') but doesn't specify permissions required, whether notes are editable/deletable, rate limits, or the response format. This is inadequate for a mutation tool with zero annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded and wastes no space, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is insufficient. It lacks critical details like behavioral traits (e.g., idempotency, error handling), expected outcomes, or integration with sibling tools, leaving significant gaps in understanding how to use it effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, clearly documenting both parameters ('username' and 'text'). The description adds no additional semantic context beyond what the schema provides, such as note length limits or username format examples, so it meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Add') and resource ('a private note about a user'), making the purpose understandable. However, it doesn't differentiate from potential sibling tools like 'send_message' or 'block_user' that might also involve user interactions, leaving some ambiguity about its specific role in the toolset.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., user permissions), exclusions, or compare it to similar tools like 'send_message' for public communication or 'block_user' for user management, leaving the agent to infer usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

block_userC

Block a player

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesUsername of the player to block

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden but only states the action without disclosing behavioral traits like whether this is reversible, requires admin rights, affects user status, or has side effects. 'Block a player' implies a mutation but lacks details on consequences or response format.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words, making it easy to parse and front-loaded. It directly conveys the core action without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is incomplete—it doesn't cover behavioral aspects, usage context, or return values. Given the complexity of user-blocking operations, more detail is needed to guide an agent effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the parameter 'username' clearly documented in the schema. The description adds no additional meaning beyond the schema, so it meets the baseline of 3 for high schema coverage without extra value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Block') and target resource ('a player'), which is specific and unambiguous. However, it doesn't differentiate from sibling 'unblock_user' or clarify what 'block' entails in this context (e.g., preventing interactions vs. banning).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like 'kick_user_from_team' or 'unblock_user', nor are prerequisites or context (e.g., user permissions) mentioned. The description only states the action without usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

cancel_challengeC

Cancel an outgoing challenge

ParametersJSON Schema
NameRequiredDescriptionDefault
challengeIdYesID of the challenge to cancel

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action ('cancel') but doesn't explain consequences (e.g., whether cancellation is reversible, if it notifies the opponent, or what permissions are required). For a mutation tool with zero annotation coverage, this leaves significant gaps in understanding its behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It's front-loaded with the core action and target, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (a mutation with no annotations or output schema), the description is insufficient. It lacks details on behavioral outcomes, error conditions, or usage context, leaving the agent with incomplete information to invoke it correctly in real scenarios.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the single parameter 'challengeId' clearly documented in the schema. The description doesn't add any parameter details beyond what the schema provides (e.g., format examples or where to find challenge IDs), so it meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Cancel an outgoing challenge' clearly states the action (cancel) and target (outgoing challenge), providing a specific verb+resource. It distinguishes from siblings like 'decline_challenge' (which likely handles incoming challenges) by specifying 'outgoing', though it doesn't explicitly contrast with all alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing to be the challenger), when not to use it (e.g., if the challenge is already accepted), or compare it to related tools like 'decline_challenge' or 'withdraw_from_arena'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

claim_victoryC

Claim victory if opponent abandoned the game

ParametersJSON Schema
NameRequiredDescriptionDefault
gameIdYesThe game ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It implies a mutation action ('claim victory') but doesn't disclose behavioral traits such as required permissions, whether the claim is reversible, potential side effects (e.g., game state changes), or error conditions. This leaves significant gaps in understanding how the tool behaves beyond its basic purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence that efficiently conveys the tool's purpose without unnecessary words. It is front-loaded and wastes no space, making it highly concise and well-structured for quick comprehension.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a mutation tool (claiming victory) with no annotations and no output schema, the description is incomplete. It lacks details on behavioral aspects (e.g., success/failure outcomes, error handling) and doesn't address the tool's role among siblings. For a tool that likely changes game state, more context is needed to ensure safe and correct usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with 'gameId' clearly documented. The description doesn't add any parameter semantics beyond what the schema provides (e.g., format or validation rules for gameId). Given the high schema coverage, a baseline score of 3 is appropriate, as the description doesn't compensate but also doesn't detract.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('claim victory') and the condition ('if opponent abandoned the game'), making the purpose specific and understandable. However, it doesn't explicitly differentiate from sibling tools like 'resign_board_game' or 'abort_board_game', which might handle similar game-ending scenarios, so it falls short of a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides minimal guidance by specifying the condition ('if opponent abandoned the game'), but it doesn't explain when to use this tool versus alternatives (e.g., 'resign_board_game' for self-resignation) or mention any prerequisites. Without explicit usage context or exclusions, it offers limited practical direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_arenaC

Create a new arena tournament

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the tournament
clockTimeNoClock initial time in minutes
clockIncrementNoClock increment in seconds
minutesNoTournament duration in minutes
waitMinutesNoTime before tournament starts, in minutes
startDateNoTimestamp to start the tournament at a given date
variantNoVariant keystandard
ratedNoWhether the tournament is rated
positionNoCustom initial position in FEN format
berserkableNoWhether players can use berserk
streakableNoWhether players can get streaks
hasChatNoWhether players can discuss in a chat
descriptionNoTournament description (HTML)
conditionsNoRestrict participation

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. While 'Create' implies a write/mutation operation, the description provides no information about permissions required, whether this action is reversible, rate limits, error conditions, or what happens after creation. For a complex creation tool with 14 parameters, this represents a significant transparency gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at just 4 words, front-loading the essential purpose without any wasted words. Every word earns its place, making it easy for an agent to quickly understand the core function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (14 parameters, nested objects, no output schema, and no annotations), the description is insufficiently complete. It doesn't explain what an 'arena tournament' is conceptually, what gets returned after creation, error handling, or how this differs from other tournament formats. For such a complex creation tool, more contextual information would be helpful for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, meaning all parameters are documented in the schema itself. The description adds no additional parameter information beyond the basic purpose statement. According to scoring rules, when schema coverage is high (>80%), the baseline is 3 even with no param info in the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Create') and resource ('arena tournament'), making the purpose immediately understandable. However, it doesn't differentiate this tool from other creation tools like 'create_challenge', 'create_puzzle_race', 'create_simul', or 'create_swiss' that exist in the sibling list, which prevents a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. There are multiple other tournament/competition creation tools (create_challenge, create_puzzle_race, create_simul, create_swiss) with no indication of when an arena tournament is appropriate versus these other formats. No prerequisites or contextual usage information is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_challengeC

Challenge another player

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesUsername of the player to challenge
ratedNoWhether the game is rated
clockNoClock settings
daysNoDays per turn for correspondence games
colorNoColor to play
variantNoGame variantstandard
fenNoCustom initial position in FEN format

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden but only states the action without behavioral details. It doesn't disclose outcomes (e.g., sends a challenge request, may be declined), permissions needed, rate limits, or side effects. This is inadequate for a mutation tool with potential user interactions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient phrase with zero waste—it directly states the tool's action. It's appropriately sized and front-loaded, making it easy to parse without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 7 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain what happens after challenging (e.g., challenge ID returned, notification sent) or address behavioral aspects like error conditions. Given the complexity, more context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so parameters are well-documented in the schema. The description adds no parameter semantics beyond implying a 'username' is involved. This meets the baseline of 3, as the schema handles the heavy lifting, but the description doesn't enhance understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Challenge another player' clearly states the action (challenge) and target (another player), but it's vague about the context—it doesn't specify this is for initiating a chess game or differentiate it from sibling tools like 'create_arena' or 'create_simul' for other game formats. It avoids tautology but lacks specificity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., the user must be logged in), exclusions (e.g., cannot challenge oneself), or compare to siblings like 'accept_challenge' or 'cancel_challenge'. The description alone offers no usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_puzzle_raceD

Create a puzzle race

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

D1.8/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure but fails to do so. It doesn't indicate whether this is a read or write operation, what permissions are required, if it's destructive, or what the expected outcome is (e.g., does it return a race ID?). This leaves critical behavioral traits unspecified.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

While the description is brief, it's under-specified rather than appropriately concise. A single phrase 'Create a puzzle race' fails to provide necessary context or details, making it inefficient in conveying useful information despite its short length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity implied by the tool name (involving creation of a structured event like a 'puzzle race'), the description is completely inadequate. With no annotations, no output schema, and a vague description, it lacks essential details about behavior, outcomes, or usage context, making it insufficient for effective tool selection.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, and the input schema has 100% description coverage (though empty). The description doesn't need to compensate for any parameter gaps, so a baseline of 4 is appropriate since there are no parameters to explain beyond what the schema already indicates.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Create a puzzle race' is a tautology that merely restates the tool name without adding any meaningful clarification. It doesn't specify what a 'puzzle race' is, what resources are involved, or how this creation differs from other creation tools like 'create_arena' or 'create_challenge' among the siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description offers no context, prerequisites, or exclusions, leaving the agent with no information to decide between this and other creation tools like 'create_arena' or 'create_simul'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_simulC

Create a new simul

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the simul
variantNoVariant keystandard
clockTimeNoClock initial time in minutes
clockIncrementNoClock increment in seconds
minRatingNoMinimum rating to join
maxRatingNoMaximum rating to join
colorNoColor the host will playwhite
textNoDescription of the simul

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. 'Create a new simul' implies a write/mutation operation but doesn't disclose permissions needed, whether this requires authentication, what happens on success/failure, rate limits, or side effects. For a creation tool with zero annotation coverage, this is insufficient behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at just three words. It's front-loaded with the essential action and resource. There's zero wasted language or unnecessary elaboration. This represents optimal conciseness for a tool description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a creation tool with 8 parameters, no annotations, and no output schema, the description is inadequate. It doesn't explain what a 'simul' is (simultaneous exhibition in chess), what happens after creation, return values, or error conditions. The agent lacks sufficient context to use this tool effectively despite the comprehensive parameter schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all parameters are documented in the schema. The description adds no additional parameter information beyond what's already in the schema. According to guidelines, when schema coverage is high (>80%), the baseline score is 3 even with no param info in the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'create' and the resource 'simul', making the purpose understandable. However, it doesn't differentiate from sibling tools like 'create_arena', 'create_challenge', or 'create_swiss' which also create different types of events. The description is specific about what's being created but lacks sibling distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'create_arena' or 'create_challenge'. There's no mention of prerequisites, appropriate contexts, or exclusions. The agent must infer usage from the tool name alone without any explicit guidelines.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_swissC

Create a new Swiss tournament

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the tournament
teamIdYesID of the team hosting the tournament
clockYesClock settings
nbRoundsNoNumber of rounds to play
variantNoVariant keystandard
ratedNoWhether the tournament is rated
descriptionNoTournament description (HTML)
roundIntervalNoInterval between rounds in seconds

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full responsibility for behavioral disclosure. It states the tool creates a tournament but reveals nothing about permissions required, whether this is a mutating operation, what happens on success/failure, rate limits, or any side effects. For a creation tool with zero annotation coverage, this leaves critical behavioral aspects undocumented.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence with zero wasted words. It's perfectly front-loaded with the core purpose and contains no unnecessary elaboration. This is an excellent example of conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a creation tool with 8 parameters (including nested objects), no annotations, and no output schema, the description is insufficient. It doesn't explain what happens after creation, what permissions are needed, how to handle errors, or how this differs from other tournament types. Given the complexity and lack of structured metadata, the description should provide more operational context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, so all parameters are documented in the schema itself. The description adds no additional parameter information beyond what's already in the schema descriptions. This meets the baseline expectation when schema coverage is complete, but doesn't provide extra context about parameter interactions or usage patterns.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Create') and resource ('new Swiss tournament'), making the purpose unambiguous. However, it doesn't differentiate this tool from sibling creation tools like 'create_arena', 'create_challenge', 'create_puzzle_race', or 'create_simul', which all create different types of tournaments or events.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance about when to use this tool versus alternatives like 'create_arena' or 'create_simul'. There's no mention of prerequisites (e.g., needing team membership), typical use cases, or constraints that would help an agent choose appropriately among the multiple tournament creation tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

decline_challengeC

Decline an incoming challenge

ParametersJSON Schema
NameRequiredDescriptionDefault
challengeIdYesID of the challenge to decline
reasonNoReason for declining

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It states the action ('decline') but doesn't explain what declining entails (e.g., does it notify the challenger, is it reversible, are there rate limits or permissions required?). This leaves significant gaps for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core action and resource, making it immediately understandable without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is inadequate. It doesn't cover behavioral aspects (e.g., side effects, permissions), response format, or error conditions. Given the context of sibling tools involving game challenges, more completeness is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema fully documents both parameters (challengeId and reason with enum values). The description adds no additional parameter semantics beyond what the schema provides, meeting the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Decline an incoming challenge' clearly states the action (decline) and target resource (challenge), distinguishing it from sibling tools like accept_challenge or cancel_challenge. However, it doesn't specify what domain these challenges belong to (e.g., chess games, puzzles), which prevents a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like accept_challenge or cancel_challenge. It doesn't mention prerequisites (e.g., needing an incoming challenge), exclusions, or contextual triggers, leaving the agent to infer usage from the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

decline_join_requestC

Decline a join request for your team

ParametersJSON Schema
NameRequiredDescriptionDefault
teamIdYesThe team ID
userIdYesThe user ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but lacks behavioral details. It implies a mutation ('Decline') but doesn't specify permissions required, whether the action is reversible, or what happens after declining (e.g., notification to user). This leaves gaps for safe agent operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no wasted words, making it highly concise and front-loaded. It efficiently communicates the core action without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is insufficient. It lacks details on behavioral traits (e.g., side effects, error conditions), usage context, and expected outcomes, leaving the agent with incomplete information for reliable invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters ('teamId' and 'userId') adequately. The description adds no additional meaning about these parameters, such as format examples or context, resulting in a baseline score of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Decline') and resource ('a join request for your team'), making the purpose unambiguous. However, it doesn't differentiate from sibling tools like 'accept_join_request' or 'get_team_join_requests' beyond the verb choice, which prevents a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like 'accept_join_request' or 'get_team_join_requests', nor does it mention prerequisites such as needing admin permissions or existing join requests. The description only states what it does, not when or why to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_all_study_chaptersC

Export all chapters of a study in PGN format

ParametersJSON Schema
NameRequiredDescriptionDefault
studyIdYesStudy ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. While 'Export' implies a read operation that generates output, it doesn't specify whether this is a long-running process, what permissions are required, whether it creates files or returns data directly, or any rate limits. The description lacks crucial behavioral context for a tool that presumably processes multiple chapters.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that states exactly what the tool does with zero wasted words. It's appropriately sized for a tool with one parameter and clear purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an export tool with no annotations and no output schema, the description is insufficient. It doesn't explain what format the PGN output takes (file download, direct return, streaming), whether all chapters are exported at once or sequentially, error conditions, or what happens with large studies. The lack of behavioral context makes this incomplete for practical use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents the single 'studyId' parameter. The description doesn't add any additional semantic context about the parameter beyond what's in the schema (e.g., what constitutes a valid study ID, where to find study IDs, or format requirements). Baseline 3 is appropriate when schema does the documentation work.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Export') and target resource ('all chapters of a study in PGN format'), providing a specific verb+resource combination. However, it doesn't explicitly differentiate from sibling tools like 'export_study_chapter' or 'export_game', which would be needed for a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'export_study_chapter' (for single chapters) or 'export_game' (for games rather than studies). There's no mention of prerequisites, constraints, or appropriate contexts for this operation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_gameC

Export one game in PGN or JSON format

ParametersJSON Schema
NameRequiredDescriptionDefault
gameIdYesThe game ID
movesNoInclude the PGN moves
pgnInJsonNoInclude the full PGN within the JSON response
tagsNoInclude the PGN tags
clocksNoInclude clock comments in the PGN moves
evalsNoInclude analysis evaluation comments
accuracyNoInclude accuracy percentages
openingNoInclude opening name
literateNoInclude textual annotations

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but only states the basic function. It doesn't disclose behavioral traits such as whether this is a read-only operation, if it requires authentication, rate limits, error conditions, or what the output looks like (e.g., file download vs. inline data).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero waste. It front-loads the core purpose ('Export one game') and adds essential detail ('in PGN or JSON format'). Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 9 parameters, no annotations, and no output schema, the description is insufficient. It doesn't explain the relationship between PGN/JSON formats and parameters (e.g., how 'pgnInJson' works), output behavior, or error handling. More context is needed given the complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all 9 parameters. The description adds no parameter-specific information beyond implying 'gameId' is required and format options. Baseline 3 is appropriate since the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Export') and resource ('one game'), and specifies output formats ('PGN or JSON format'). It distinguishes from siblings like 'export_games_by_ids' (multiple games) and 'export_user_games' (user-specific). However, it doesn't explicitly differentiate from 'export_ongoing_game' (ongoing vs. any game).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'export_games_by_ids' or 'export_ongoing_game'. It lacks context about prerequisites (e.g., needing a valid game ID) or exclusions (e.g., not for ongoing games).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_games_by_idsC

Export multiple games by IDs

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYesGame IDs separated by commas. Up to 300 IDs.
movesNoInclude the PGN moves
pgnInJsonNoInclude the full PGN within the JSON response
tagsNoInclude the PGN tags
clocksNoInclude clock comments
evalsNoInclude analysis
openingNoInclude opening name

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but only states the action without behavioral details. It doesn't disclose if this is a read-only operation, requires authentication, has rate limits, affects system state, or what the output format is (e.g., file download, JSON response). For a tool with 7 parameters and no output schema, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero waste—'Export multiple games by IDs' is front-loaded and directly conveys the core function without unnecessary words. Every word earns its place, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (7 parameters, no annotations, no output schema), the description is incomplete. It doesn't explain what 'export' entails (e.g., file format, data structure), behavioral traits, or usage context, leaving gaps that could hinder an AI agent's ability to invoke it correctly without trial and error.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all 7 parameters with clear descriptions and defaults. The description adds no additional parameter semantics beyond implying 'multiple games' via IDs, which is already covered in the schema. Baseline 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Export multiple games by IDs' clearly states the action (export) and resource (games), specifying it handles multiple items via IDs. However, it doesn't differentiate from sibling tools like 'export_game' (singular) or 'export_user_games' (by user criteria), leaving some ambiguity about when to choose this specific tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'export_game' or 'export_user_games'. It lacks context about prerequisites (e.g., needing game IDs), exclusions, or typical use cases, offering only a basic functional statement without comparative advice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_ongoing_gameC

Export ongoing game of a user

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesThe username
movesNoInclude the PGN moves
pgnInJsonNoInclude the full PGN within the JSON response
tagsNoInclude the PGN tags
clocksNoInclude clock comments in the PGN moves
evalsNoInclude analysis evaluation comments
openingNoInclude opening name

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states 'Export' but doesn't clarify if this is a read-only operation, what format the export produces (e.g., PGN, JSON), whether it requires authentication, or any rate limits. The description is too minimal to inform the agent about key behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at just one sentence with no wasted words. It's front-loaded with the core purpose, making it easy to parse quickly, though this brevity comes at the cost of completeness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 7 parameters, no annotations, and no output schema, the description is inadequate. It doesn't explain what 'export' means in practice (format, structure), doesn't address authentication requirements, and provides no context about the ongoing game concept. The agent would struggle to use this tool effectively based on the description alone.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, so all parameters are documented in the schema itself. The description adds no additional parameter information beyond what's in the schema, which meets the baseline expectation when schema coverage is high.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Export') and resource ('ongoing game of a user'), making the purpose understandable. However, it doesn't distinguish this tool from sibling tools like 'export_game' or 'export_user_games', which could lead to confusion about when to use this specific export function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'export_game' or 'export_user_games'. It doesn't mention prerequisites (e.g., the user must have an ongoing game) or contextual factors that would help an agent choose this tool over siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_study_chapterC

Export one study chapter in PGN format

ParametersJSON Schema
NameRequiredDescriptionDefault
studyIdYesStudy ID
chapterIdYesChapter ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the output format (PGN) but lacks critical details such as whether this is a read-only operation, if it requires authentication, potential rate limits, or what happens on failure. For a tool with zero annotation coverage, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's function without any unnecessary words. It is appropriately sized and front-loaded, making it easy to understand at a glance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain the return format beyond 'PGN format' (e.g., file content or structure), error conditions, or behavioral traits like side effects. For a tool with no structured support, more context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, clearly documenting both required parameters (studyId and chapterId). The description adds no additional parameter semantics beyond what the schema provides, so it meets the baseline score of 3 for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Export') and resource ('one study chapter in PGN format'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'export_all_study_chapters' or 'export_game', which limits its score to 4 rather than 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'export_all_study_chapters' or 'export_game', nor does it mention prerequisites or context. It simply states what the tool does without usage instructions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_user_gamesC

Export all games of a user

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesThe username
sinceNoDownload games played since timestamp
untilNoDownload games played until timestamp
maxNoMaximum number of games to download
vsNoOnly games against this opponent
ratedNoOnly rated (true) or casual (false) games
perfTypeNoOnly games in these speeds or variants
colorNoOnly games played as this color
analysedNoOnly games with or without computer analysis
movesNoInclude moves
tagsNoInclude tags
clocksNoInclude clock comments
evalsNoInclude analysis
accuracyNoInclude accuracy
openingNoInclude opening
ongoingNoInclude ongoing games
finishedNoInclude finished games
literateNoInclude textual annotations
lastFenNoInclude last position FEN
sortNoSort order of gamesdateDesc

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. 'Export' implies a read operation that might generate output, but the description doesn't specify what 'export' entails (e.g., file download, data return, format), whether it's rate-limited, requires authentication, or has side effects. This leaves significant gaps for a tool with 20 parameters.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core purpose and appropriately sized for a tool where parameter details are handled in the schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex tool with 20 parameters and no output schema, the description is inadequate. It doesn't explain what 'export' returns (e.g., file, JSON, PGN), any behavioral constraints, or usage context. With no annotations and rich parameters, the description should provide more operational guidance to be complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all 20 parameters with descriptions, enums, and defaults. The description adds no additional parameter information beyond implying a user scope, which is already covered by the 'username' parameter. Baseline 3 is appropriate when the schema does all the work.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Export all games of a user' clearly states the verb ('Export') and resource ('games of a user'), making the purpose immediately understandable. It distinguishes from some siblings like 'export_game' (single game) and 'export_games_by_ids' (specific IDs), but doesn't explicitly differentiate from 'export_ongoing_game' or other export tools, keeping it from a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose this over 'export_game', 'export_games_by_ids', or 'export_ongoing_game', nor does it specify prerequisites, contexts, or exclusions for usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

follow_userC

Follow a player

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesUsername of the player to follow

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. 'Follow a player' implies a mutation (creating a follow relationship), but it doesn't disclose behavioral traits such as permissions required, rate limits, whether it's idempotent, what happens on success/failure, or if it triggers notifications. The description is minimal and lacks critical context for safe invocation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence ('Follow a player') with zero waste. It's front-loaded and appropriately sized for a simple tool, though it could benefit from more detail. Every word earns its place by conveying the core action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (a mutation with no annotations and no output schema), the description is incomplete. It doesn't explain what 'follow' entails, the return value, error conditions, or how it interacts with sibling tools. For a social action tool, this leaves significant gaps for an AI agent to understand and use it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 1 parameter with 100% description coverage ('Username of the player to follow'), so the schema fully documents the parameter. The description adds no additional meaning beyond the schema, but with 0 parameters needing compensation, the baseline is 4. It doesn't detract from the schema's clarity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Follow a player' states a clear verb ('Follow') and resource ('a player'), but it's vague about what 'follow' means in this context (e.g., social connection, notification subscription) and doesn't distinguish it from sibling tools like 'unfollow_user' or 'block_user'. It avoids tautology by not restating the name exactly, but lacks specificity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'unfollow_user', 'block_user', or 'get_following'. There's no mention of prerequisites (e.g., authentication), context (e.g., social features), or exclusions. Usage is implied only by the verb 'Follow', but no explicit instructions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_all_top_10B

Get the top 10 players for each speed and variant

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states what the tool does but fails to describe key traits such as whether it's a read-only operation, potential rate limits, authentication needs, or the format of returned data. This leaves significant gaps in understanding the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence that directly states the tool's purpose without unnecessary words. It is front-loaded and efficient, making it easy to parse and understand quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of retrieving top players across multiple categories, the description is incomplete. With no annotations, no output schema, and no details on behavioral aspects like data format or constraints, it fails to provide sufficient context for effective tool use. It should explain more about the return structure or limitations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description does not add parameter information, which is appropriate, but it could have clarified implicit assumptions (e.g., no filtering options). Since the baseline for 0 parameters is 4, this score reflects adequate handling given the lack of parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and the resource ('top 10 players for each speed and variant'), making the purpose specific and understandable. However, it does not differentiate from sibling tools like 'get_leaderboard' or 'get_user_performance', which might also involve rankings or performance data, leaving some ambiguity about uniqueness.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It lacks context such as prerequisites, timing, or comparisons to sibling tools like 'get_leaderboard', leaving the agent to infer usage without explicit direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_arena_gamesC

Get games of an arena tournament

ParametersJSON Schema
NameRequiredDescriptionDefault
tournamentIdYesTournament ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states a read operation ('Get'), implying it's likely non-destructive, but doesn't detail aspects like rate limits, authentication needs, pagination, or what happens if the tournamentId is invalid. This leaves significant gaps in understanding the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence with no wasted words, making it easy to parse and front-loaded with essential information. It efficiently conveys the core purpose without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is insufficient for a tool that likely returns complex game data. It doesn't explain the return format, error handling, or any behavioral nuances, leaving the agent under-informed about how to interpret results or handle edge cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the 'tournamentId' parameter clearly documented. The description adds no additional semantic context beyond what's in the schema, such as format examples or constraints, so it meets the baseline score of 3 for adequate but minimal value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and resource ('games of an arena tournament'), making the purpose understandable. However, it doesn't explicitly differentiate from sibling tools like 'get_arena_results' or 'get_arena_tournaments', which might retrieve related but different data about arenas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. For example, it doesn't specify if this is for active games, completed games, or all games, nor does it mention prerequisites like tournament status or user permissions, leaving the agent with little context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_arena_infoC

Get info about an arena tournament

ParametersJSON Schema
NameRequiredDescriptionDefault
tournamentIdYesTournament ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It states 'Get info,' implying a read-only operation, but doesn't disclose behavioral traits such as authentication requirements, rate limits, error handling, or what specific information is returned. This leaves significant gaps for an agent to understand how to use it effectively.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It's front-loaded with the core purpose, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what 'info' includes, potential errors, or how results are structured. For a tool with no structured output, more context is needed to guide an agent effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with 'tournamentId' clearly documented. The description doesn't add any meaning beyond the schema, such as format examples or constraints, but since the schema is comprehensive, a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get info') and resource ('about an arena tournament'), making the purpose understandable. However, it doesn't differentiate from sibling tools like 'get_arena_tournaments' or 'get_arena_results', which could be related but serve different purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. With many sibling tools like 'get_arena_tournaments' and 'get_arena_results', the description lacks context on whether this is for general tournament metadata, specific details, or how it differs from other arena-related tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_arena_resultsC

Get results of an arena tournament

ParametersJSON Schema
NameRequiredDescriptionDefault
tournamentIdYesTournament ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Get results' implies a read-only operation, but it doesn't specify authentication requirements, rate limits, error conditions, or what format the results are returned in (e.g., standings, game data). This leaves significant gaps for an agent to understand the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It's front-loaded with the core purpose, making it easy to parse quickly. Every word earns its place in conveying the essential action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It doesn't address what 'results' entail (e.g., rankings, scores, game history), potential side effects, or error handling. For a tool with no structured behavioral data, this leaves the agent under-informed about how to use it effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with 'tournamentId' clearly documented. The description doesn't add any meaning beyond what the schema provides—it doesn't explain what a tournament ID is, where to find it, or format requirements. This meets the baseline for high schema coverage but offers no extra value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get results') and resource ('arena tournament'), providing a specific verb+resource combination. However, it doesn't differentiate from sibling tools like 'get_arena_info' or 'get_arena_tournaments', which reduces clarity about what makes this tool distinct.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With siblings like 'get_arena_info' and 'get_arena_tournaments', there's no indication of whether this tool retrieves final standings, match details, or other tournament outcomes, leaving usage context ambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_arena_tournamentsC

Get current tournaments

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. 'Get current tournaments' implies a read-only operation but doesn't specify what 'current' means, whether there are rate limits, authentication requirements, or what format the tournament information will be returned in. The description provides minimal behavioral context beyond the basic operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at just three words, which is appropriate for a simple tool with no parameters. There's no wasted language, though it could potentially benefit from slightly more specificity about what 'current' means to improve clarity without sacrificing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with no output schema, the description is minimally adequate but leaves important questions unanswered. Without annotations or output schema, the description should ideally specify what 'current' means and what information is returned about tournaments. The description provides the basic operation but lacks sufficient context for optimal agent usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters with 100% schema description coverage, so the schema fully documents the lack of parameters. The description doesn't need to explain any parameters, and 'Get current tournaments' appropriately reflects that no filtering or input is required. This earns a baseline 4 for parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get current tournaments' clearly states the verb ('Get') and resource ('current tournaments'), making the purpose understandable. However, it's somewhat vague about what 'current' means (ongoing, upcoming, recently ended?) and doesn't distinguish this tool from sibling tools like 'get_arena_info' or 'get_arena_results' that might also provide tournament-related information.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With many sibling tools that could potentially provide tournament information (like get_arena_info, get_arena_results, get_swiss_info), there's no indication of what makes this tool distinct or when it should be preferred over those other options.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_broadcastC

Get a broadcast by its ID

ParametersJSON Schema
NameRequiredDescriptionDefault
broadcastIdYesID of the broadcast

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states it's a read operation ('Get'), but doesn't mention authentication requirements, rate limits, error conditions, or what the return format looks like (e.g., JSON structure). This leaves significant gaps for an agent to understand how to handle the tool effectively.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence with zero wasted words. It front-loads the core purpose ('Get a broadcast') and specifies the key constraint ('by its ID') efficiently, making it easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read tool with no annotations and no output schema, the description is insufficient. It doesn't explain what a 'broadcast' entails in this context (e.g., live game stream, tournament coverage), what data is returned, or potential errors. Given the complexity implied by sibling tools and lack of structured support, more context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with the single parameter 'broadcastId' clearly documented in the schema. The description adds no additional semantic context beyond implying the parameter is required, which the schema already states. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and resource ('a broadcast by its ID'), making the purpose immediately understandable. It doesn't distinguish from sibling tools like 'get_broadcast_round' or 'get_official_broadcasts', but the core functionality is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like 'get_broadcast_round' or 'get_official_broadcasts'. The description assumes the user knows they need a broadcast by ID, but offers no context about prerequisites, alternatives, or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_broadcast_roundC

Get one round of a broadcast

ParametersJSON Schema
NameRequiredDescriptionDefault
broadcastIdYesID of the broadcast
roundIdYesID of the round

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but only states the basic action without disclosing behavioral traits. It doesn't cover permissions, rate limits, side effects, or response format, which are critical for a tool that likely fetches data. The description is minimal and lacks necessary context for safe invocation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words, making it easy to parse. However, it's front-loaded but under-specified, as it could benefit from more detail without sacrificing brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is incomplete for a tool that likely returns data. It doesn't explain what 'get' yields (e.g., round details, PGN data), error conditions, or dependencies, leaving significant gaps for the agent to operate effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with both parameters ('broadcastId' and 'roundId') clearly documented in the schema. The description adds no additional meaning beyond implying the need for these IDs, so it meets the baseline of 3 where the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get one round of a broadcast' clearly states the action (get) and resource (round of a broadcast), but it's somewhat vague about what 'get' entails (e.g., retrieve details, fetch data) and doesn't differentiate from sibling tools like 'get_broadcast' or 'push_broadcast_round_pgn'. It avoids tautology by specifying 'round' beyond the tool name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description doesn't mention prerequisites, context (e.g., after retrieving a broadcast), or exclusions, leaving the agent to infer usage based on the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_cloud_evalC

Get cloud evaluation for a position

ParametersJSON Schema
NameRequiredDescriptionDefault
fenYesFEN of the position to analyze
multiPvNoNumber of principal variations (1-5)

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states 'Get' which implies a read operation, but doesn't cover rate limits, authentication needs, output format, or potential side effects (e.g., if it triggers background processing). This leaves significant gaps for an AI agent to understand how to use it safely and effectively.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It's front-loaded and to the point, though it could be slightly more informative without losing conciseness. Every word earns its place, but it's borderline minimal.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and a tool that likely returns complex evaluation data (e.g., chess scores, variations), the description is incomplete. It doesn't hint at the return type or structure, leaving the agent unprepared for the response. For a tool with 2 parameters and potential rich output, more context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents both parameters (FEN and multiPv). The description adds no additional meaning beyond what's in the schema (e.g., it doesn't explain FEN format or multiPv implications). Baseline 3 is appropriate as the schema does the heavy lifting, but the description doesn't compensate with extra insights.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get cloud evaluation for a position' clearly states the action ('Get') and resource ('cloud evaluation'), but it's vague about what 'cloud evaluation' entails (e.g., chess analysis, stockfish evaluation). It doesn't distinguish from siblings like 'get_user_profile' or 'get_ongoing_games', which are unrelated, but lacks specificity in its domain.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a valid FEN), exclusions, or related tools for similar tasks (e.g., if other analysis tools exist). The context is implied from the FEN parameter but not explicitly stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_current_simulsB

Get recently started simuls

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves data ('Get'), implying a read-only operation, but doesn't specify permissions, rate limits, or what 'recently started' entails (e.g., time window, sorting). This leaves significant gaps in understanding how the tool behaves.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core action and resource, making it easy to parse quickly. Every word earns its place by conveying essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 0 parameters, no annotations, and no output schema, the description is minimally adequate. It states what the tool does but lacks details on behavior, output format, or usage context. For a simple retrieval tool, this might suffice, but gaps in transparency and guidelines reduce completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, meaning no parameters are documented in the schema. The description adds value by implying the tool fetches data based on recency ('recently started'), which provides semantic context beyond the empty schema. Since there are no parameters, a baseline of 4 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get recently started simuls' clearly states the verb ('Get') and resource ('recently started simuls'), making the purpose understandable. It doesn't explicitly differentiate from sibling tools like 'get_arena_tournaments' or 'get_swiss_info', but the focus on 'simuls' is specific enough for basic identification.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, timing (e.g., how 'recently' is defined), or how it differs from other tools like 'create_simul' or 'join_simul'. Without such context, usage is implied but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_fide_playerC

Get FIDE player information

ParametersJSON Schema
NameRequiredDescriptionDefault
playerIdYesFIDE player ID

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states what the tool does ('Get FIDE player information') without mentioning any behavioral traits such as whether it's read-only, requires authentication, has rate limits, or what the output format might be. For a tool with no annotations, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise ('Get FIDE player information'), consisting of a single, straightforward sentence. It's front-loaded with the core action, making it easy to parse. However, it might be overly brief, potentially sacrificing clarity for brevity, which slightly reduces its effectiveness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (a read operation with one parameter) and the lack of annotations and output schema, the description is incomplete. It doesn't explain what information is returned, any prerequisites (e.g., authentication), or how it differs from similar tools. For a tool in this context, more detail is needed to guide the agent effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the single parameter 'playerId' clearly documented as 'FIDE player ID'. The description does not add any meaning beyond this, as it doesn't explain the parameter's usage or constraints. Given the high schema coverage, the baseline score of 3 is appropriate, as the schema adequately handles parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get FIDE player information' clearly states the verb ('Get') and resource ('FIDE player information'), making the purpose understandable. However, it's somewhat vague about what specific information is retrieved (e.g., rating, profile, history) and doesn't distinguish from sibling tools like 'search_fide_players' or 'get_user_profile', which might overlap in functionality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. There are sibling tools like 'search_fide_players' for finding players and 'get_user_profile' for user data, but no indication of how this tool differs or when it's preferred. This lack of context leaves the agent to guess based on the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_followingB

Get users followed by the logged in user

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It states a read operation ('Get') but does not disclose behavioral traits like authentication needs, rate limits, response format, or pagination. This leaves significant gaps for an AI agent to understand how to invoke it correctly.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words, clearly front-loading the purpose. It is appropriately sized for a simple tool with no parameters.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It does not explain the return values, authentication requirements, or potential errors, which are crucial for a read operation. For a tool with no structured support, more context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters with 100% schema description coverage, so the schema fully documents the inputs. The description does not need to add parameter details, and it correctly implies no inputs are required, aligning with the schema. Baseline is 4 for zero parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get' and the resource 'users followed by the logged in user', making the purpose specific and understandable. However, it does not explicitly differentiate from sibling tools like 'get_user_profile' or 'get_user_public_data', which might also retrieve user-related data, so it misses full sibling distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, such as other 'get' tools for user data. It implies usage for retrieving followed users but offers no context on prerequisites, exclusions, or comparisons to siblings like 'get_user_activity'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_kid_modeC

Get kid mode status

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states this is a 'get' operation, implying it's likely read-only, but doesn't confirm this or describe other traits like authentication requirements, rate limits, error conditions, or what the return value looks like (e.g., boolean status, detailed settings). This leaves significant gaps for a tool with zero annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with just three words ('Get kid mode status'), which is front-loaded and wastes no space. For a simple tool with no parameters, this brevity is appropriate and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain what 'kid mode' entails in this system, what the return value includes (e.g., status, settings), or any behavioral context. For a tool that likely returns user or system configuration data, more detail is needed to guide effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, and schema description coverage is 100%, so there are no parameters to document. The description doesn't need to add parameter semantics, and it doesn't incorrectly imply any parameters. A baseline of 4 is appropriate as it avoids confusion, though it doesn't explicitly state 'no parameters required'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get kid mode status' clearly states the action (get) and resource (kid mode status), making the purpose understandable. However, it doesn't distinguish this tool from sibling tools like 'set_kid_mode' or explain what 'kid mode' means in this context, leaving some ambiguity about the specific domain or system.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'set_kid_mode' for modifying kid mode, prerequisites (e.g., authentication), or typical use cases, leaving the agent to infer usage from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_leaderboardC

Get the leaderboard for a single speed or variant

ParametersJSON Schema
NameRequiredDescriptionDefault
nbNoHow many users to fetch (1-200)
perfTypeYesThe speed or variant

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool's function but omits critical details like whether it requires authentication, has rate limits, returns paginated results, or includes error handling. For a read operation with no annotation support, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is front-loaded and wastes no space, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no annotations and no output schema, the description is incomplete. It doesn't explain the return format (e.g., JSON structure, fields like rankings or scores), error conditions, or authentication requirements, leaving significant gaps for an AI agent to use it effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, clearly documenting both parameters ('nb' for count and 'perfType' for speed/variant). The description adds no additional semantic context beyond what the schema provides, such as explaining the leaderboard format or default behaviors, so it meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and resource ('leaderboard'), specifying it's for a single speed or variant. It doesn't explicitly differentiate from sibling tools like 'get_all_top_10' or 'get_user_performance', but the focus on leaderboard retrieval is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like 'get_all_top_10' or 'get_user_profile' for leaderboard-related data. The description lacks context on prerequisites, such as authentication or rate limits, leaving usage unclear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_my_emailB

Get your email address

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states a read operation ('Get') but doesn't mention authentication requirements, rate limits, error conditions, or the format of the returned email address. This leaves significant gaps for a tool that likely involves personal data access.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no wasted words, making it highly efficient and front-loaded. It directly communicates the core function without unnecessary elaboration, which is ideal for a simple tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (0 parameters, no output schema, no annotations), the description is adequate but minimal. It covers the basic purpose but lacks details on authentication, return format, or error handling, which could be important for an AI agent to use it correctly in context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, and schema description coverage is 100%, so no parameter documentation is needed. The description doesn't add parameter details, which is appropriate, but it could have mentioned implicit context like user authentication, keeping it from a perfect score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get your email address' clearly states the verb 'Get' and the resource 'your email address', making the purpose immediately understandable. It's specific about what is retrieved, though it doesn't explicitly differentiate from siblings like 'get_my_profile' which might include email among other data, keeping it from a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as 'get_my_profile' or other user data retrieval tools. The description lacks context about prerequisites, timing, or exclusions, leaving the agent to infer usage based on the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_my_profileB

Get your Lichess profile information

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It states it retrieves profile information but doesn't clarify whether this requires authentication (implied by 'your'), what data format is returned, or any rate limits/constraints. For a tool with zero annotation coverage, this is insufficient behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without any fluff or redundant information. It's perfectly front-loaded and wastes no words, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with no output schema, the description adequately conveys the basic purpose. However, without annotations or output schema, it should ideally provide more context about authentication requirements, return format, or data scope to be fully complete. The current description meets minimum viability but leaves gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters with 100% schema description coverage (empty schema), so no parameter documentation is needed. The description appropriately doesn't discuss parameters, earning a baseline score of 4 for not introducing unnecessary complexity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and resource ('your Lichess profile information'), making the purpose immediately understandable. It distinguishes itself from sibling tools like 'get_user_profile' by specifying 'your' profile rather than a general user profile. However, it doesn't explicitly mention what specific information is included in the profile.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'get_user_profile' or 'get_user_public_data'. It doesn't mention prerequisites (e.g., authentication requirements) or contextual constraints, leaving the agent to infer usage based on the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_official_broadcastsC

Get official broadcasts (TV shows)

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the action ('Get') without detailing response format, pagination, rate limits, authentication needs, or whether it's a read-only operation. This leaves significant gaps in understanding how the tool behaves.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise ('Get official broadcasts (TV shows)') with no wasted words. It's front-loaded with the core purpose, though it could benefit from additional context. Every word earns its place in this minimal description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's apparent simplicity (0 parameters, no output schema, no annotations), the description is incomplete. It doesn't explain what 'official broadcasts' are, what data is returned, or how this differs from similar tools. For a tool in a context with many sibling tools, more differentiation would be helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters with 100% schema description coverage, so no parameter documentation is needed. The description doesn't add parameter information, which is appropriate here. A baseline of 4 is assigned since no parameters exist to document.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get official broadcasts (TV shows)' states a clear verb ('Get') and resource ('official broadcasts'), but it's vague about scope and format. It distinguishes from siblings like 'get_broadcast' and 'get_tv_channels' by specifying 'official' broadcasts, but doesn't clarify what makes them 'official' or how they differ from regular broadcasts.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like 'get_broadcast' or 'get_tv_channels'. The description doesn't mention prerequisites, context, or exclusions, leaving the agent to infer usage from the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_ongoing_gamesC

Get your ongoing games (real-time and correspondence)

ParametersJSON Schema
NameRequiredDescriptionDefault
nbNoMax number of games to fetch (1-50)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden but lacks behavioral details. It doesn't disclose whether this is a read-only operation, if it requires authentication, rate limits, pagination behavior, or what the return format looks like. The description only states what it retrieves without operational context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero wasted words. It front-loads the core purpose ('Get your ongoing games') and adds clarifying detail ('real-time and correspondence') without redundancy, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what data is returned, how games are ordered, if authentication is needed, or error conditions. Given the complexity of game data and lack of structured fields, more context is needed for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the single parameter 'nb' fully documented in the schema. The description adds no additional parameter semantics beyond what the schema provides, such as default usage or implications of limiting results. Baseline 3 is appropriate since the schema handles parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and resource ('your ongoing games'), specifying both real-time and correspondence types. It distinguishes from siblings like 'get_arena_games' or 'get_swiss_games' by focusing on personal ongoing games rather than tournament-specific ones, though it doesn't explicitly contrast with all similar tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives is provided. The description implies it's for retrieving personal ongoing games, but it doesn't specify prerequisites, timing, or contrast with tools like 'export_ongoing_game' or 'get_user_activity' that might overlap in functionality.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_preferencesC

Get your preferences

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behavioral traits. 'Get your preferences' implies a read-only operation but doesn't specify whether it requires authentication, what data format is returned, if there are rate limits, or any side effects. It fails to provide essential context for safe and effective use, leaving significant gaps in understanding the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise ('Get your preferences'), which is efficient but borders on under-specification. It lacks structure or front-loading of critical information, such as clarifying what 'preferences' entail. While it avoids unnecessary words, it sacrifices clarity for brevity, making it less helpful for an AI agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (0 parameters, no annotations, no output schema), the description is incomplete. It doesn't explain what 'preferences' includes, the return format, or any behavioral context needed for proper use. While the low complexity reduces the burden, the description fails to provide enough information for an agent to understand the tool's purpose and output effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, and the input schema has 100% description coverage (though empty). The description doesn't need to add parameter semantics, as there are none to explain. A baseline score of 4 is appropriate since the description doesn't introduce confusion about parameters, but it also doesn't add value beyond the schema's completeness.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get your preferences' is a tautology that essentially restates the tool name 'get_preferences' without adding meaningful specificity. It doesn't clarify what type of preferences are retrieved (e.g., user settings, game preferences, account configurations) or from what context. While it uses a clear verb ('Get'), it lacks distinction from sibling tools that also retrieve data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention any prerequisites, context-specific triggers, or comparisons to sibling tools like 'get_my_profile' or 'get_kid_mode', which might overlap in retrieving user-related data. This absence leaves the agent without direction on appropriate usage scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_puzzle_activityC

Get your puzzle activity

ParametersJSON Schema
NameRequiredDescriptionDefault
maxNoHow many entries to download. Leave empty to get all activity.

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states 'Get your puzzle activity' which implies a read-only operation, but doesn't disclose behavioral traits such as authentication requirements, rate limits, pagination, or what the output format looks like (e.g., list, summary, JSON structure). This is inadequate for a tool with no annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It is front-loaded with the core purpose, though it could be more specific. There is no unnecessary elaboration, making it appropriately concise for a simple tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is incomplete. It lacks details on what 'puzzle activity' entails (e.g., attempts, scores, timestamps), how results are structured, or any error conditions. For a tool with potential complexity in output, this leaves significant gaps for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the 'max' parameter clearly documented. The description adds no additional parameter semantics beyond what the schema provides, so it meets the baseline of 3 for high schema coverage without adding value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get your puzzle activity' states the action (get) and resource (puzzle activity) but is vague about scope and format. It doesn't specify whether this returns recent attempts, statistics, or a history log, nor does it differentiate from sibling tools like 'get_puzzle_dashboard' or 'get_puzzle_storm_dashboard' which might provide overlapping puzzle-related data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. With siblings like 'get_puzzle_dashboard' and 'get_puzzle_storm_dashboard', the description offers no context on whether this tool is for personal activity tracking, performance metrics, or something else, leaving the agent to guess based on tool names alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_puzzle_dashboardC

Get your puzzle dashboard

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNoHow many days of history to return (max 30)

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It only states the action ('Get') without disclosing behavioral traits such as authentication requirements, rate limits, whether it's read-only or has side effects, or what the output format looks like. For a tool with no annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It's front-loaded with the core action and resource, making it easy to parse quickly. However, it could be slightly improved by adding a bit more specificity without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is incomplete. It doesn't explain what a 'puzzle dashboard' entails, what data is returned, or any behavioral context. For a tool that likely returns user-specific puzzle data, this leaves too many unknowns for effective agent use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the single parameter 'days' fully documented in the schema (type, description, constraints, default). The description adds no additional parameter semantics beyond what the schema provides, so the baseline score of 3 is appropriate given the schema does all the work.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get your puzzle dashboard' states the action (get) and resource (puzzle dashboard), but it's vague about what a 'puzzle dashboard' contains. It doesn't differentiate from sibling tools like 'get_puzzle_activity' or 'get_puzzle_storm_dashboard', leaving ambiguity about what specific puzzle-related data is returned.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. With sibling tools like 'get_puzzle_activity' and 'get_puzzle_storm_dashboard', the description offers no context about differences in scope, data returned, or appropriate use cases, leaving the agent to guess based on tool names alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_puzzle_raceC

Get info about a puzzle race

ParametersJSON Schema
NameRequiredDescriptionDefault
raceIdYesID of the puzzle race

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states 'Get info' but doesn't specify if this is a read-only operation, what permissions are required, how errors are handled, or the format of returned data. For a tool with zero annotation coverage, this leaves critical behavioral traits undisclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It's front-loaded with the core action ('Get info'), making it easy to parse. However, it could be more structured by including key details, but it earns high marks for brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what 'info' includes, potential side effects, or error conditions. For a tool with one parameter but no structured output documentation, the description should provide more context to guide the agent effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the parameter 'raceId' fully documented in the schema as 'ID of the puzzle race'. The description adds no additional meaning beyond this, such as where to find race IDs or format examples. With high schema coverage, the baseline score of 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get info about a puzzle race' states the basic purpose (verb 'get' + resource 'puzzle race'), but it's vague about what specific information is retrieved. It doesn't distinguish from siblings like 'get_puzzle_activity' or 'get_puzzle_dashboard', which also retrieve puzzle-related data. The purpose is understandable but lacks specificity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description doesn't mention prerequisites, context, or exclusions. With many sibling tools (e.g., 'get_puzzle_activity'), the agent must infer usage based on tool names alone, which is insufficient for clear decision-making.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_puzzle_storm_dashboardC

Get your puzzle storm dashboard

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNoHow many days of history to return (max 30)

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states it's a 'Get' operation, implying read-only, but doesn't mention authentication requirements, rate limits, or what the output looks like (e.g., JSON structure, error handling). This leaves critical behavioral traits unspecified for a tool with potential user-specific data.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence with no wasted words. It's front-loaded with the core purpose, making it efficient and easy to parse, which is ideal for conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what the dashboard contains (e.g., stats, history), how it's formatted, or any dependencies like user authentication. For a tool that likely returns personalized data, this leaves too much unspecified for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, clearly documenting the 'days' parameter with its type, range, and default. The description adds no additional parameter information beyond what the schema provides, so the baseline score of 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get your puzzle storm dashboard' states the action ('Get') and resource ('puzzle storm dashboard'), but it's vague about what the dashboard contains or its scope. It doesn't differentiate from sibling tools like 'get_puzzle_dashboard' or 'get_puzzle_activity', leaving ambiguity about what makes this tool unique.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like 'get_puzzle_dashboard' or 'get_puzzle_activity'. The description lacks context about prerequisites, such as whether the user needs to be logged in or have puzzle storm data available, which is a significant gap.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_rating_historyC

Get rating history of a user for all perf types

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesUsername of the player

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves rating history, implying a read-only operation, but does not specify whether it requires authentication, rate limits, error conditions, or the format of the returned data. For a tool with zero annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence: 'Get rating history of a user for all perf types'. It is front-loaded with the core purpose, contains no redundant information, and is appropriately sized for the tool's complexity. Every word earns its place, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It does not explain what 'rating history' entails (e.g., time range, data format) or 'perf types' (e.g., specific performance categories), leaving gaps in understanding the tool's behavior and output. For a tool with no structured support, the description should provide more contextual detail to be fully helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with one parameter 'username' clearly documented as 'Username of the player'. The description adds no additional semantic context beyond this, such as examples or constraints on the username format. Given the high schema coverage, the baseline score of 3 is appropriate, as the schema adequately handles parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Get rating history of a user for all perf types'. It specifies the verb ('Get'), resource ('rating history'), and scope ('for all perf types'), making the function unambiguous. However, it does not explicitly differentiate from sibling tools like 'get_user_performance' or 'get_user_profile', which might also involve user data retrieval, so it falls short of a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, such as requiring a valid username, or compare it to sibling tools like 'get_user_performance' that might offer similar or overlapping functionality. This lack of context leaves the agent to infer usage scenarios independently.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_swiss_gamesC

Get games of a Swiss tournament

ParametersJSON Schema
NameRequiredDescriptionDefault
swissIdYesSwiss tournament ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action but does not reveal traits like whether it's read-only, requires authentication, returns paginated results, or handles errors. This leaves significant gaps for a tool that likely fetches data.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words, making it easy to parse. It is appropriately sized and front-loaded with the core action and resource.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is incomplete. It does not explain return values, error handling, or behavioral traits, which are crucial for a data-fetching tool. This leaves the agent with insufficient context for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with 'swissId' clearly documented. The description does not add meaning beyond the schema, as it only implies the parameter without details. Baseline 3 is appropriate since the schema adequately covers the parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and resource ('games of a Swiss tournament'), making the purpose understandable. However, it does not differentiate from sibling tools like 'get_swiss_info' or 'get_swiss_results', which might retrieve different aspects of Swiss tournaments, so it lacks sibling distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, such as 'get_swiss_info' for tournament details or 'export_games_by_ids' for specific games. It lacks explicit context or exclusions, leaving usage unclear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_swiss_infoB

Get info about a Swiss tournament

ParametersJSON Schema
NameRequiredDescriptionDefault
swissIdYesSwiss tournament ID

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states this is a 'Get' operation, implying it's likely read-only, but doesn't explicitly confirm this or describe other behaviors like error handling, rate limits, authentication needs, or what happens if the Swiss ID is invalid. For a tool with zero annotation coverage, this lack of detail is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero waste—it directly states the tool's purpose without unnecessary words. It's appropriately sized for a simple retrieval tool and front-loaded with the core action, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's low complexity (one required parameter, no output schema, no annotations), the description is minimally adequate. It covers the basic purpose but lacks details on usage guidelines, behavioral traits, and output format. Without annotations or an output schema, the agent must rely on the description alone, which is incomplete for informed tool selection.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the single parameter 'swissId' documented as 'Swiss tournament ID'. The description doesn't add any meaning beyond this, such as format examples or where to find the ID. Since the schema does the heavy lifting, the baseline score of 3 is appropriate, but no extra value is provided.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get info about') and resource ('a Swiss tournament'), making the purpose immediately understandable. It distinguishes this tool from other Swiss-related tools like 'create_swiss', 'join_swiss', and 'get_swiss_games' by focusing on retrieving tournament information rather than creating, joining, or fetching games. However, it doesn't specify what type of information is retrieved (e.g., settings, participants, status), leaving some ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose 'get_swiss_info' over 'get_swiss_games' or 'get_swiss_results', nor does it specify prerequisites like needing a valid Swiss tournament ID. There's no context about use cases or exclusions, leaving the agent to infer usage from the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_swiss_resultsC

Get results of a Swiss tournament

ParametersJSON Schema
NameRequiredDescriptionDefault
swissIdYesSwiss tournament ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves results but doesn't describe what 'results' include (e.g., standings, scores, tie-breaks), whether it's paginated, rate-limited, or requires authentication. For a read operation with no annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It's front-loaded with the core action ('Get results'), making it easy to parse. Every part of the sentence earns its place by specifying the resource type.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., JSON structure, data fields), potential errors, or behavioral constraints. For a tool that likely returns complex tournament results, this leaves critical gaps for an AI agent to understand its full context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the single parameter 'swissId' documented in the schema as 'Swiss tournament ID'. The description doesn't add any meaning beyond this, such as format examples or where to find the ID. With high schema coverage, the baseline score of 3 is appropriate, as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Get') and resource ('results of a Swiss tournament'), making the purpose unambiguous. It distinguishes this tool from other tournament-related tools like 'get_swiss_games' or 'get_swiss_info' by focusing specifically on results. However, it doesn't explicitly differentiate from all siblings, so it doesn't reach the highest score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a valid Swiss tournament ID), compare it to similar tools like 'get_arena_results', or specify use cases. This leaves the agent with insufficient context for optimal tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_team_battle_resultsC

Get results of a team battle tournament

ParametersJSON Schema
NameRequiredDescriptionDefault
tournamentIdYesTournament ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden for behavioral disclosure. It states the tool retrieves results but doesn't describe what format the results come in, whether it's paginated, if authentication is required, rate limits, or error conditions. This leaves significant gaps for a read operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that states the core purpose without unnecessary words. It's appropriately sized for a simple retrieval tool and front-loads the essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read operation with no annotations and no output schema, the description is insufficient. It doesn't explain what the results look like (e.g., structured data, list of matches, scores), whether it returns historical or current data, or any prerequisites. This leaves too many unknowns for effective tool use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the single parameter 'tournamentId' documented as 'Tournament ID'. The description doesn't add any meaningful context beyond what the schema already provides, such as format examples or where to find tournament IDs. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get results') and resource ('team battle tournament'), making the purpose understandable. However, it doesn't differentiate this tool from similar sibling tools like 'get_arena_results' or 'get_swiss_results' beyond the tournament type, which prevents a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With many sibling tools for retrieving different types of tournament results (e.g., 'get_arena_results', 'get_swiss_results'), there's no indication of what distinguishes a 'team battle' tournament or when this specific tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_team_infoC

Get team information by ID

ParametersJSON Schema
NameRequiredDescriptionDefault
teamIdYesThe team ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It states it's a read operation ('Get'), implying non-destructive behavior, but doesn't disclose any behavioral traits such as authentication requirements, rate limits, error conditions, or what 'team information' includes (e.g., metadata, settings). This leaves significant gaps for a tool with no annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero waste. It's front-loaded with the core purpose and appropriately sized for a simple tool, making it easy to parse without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is incomplete. It doesn't explain what 'team information' returns (e.g., JSON structure, fields), behavioral aspects like permissions or errors, or how it fits with sibling tools. For a tool in a complex server with many siblings, this minimal description lacks necessary context for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the single parameter 'teamId' documented as 'The team ID'. The description adds no additional meaning beyond this, such as format examples or constraints. With high schema coverage, the baseline is 3, as the schema adequately handles parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get team information by ID' clearly states the verb ('Get') and resource ('team information'), specifying it requires a team ID. It distinguishes from siblings like 'get_team_members' or 'get_team_battle_results' by focusing on general team info rather than specific aspects. However, it doesn't explicitly differentiate from 'search_teams', which might be a broader search tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a valid team ID), exclusions, or compare to siblings like 'get_team_members' for detailed member data or 'search_teams' for finding teams. Usage is implied only by the tool name and description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_team_join_requestsB

Get join requests for a team

ParametersJSON Schema
NameRequiredDescriptionDefault
teamIdYesThe team ID

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states a read operation ('get'), implying it's likely non-destructive, but doesn't confirm safety, permissions required, rate limits, pagination, or return format. For a tool with zero annotation coverage, this leaves significant gaps in understanding how it behaves.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It's front-loaded with the core purpose ('Get join requests for a team'), making it easy to parse. Every word earns its place, and there's no redundancy or unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's low complexity (one parameter, no output schema, no annotations), the description is minimally adequate. It states what the tool does but lacks behavioral context (e.g., permissions, return format) and usage guidelines. With no output schema, it doesn't explain return values, leaving the agent to infer or discover them through use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the single parameter 'teamId' documented as 'The team ID' in the schema. The description adds no additional meaning beyond this, such as format examples or where to find the ID. With high schema coverage, the baseline score of 3 is appropriate, as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get join requests for a team' clearly states the action (get) and resource (join requests for a team). It distinguishes from siblings like 'get_team_info' or 'get_team_members' by focusing specifically on join requests. However, it doesn't specify scope (e.g., pending vs. all) or differentiate from 'accept_join_request' and 'decline_join_request', which are action-oriented siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing team admin permissions), when to use it over other team-related tools like 'get_team_info', or how it relates to siblings like 'accept_join_request' and 'decline_join_request' for managing requests. Usage is implied but not explicitly stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_team_membersC

Get members of a team

ParametersJSON Schema
NameRequiredDescriptionDefault
teamIdYesThe team ID
maxNoMaximum number of members to fetch

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states 'Get members of a team' but does not mention whether this is a read-only operation, if it requires authentication, rate limits, pagination behavior, or what the output format might be. This is a significant gap for a tool with no annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with a single sentence, 'Get members of a team', which is front-loaded and wastes no words. It efficiently conveys the core purpose without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is incomplete. It lacks details on behavioral traits, output format, and usage context. For a tool with two parameters and potential complexity in team member retrieval, more information is needed to be fully helpful to an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with clear documentation for 'teamId' and 'max' parameters. The description does not add any additional meaning beyond what the schema provides, such as explaining parameter interactions or usage examples. With high schema coverage, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get members of a team' clearly states the verb ('Get') and resource ('members of a team'), making the purpose understandable. However, it does not differentiate from sibling tools like 'get_team_info' or 'get_team_join_requests', which also involve team-related data retrieval, so it lacks specific distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. There are sibling tools such as 'get_team_info' and 'get_team_join_requests' that might overlap in context, but no explicit when-to-use or when-not-to-use instructions are included, leaving usage ambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_threadC

Get a message thread

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdYesUser ID of the other person

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Get a message thread' implies a read-only operation, but it doesn't specify permissions required, rate limits, error conditions, or what the output contains (e.g., thread metadata, messages). For a tool with no annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with zero wasted words. It's front-loaded and efficiently conveys the core purpose without unnecessary elaboration, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what 'Get' returns (e.g., thread details, messages), error handling, or behavioral constraints. For a tool with no structured support, the description should provide more context to aid the agent in correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with 'userId' documented as 'User ID of the other person'. The description adds no additional parameter semantics beyond this. According to the rules, with high schema coverage (>80%), the baseline score is 3, as the schema adequately handles parameter documentation without extra input from the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get a message thread' clearly states the verb ('Get') and resource ('message thread'), making the purpose understandable. However, it lacks specificity about what 'Get' entails (e.g., retrieve details, list messages) and doesn't distinguish this tool from potential siblings like 'send_message' or 'get_timeline', which might involve message-related operations. It's not tautological but remains vague in scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an existing thread), exclusions, or how it differs from other message-related tools in the sibling list (e.g., 'send_message', 'get_timeline'). This leaves the agent without context for tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_timelineC

Get your timeline

ParametersJSON Schema
NameRequiredDescriptionDefault
sinceNoShow events since this timestamp
nbNoMax number of events to fetch (1-30)

TDQS

C2.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure but offers minimal information. It implies a read operation ('Get') but doesn't specify authentication requirements, rate limits, pagination behavior, or what the return format looks like. The description is too vague to provide meaningful behavioral context beyond the basic action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with just three words, making it front-loaded and efficient. There's no wasted language or unnecessary elaboration, though this conciseness comes at the cost of informational completeness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no annotations and no output schema, the description is inadequate. It doesn't explain what 'timeline' means, what data it returns, or how the tool behaves operationally. Given the complexity of user timeline data and the lack of structured output documentation, the description should provide more context about the tool's purpose and results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage with clear documentation for both parameters ('since' and 'nb'), including constraints and defaults. The description adds no additional parameter information beyond what the schema already provides, which meets the baseline expectation when schema coverage is complete.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get your timeline' is a tautology that restates the tool name without specifying what 'timeline' refers to or what kind of events it contains. It lacks a specific verb-resource combination and doesn't distinguish this tool from sibling tools like 'get_user_activity' or 'get_user_profile' that might also retrieve user data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description doesn't mention any context, prerequisites, or exclusions, leaving the agent with no information about appropriate usage scenarios compared to other user data retrieval tools in the sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_tv_channelsB

Get all TV channels and their current games

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states what the tool does but doesn't describe how it behaves—such as whether it returns live data, cached data, pagination, rate limits, or error conditions. This is inadequate for a tool with zero annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core functionality without any wasted words. It's appropriately sized for a simple tool with no parameters.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 0 parameters, no annotations, and no output schema, the description is minimally adequate—it states what the tool does but lacks details on behavior, output format, or usage context. It meets the bare minimum for a simple read operation but could be more informative.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add parameter details, which is appropriate, earning a baseline score of 4 for this scenario.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and the resources ('TV channels and their current games'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools since no other TV-related tools exist in the list, so it doesn't explicitly distinguish itself from alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, timing, or context for usage, leaving the agent to infer based on the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_tv_gameB

Get current TV game in PGN format

ParametersJSON Schema
NameRequiredDescriptionDefault
channelNoChannel name like 'bot', 'blitz', etc.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It states the tool retrieves data ('Get'), implying a read-only operation, but doesn't disclose behavioral traits such as whether it requires authentication, has rate limits, returns real-time data, or handles errors. This leaves significant gaps for an AI agent to understand how to invoke it safely and effectively.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the key information ('Get current TV game in PGN format'). There is no wasted text, making it highly concise and well-structured for quick understanding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's low complexity (one optional parameter with full schema coverage) and no output schema, the description is minimally adequate. However, it lacks context on what 'PGN format' means, how current the data is, or any behavioral details, which could hinder an AI agent's ability to use it correctly without additional inference.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with a clear enum for the 'channel' parameter. The description doesn't add any meaning beyond what the schema provides (e.g., it doesn't explain what 'PGN format' entails or default behavior if no channel is specified). Since the schema does the heavy lifting, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and the resource ('current TV game in PGN format'), making the purpose understandable. However, it doesn't differentiate from sibling tools like 'get_tv_channels' or 'export_game', which might retrieve similar data in different formats or contexts, so it doesn't reach the highest score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With siblings like 'get_tv_channels' (which might list available channels) and 'export_game' (which could export specific games), there's no indication of context, prerequisites, or exclusions for this tool's usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_user_activityC

Get activity feed of a user

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesUsername of the player

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. 'Get activity feed' implies a read operation, but the description doesn't disclose important behavioral aspects like authentication requirements, rate limits, pagination, what types of activities are included, or the format/structure of the returned data. For a tool with no annotation coverage, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at just 5 words ('Get activity feed of a user'). It's front-loaded with the core purpose and contains no unnecessary information. Every word serves a purpose in communicating the tool's function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no annotations, no output schema, and multiple potentially overlapping sibling tools, the description is inadequate. It doesn't explain what an 'activity feed' contains, how it differs from other user data tools, what authentication might be required, or what format the data returns. The context demands more completeness than this minimal description provides.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage with the 'username' parameter clearly documented as 'Username of the player'. The description adds no additional parameter information beyond what's already in the schema. With high schema coverage, the baseline score of 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get activity feed of a user' states the action ('Get') and resource ('activity feed of a user'), making the purpose clear. However, it's somewhat vague about what constitutes an 'activity feed' and doesn't differentiate from sibling tools like 'get_timeline' or 'get_puzzle_activity' that might provide similar user activity data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With sibling tools like 'get_timeline', 'get_puzzle_activity', and 'get_user_profile' that might overlap in functionality, there's no indication of when this specific activity feed tool is appropriate versus those other options.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_user_performanceC

Get performance statistics of a user

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesUsername of the player
perfYesThe speed or variant

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states 'Get performance statistics' which implies a read-only operation, but doesn't clarify permissions, rate limits, data freshness, or what the output looks like (e.g., format, fields). For a tool with no annotations, this is a significant gap in describing how it behaves beyond basic functionality.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, straightforward sentence: 'Get performance statistics of a user'. It's front-loaded and wastes no words, making it easy to parse. However, it could be slightly more informative without losing conciseness, such as hinting at the types of statistics or context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (a tool with 2 required parameters and no output schema), the description is incomplete. It doesn't explain what 'performance statistics' includes, how results are returned, or any behavioral aspects like error handling. With no annotations and no output schema, the description should do more to compensate, but it remains minimal and leaves key contextual gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with clear documentation for both parameters ('username' and 'perf' with enum values). The description adds no additional meaning beyond what the schema provides, such as explaining the relationship between parameters or usage examples. With high schema coverage, the baseline score of 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get performance statistics of a user' clearly states the action ('Get') and resource ('performance statistics of a user'), but it's vague about what 'performance statistics' entails. It doesn't distinguish this tool from siblings like 'get_user_profile' or 'get_user_public_data', which might also provide user-related data. The purpose is understandable but lacks specificity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With many sibling tools like 'get_user_profile' or 'get_rating_history', there's no indication of what makes this tool unique or when it's preferred. It implies usage for performance data but doesn't specify context or exclusions, leaving the agent to guess based on the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_user_profileC

Get a user's Lichess profile information

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesUsername of the player
trophiesNoInclude user trophies

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but only states the basic action. It doesn't disclose behavioral traits such as rate limits, authentication requirements, error handling, or what specific profile information is returned (e.g., ratings, bio, online status). This leaves significant gaps for a read operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It's front-loaded with the core purpose, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read tool with no annotations and no output schema, the description is incomplete. It doesn't explain what profile information is returned, potential errors (e.g., invalid username), or any constraints like rate limits. This leaves the agent with insufficient context for reliable use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents both parameters ('username' and 'trophies'). The description adds no additional meaning beyond implying a user lookup, which the schema already covers. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and resource ('user's Lichess profile information'), making the purpose unambiguous. It doesn't explicitly differentiate from siblings like 'get_user_public_data' or 'get_my_profile', but the specificity is sufficient for understanding its core function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like 'get_user_public_data' or 'get_my_profile'. The description only states what it does, leaving the agent to infer usage context from tool names alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_user_public_dataC

Get public data of a user

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesUsername of the player
withTrophiesNoInclude user trophies

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states 'Get public data' which implies a read-only operation, but doesn't specify any behavioral traits such as authentication requirements, rate limits, error handling, or what 'public' entails (e.g., data availability based on user settings). This leaves significant gaps for an agent to understand how to use the tool effectively.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, straightforward sentence: 'Get public data of a user'. It's front-loaded and wastes no words, making it efficient. However, it could be more structured by briefly hinting at the tool's scope or usage, but as-is, it's appropriately concise for its purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of user data retrieval and the lack of annotations and output schema, the description is incomplete. It doesn't explain what 'public data' includes, how it differs from other user-related tools, or what the return values might be (e.g., JSON structure, error cases). This makes it inadequate for an agent to fully understand the tool's context and usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with clear documentation for 'username' and 'withTrophies'. The description adds no additional parameter semantics beyond what the schema provides, such as explaining the format of 'username' or what 'trophies' entail. Since the schema does the heavy lifting, the baseline score of 3 is appropriate, but the description doesn't compensate with extra context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get public data of a user' clearly states the verb ('Get') and resource ('public data of a user'), making the purpose understandable. However, it's vague about what 'public data' specifically includes (e.g., profile, ratings, activity) and doesn't distinguish it from sibling tools like 'get_user_profile' or 'get_user_activity', which may overlap in scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With sibling tools such as 'get_user_profile' and 'get_user_activity', there's no indication of how this tool differs (e.g., broader vs. specific data, public vs. private access). This lack of context makes it unclear when an agent should choose this tool over others.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_users_by_idC

Get multiple users by their IDs

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYesUser IDs separated by commas. Up to 300 IDs.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden but only states the basic function. It doesn't disclose behavioral traits such as rate limits, authentication needs, error handling, or response format, leaving significant gaps for a read operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose without any wasted words, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read tool with no annotations and no output schema, the description is incomplete. It lacks details on return values, error cases, or operational constraints, which are essential for effective agent use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents the 'ids' parameter. The description adds no additional meaning beyond implying batch retrieval, meeting the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and resource ('multiple users'), specifying retrieval by IDs. It distinguishes from siblings like 'get_user_profile' or 'get_user_public_data' by focusing on batch lookup, but doesn't explicitly contrast them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like 'get_user_profile' or 'get_user_public_data' is provided. The description implies batch operations but lacks explicit context or exclusions for usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_users_statusC

Get real-time users status

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYesUser IDs separated by commas. Up to 100 IDs.
withSignalNoInclude network signal strength (1-4)
withGameIdsNoInclude IDs of ongoing games
withGameMetasNoInclude metadata of ongoing games

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'real-time' status, implying freshness, but fails to detail critical aspects like rate limits, authentication needs, error handling, or what the output contains. This leaves significant gaps for a tool that likely involves network calls and user data.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no wasted words. It is front-loaded and efficiently conveys the core purpose, making it easy to parse and understand quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (fetching real-time status for multiple users with optional data) and lack of annotations and output schema, the description is insufficient. It doesn't explain what 'status' includes, how results are structured, or any behavioral constraints, leaving the agent with incomplete information for proper use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema fully documents all parameters. The description adds no additional semantic context beyond implying real-time data, which doesn't enhance understanding of the parameters. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and resource ('real-time users status'), making the purpose evident. However, it doesn't differentiate from sibling tools like 'get_user_profile' or 'get_users_by_id', which also retrieve user-related data, so it misses full sibling distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as 'get_user_profile' or 'get_users_by_id'. The description lacks context about specific use cases, prerequisites, or exclusions, leaving the agent without clear usage instructions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_user_studiesC

Get studies created by a user

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesUsername of the player

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It states 'Get studies' which implies a read operation, but doesn't disclose behavioral traits such as authentication needs, rate limits, pagination, or what 'studies' entails (e.g., format, scope). This is inadequate for a tool with no annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no wasted words. It's front-loaded and efficiently conveys the core purpose without unnecessary details, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and a simple parameter, the description is incomplete. It lacks information on behavioral aspects (e.g., response format, error handling) and usage context, which are crucial for an agent to invoke the tool correctly in this environment with many sibling tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage, documenting the 'username' parameter as 'Username of the player'. The description adds no additional meaning beyond this, as it doesn't explain semantics like what constitutes a valid username or how studies are retrieved. With high schema coverage, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get studies created by a user' clearly states the verb ('Get') and resource ('studies created by a user'), making the purpose understandable. However, it doesn't explicitly differentiate from sibling tools like 'export_study_chapter' or 'export_all_study_chapters', which might handle similar data but with different operations, so it lacks specific sibling distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, exclusions, or compare to other tools in the list (e.g., 'export_study_chapter' or 'get_user_activity'), leaving the agent without context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

handle_draw_board_gameC

Handle draw offers for a board game

ParametersJSON Schema
NameRequiredDescriptionDefault
gameIdYesThe game ID
acceptNoWhether to accept or decline the draw offer

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action ('handle draw offers') but lacks critical details: whether this is a read-only or mutating operation, what permissions are required, if it affects game state permanently, or what happens after acceptance/declination. The description is too vague for safe agent use.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It's front-loaded with the core purpose and avoids unnecessary elaboration, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no annotations and no output schema, the description is inadequate. It doesn't explain the behavioral implications of accepting/declining a draw (e.g., game outcome, score changes), error conditions, or return values. Given the complexity of game state mutations, more context is needed for reliable agent use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents both parameters (gameId and accept). The description adds no additional parameter context beyond implying the tool relates to draw offers, which is already inferred from the tool name. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('handle') and resource ('draw offers for a board game'), making the purpose understandable. It doesn't explicitly differentiate from siblings like 'resign_board_game' or 'claim_victory', but the focus on draw offers is specific enough to avoid confusion with other game-ending actions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an active draw offer), timing considerations, or how it differs from other game-resolution tools like 'resign_board_game' or 'claim_victory' in the sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

join_arenaC

Join an arena tournament

ParametersJSON Schema
NameRequiredDescriptionDefault
tournamentIdYesTournament ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure but only states the basic action. It doesn't cover critical aspects such as permissions required, whether joining is reversible, rate limits, or what happens upon success/failure (e.g., confirmation, error messages). This leaves significant gaps for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core action and resource, making it immediately understandable without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is incomplete. It lacks details on behavioral traits (e.g., side effects, error handling), usage context, and expected outcomes, which are crucial for an agent to invoke this tool correctly in a real-world scenario.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the single parameter 'tournamentId' documented as 'Tournament ID'. The description doesn't add any meaning beyond this, such as format examples or where to find tournament IDs. Given the high schema coverage, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Join') and resource ('an arena tournament'), providing a specific verb+resource combination. However, it doesn't differentiate from similar sibling tools like 'join_simul' or 'join_swiss' that also involve joining events, missing an opportunity to clarify what makes arena tournaments distinct.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description offers no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., tournament availability, user eligibility), exclusions, or comparisons to sibling tools like 'withdraw_from_arena' or 'create_arena', leaving the agent with no contextual usage information.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

join_simulC

Join a simul

ParametersJSON Schema
NameRequiredDescriptionDefault
simulIdYesID of the simul

TDQS

C2.3/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden for behavioral disclosure. 'Join a simul' implies a write/mutation action but doesn't specify permissions required, rate limits, side effects (e.g., joining a game session), or what happens on success/failure. This leaves critical behavioral traits undocumented.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at just three words, with zero wasted text. It's front-loaded with the core action, though this brevity comes at the cost of completeness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is inadequate for a mutation tool. It doesn't explain what 'simul' means in this context, what joining entails, possible outcomes, or error conditions. For a tool that presumably modifies state, this leaves too many gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (the single parameter 'simulId' has a clear description: 'ID of the simul'), so the schema does the heavy lifting. The description adds no additional parameter context beyond what's in the schema, meeting the baseline for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Join a simul' is a tautology that restates the tool name without adding meaningful context. It doesn't explain what a 'simul' is (presumably a simultaneous exhibition in chess) or what joining entails. While the verb 'join' is clear, the resource 'simul' is domain-specific and unexplained.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus alternatives like 'join_arena' or 'join_swiss' (both sibling tools). The description doesn't mention prerequisites (e.g., needing an active simul to join) or constraints (e.g., only for certain user types).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

join_swissC

Join a Swiss tournament

ParametersJSON Schema
NameRequiredDescriptionDefault
swissIdYesSwiss tournament ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions a join action but doesn't specify whether this requires authentication, has rate limits, affects tournament state, or what happens on success/failure. For a mutation tool with zero annotation coverage, this leaves significant behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized for a simple tool with one parameter and gets straight to the point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what joining entails, what permissions are required, what the expected outcome is, or how this differs from similar join operations. The context demands more behavioral and operational detail.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents the single 'swissId' parameter. The description doesn't add any additional semantic context about the parameter beyond what's in the schema. This meets the baseline expectation when schema coverage is complete.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Join') and resource ('a Swiss tournament'), making the purpose immediately understandable. It doesn't explicitly differentiate from sibling tools like 'join_arena' or 'join_simul', but the specificity of 'Swiss tournament' provides adequate distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'join_arena' or 'join_simul', nor does it mention prerequisites or constraints. It simply states what the tool does without contextual usage information.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

join_teamC

Join a team

ParametersJSON Schema
NameRequiredDescriptionDefault
teamIdYesThe team ID
messageNoOptional message for team leaders

TDQS

C2.1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Join a team' implies a mutation operation (likely creating a membership), but the description fails to disclose critical behavioral traits such as required permissions, whether this is a request or immediate action, potential side effects (e.g., notifications to team leaders), rate limits, or error conditions. This leaves significant gaps in understanding how the tool behaves.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with just three words, making it front-loaded and free of unnecessary information. While this conciseness contributes to under-specification in other dimensions, it efficiently communicates the core action without waste, earning a high score for this criterion alone.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a mutation tool (joining a team likely changes state), lack of annotations, and no output schema, the description is incomplete. It doesn't address behavioral aspects, usage context, or what to expect upon success/failure. While parameters are covered by the schema, the overall context for safe and effective tool invocation is insufficient, especially compared to sibling tools that might interact with team membership.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both parameters ('teamId' and 'message') documented in the input schema. The description adds no additional meaning beyond what the schema provides—it doesn't explain parameter relationships, constraints, or usage examples. Given the high schema coverage, the baseline score of 3 is appropriate, as the schema adequately handles parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Join a team' is a tautology that merely restates the tool name without adding specificity. It doesn't clarify what 'join' means operationally (e.g., request membership, auto-join, or become a member immediately) or what resource 'team' refers to in this context. While the verb 'join' is clear, the description lacks the specificity needed to distinguish it from sibling tools like 'accept_join_request' or 'leave_team'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., authentication, team visibility), exclusions (e.g., cannot join private teams without invitation), or relationships to sibling tools like 'accept_join_request', 'decline_join_request', or 'leave_team'. Without this context, an agent cannot make informed decisions about tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

kick_user_from_teamC

Kick a user from your team

ParametersJSON Schema
NameRequiredDescriptionDefault
teamIdYesThe team ID
userIdYesThe user ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. While 'kick' implies a destructive action, it doesn't specify whether this is reversible, what permissions are needed, whether notifications are sent, or what happens to the user's data/access. For a potentially sensitive team management operation, this leaves significant gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence that states the core purpose without any unnecessary words. It's perfectly front-loaded and wastes no space on redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive team management tool with no annotations and no output schema, the description is insufficient. It doesn't explain what 'kick' entails operationally, what permissions are required, whether the action is reversible, or what the response looks like. Given the complexity and potential impact of removing team members, more context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both parameters clearly documented in the schema. The description doesn't add any additional semantic context about the parameters beyond what's already in the schema (teamId and userId). This meets the baseline expectation when schema coverage is complete.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('kick') and target resource ('a user from your team'), making the purpose immediately understandable. However, it doesn't differentiate this tool from sibling tools like 'block_user' or 'decline_join_request' that might also affect team membership, leaving some ambiguity about its specific role.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With sibling tools like 'block_user', 'decline_join_request', and 'leave_team' available, there's no indication of whether this is for removing existing members versus preventing new joins, or what permissions are required.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

leave_teamC

Leave a team

ParametersJSON Schema
NameRequiredDescriptionDefault
teamIdYesThe team ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Leave a team' implies a mutation action, but it lacks details on permissions required, whether the action is reversible, effects on team membership, or error conditions (e.g., if not a member). This is a significant gap for a mutation tool with zero annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a concise three-word phrase ('Leave a team') that is front-loaded and wastes no words. It directly communicates the core action without unnecessary elaboration, making it highly efficient for quick understanding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is incomplete. It lacks information on behavioral aspects (e.g., consequences, permissions), usage context, and output expectations. While concise, it does not provide enough context for an agent to use the tool effectively without additional inference or trial-and-error.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the single parameter 'teamId' documented as 'The team ID'. The description does not add any meaning beyond this, such as format examples or sourcing instructions. Given the high schema coverage, a baseline score of 3 is appropriate as the schema handles the parameter documentation adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Leave a team' clearly states the action (leave) and resource (team), making the purpose immediately understandable. However, it does not differentiate this tool from sibling tools like 'kick_user_from_team' or 'withdraw_from_team' (if such existed), which might involve similar team-related actions but from different perspectives or contexts.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites (e.g., must be a team member), exclusions (e.g., cannot leave if last admin), or related tools like 'join_team' or 'kick_user_from_team' from the sibling list, leaving the agent to infer usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_challengesC

List incoming and outgoing challenges

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions 'list' which implies a read-only operation, but doesn't disclose behavioral traits such as pagination, rate limits, authentication requirements, or whether it returns real-time data. For a tool with zero annotation coverage, this leaves significant gaps in understanding how it behaves.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It's front-loaded with the core action ('list') and resource ('challenges'), making it easy to parse quickly. Every word earns its place by conveying the essential purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of challenge management in this context (with many sibling tools), no annotations, and no output schema, the description is incomplete. It doesn't explain what 'incoming and outgoing' means, the return format, or how this tool fits into the broader workflow, leaving the agent with insufficient context for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameters need documentation. The description doesn't add parameter details, which is appropriate here. Baseline is 4 since it correctly avoids redundancy, though it doesn't compensate for any gaps (none exist).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'List incoming and outgoing challenges' clearly states the verb ('list') and resource ('challenges'), but it's vague about scope and format. It doesn't specify whether this lists all challenges, active ones, or a filtered subset, nor does it differentiate from sibling tools like 'get_ongoing_games' or 'accept_challenge' that might relate to challenge management.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With many sibling tools like 'accept_challenge', 'decline_challenge', and 'get_ongoing_games', there's no indication of prerequisites, context (e.g., user authentication needed), or whether this is for viewing pending challenges versus historical ones.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

make_board_moveC

Make a move in a board game

ParametersJSON Schema
NameRequiredDescriptionDefault
gameIdYesThe game ID
moveYesMove in UCI format (e.g. e2e4)
offeringDrawNoWhether to offer/accept a draw

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but only states the basic action. It doesn't disclose whether this requires authentication, affects game state permanently, has rate limits, returns confirmation, or handles errors. For a mutation tool with zero annotation coverage, this is insufficient behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero wasted words. It's appropriately sized for the tool's apparent complexity and gets straight to the point without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is inadequate. It doesn't explain what happens after the move (success/failure response, game state changes), doesn't mention authentication requirements, and provides no context about valid move timing or game rules. The description should do more given the tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all three parameters (gameId, move, offeringDraw) with their types and descriptions. The description adds no additional parameter context beyond what's in the schema, meeting the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Make a move in a board game' clearly states the action (make) and resource (board game move), but it's vague about which specific board game and doesn't distinguish from sibling 'make_move' which appears to be a similar tool. It provides basic purpose but lacks specificity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus alternatives like 'resign_board_game', 'handle_draw_board_game', or 'abort_board_game'. The description doesn't mention prerequisites, game state requirements, or timing considerations for making moves.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

make_moveC

Make a move in an ongoing game

ParametersJSON Schema
NameRequiredDescriptionDefault
gameIdYesID of the game
moveYesMove in UCI format (e.g. 'e2e4')
offeringDrawNoWhether to offer/accept a draw

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states the action ('make a move') but doesn't disclose behavioral traits such as whether this requires authentication, affects game state permanently, has rate limits, or what happens on success/failure. For a mutation tool with zero annotation coverage, this leaves critical gaps in understanding its behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero waste. It's appropriately sized and front-loaded, directly stating the tool's purpose without unnecessary elaboration. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a game move tool (likely a mutation with side effects), no annotations, and no output schema, the description is incomplete. It lacks details on behavior, error handling, return values, and how it fits with sibling tools. For a tool that modifies game state, this minimal description is inadequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with all parameters (gameId, move, offeringDraw) well-documented in the schema. The description adds no additional meaning beyond what the schema provides, such as explaining UCI format further or when to use offeringDraw. Baseline 3 is appropriate since the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Make a move in an ongoing game' clearly states the action (make a move) and target (ongoing game), but it's somewhat vague about what type of game (board game, chess, etc.) and doesn't distinguish from sibling tools like 'make_board_move' or 'handle_draw_board_game' that seem related. It provides basic purpose but lacks specificity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description offers no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an active game), exclusions, or compare to siblings like 'make_board_move' or 'resign_board_game'. Usage is implied by the name alone, with no explicit context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

push_broadcast_round_pgnC

Push PGN to a broadcast round

ParametersJSON Schema
NameRequiredDescriptionDefault
broadcastIdYesID of the broadcast
roundIdYesID of the round
pgnYesPGN games to push

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden for behavioral disclosure. 'Push' implies a write/mutation operation, but the description doesn't specify whether this requires special permissions, what happens to existing PGN data, whether the operation is idempotent, or what side effects might occur. This leaves significant behavioral gaps for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with just five words, front-loading the essential action and target. Every word earns its place with zero wasted verbiage or redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what 'push' entails operationally, what format the PGN should be in, whether there are size limits, what happens on success/failure, or how this integrates with the broader broadcast system given the sibling tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all three parameters (broadcastId, roundId, pgn) with basic descriptions. The description adds no additional parameter semantics beyond what's in the schema, such as PGN format requirements or ID validation rules, meeting the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Push PGN') and target resource ('to a broadcast round'), providing a specific verb+resource combination. However, it doesn't distinguish this tool from potential siblings like 'export_game' or 'export_study_chapter' that might also handle PGN data, so it doesn't achieve full differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With many sibling tools related to games, broadcasts, and exports, there's no indication of prerequisites, appropriate contexts, or exclusions for this specific PGN-pushing operation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

resign_board_gameC

Resign a board game

ParametersJSON Schema
NameRequiredDescriptionDefault
gameIdYesThe game ID

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but only states the action without behavioral details. It doesn't disclose whether this is a destructive/mutative operation, what permissions are needed, if it's irreversible, or what happens after resignation (e.g., game ends, score recorded). The description is minimal and lacks critical behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at just three words, with zero wasted language. It's front-loaded with the core action and resource, making it easy to parse quickly. This is an example of efficient communication where every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is insufficient. It doesn't explain what happens after resignation, whether there are side effects, what the response contains, or error conditions. Given the complexity of game state changes and the lack of structured documentation, more context is needed for the agent to use this tool effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage with 'gameId' clearly documented, so the description doesn't need to add parameter details. The description doesn't provide additional semantic context about the parameter (e.g., where to find game IDs, format requirements), but with full schema coverage, a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Resign a board game' clearly states the action (resign) and resource (board game), making the purpose understandable. However, it doesn't differentiate from sibling tools like 'abort_board_game' or 'claim_victory' that might also end games, leaving some ambiguity about when this specific tool should be used.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'abort_board_game' or 'claim_victory'. It doesn't mention prerequisites (e.g., must be an active player in the game) or contextual constraints, leaving the agent to guess based on tool names alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

revoke_tokenB

Revoke the current access token

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of behavioral disclosure. It states the action ('revoke') but doesn't explain critical details like whether this requires authentication, if it's irreversible, what happens after revocation (e.g., session termination), or potential side effects. This leaves significant gaps for an agent to understand the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It's front-loaded with the core action and resource, making it easy to parse quickly. Every word earns its place by conveying essential information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a token revocation tool (a potentially destructive operation), the description is incomplete. With no annotations and no output schema, it fails to cover behavioral aspects like safety, reversibility, or response format. For a tool that could impact authentication state, this leaves too much unspecified for reliable agent use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, and schema description coverage is 100%, so no parameter documentation is needed. The description doesn't add param info, which is appropriate here, but it also doesn't compensate for any gaps since there are none. A baseline of 4 is applied as it meets the requirement for a parameterless tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('revoke') and the resource ('current access token'), making the purpose specific and understandable. However, it doesn't distinguish itself from sibling tools like 'set_token' or 'test_tokens', which also deal with tokens but serve different purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description lacks context about prerequisites (e.g., needing an active token) or consequences, and it doesn't reference sibling tools like 'set_token' for token management.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_fide_playersC

Search FIDE players by name

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the player to search

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions searching but doesn't disclose behavioral traits like whether it returns partial matches, pagination, rate limits, authentication needs, or error handling. This leaves significant gaps for a tool with no structured safety hints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It's front-loaded with the core action and resource, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is insufficiently complete. It doesn't explain what the search returns (e.g., list of players, details), how results are formatted, or any usage constraints, leaving the agent with critical unknowns for a search operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the 'name' parameter clearly documented. The description adds no additional semantic context beyond implying the search is name-based, so it meets the baseline of 3 where the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('search') and resource ('FIDE players') with the specific criterion ('by name'), making the purpose unambiguous. It doesn't explicitly differentiate from sibling tools like 'get_fide_player', but the search action is distinct enough for basic clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as 'get_fide_player' or other search-related tools. The description only states what it does, not when it's appropriate or what constraints might apply.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_teamsC

Search for teams

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesSearch text
pageNoPage number (starting at 1)

TDQS

C2/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full responsibility for behavioral disclosure. 'Search for teams' reveals nothing about whether this is a read-only operation, what permissions are required, whether it's paginated, rate-limited, or what the response format might be. For a search tool with zero annotation coverage, this is completely inadequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at just three words, with zero wasted text. However, this conciseness comes at the cost of being under-specified rather than efficiently informative. It's front-loaded but lacks substance, so it earns a 4 rather than a 5.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that there are no annotations and no output schema, the description fails to provide sufficient context for a search operation. It doesn't explain what constitutes a successful search, what data is returned, or any behavioral characteristics. The 100% schema coverage helps with parameters, but overall completeness is poor for a tool that likely returns structured results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents both parameters (text and page). The description adds no additional parameter information beyond what's already in the schema. According to scoring rules, when schema coverage is high (>80%), the baseline score is 3 even with no parameter details in the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Search for teams' is a tautology that restates the tool name without adding specificity. It mentions the verb 'search' and resource 'teams' but provides no details about scope, filtering criteria, or what constitutes a team in this context. This is minimally better than a single-word description but fails to distinguish the tool from potential alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides absolutely no guidance on when to use this tool versus alternatives. There is no mention of prerequisites, appropriate contexts, or comparison to sibling tools like 'get_team_info' or 'get_team_members'. The agent must guess based solely on the tool name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

send_messageC

Send a private message to another player

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesUsername of the recipient
textYesMessage text

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but offers minimal behavioral insight. It implies a write operation ('send') but doesn't disclose permissions needed, rate limits, whether messages are stored or ephemeral, or error conditions. This leaves significant gaps for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no wasted words, making it easy to parse and front-loaded with essential information. It efficiently conveys the core function without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is insufficient. It lacks details on behavioral traits (e.g., success/error responses, side effects), doesn't clarify usage relative to siblings like 'write_in_chat', and omits any context about the messaging system's rules or limitations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters ('username' and 'text') adequately. The description doesn't add any meaningful context beyond what's in the schema, such as username format constraints or message length limits, meeting the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('send') and resource ('a private message to another player'), making the purpose immediately understandable. However, it doesn't differentiate from potential sibling tools like 'write_in_chat' or specify if this is for direct messaging versus other communication methods.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like 'write_in_chat' or other communication methods. The description only states what it does, not when it's appropriate or what prerequisites might exist (e.g., recipient must be a valid user).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_kid_modeC

Set kid mode status

ParametersJSON Schema
NameRequiredDescriptionDefault
valueYesEnable or disable kid mode

TDQS

C2.1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure but fails completely. It doesn't indicate whether this is a read-only or destructive operation, what permissions are needed, whether changes are reversible, what side effects occur, or what the response looks like. For a tool that presumably changes user settings, this lack of behavioral information is a critical gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is maximally concise at just three words. There's zero wasted language or unnecessary elaboration. While it's under-specified in terms of content, it's perfectly efficient in terms of word economy and structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that this appears to be a mutation tool (changing kid mode status) with no annotations and no output schema, the description is severely incomplete. It doesn't explain what kid mode is, what it affects, who can use this tool, what the response contains, or any error conditions. The agent would need to guess about the tool's behavior and effects.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100% with the single parameter 'value' documented as 'Enable or disable kid mode'. The description doesn't add any meaningful parameter semantics beyond what the schema already provides. Since schema coverage is complete, the baseline score of 3 is appropriate - the description neither enhances nor detracts from parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Set kid mode status' is a tautology that essentially restates the tool name 'set_kid_mode'. It specifies the verb 'set' and resource 'kid mode status', but doesn't explain what kid mode is, what it affects, or what setting it actually does. It's slightly better than just 'Set kid mode' but still lacks meaningful differentiation from what the name already conveys.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. There's no mention of prerequisites, when it's appropriate to enable/disable kid mode, what permissions are required, or how it relates to the sibling tool 'get_kid_mode'. The agent receives zero contextual guidance about appropriate usage scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_tokenB

Set your Lichess API token

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenYesYour Lichess API token

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action ('Set') but doesn't explain what this does (e.g., stores token for session, requires authentication, potential side effects like invalidating previous tokens). For a tool that likely mutates state, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence with zero wasted words. It is front-loaded with the core action and resource, making it highly efficient and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (1 parameter, no output schema) and lack of annotations, the description is minimally adequate but incomplete. It states what the tool does but omits critical context like behavioral effects, usage timing, or error handling, which are important for an authentication-related tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the 'token' parameter fully documented. The description adds no additional meaning beyond what the schema provides (e.g., format, source, or validation details), so it meets the baseline of 3 for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Set') and the resource ('your Lichess API token'), making the purpose immediately understandable. It doesn't explicitly differentiate from sibling tools like 'test_tokens' or 'revoke_token', but the specificity of 'Set' versus 'test' or 'revoke' provides inherent distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'test_tokens' or 'revoke_token', nor does it mention prerequisites (e.g., needing a token from Lichess) or context (e.g., authentication setup). Usage is implied but not explicitly stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

test_tokensC

Test multiple OAuth tokens

ParametersJSON Schema
NameRequiredDescriptionDefault
tokensYesOAuth tokens separated by commas. Up to 1000.

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'test' but doesn't explain what the test entails (e.g., validation checks, error reporting, or performance testing), what happens on success/failure, or any side effects like rate limits. This leaves critical behavioral traits unspecified.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with a single sentence, 'Test multiple OAuth tokens,' which is front-loaded and wastes no words. It efficiently conveys the core purpose without unnecessary elaboration, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of testing OAuth tokens (which may involve validation, error handling, or batch processing), the description is incomplete. With no annotations, no output schema, and minimal behavioral details, it fails to provide enough context for an agent to understand the tool's full functionality and implications, especially for a tool that could involve sensitive token operations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the 'tokens' parameter documented as 'OAuth tokens separated by commas. Up to 1000.' The description adds no additional meaning beyond this, such as token format or expected output. Given the high schema coverage, a baseline score of 3 is appropriate as the schema handles the parameter documentation adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Test multiple OAuth tokens' clearly states the action (test) and resource (OAuth tokens), but it's vague about what 'test' means—validation, verification, or functionality check. It doesn't distinguish from siblings like 'revoke_token' or 'set_token', which involve token management but with different purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. For example, it doesn't specify if this is for debugging, batch validation, or a prerequisite for other operations, nor does it mention any prerequisites like token format or permissions. The lack of context makes it unclear when this tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

unblock_userC

Unblock a user

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesUsername of the player to unblock

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. 'Unblock a user' implies a mutation operation that changes user access permissions, but it doesn't disclose what permissions are required, whether the action is reversible, what happens if the user isn't blocked, or any rate limits. This is a significant gap for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is maximally concise at just three words, with zero wasted language. It's front-loaded with the core action and target, making it immediately understandable despite its brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is inadequate. It doesn't explain what 'unblocking' entails operationally, what permissions are required, what the expected outcome is, or how this relates to the 'block_user' sibling. The agent would need to guess about important behavioral aspects.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the single parameter 'username' clearly documented in the schema as 'Username of the player to unblock.' The description adds no additional parameter information beyond what the schema already provides, which is acceptable given the high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Unblock a user' clearly states the action (unblock) and target resource (user), making the purpose immediately understandable. However, it doesn't distinguish this tool from its sibling 'block_user' beyond the opposite action, missing an opportunity to clarify the relationship between these two tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance about when to use this tool versus alternatives. There's no mention of prerequisites (e.g., user must be blocked first), consequences, or relationship to the 'block_user' sibling tool, leaving the agent without contextual usage information.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

unfollow_userC

Unfollow a player

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesUsername of the player to unfollow

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but only states the action without behavioral details. It doesn't disclose if this requires authentication, has rate limits, returns confirmation, or affects user data (e.g., follower counts). This leaves gaps for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core action and resource, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is incomplete. It lacks details on behavioral traits, error conditions, or return values, which are critical for an agent to use this tool effectively in context with siblings like 'follow_user'.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the 'username' parameter clearly documented. The description adds no additional parameter semantics beyond what the schema provides, so it meets the baseline of 3 for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Unfollow') and the target resource ('a player'), making the purpose immediately understandable. However, it doesn't differentiate from the sibling tool 'follow_user' beyond the obvious opposite action, missing an opportunity to clarify scope or context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives or prerequisites. The description doesn't mention if the user must be following the player first, what happens if they aren't, or any related tools like 'block_user' or 'unblock_user' for context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

upgrade_to_botA

Upgrade to Bot account. WARNING: This is irreversible and the account must not have played any games.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes critical traits: the irreversible nature (destructive behavior) and the prerequisite condition (no games played). However, it lacks details on permissions, rate limits, or response format, leaving some behavioral aspects unspecified.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise and front-loaded, consisting of just two sentences that directly state the action, warning, and condition. Every word earns its place, with no redundant or extraneous information, making it highly efficient for an AI agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (irreversible account upgrade), no annotations, and no output schema, the description is mostly complete: it covers purpose, usage guidelines, and key behavioral traits. However, it lacks details on the response (e.g., success confirmation or error messages), which would be helpful for a mutation tool with no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add param info, which is appropriate, but it implicitly clarifies that no inputs are required for this upgrade operation, aligning with the schema. A baseline of 4 is applied since no parameters exist.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Upgrade to Bot account') and the resource ('account'), distinguishing it from siblings like 'set_token' or 'revoke_token' which handle tokens, or 'get_user_profile' which retrieves data. It explicitly defines the operation as an irreversible account upgrade, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use this tool: 'the account must not have played any games' specifies a prerequisite condition. It also includes a warning ('WARNING: This is irreversible') that indicates when not to use it (e.g., if reversibility is needed), though it doesn't name alternatives, the context implies this is a unique, high-stakes operation among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

withdraw_from_arenaC

Withdraw from an arena tournament

ParametersJSON Schema
NameRequiredDescriptionDefault
tournamentIdYesTournament ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action ('withdraw') but doesn't clarify if this is irreversible, requires specific permissions, affects tournament standings, or has side effects like penalties. This leaves significant gaps for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence with zero wasted words, making it highly efficient and front-loaded. It immediately conveys the core action without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is insufficient. It lacks details on behavioral consequences, error conditions, or return values, leaving the agent with incomplete context to invoke the tool safely and effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the single parameter 'tournamentId' documented as 'Tournament ID'. The description adds no additional meaning beyond this, such as format examples or where to find the ID, so it meets the baseline for high schema coverage without compensating value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('withdraw from') and the resource ('an arena tournament'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'withdraw_from_simul' or 'withdraw_from_swiss' beyond the resource name, missing explicit sibling distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, such as 'cancel_challenge' or 'resign_board_game', nor does it mention prerequisites like being enrolled in a tournament. It lacks explicit usage context or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

withdraw_from_simulC

Withdraw from a simul

ParametersJSON Schema
NameRequiredDescriptionDefault
simulIdYesID of the simul

TDQS

C2.6/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden but fails to disclose behavioral traits. It does not indicate if this is a destructive action, requires authentication, has side effects (e.g., affecting game state or notifications), or what happens upon withdrawal (e.g., error if not in simul). The description is minimal and offers no operational insights.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise ('Withdraw from a simul'), which is efficient and front-loaded. However, it is arguably under-specified rather than optimally concise, as it lacks necessary details for a tool likely involving user interaction or state changes.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and the tool's potential complexity (withdrawal from an event), the description is incomplete. It does not cover behavioral aspects, usage context, or expected outcomes, leaving significant gaps for an AI agent to understand and use the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with 'simulId' clearly documented as 'ID of the simul'. The description does not add further meaning beyond this, but with high schema coverage and only one parameter, a baseline of 4 is appropriate as the schema adequately handles parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the action ('withdraw from') and resource ('a simul'), which provides a basic understanding of purpose. However, it lacks specificity about what 'withdraw' entails operationally (e.g., leaving as a participant, canceling as an organizer) and does not distinguish it from sibling tools like 'withdraw_from_arena' or 'withdraw_from_swiss', making it vague in context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. It does not mention prerequisites (e.g., must be in a simul), exclusions, or related tools like 'join_simul' or 'cancel_challenge', leaving the agent without context for appropriate invocation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

withdraw_from_swissC

Withdraw from a Swiss tournament

ParametersJSON Schema
NameRequiredDescriptionDefault
swissIdYesSwiss tournament ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It states the action ('withdraw') but doesn't explain consequences (e.g., irreversible removal, impact on tournament standings, permissions required, or rate limits). This is inadequate for a mutation tool with zero annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized for a simple tool with one parameter and gets straight to the point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no annotations and no output schema, the description is insufficient. It doesn't cover behavioral aspects like side effects, error conditions, or response format. Given the complexity of tournament withdrawal operations, more context about what happens after withdrawal would be needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the single parameter 'swissId' clearly documented in the schema. The description adds no additional parameter information beyond what's already in the structured data, so it meets the baseline for high schema coverage without compensating value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('withdraw from') and the resource ('Swiss tournament'), making the purpose immediately understandable. However, it doesn't differentiate this tool from similar sibling tools like 'withdraw_from_arena' or 'withdraw_from_simul', which would require mentioning what distinguishes a Swiss tournament from other tournament types.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., must be registered in the tournament), exclusions, or how it differs from other withdrawal tools like 'withdraw_from_arena'. This leaves the agent guessing about appropriate contexts.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

write_in_chatC

Write in the chat of a board game

ParametersJSON Schema
NameRequiredDescriptionDefault
gameIdYesThe game ID
roomYesThe chat room
textYesThe message to send

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states the action is to 'write' (implying a mutation), but doesn't disclose behavioral traits such as permissions needed, rate limits, whether messages are public/private, or if there are restrictions on content length. This leaves significant gaps for an agent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence that directly states the tool's purpose without unnecessary words. It's front-loaded and efficiently communicates the core functionality, making it easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool involves a mutation (writing to a chat) with no annotations and no output schema, the description is insufficient. It lacks details on behavioral aspects like error conditions, response format, or side effects, which are critical for proper tool invocation in this context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters (gameId, room, text) with descriptions and an enum for 'room'. The description adds no additional meaning beyond what the schema provides, resulting in the baseline score of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('write') and target resource ('chat of a board game'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'send_message', which might have overlapping functionality, preventing a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With sibling tools like 'send_message' present, there's no indication of whether this is specific to board game contexts or if 'send_message' serves a different purpose, leaving usage unclear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

C2.9/5.0
Disambiguation4/5

Most tools have distinct purposes, such as 'create_arena' for tournaments and 'make_board_move' for gameplay, but there is some overlap between 'make_board_move' and 'make_move' which could cause confusion. Descriptions clarify that 'make_board_move' is for board games and 'make_move' for ongoing games, but the similarity in naming might lead to misselection without careful reading.

Naming Consistency5/5

Tool names consistently follow a verb_noun pattern, such as 'accept_challenge', 'export_game', and 'get_user_profile'. There are no deviations in naming conventions, making the set predictable and easy to parse for agents.

Tool Count2/5

With 88 tools, the count is excessive for the Lichess domain, leading to potential overwhelm and inefficiency. While the server covers many features, the high number suggests over-fragmentation, such as having separate tools for each tournament type (arena, swiss, simul) and multiple export functions, which could be consolidated.

Completeness5/5

The tool set comprehensively covers the Lichess domain, including user management, gameplay, tournaments, puzzles, studies, broadcasts, and team interactions. There are no obvious gaps; it supports full CRUD operations and lifecycle management across all major features, ensuring agents can handle diverse tasks without dead ends.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables natural language interaction with Lichess chess platform to play games, analyze positions, manage challenges and tournaments, and interact with other players through Claude Desktop.
    17
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Connects Claude to Lichess for playing chess games, analyzing positions with Stockfish cloud evaluation, and solving puzzles. Supports real-time gameplay including moves, challenges, draw offers, and accessing user profiles and game history.
    28
    17
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    An MCP server that exposes Stockfish chess analysis to LLM chat clients, enabling move analysis, game review, and explanation of engine choices.
  • A
    license
    A
    quality
    C
    maintenance
    MCP server that exposes the Lichess public API through tools for querying player profiles, games, analysis, openings, puzzles, and tournaments, allowing natural-language chess questions without an API key.
    8
    MIT

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/karayaman/lichess-mcp'

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