Skip to main content
Glama

traker-mcp — MCP-сервер для Яндекс Трекера

CI npm skills.sh install

Проще говоря: этот сервер учит вашего AI-ассистента работать с Яндекс Трекером. Вы говорите ассистенту «найди мои задачи», «создай задачу в очереди TREK», «закрой TASK-123 с резолюцией “Решён”» — а он делает это через API Трекера сам, без копирования ссылок руками.

Работает с любым MCP-клиентом: VS Code (Copilot), Cursor, Claude Desktop, Claude Code, opencode, Windsurf, Zed, JetBrains AI Assistant, Grok CLI.

📘 Подробное руководство для новичков (получение токена, пошаговая настройка каждого клиента, решение проблем) — в docs/SETUP.md.

Документация

Сайт документации (docs7) и LLM-индекс на Context7: context7.com/sdamarketing/tracker_mcp.

Отдельно: CHANGELOG и skills.sh-скилл.

Related MCP server: Yandex Tracker MCP Server

Ресурсы и промпты (MCP)

Помимо инструментов сервер отдаёт:

  • Resources (resources/list, resources/read) — tracker:// URI для чтения контекста без вызова инструментов:

    • tracker://issue/{KEY} — карточка задачи с описанием и последними 20 комментариями (markdown);

    • tracker://queue/{KEY} — очередь + обязательные поля создания задач;

    • tracker://board/{ID} — доска с колонками и статусами;

    • tracker://catalog/statuses|priorities|types|resolutions|linktypes — справочники (делят TTL-кэш с инструментами);

    • tracker://myself — ваш профиль.

  • Prompts (prompts/list, prompts/get) — готовые сценарии с аргументами: standup, weekly-report, triage, sprint-review, close-issue, create-issue. В клиентах с поддержкой промптов вызываются как slash-команды.

Что умеет

187 инструментов — полное покрытие API Трекера v3:

Категория

Что можно делать

Задачи

искать (фильтр, язык запросов, query 2.0, scroll >10k, подсказки), создавать, читать, редактировать, переносить, менять статус, связывать, история

Комментарии

добавлять, читать (список и по одному), редактировать, удалять, реакции

Чеклисты

задачи + проекты/портфели: добавлять, отмечать, двигать, удалять

Учёт времени

записи по задаче и поиск по авторам/датам

Вложения

список, метаданные, скачивание (картинки/текст/база), миниатюры, загрузка, временные файлы

Массово

редактирование, перенос и закрытие задач; bulk-обновление проектов/целей

Отчёты и фильтры

сохранённые отчёты для виджетов, CRUD сохранённых фильтров

Очереди

CRUD (вкл. удаление/восстановление), права доступа, версии, компоненты, локальные поля, макросы, теги

Автоматизация

триггеры и автодействия (CRUD + логи), воркфлоу (статусы и переходы)

Доски

CRUD, пагинация, колонки CRUD, спринты (создать/запустить/архив)

Дашборды

создание дашбордов и виджетов («Время цикла»)

Проекты, цели, портфели

CRUD, комментарии, чеклисты, вложения, связи, события, права, ключевые результаты и метрики (через fields)

Справочники

чтение И запись: типы, статусы, приоритеты, резолюции; глобальные поля и категории

Внешние приложения

связи задач с внешними системами (Jira и др.)

Отсутствия

отпуска/болезни/командировки (admin)

Миграция

импорт задач/комментариев/связей/трудозатрат/вложений «задним числом» (admin)

Безопасность для агентов

  • Каждый инструмент несёт MCP-аннотации: чтения помечены readOnlyHint, все delete_* — destructiveHint — клиенты показывают их как подтверждаемые/Безопасные операции.

  • Все delete_* и bulk_* требуют confirm: true (агент сначала показывает, что удалит).

  • TRACKER_READ_ONLY=1 — сервер отдаёт только 80 инструментов чтения, запись скрыта полностью. Для «просто посмотреть» интеграций.

Скилл для AI-агентов (skills.sh)

К серверу прилагается скилл yandex-tracker — процедурные знания для агента: язык запросов Трекера, корректные значения полей (приоритеты, статусы, резолюции), рецепты («найди мои задачи», «закрой с резолюцией», bulk-правки) и грабли API (dueDate vs releaseDate, обязательная резолюция при закрытии, IAM-токены ≤12ч).

npx skills add sdamarketing/tracker_mcp

Устанавливает скилл во все обнаруженные агенты (Claude Code, Cursor, opencode, Codex и ещё 75+). Мастер npm run setup тоже предлагает установить скилл вместе с настройкой MCP-клиента. Репозиторий скилла: skills.sh/sdamarketing/tracker_mcp.

Установка в одну команду (macOS / Linux / WSL)

curl -fsSL https://raw.githubusercontent.com/sdamarketing/tracker_mcp/main/install.sh | bash

Скрипт сам: проверит систему → поставит Node.js через nvm, если его нет (спросит согласия, sudo не нужен) → скачает сервер в ~/.traker-mcp → соберёт и проверит его → запустит мастер настройки: ключи Трекера (ввод скрыт), проверка ключей в API, выбор AI-клиента (VS Code, Cursor, Claude Desktop, Claude Code, opencode, Windsurf, Zed, JetBrains, Grok CLI). Если команда grok уже есть, мастер прописывает сервер в ~/.grok/config.toml сразу, до меню.

Повторный запуск той же командой = обновление сервера (конфиги клиентов не трогаются).

🔎 Хотите сначала прочитать скрипт? Уберите | bash и посмотрите вывод: curl -fsSL https://raw.githubusercontent.com/sdamarketing/tracker_mcp/main/install.sh

🪟 Windows: установите через WSL командой выше или вручную — см. ниже.

Установка из npm (без клонирования)

npm install -g tracker-mcp
tracker-mcp setup     # интерактивный мастер: ключи Трекера + настройка AI-клиента

После этого сервер доступен командой tracker-mcp (в конфиг AI-клиента её и прописывайте). Другие команды: tracker-mcp update, tracker-mcp links, tracker-mcp --help.

Official MCP Registry

Сервер опубликован в официальном реестре MCP как io.github.sdamarketing/tracker-mcp (npm + Docker-пакеты, env-переменные описаны в server.json). Клиенты с поддержкой реестра найдут его по имени.

Docker (без установки чего-либо, кроме Docker)

Образ публикуется в GitHub Container Registry при каждом релизе (v*-тег):

# stdio (MCP-клиент запускает контейнер сам)
docker run -i --rm -e TRACKER_TOKEN -e TRACKER_ORG_ID ghcr.io/sdamarketing/tracker-mcp

# HTTP-режим
docker run --rm -p 3407:3407 -e TRACKER_TOKEN -e TRACKER_ORG_ID \
  -e MCP_AUTH_TOKEN=вашключ ghcr.io/sdamarketing/tracker-mcp serve --host 0.0.0.0

В конфиге агента вместо command: node используется command: docker, args: ["run","-i","--rm","-e","TRACKER_TOKEN","-e","TRACKER_ORG_ID","ghcr.io/sdamarketing/tracker-mcp"].

Ручная установка (Windows или без curl)

Шаг 1. Убедитесь, что есть Node.js 20+ (проверка: node -v).

Шаг 2. Соберите сервер:

git clone <адрес-этого-репозитория>
cd traker_mcp
npm install
npm run build
npm run smoke   # проверка: должно быть "OK: ... 187 tools listed"

Шаг 3. Подготовьте две вещи из Трекера:

Шаг 4. Запустите мастер установки:

npm run setup

Мастер спросит ключи (токен — скрытым вводом), проверит их в API Трекера, покажет интерактивное меню клиентов (↑↓ + Enter) и настроит выбранные (можно несколько подряд) — через их CLI или дописав конфиг с бэкапом, — а в конце выведет отчёт.

Альтернатива: npm run links — откроет страницу в браузере с кнопками установки в один клик (VS Code, Cursor, Claude Desktop) и конфигами всех клиентов для ручного копирования.

Подключение к вашему агенту

Ваш агент

Быстрый способ

Конфиг-файл

VS Code (Copilot)

npm run setup (CLI code)

.vscode/mcp.json

Cursor

npm run setup

~/.cursor/mcp.json

Claude Desktop

npm run setup

claude_desktop_config.json

Claude Code (терминал)

npm run setup (CLI claude)

~/.claude.json

opencode

npm run setup

~/.config/opencode/opencode.json

Windsurf

npm run setup

~/.codeium/windsurf/mcp_config.json

Zed

npm run setup

settings.json (context_servers)

JetBrains IDE

npm run setup

.mcp.json в корне проекта

Grok CLI

npm run setup (сам, если есть grok)

~/.grok/config.toml

Пошаговые инструкции с точными путями для macOS/Windows/Linux: docs/SETUP.md.

Проверка

После установки перезапустите агента и спросите:

«Вызови инструмент get_current_user» — вернётся ваш профиль из Трекера. «Найди мои задачи в Трекере» — сработает find_issues.

Частые проблемы

Симптом

Причина и решение

Missing required environment variable TRACKER_TOKEN

токен не передан — перегенерируйте ссылки (npm run links) или проверьте env в конфиге

Yandex Tracker API error 401

неверный токен или токен истёк (IAM живёт ≤12 часов)

Yandex Tracker API error 403: Organization is not available

неверный TRACKER_ORG_ID или организация не подключена к Трекеру

Сервер не запускается в Claude Desktop (macOS)

используйте абсолютный путь к node — уже так в сгенерированном конфиге

У агента нет инструментов

сервер отключён — включите в списке MCP-серверов клиента и перезапустите

Больше решений — docs/SETUP.md, раздел 8.

Настройка сервера

Переменная

Обязательна

Описание

TRACKER_TOKEN

да

OAuth-токен (y0_..., Яндекс 360) или IAM-токен (t1...., Yandex Cloud)

TRACKER_ORG_ID

да

Идентификатор организации

TRACKER_AUTH

нет

oauth (по умолчанию) или iam — определяет заголовки X-Org-ID / X-Cloud-Org-ID

TRACKER_API_URL

нет

По умолчанию https://api.tracker.yandex.net/v3

TRACKER_LANG

нет

ru или en — язык локализованных полей

TRACKER_READ_ONLY

нет

1 — агенту видны только read-only инструменты (80 шт)

TRACKER_CACHE_TTL_MS

нет

TTL кэша справочников (по умолчанию 10 минут)

HTTP-режим (serve)

По умолчанию сервер работает по stdio (для локальных агентов). Для сетевого доступа (команда, удалённый клиент, проксирование):

tracker-mcp serve --port 3407 --host 127.0.0.1   # значения по умолчанию
MCP_AUTH_TOKEN=s3cret tracker-mcp serve            # ключ к эндпоинту (Bearer)
curl localhost:3407/health                         # {"ok":true,"tools":187}
  • Эндпоинт MCP: POST/GET/DELETE /mcp (Streamable HTTP, stateless)

  • Без MCP_AUTH_TOKEN привязка к не-loopback-адресу отклоняется — токен Трекера живёт в env, голый порт в сети недопустим

  • Конфиг клиента для HTTP: "url": "http://127.0.0.1:3407/mcp" + "headers": {"Authorization": "Bearer s3cret"}

Безопасность

  • Токен даёт агенту те же права, что у вас в Трекере. Выдавайте минимальные права (для чтения хватит tracker:read).

  • Храните токен в .env (уже в .gitignore) или в конфиге клиента, не в коде.

  • install-links.html содержит токен — скрипт добавляет его в .gitignore сам.

Разработка

npm run typecheck   # проверка типов
npm run build       # сборка в dist/
npm run smoke       # запуск и список инструментов без обращения к API
npm run setup       # интерактивный мастер установки для AI-клиентов
npm run links       # страница с кнопками установки (deeplinks)

Архитектура и полный список инструментов — в docs/SETUP.md и в коде src/tools/.

Лицензия и поддержка

Проблемы и идеи — в issues репозитория. API Трекера меняется — следите за официальной документацией.

Available Tools

187 tools
add_checklist_itemC

Add a checklist item to an issue.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesChecklist item text
checkedNoMark item as done
issueIdYesIssue key or id
assigneeNoAssignee login or user id
deadlineDateNoItem deadline, format YYYY-MM-DDThh:mm:ss.sss±hhmm

TDQS

C2.9/5.0
Behavior2/5

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

Annotations declare readOnlyHint=false and destructiveHint=false, so the agent already knows this is a non-destructive write. The description adds nothing beyond that: no note on where the item is appended, whether it requires issue edit permissions, what happens with an invalid issueId, or whether the call is idempotent.

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?

A single front-loaded sentence with zero filler. It is efficient, though arguably thin rather than fully earning its brevity given the tool's five 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?

There is no output schema and the schema covers parameters, so the main gap is behavioral: a mutation tool with no indication of permissions, ordering, or side effects. The description is minimally viable but leaves the agent to infer everything about the write's consequences.

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 five parameters (issueId, text, checked, assignee, deadlineDate) are already documented in the schema, including the deadline format. The description adds no parameter meaning beyond that, so the baseline 3 applies.

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?

States a specific verb (add) and resource (checklist item) scoped to an issue, which distinguishes it somewhat from the generic plural sibling add_entity_checklist_items. However it never explains how it differs from that entity-level sibling or from edit_checklist_item/delete_checklist_item, so the differentiation is only implicit.

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 when-to-use guidance, no prerequisites, and no mention of alternatives such as add_entity_checklist_items or edit_checklist_item. The agent must infer applicability 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.

add_commentB

Add a comment to an issue. Supports Yandex Flavored Markdown.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesComment text
issueIdYesIssue key or id

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the write-but-not-destructive profile is known. The description adds the useful detail that comment text supports Yandex Flavored Markdown, but says nothing about permissions, whether the comment is returned, or how edits differ.

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?

Two short sentences, zero filler, with the core action front-loaded ahead of the formatting note. Nothing is wasted.

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?

For a two-parameter tool with full schema coverage, annotations covering safety, and no output schema, the description is nearly sufficient — it names the action and the supported markup format. The only gap is the lack of any routing hint against the many comment-related siblings.

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% (both text and issueId are documented in-schema), so the baseline is 3. The description adds no parameter-level detail such as the issue key format or text length limits beyond what the schema provides.

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?

States a specific verb and resource ('Add a comment to an issue'), which is unambiguous. However, it does not distinguish itself from near-identical siblings such as add_entity_comment and add_entity_comment, so an agent cannot tell from the description which entity scope applies.

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 versus add_entity_comment, edit_comment, or import_issue_comment, and no stated prerequisites (e.g. needing an existing issueId). Usage must be inferred entirely from the name.

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

add_comment_reactionC

Add a reaction to a comment.

ParametersJSON Schema
NameRequiredDescriptionDefault
issueIdYesIssue key or id
reactionYesReaction name
commentIdYesComment id or longId

TDQS

C2.9/5.0
Behavior2/5

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

Annotations tell the agent this is a non-read-only, non-destructive mutation, but the description adds nothing beyond that. It does not say whether adding a duplicate reaction is idempotent or an error, whether reactions can be removed, who may react, or what happens on success — all meaningful 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.

Conciseness3/5

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

The single sentence is front-loaded and waste-free, but it is under-specified rather than optimally concise — it omits information that would make the sentence earn more of its place.

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 simple three-parameter tool with full schema coverage and annotations, the essentials are present across structured fields. Still, the description leaves behavioral questions (idempotency, error on duplicate, return behavior) unanswered, and there is no output schema to compensate.

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 issueId, commentId, and the reaction enum are fully documented in the schema, which sets the baseline at 3. The description contributes no additional parameter meaning (e.g., whether reaction must match the exact enum casing, or that commentId accepts a longId form).

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 states a specific verb and resource ("Add a reaction to a comment"), which is unambiguous about the operation. However, it offers no differentiation from related siblings like add_comment or add_entity_comment, so an agent must rely on the name alone to route correctly.

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?

There is no when-to-use guidance, no mention of prerequisites (e.g., needing an existing comment), and no routing to alternatives such as add_comment or the entity-comment equivalents. The agent must infer all usage context from the tool name.

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

add_entity_attachmentA

Attach a temporary file (from upload_temp_attachment) to a project, portfolio or goal.

ParametersJSON Schema
NameRequiredDescriptionDefault
notifyNo
entityIdYes
entityTypeYesEntity type: "project", "portfolio" or "goal"
tempFileIdYesTemp file id from upload_temp_attachment

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the write/safety profile is covered structurally. The word "temporary" hints that the temp file is consumed or promoted by this call, but the description never states what happens to tempFileId afterwards or that notify triggers notifications, leaving real behavioral gaps against a low annotation bar.

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?

A single front-loaded sentence that states action, prerequisite, and scope with zero filler. Nothing is wasted or buried.

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 output schema and 4 parameters, the description covers the core action but omits what notify does, what happens to the temp file after attaching, and whether permissions on the target entity are required. Adequate but with clear 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 coverage is 50%: entityType and tempFileId are documented in the schema, and the description redundantly reinforces the temp-file source and entity types. The two undocumented parameters, entityId and especially notify, get no meaning from the description at all. Baseline 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 gives a specific verb+resource ("Attach a temporary file") and enumerates the exact entity scope (project, portfolio, goal), which separates it from the many other attachment siblings like upload_issue_attachment and list_entity_attachments. It stops short of explicitly contrasting itself with the closest siblings, so it is clear but not fully differentiating.

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

Usage Guidelines4/5

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

It names the prerequisite source of the file ("from upload_temp_attachment"), which tells the agent this tool must be preceded by the upload step. There are no explicit when-not conditions or alternative routing, so it is clear context without exclusions.

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

add_entity_checklist_itemsC

Create a checklist or append items to a project/portfolio checklist.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemsYes
notifyNo
entityIdYes
entityTypeYesChecklists are available for projects and portfolios only

TDQS

C2.7/5.0
Behavior2/5

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

Annotations declare readOnlyHint=false and destructiveHint=false, so the safety profile is known, but the description adds almost nothing beyond that. It doesn't explain whether a missing checklist is auto-created, what the notify flag triggers, or how duplicate items are handled — meaningful behavioral gaps for a write tool.

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?

One compact sentence with the resource front-loaded and no filler. It is efficient, though the brevity is partly what leaves the semantics underspecified.

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?

A 4-parameter mutation tool with low schema coverage and no output schema needs far more than one sentence. Key facts — create-versus-append semantics, notify behavior, item field meanings — are absent, leaving the agent to guess before invoking.

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

Parameters2/5

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

Schema description coverage is only 25%, so the description must compensate, and it largely doesn't. It conveys the project/portfolio scope but says nothing about notify, about the per-item fields (checked, assignee, deadline), or about ordering/deduplication of appended items.

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?

States a specific verb+resource: creating a checklist or appending items to a project/portfolio checklist, which is more than a tautology. However, it does not distinguish this from the many checklist siblings (add_checklist_item, update_entity_checklist, update_entity_checklist_item), and it leaves the create-vs-append behavior ambiguous enough that an agent can't tell which path it will take.

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 when-to-use guidance, no mention of alternatives, and no conditions selecting this over add_checklist_item or update_entity_checklist. The only hint is the entityType field's scope note in the schema, not the description.

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

add_entity_commentB

Add a comment to a project, portfolio or goal.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesComment text
entityIdYesEntity id
entityTypeYesEntity type: "project", "portfolio" or "goal"

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the write/non-destructive profile is covered. The description adds the target-entity scope but says nothing about notification behavior, permissions, or the created comment's shape; adequate but thin given annotations carry the safety signal.

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?

A single front-loaded sentence with the verb first and no wasted words. It is appropriately sized for a simple create tool, though its brevity contributes to the missing usage and behavioral detail elsewhere.

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 3-param, fully documented create tool with annotations and no output schema, the description is minimally sufficient. It omits when to prefer it over add_comment and any post-write behavior, leaving gaps an agent might need.

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% and all three required params are documented, including the entityType enum. The description's mention of the three entity types echoes the enum but adds no syntax, format, or constraint detail beyond the schema, so baseline 3 applies.

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?

States a specific verb+resource ("Add a comment") and scopes it to three entity types (project, portfolio, goal). This scope implicitly distinguishes it from the sibling add_comment, which targets issues, so an agent can route correctly without opening either schema.

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 when-to-use or when-not-to-use guidance is given, and no alternative tool is named. The agent must infer that this applies to non-issue entities and that add_comment handles issues, but nothing in the text states this.

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

add_worklog_recordB

Add a time tracking record to an issue. Tracker counts time in 5-day work weeks and 8-hour work days: P5D is displayed as 1 week.

ParametersJSON Schema
NameRequiredDescriptionDefault
startYesWork start date and time, format YYYY-MM-DDThh:mm:ss.sss±hhmm
commentNoWorklog comment
issueIdYesIssue key or id
durationYesSpent time in ISO 8601 duration format, e.g. "PT2H30M", "P3D", "P1WT4H"

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the agent knows this is a non-destructive write. The description adds genuinely useful behavioral context about how the tracker interprets duration (5-day weeks, 8-hour days). It omits side effects such as whether the worklog affects remaining estimate or logged-time totals.

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?

Two tight sentences with the core action front-loaded and no filler. The duration-interpretation note is a slightly niche detail but still earns its place given the schema's ISO 8601 examples.

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?

For a four-parameter mutation tool with a fully documented schema and annotations covering the safety profile, the description is largely complete. Missing pieces are permission requirements and whether creating a worklog mutates derived time-tracking fields.

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 four parameters are documented in the schema itself, setting the baseline at 3. The description's explanation of P5D = 1 week meaningfully supplements the duration parameter's ISO 8601 format, but adds nothing for start, comment, or issueId.

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?

States a specific verb ('Add') and resource ('time tracking record to an issue'), so an agent knows it creates a worklog entry. It does not distinguish itself from siblings such as import_worklog_record, edit_worklog_record, or find_worklog_records, leaving the add-vs-import boundary to inference.

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 when-to-use guidance is given. The description never mentions alternatives like import_worklog_record (bulk) or edit_worklog_record (modify), nor any prerequisites such as required issue permissions or whether the issue must be open.

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

archive_sprintB

Archive a finished sprint (version = sprint version).

ParametersJSON Schema
NameRequiredDescriptionDefault
versionYesCurrent sprint version
sprintIdYes

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the agent knows this is a non-destructive mutation. The description adds the 'finished sprint' precondition but says nothing about reversibility, whether the sprint disappears from boards, or permission requirements. Adequate given annotations, but thin.

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?

A single front-loaded sentence with no filler, which is appropriate for a two-parameter tool. The parenthetical is slightly cryptic but costs almost nothing.

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 low-complexity two-parameter mutation with no output schema, the description covers the core action and precondition. It omits any post-archive behavior and leaves one required parameter undocumented, so it is only minimally sufficient.

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 coverage is 50%: 'version' is documented as 'Current sprint version' while 'sprintId' has no description. The parenthetical '(version = sprint version)' only restates what the schema already says and does not compensate for the undocumented sprintId.

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?

States a specific verb+resource ('Archive a sprint') plus a precondition ('finished'), which distinguishes it from generic state changes. It does not explicitly name siblings like delete_sprint or update_sprint, so the differentiation is only implicit.

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

Usage Guidelines3/5

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

'Finished sprint' implies when the tool is applicable, but there is no explicit when-not guidance and no routing to alternatives such as delete_sprint or start_sprint. Usage is inferred rather than stated.

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

bulk_move_issuesC

Bulk move issues to another queue. Components, versions and projects are cleared by default.

ParametersJSON Schema
NameRequiredDescriptionDefault
queueYesTarget queue key
issuesYesList of issue keys/ids OR a Tracker query-language filter string, e.g. "Queue: TREK Assignee: user1" (max 10000 issues per operation)
notifyNoNotify users about the change (default false)
confirmNoSet to true to confirm this destructive/bulk operation

TDQS

C2.8/5.0
Behavior1/5

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

Annotations declare destructiveHint=false, but the description says Components, versions and projects are 'cleared by default' — irreversible data loss — and the schema's confirm parameter is itself labeled 'this destructive/bulk operation.' The description's disclosure of data-clearing directly conflicts with the non-destructive annotation, which triggers the Annotation Contradiction rule.

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?

Two tight sentences, front-loaded with the action and followed by the most consequential caveat (default field clearing). Every sentence earns its place; there is no filler or repetition.

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 bulk mutation with 4 documented params but no output schema, the description covers the core action and the key side effect. It omits the confirm requirement, notification behavior, and routing to sibling tools, leaving gaps an agent must close from the 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% (queue key, issues list-or-filter syntax with 10000 limit, notify, confirm are all documented in the schema). The description adds no parameter-level meaning beyond the schema, so the baseline 3 for fully-covered schemas applies.

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?

States a specific verb and resource ('Bulk move issues to another queue'), and the 'Bulk' qualifier distinguishes it from the single-issue move_issue. It does not, however, name or contrast with the closest siblings (move_issue, bulk_update_issues, bulk_transition_issues), so an agent still has to infer the boundary.

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 gives no when-to-use guidance, no alternatives, and no prerequisites. It never mentions that confirm=true is required to execute, nor when to prefer this over move_issue or bulk_transition_issues. The clearing statement is behavioral context, not usage guidance.

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

bulk_transition_issuesA

Bulk move issues to a new status via a workflow transition. Get available transition ids via get_issue_transitions. Statuses like "closed" may require a resolution in values.

ParametersJSON Schema
NameRequiredDescriptionDefault
issuesYesList of issue keys/ids OR a Tracker query-language filter string, e.g. "Queue: TREK Assignee: user1" (max 10000 issues per operation)
notifyNoNotify users about the change (default false)
valuesNoFields to set with the transition, e.g. {"resolution": "fixed"}
confirmNoSet to true to confirm this destructive/bulk operation
transitionYesTransition id, e.g. "close", "start_progress"

TDQS

A4.1/5.0
Behavior4/5

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

Annotations declare readOnlyHint=false and destructiveHint=false, and the description adds genuinely useful non-schema context: the dependency on get_issue_transitions and the resolution requirement for 'closed' transitions. It omits operational caveats such as the async/bulk-tracking behavior (get_bulk_operation_info) and the 10,000-issue cap, which live only in the schema.

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?

Three tight sentences, front-loaded with the core action, each adding a distinct actionable fact (mechanism, prerequisite tool, edge-case requirement). No filler or restatement of the tool name.

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?

For a 5-parameter bulk mutation with nested objects and no output schema, the description covers the key gotchas (transition ids, resolution requirement). It is only slightly incomplete in not signaling that this is a large-scale operation worth tracking via get_bulk_operation_info.

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?

With 100% schema coverage the baseline is 3, but the description adds meaning beyond the schema by explaining that statuses like 'closed' may require a 'resolution' entry in values and that transition ids come from get_issue_transitions. It does not document notify, confirm, or the filter-string form of issues, which the schema already covers.

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?

States a specific verb+resource+mechanism ('Bulk move issues to a new status via a workflow transition'), which distinguishes it from single-issue execute_transition. It does not explicitly distinguish itself from the sibling bulk_move_issues or bulk_update_issues, so the agent must infer the difference, keeping it below a 5.

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

Usage Guidelines4/5

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

Gives a clear prerequisite/navigation hint ('Get available transition ids via get_issue_transitions') and a conditional rule about resolution for closed statuses. It stops short of naming when NOT to use this versus bulk_move_issues or execute_transition, so no explicit exclusion is provided.

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

bulk_update_entitiesC

Bulk update projects, portfolios or goals: fields, comment and links at once.

ParametersJSON Schema
NameRequiredDescriptionDefault
linksNoLinks to add to every entity
fieldsNo
commentNoComment to add to every entity
confirmNoSet to true to confirm this destructive/bulk operation
entityTypeYesEntity type: "project", "portfolio" or "goal"
metaEntitiesYesEntity ids to update

TDQS

C2.9/5.0
Behavior2/5

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

Annotations declare readOnlyHint=false and destructiveHint=false, so the write nature is known, but the description adds nothing beyond that: it does not explain that a `confirm: true` acknowledgement is required, whether per-entity failures abort the whole batch, or whether `fields` merges into or replaces existing values. Note the schema's `confirm` text calls this a 'destructive/bulk operation', which conflicts with destructiveHint=false – a tension the description does nothing to resolve.

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?

A single front-loaded sentence with the verb and target resources first and the modified attributes after the colon; there is no filler. It is slightly cramped but appropriately sized for the 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?

With six parameters (including nested objects), two required fields, and no output schema, the description is too thin: it omits the confirmation requirement, batching limits, failure semantics, and which entity types/ids go where. An agent would have to infer the safe invocation pattern entirely from the 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 83%, so the schema already carries most parameter meaning. The description's enumeration of 'fields, comment and links' loosely maps to three of the six parameters but adds no syntax, format, or constraint detail beyond what the schema provides – the baseline 3 for high 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?

States a specific verb (bulk update) and the three resource types it operates on (projects, portfolios, goals), plus what is changed (fields, comment, links). This implicitly separates it from siblings like bulk_update_issues and bulk_move_issues, but it never names an alternative tool explicitly.

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?

There is no when-to-use or when-not-to-use guidance, no mention of prerequisites, and nothing about the required `confirm` flag or any cap on how many entities can be updated in one call. 'At once' only hints at the efficiency motivation without stating conditions.

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

bulk_update_issuesB

Bulk edit many issues at once (max 10000). Values use the issue edit format; array fields support add/set/replace commands, e.g. {"tags": {"add": ["x"]}}.

ParametersJSON Schema
NameRequiredDescriptionDefault
issuesYesList of issue keys/ids OR a Tracker query-language filter string, e.g. "Queue: TREK Assignee: user1" (max 10000 issues per operation)
notifyNoNotify users about the change (default false)
valuesYesFields to set, e.g. {"priority": "blocker", "comment": "bulk update"}
confirmNoSet to true to confirm this destructive/bulk operation

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already establish this is a non-read-only, non-destructive write, so the description's added burden is lighter. It usefully explains that values follow the issue edit format and that array fields support add/set/replace merge commands, but it stays silent on permissions, reversibility of overwrites, and what the call returns. Note the tension worth surfacing to the agent: the schema's confirm parameter calls this a 'destructive/bulk operation' while destructiveHint is false.

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?

Two sentences, front-loaded with the operation and its limit, followed by exactly one concrete syntax example. No filler, and the compact inline JSON example is the most efficient way to convey the command structure.

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 high-impact bulk mutation tool with nested objects and no output schema, the description covers scale and value syntax but omits what the agent gets back (a bulk operation id?), whether confirm=true is required to proceed, and what permission level is needed. The sibling get_bulk_operation_info hints at an async result the description never mentions.

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?

Schema description coverage is 100%, so a baseline of 3 applies, but the description goes beyond the schema by documenting merge semantics for array fields ('add'/'set'/'replace'), which the schema's generic 'Fields to set' wording does not convey. It does not elaborate on the issues/filter string or notify parameters, but those are already well covered in the schema.

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?

States a specific verb and resource ('Bulk edit many issues at once') plus a hard scope limit (max 10000), so an agent immediately knows this is a multi-issue write. It does not, however, distinguish itself from nearby siblings such as bulk_update_entities, bulk_move_issues, or bulk_transition_issues, leaving the agent to infer the boundary.

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?

There is no explicit when-to-use statement, no prerequisites, and no named alternative (single edit_issue, or the more specific bulk_move/bulk_transition tools). The only implicit signal is the bulk scope plus the 10000 cap, which is a constraint rather than routing guidance.

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

count_issuesB
Read-only

Get the number of issues matching a filter or query.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoTracker query language string
queueNoQueue key
filterNoFilter object

TDQS

B3.1/5.0
Behavior2/5

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

The readOnlyHint=true annotation already establishes this as a safe, non-mutating read. The description adds little beyond that: it doesn't say whether counts are exact or approximate, whether the query language can be passed alongside filter, or how results are bounded. Essentially no behavioral context beyond the annotation.

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?

One short, front-loaded sentence with zero padding. Nothing to trim and the key noun ('number of issues') appears immediately.

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?

With no output schema, the description does at least state the return is a count, which covers the essentials for a trivial aggregation tool. What's missing is how the three optional, non-required parameters interact when several are supplied.

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 query ('Tracker query language string'), queue ('Queue key'), and filter. The description echoes 'filter or query' and omits queue and any precedence rules, so the baseline 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?

States a specific verb+resource pair ('Get the number of issues') and the scoping dimension ('matching a filter or query'). It is clearly distinguishable from find_issues by being a count rather than a listing, though it never names that sibling explicitly.

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 instead of find_issues or search_entities, and no statement about what happens if query, queue, and filter are combined. The agent must infer that this is the cheap 'how many?' alternative to a full search.

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

create_boardB

Create a new task board (via the liveBoards API; the legacy POST /boards ignores body parameters). Columns map board columns to issue status keys.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesBoard name
ownerNoOwner login or uid
columnsNoBoard columns; omit to use default columns
autoFiltersNoAuto add/remove filter, e.g. {"addFilter": {"liveFilter": {"fieldValues": {"queue": [{"fixed": "KEY"}]}}, "enabled": true}}
backlogAvailableNoEnable backlog on the board
sprintsAvailableNoEnable sprints on the board
boardPermissionsTemplateNoAccess template: "private" (owner only) or "public" (default)

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already establish that this is a write operation that is not destructive. The description adds genuine value beyond them by disclosing the API routing quirk ('the legacy POST /boards ignores body parameters') and the status-key mapping semantics, but it omits permission requirements, default behavior, and failure modes.

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?

Two tightly packed sentences with the core action front-loaded and no filler. The mid-sentence parenthetical about the legacy endpoint is useful but slightly interrupts the flow.

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 7-parameter create tool with a nested object and no output schema, the description covers purpose, one param nuance, and an API caveat. It leaves unaddressed the default-columns behavior, permission implications of boardPermissionsTemplate, and expected outcome, keeping it at minimum-viable.

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?

With 100% schema description coverage, the baseline is 3. The line 'Columns map board columns to issue status keys' slightly reinforces the nested columns parameter, but most parameter meaning is already carried by the schema.

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 states a specific verb and resource ('Create a new task board'), which is unambiguous and distinct from sibling mutation tools like update_board or create_board_column. It does not explicitly name a sibling it replaces, so it stops short of a 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?

There is no guidance on when to use this versus alternatives such as checking existing boards with get_boards, nor any exclusions or prerequisites. Usage is only implied by the verb 'Create'.

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

create_board_columnA

Create a column on a board. version = current board version (If-Match lock; get it from get_board).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
boardIdYes
versionYesCurrent board version
statusesYesStatus keys shown in the column

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the write/non-destructive profile is covered. The description adds real operational context beyond that: the version field drives an If-Match lock and must be sourced from get_board, which hints at optimistic concurrency 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?

Two terse sentences, front-loaded with the action and followed by the one non-obvious prerequisite. No filler, every clause earns its place.

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?

For a four-required-parameter create mutation with no output schema, the description plus annotations and schema cover what an agent needs to invoke it. Minor gaps remain on column semantics (ordering, statuses meaning), but nothing critical is missing.

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?

Schema coverage is 50% (version and statuses documented). The description uniquely clarifies the version parameter's role as an If-Match lock and tells the agent where to obtain it, adding meaning the schema's terse 'Current board version' does not. name and boardId remain undocumented but are self-evident.

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 states a specific verb and resource ('Create a column on a board'), which cleanly separates it from create_board, update_board_column and get_board_column. It does not name a sibling explicitly, so it falls short of a 5.

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

Usage Guidelines3/5

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

It gives one concrete prerequisite for the version parameter (get it from get_board), which is genuinely useful. However, it offers no when/when-not guidance against alternatives like update_board_column or create_board, and no note on when to use this versus other column operations.

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

create_componentC

Create a component in a queue.

ParametersJSON Schema
NameRequiredDescriptionDefault
leadNoComponent owner login
nameYesComponent name
queueYesQueue key
assignAutoNoAssign the component owner as default assignee
descriptionNoComponent description

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so safety is covered structurally. The description adds nothing beyond that: no permission requirements, no uniqueness/duplicate-name behavior, no indication of what is returned or whether the component is auto-assigned.

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?

One grammatical, front-loaded sentence with zero filler. It is terse rather than padded, though its brevity borders on under-specification for a mutation 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?

For a create/mutation tool with no output schema and only safety annotations, the description omits what an agent would want: required permissions, what happens on a duplicate component, and whether the created object is returned. The rich schema covers inputs but the behavioral picture is incomplete.

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 five parameters (lead, name, queue, assignAuto, description) are already documented in the schema. The description adds no syntax, format, or constraint detail beyond that, so the baseline 3 applies.

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?

States a specific verb and resource ('Create a component in a queue'), which cleanly separates it from the get_component/update_component/delete_component siblings. It does not name any alternative or explain its relationship to get_queue_components, but the verb alone is discriminating enough for selection.

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?

There is no when-to-use guidance, no prerequisites (e.g. the queue must exist), and no mention of alternatives such as create_queue_components flows. The agent gets only the bare action.

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

create_cycle_time_widgetA

Add a "Cycle time" chart widget to an existing dashboard. Issue source priority: filterId > query > filter.

ParametersJSON Schema
NameRequiredDescriptionDefault
endNoEnd formula, e.g. "now()-2d" (default now())
modeNoChart display mode
linesNoTime axis settings: movingAverage, standardDeviation, percentile, cakePercentile
queryNoIssue filter in Tracker query language, e.g. "Queue: KEY Assignee: me()"
startNoStart formula, e.g. "now()-2w" (default 2 years)
bucketNoChart step, default 7 days
filterNoIssue filter by fields
filterIdNoSaved filter id
toStatusesNoStatus where work ends
dashboardIdYesTarget dashboard id
descriptionYesWidget title
fromStatusesNoStatus where work starts (excluded from the count)
autoUpdatableNoAuto-refresh the chart
excludedStatusesNoStatuses to exclude
includedStatusesNoStatuses to include

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the mutation and safety profile is covered. The description adds that it targets an existing dashboard and creates a cycle-time chart, but does not disclose permissions, failure behavior, or return values; with annotations present, this is adequate but not rich.

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 two sentences: a front-loaded purpose statement followed by a critical source-priority rule. There is no filler, and every sentence earns its place.

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?

For a 15-parameter creation tool with no output schema, the description plus the rich schema and annotations provide enough to invoke it correctly. It covers the purpose and key parameter precedence, though minor gaps remain around return values and permissions.

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?

Schema description coverage is 100%, so the schema already documents each parameter and the baseline is 3. The description adds non-obvious precedence among filterId, query, and filter, which is not stated in the schema and directly affects how issue sources should be supplied.

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 states a specific verb and resource: "Add a 'Cycle time' chart widget to an existing dashboard." It clearly distinguishes this widget-creation tool from sibling tools such as create_dashboard or create_board.

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

Usage Guidelines4/5

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

It gives clear context that the dashboard must already exist and provides an explicit precedence rule for issue sources: filterId > query > filter. It does not name alternative tools or when not to use this tool, but the usage context and parameter-selection guidance are actionable.

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

create_dashboardC

Create a new dashboard.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesDashboard name
ownerNoOwner login or id (defaults to the creator)
layoutNoWidget layout mode, default "one-column"

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so safety is covered externally. The description adds nothing beyond that: it does not say whether a project/context is required, what happens to defaults like owner and layout, or what is returned on success.

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?

A single short sentence, front-loaded and free of filler. Its brevity is efficient rather than bloated, though it borders on under-specification for a create tool with three 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?

With a fully documented schema and annotations covering the safety profile, the minimum an agent needs is present. However, for a creation tool with no output schema, the description omits prerequisites (permissions, owning context) and any indication of the result, leaving gaps that neither annotations nor schema fill.

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%, including defaults for owner and layout and an enum for layout, so the schema carries the parameter burden. The description adds no syntax, format, or meaning beyond the schema, which is the baseline 3 case.

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?

It states a verb (Create) and a resource (dashboard), so the operation is identifiable, but the sentence is essentially a restatement of the tool name with no scope, no field mention, and no differentiation from other create_* tools in the sibling list.

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?

There is no guidance about when to use this tool, when not to, prerequisites, or which alternative to prefer. The agent gets no routing information beyond the name itself.

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

create_entityC

Create a project, portfolio or goal.

ParametersJSON Schema
NameRequiredDescriptionDefault
linksNoEntity links
fieldsNoAdditional entity fields: description, lead, teamUsers, clients, followers, start, end, tags, entityStatus, teamAccess, parentEntity ({"primary": "id", "secondary": []}). Example: {"entityStatus": "in_progress", "lead": "user1", "end": "2026-12-31"}
summaryYesEntity name
entityTypeYesEntity type: "project", "portfolio" or "goal"

TDQS

C2.8/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the mutation nature is known. The description adds nothing further: no mention of required permissions, whether creation is idempotent, what happens with the free-form 'fields' and 'links' payloads, or what a successful create returns.

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?

It is a single short sentence with zero waste and the verb is front-loaded. However, for a tool with a free-form fields bag and nested link objects, this level of brevity reads as under-specification rather than disciplined 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?

Against a 4-parameter schema with nested objects, a polymorphic 'fields' bag and no output schema, the one-line description leaves major gaps: how the different entity types differ, what fields apply to which type, and how links should be formed. It is not complete enough for confident 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 all four parameters, including the enum and the nested links/fields objects. The description merely repeats the entityType enum values and adds no syntax, format, or constraint detail beyond it, so the baseline of 3 applies.

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?

States a specific verb ('Create') and enumerates the three creatable resource types ('project, portfolio or goal'), which maps directly to the entityType enum and separates it from narrower siblings like create_project or create_board. It does not explain, however, why an agent would call create_entity instead of the sibling create_project when creating a project.

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?

There is no when-to-use or when-not-to-use guidance. The description never mentions the sibling create_project/create_board tools, prerequisites, or permissions, so the agent must infer routing 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.

create_filterC

Create a saved filter for issue lists.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesFilter name
queryNoQuery language condition (mutually exclusive with filter)
sortsNoSort order
fieldsNoIssue fields shown as columns
filterNoConditions by field, e.g. {"queue": "TREK", "status": "open"} (replaces fully)
folderNoFolder id to place the filter into
groupByNoGrouping field

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, and the description's 'Create' is consistent with that write signal. However, it adds nothing beyond the annotations: no word on name-collision behavior (error vs replace), whether the filter is personal or shared, or any auth requirement. It is essentially a restatement of the title.

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?

A single short, front-loaded sentence with zero filler. It is efficient, though the brevity edges toward under-specification rather than true economy.

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 seven-parameter write tool with nested objects and no output schema, one sentence is not enough. It omits what a filter consists of at a high level and how it relates to update_filter, leaving the agent to reconstruct intent from the schema 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?

Schema coverage is 100%, so all seven parameters (name, query, sorts, fields, filter, folder, groupBy) are already documented in the schema, including the query/filter mutual exclusivity and the 'replaces fully' note. The description adds no parameter meaning, so baseline 3 applies 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.

Purpose4/5

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

States a specific verb (Create) and resource (saved filter) and adds the target scope ('for issue lists'). The verb implicitly distinguishes it from the get_filter/update_filter/delete_filter siblings, though it never names them, so the differentiation rests on the verb alone.

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 when-to-use context, no prerequisites, and no mention of update_filter as the alternative when a filter already exists. The agent must infer that 'create' means a new filter rather than modifying an existing one.

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

create_gapsB

Create employee absences (vacation, illness, trip…). Admin rights required.

ParametersJSON Schema
NameRequiredDescriptionDefault
gapsYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations declare a write operation (readOnlyHint=false) that is not destructive (destructiveHint=false), so the safety profile is covered. The description adds the admin-rights requirement, a useful auth constraint, but does not describe bulk behavior, validation, or return semantics.

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?

Two short sentences, front-loaded with the core action and then the prerequisite. No wasted words.

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 bulk-create tool accepting up to 100 nested absence objects with no output schema, the description omits key operational details such as bulk capability, partial-failure behavior, and date-format constraints. It is under-specified for the tool's complexity.

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

Parameters2/5

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

Schema description coverage is 0% at the top level; the description only gives examples of absence types that are already enumerated in the schema's workflow field. It does not explain the required 'gaps' array structure, maxItems=100, or the required nested fields (user, workflow, from, to).

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 states a specific verb 'Create' and resource 'employee absences', and clarifies the jargon 'gaps' with examples (vacation, illness, trip). It implicitly distinguishes from sibling find_gaps and delete_gaps by verb, though it does not name them explicitly.

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

Usage Guidelines3/5

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

It provides a prerequisite ('Admin rights required') but no explicit guidance on when to use this tool versus find_gaps, delete_gaps, or other create tools. Usage is implied by the verb and resource.

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

create_issueB

Create a new issue in Yandex Tracker. Requires queue key and summary. Text fields support Yandex Flavored Markdown.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNoIssue tags
typeNoIssue type key, id or name, e.g. "bug", "task"
queueYesQueue key or id, e.g. "TREK"
authorNoAuthor login or user id
parentNoParent issue key or id
sprintNoSprint ids
uniqueNoValue that must be unique across the organization (dedup guard)
dueDateNoDue date, format YYYY-MM-DD
projectNoPrimary project shortId
summaryNoIssue title/summary
assigneeNoAssignee login or user id
deadlineNoDeadline date, format YYYY-MM-DD
priorityNoPriority key, id or name, e.g. "blocker", "normal"
followersNoFollowers: logins or user ids
startDateNoStart date, format YYYY-MM-DD
componentsNoQueue component names or ids
estimationNoEstimate in ISO 8601 duration format, e.g. "P5DT1H" or "P2W"
descriptionNoIssue description (YFM markup supported)
extraFieldsNoArbitrary additional issue fields as a JSON object (global custom fields, queue local fields, or add/set/remove update commands like {"tags": {"add": ["x"]}}). Merged into the request body as-is.
fixVersionsNoFix version names or ids
attachmentIdsNoTemporary attachment ids to attach
affectedVersionsNoAffected version names or ids

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the write-but-non-destructive profile is covered. The description adds genuinely new context: the mandatory queue field and that text fields accept Yandex Flavored Markdown. It says nothing about permissions, queue-level required fields, or what happens to nested extraFields.

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?

Three short, front-loaded sentences with no filler; the core action leads and constraints follow. The Markdown sentence is the weakest earner but still useful information an agent cannot get elsewhere.

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 22-parameter creation tool with no output schema, the description is thin: it omits any hint about the escaped-hatch extraFields/update-command mechanism, attachment handling, or the queue-vs-summary required-field discrepancy. The rich schema and annotations carry most of the load, leaving this merely adequate.

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 22 parameters, including the complex nested extraFields object. The description's only addition is generalizing YFM support to all text fields (the schema only says this for 'description'), which is a marginal gain over structured data.

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?

States a specific verb and resource ('Create a new issue in Yandex Tracker'), which is clearly distinguishable from siblings like edit_issue, bulk_update_issues, and import_issue. It does not explicitly name or contrast those alternatives, so it stops short of a 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 notes prerequisites ('Requires queue key and summary') but gives no when-to-use guidance, no mention of alternatives for related operations (edit_issue, import_issue, create_entity), and no exclusions. Note that 'summary' is stated as required here while the schema's required list contains only 'queue'.

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

create_issue_fieldC

Create a global issue field (admin). type is a class name like "ru.yandex.startrek.core.fields.StringFieldType" (also Date, DateTime, Text, Float, Integer, User, Uri, Money, TimeTrackingDuration, StringFieldType with container=true).

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesField key, latin letters and digits
nameYesName: string or {"ru": "…", "en": "…"}
typeYesru.yandex.startrek.core.fields.*FieldType
orderNo
hiddenNo
visibleNo
categoryYesCategory id (see get_issue_fields)
readonlyNo
containerNoMulti-value field (string/user/dropdown only)
descriptionNo
optionsProviderNoDropdown values: {"type": "FixedListOptionsProvider", "values": ["a", "b"]}

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the agent knows this is a non-destructive write. The description adds only the admin requirement; it says nothing about whether re-creating with an existing id fails, what side effects occur on existing issues, or any rate/scope limits for an 11-parameter creation tool.

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?

Two sentences that front-load the action and then spend the rest on the highest-uncertainty parameter. Dense but each clause carries information; no filler.

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 an 11-parameter admin creation tool with no output schema and 55% schema coverage, the description covers the trickiest parameter but leaves half the surface (visibility flags, ordering, readonly, description) unexplained. Minimum viable rather than 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 only 55%, and the description compensates well for the critical `type` parameter by enumerating valid class names and the container=true variant, which the schema only gestures at with a wildcard. However, order, hidden, visible, readonly, and description remain undocumented in both places.

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?

States a specific verb and resource ("Create a global issue field") and flags the admin privilege needed. It distinguishes global fields by implication from the local-field siblings (create_queue_local_field), though it never names that distinction explicitly.

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 only usage signal is the parenthetical "(admin)", which hints at a permission prerequisite but is not elaborated. No guidance on when to use this versus create_queue_local_field, create_issue_field_category, or update_issue_field, and no prerequisites or duplicate-handling notes.

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

create_issue_field_categoryC

Create an issue field category (admin).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName: string or {"ru": "…", "en": "…"}
orderYesDisplay weight
descriptionNo

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the safety profile is covered. The description adds one piece of context beyond that — '(admin)' signals an elevated permission requirement — but says nothing about uniqueness constraints, idempotency, or what happens to existing field assignments when a category is created.

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?

A single front-loaded sentence with no filler; the verb and resource come first. It is marginally under-specified rather than padded, but structurally 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?

For a mutating configuration tool with no output schema and one of three parameters undocumented, the description omits what an issue field category is, how it relates to issue fields, and whether the return value is the new category. Only the admin permission note carries useful context.

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

Parameters2/5

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

Schema coverage is 67% (name and order have descriptions; description does not). The description provides zero parameter detail, so the undocumented 'description' field is left entirely unexplained and no extra meaning is added for name (localized string form) or order (display weight).

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?

Specific verb (Create) plus resource (issue field category), which is clear enough to distinguish from create_issue_field and update_issue_field_category. The '(admin)' tag adds a useful qualifier, but the description does not explicitly contrast the tool with its nearest siblings, so it falls short of a 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?

There is no when-to-use guidance, no prerequisites beyond the parenthetical '(admin)', and no mention of alternatives such as update_issue_field_category or create_issue_field. The agent must infer that this is a configuration/setup operation.

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

create_issue_reportA

Create a saved issue-list report (used by dashboard "issue list" widgets). Pick exactly one issue source inside parameters.filter: query | filter | filterId.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoQuery language source
sortsNo
fieldsNoIssue fields to include in export
filterNoField-value source
formatNoExport format, default xlsx
summaryYesReport name
filterIdNoSaved filter id as source

TDQS

A3.6/5.0
Behavior3/5

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

Annotations declare readOnlyHint=false and destructiveHint=false, and the description's 'create a saved report' is consistent with that non-read-only, non-destructive profile. It adds the mutual-exclusion rule but says nothing about permissions, quota, or whether re-creating an existing report overwrites anything.

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?

Two tight sentences, zero filler, with the core purpose and the critical source-selection rule front-loaded.

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 7-parameter, nested-object tool with no output schema, the description covers source selection but not the sorts/fields/format or expected return. It is adequate but leaves gaps given the tool's complexity.

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?

Schema coverage is already 86%, so the baseline is 3, but the description adds the one-of constraint across query/filter/filterId that the schema does not encode via anyOf/oneOf. That is meaningful semantics beyond the structured fields, though it leaves sorts/fields/format wholly to the schema.

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?

States a specific verb and resource ('Create a saved issue-list report') and ties it to its consumer context ('used by dashboard "issue list" widgets'), which separates it from the many queue/board/widget siblings. It does not explicitly contrast with find_issue_reports, so it stops short of full sibling differentiation.

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

Usage Guidelines3/5

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

The description gives one actionable usage rule—choose exactly one issue source among query | filter | filterId—which is real guidance, but it offers no when-to-use/when-not context versus alternatives like find_issue_reports or create_filter. It is also ambiguous about placement, saying the source goes 'inside parameters.filter' while query/filter/filterId are top-level schema properties.

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

create_issue_typeB

Create a new issue type (admin).

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYesType key, latin
nameYes{"ru": "…", "en": "…"}

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the write-vs-read profile is covered without the description. The description adds the admin-privilege requirement, which is genuine value beyond the annotations, but says nothing about idempotency, uniqueness constraints on the key, or what happens on collision.

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?

A single front-loaded sentence with zero filler. It is efficient, though the terseness borders on under-specification for a tool that takes a nested localized-name object and has admin semantics.

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 two-parameter tool with full schema coverage and no output schema, the description covers the essentials: what it creates and that it is admin-gated. It leaves gaps around key uniqueness, failure modes, and how the new type relates to existing ones, which an agent managing configuration would likely want.

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% and both properties carry inline documentation ('Type key, latin' and the localized-map example), so the baseline of 3 applies. The description adds nothing about the key format or the localization object shape beyond what the schema already states.

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?

Clear verb+resource ('Create a new issue type') with the '(admin)' qualifier signalling privilege scope. It does not, however, differentiate itself from the sibling update_issue_type or explain its relationship to get_issue_types, so it is clear but not sibling-aware.

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 only usage signal is the parenthetical '(admin)', which hints at a permission requirement but not at when to prefer this tool over update_issue_type or how it fits the larger issue-type lifecycle. No when-to-use, when-not-to-use, or alternative is stated.

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

create_priorityC

Create a priority (admin).

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYesPriority key, latin
nameYes{"ru": "…", "en": "…"}
orderYesDisplay weight
descriptionYes

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare this is a non-read-only, non-destructive mutation. The description adds the 'admin' permission signal, which is useful context beyond the annotations. It still says nothing about behavior on duplicate keys, whether the created entity is returned, or what the operation's effects are.

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?

It is front-loaded and has zero padding, but it is under-specified rather than concise: a single four-word sentence for a tool with four required parameters including a nested i18n object omits essentials the agent needs.

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 four required params, a nested localization object, an admin permission requirement, and no output schema, the description leaves out required input format expectations (notably the i18n map for 'name') and any confirmation of what is returned.

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 coverage is 75%, with the schema documenting key ('latin'), name (i18n map), and order ('display weight'), while 'description' is left undocumented in both schema and description. The description adds no parameter meaning whatsoever, so the baseline 3 applies.

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?

States a specific verb and resource ('Create a priority'), so the agent knows this is a priority-creation tool distinct from update_priority and get_priorities. However, it does not explicitly name those siblings or explain what distinguishes creation from them beyond the verb.

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 '(admin)' tag vaguely signals a privileged operation, but the description gives no when-to-use guidance, no prerequisites, and no alternative (e.g., update_priority for existing priorities). The agent must infer eligibility from the terse parenthetical.

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

create_projectC

Create a project.

ParametersJSON Schema
NameRequiredDescriptionDefault
leadNoProject lead login or user id
nameYesProject name
tagsNoProject tags
queuesNoQueue keys whose issues are included in the project
endDateNoDeadline date, format YYYY-MM-DD
startDateNoStart date, format YYYY-MM-DD
descriptionNoProject description

TDQS

C2.3/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the write/non-destructive profile is covered and the description does not contradict it. However, the description adds nothing beyond that: not whether the name must be unique, what permissions are required, what defaults apply, or what is returned (no output schema exists).

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 single sentence is front-loaded and contains no filler, but its brevity comes from under-specification rather than disciplined editing. There is nothing to trim, yet nothing of substance was included.

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?

This is a seven-parameter mutation tool with no output schema, and the description says nothing about required vs optional fields, uniqueness constraints, or side effects. The only contextual information available comes from the schema and annotations, leaving the description inadequate for 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 all seven parameters (lead, name, tags, queues, startDate/endDate, description) are already documented in the schema. The description adds no syntax, format, or constraint information beyond that baseline, so a 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?

"Create a project" names a clear verb and resource, but it is essentially a restatement of the tool name with no scope or distinguishing detail. With siblings like create_board, create_queue, create_dashboard and update_project/delete_project in the list, nothing here helps an agent tell this tool apart beyond the obvious noun.

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?

There is no when-to-use guidance, no exclusions, and no named alternative (e.g. update_project for existing projects, or get_projects for lookup). The agent must infer everything 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.

create_queueB

Create a new queue. Requires key, name, lead, default type/priority and an issueTypesConfig array binding issue types to workflow templates.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYesUnique queue key in latin letters, e.g. "DESIGN"
leadYesQueue owner login or user id
nameYesQueue name
defaultTypeYesDefault issue type key, e.g. "task"
defaultPriorityYesDefault issue priority key, e.g. "normal"
issueTypesConfigYesIssue type configs of the queue

TDQS

B3.2/5.0
Behavior3/5

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

Annotations declare readOnlyHint=false and destructiveHint=false, so the mutating-but-safe profile is already covered. The description adds that a specific required payload is needed, but omits side effects (e.g., does creating a queue also spawn a board or default workflow?), uniqueness constraints on key, and permission requirements.

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?

Two tight sentences with the core action front-loaded and the required-field roster following; nothing is wasted. It is appropriately short, though it could have used the second sentence for routing rather than restating required fields.

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 six-required-parameter mutation with no output schema and only partial annotation coverage, the description is adequate but thin: it never says who can call it, what happens on key collision, or what side effects accompany queue creation.

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 coverage is 100% and the nested issueTypesConfig has per-field descriptions, so the schema already carries parameter meaning. The description's phrase 'issueTypesConfig array binding issue types to workflow templates' is a useful summary but adds no syntax or constraint beyond what the schema states.

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?

States a specific verb and resource ('Create a new queue') and enumerates the required inputs, so the agent immediately knows what is produced. It does not, however, differentiate itself from the many sibling create_queue_* tools (autoaction, local_field, trigger, macro), which share the same noun.

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?

There is no when-to-use guidance, no prerequisites, and no mention of alternatives despite ~15 sibling tools whose names start with create_queue. The agent must infer placement from context alone.

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

create_queue_autoactionB

Create an autoaction: periodically updates issues matching filter/query. Actions are trigger-style objects (Transition, Update, CreateComment, Webhook, CalculateFormula).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
queryNoQuery language filter (XOR with filter)
activeNo
filterNoField-value issue filter
actionsYesAction objects
queueIdYes
calendarNo{"id": <schedule id>}
intervalMillisNoRun interval, default 3600000
enableNotificationsNo

TDQS

B3.2/5.0
Behavior3/5

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

Annotations (readOnlyHint=false, destructiveHint=false) cover only the safety profile. The description adds useful behavioral context: the action runs periodically and updates matching issues, plus the action-object types (Transition, Update, CreateComment, Webhook, CalculateFormula). It does not explain the scheduling mechanism (intervalMillis vs calendar) that drives the recurrence, which is central behavior.

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?

Two front-loaded sentences with no filler; the core behavior and the action-object enumeration are efficient. The parenthetical list is dense but earns its place by documenting the otherwise opaque actions payload.

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 9-parameter creation tool with a nested actions array and no output schema, the description covers the essential mechanics (what it does and the action types) but omits required-parameter expectations, the filter/query XOR, and execution-timing params. Adequate but with clear gaps for 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?

Schema coverage is 56% across 9 params. The description usefully clarifies the nested 'actions' param by listing the action variants, which the schema leaves as opaque 'Action objects', and echoes the filter/query selection. It does not address queueId, name, active, calendar, intervalMillis, or enableNotifications. Net, it partially compensates for the coverage gap and matches the ~3 baseline for middling 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?

States a specific verb (Create) and resource (autoaction) and explains the core behavior: periodically updates issues matching filter/query. It also names the action-object variants. It stops short of distinguishing itself from the sibling create_queue_trigger, but the resource 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 on when to create an autoaction versus a queue trigger (create_queue_trigger) or macro, even though these are close siblings. No prerequisites stated, such as needing an existing queueId. The agent must infer the selection criteria.

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

create_queue_local_fieldC

Create a local (queue-specific) issue field.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesField key (latin)
nameYes{"ru": "…", "en": "…"}
typeYesru.yandex.startrek.core.fields.{Date|DateTime|String|Text|Float|Integer|User|Uri|Money|MoneyWithRate|TimeTrackingDuration}FieldType
orderNo
queueIdYes
visibleNo
categoryYesCategory id
readonlyNo
containerNoMulti-value (string/user/dropdown only)
descriptionNo
optionsProviderNo{"type": "FixedListOptionsProvider|FixedUserListOptionsProvider", "values": […]}

TDQS

C2.7/5.0
Behavior2/5

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

Annotations only declare readOnlyHint=false and destructiveHint=false; the description adds nothing beyond that. For a mutation tool with 11 parameters it does not disclose required permissions, behavior on duplicate field keys, or what defaults apply to the optional flags.

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?

A single front-loaded sentence with zero filler. It is not verbose, though it is arguably under-specified rather than efficient; the brevity is appropriate in form.

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?

With 11 parameters, nested objects (name, optionsProvider), no output schema, and only 55% schema coverage, the description is far too thin to call the tool correctly. It leaves field-type encoding, localization format, and multi-value semantics unexplained.

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

Parameters2/5

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

Schema description coverage is 55%, and the description contributes no parameter meaning at all - no explanation of id vs name, the localized name object, field type encoding, or how container/readonly/visible interact. For an 11-parameter tool this leaves several parameters undocumented in both places.

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?

States a specific verb (Create) and resource (local/queue-specific issue field), and the parenthetical 'queue-specific' distinguishes it from global field creation like create_issue_field. It does not name the sibling directly, but the scope qualifier is enough for an agent to differentiate.

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?

There is no guidance on when to choose this over create_issue_field (global) or when to use update_queue_local_field instead. Prerequisites such as queue existence or permissions are unmentioned. The agent must infer usage entirely from the name.

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

create_queue_macroB

Create a queue macro: comment body and/or issue field updates applied on run.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNoComment text created on run
nameYes
queueIdYes
issueUpdateNoField → value map (null clears; supports set/add/remove operators)

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare this is a non-read-only, non-destructive write. The description adds one genuinely useful behavioral fact beyond that: the stored macro is not applied immediately, only 'on run', implying the stored definition has no side effect until invoked. It says nothing about permissions, whether body and issueUpdate can both be omitted, or validation failures.

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?

A single front-loaded sentence that states the action first and the payload second, with no filler. It is efficient, though the brevity leaves behavior and usage unaddressed rather than being padded.

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 four-parameter create tool with a nested issueUpdate object and no output schema, the description covers the payload concept but omits required inputs (queueId, name), whether at least one of body/issueUpdate is mandatory, and what identifying information is returned. It is minimally viable rather than 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 coverage is 50%: 'body' and 'issueUpdate' are documented in the schema, while 'name' and 'queueId' are not. The description's 'comment body and/or issue field updates' maps to those two documented parameters and the 'and/or' correctly signals at least one content field is expected, but it adds no syntax, format, or value guidance beyond the schema.

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 gives a specific verb and resource ('Create a queue macro') and immediately defines what a macro is ('comment body and/or issue field updates applied on run'). It does not name or distinguish itself from the sibling update_queue_macro, but an agent can tell what object this creates.

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 when-to-use guidance, no prerequisites, and no routing to alternatives such as update_queue_macro for modifying an existing macro. The phrase 'applied on run' hints at the macro lifecycle but does not tell the agent when to choose create over update.

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

create_queue_triggerB

Create a queue trigger. actions: Transition/Update/CreateComment/Webhook/CalculateFormula/… objects; conditions: field/event checks, single object {"type": "Or"|"And", "conditions": […]}.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
activeNo
actionsYesAction objects
queueIdYes
conditionsNoCondition objects or {"type": "And"|"Or", "conditions": […]}

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the safety profile is covered. The description adds domain context about what actions and conditions can express (Transition/Update/Webhook/CalculateFormula, field/event checks), but says nothing about when the trigger fires, its side effects, or required permissions, so the added value is moderate.

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?

Two sentences, purpose front-loaded, with the param detail following. Efficient, though the trailing ellipsis ('…') in the action list reads as an unfinished enumeration rather than a deliberate shorthand.

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 create tool with no output schema and minimal annotations, the description covers the two hard parameters but omits the required queueId/name semantics and any statement of trigger behavior or return. Adequate but with clear 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 coverage is only 40% and the schema types actions/conditions as opaque objects (additionalProperties: {}), so the description's enumeration of action types and the And/Or condition envelope genuinely helps for those two params. It still leaves queueId, name, and active unexplained, so it only partially compensates for the coverage gap.

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?

States a specific verb+resource ('Create a queue trigger'), which is enough to separate it from read/update/delete siblings (get_queue_trigger, update_queue_trigger, delete_queue_trigger). However it gives no hint of how it differs from the near-neighbor create_queue_autoaction, so the differentiation from that sibling is left to inference.

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?

There is no when-to-use guidance, no prerequisites (e.g., that the queue must exist), and no mention of alternatives such as create_queue_autoaction or update_queue_trigger. The text that follows the first sentence is parameter shape, not usage guidance.

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

create_queue_versionC

Create a version in a queue.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesVersion name
dueDateNoDue date, format YYYY-MM-DD
queueIdYesQueue key
startDateNoStart date, format YYYY-MM-DD
descriptionNoVersion description

TDQS

C2.9/5.0
Behavior2/5

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

Annotations declare readOnlyHint=false and destructiveHint=false, so the mutation/non-destructive profile is already covered. Beyond that the description adds nothing: no note on permission requirements, whether version names must be unique, what happens to dates, or what is returned. For a create operation this leaves real gaps.

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?

A single front-loaded sentence with zero padding. It is efficient, though the brevity edges toward under-specification rather than true 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?

A 5-parameter mutation tool with no output schema and no annotation detail on side effects. The description does not say what creating a version affects, what the response contains, or how the optional dueDate/startDate interact, so an agent lacks context to call it confidently in 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?

Schema coverage is 100% and every parameter carries its own description, including the YYYY-MM-DD date format. The description adds no parameter meaning, so the baseline 3 for a fully documented schema applies.

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?

States a specific verb and resource ('Create a version in a queue'), which cleanly separates it from siblings like create_queue, create_queue_tag, or update_queue_version. It stops short of any scope or behavioral detail, but the action 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 when-to-use context, no prerequisites, and no named alternatives (e.g. get_queue_versions to check existing versions first, or update_queue_version for edits). The agent must infer the usage scenario entirely from the name.

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

create_resolutionC

Create a resolution (admin).

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYesLatin key starting with a lowercase letter
nameYes{"ru": "…", "en": "…"}

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the agent knows this is a non-destructive write. The description adds one piece of behavioral context beyond that: it is an admin-scoped operation, implying elevated permissions. It says nothing about idempotency, uniqueness of the key, or what happens on duplicate input, so it is adequate but thin.

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?

A single short sentence with the action front-loaded and zero filler, but it is arguably under-specified rather than concise. The '(admin)' fragment is efficient signalling, yet there is not enough content for a higher structure score.

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?

This is a mutation tool with no output schema and a nested localization object, yet the description does not say what is returned, whether the key must be unique, or how the created resolution is used. Given the complexity of the input and the absence of annotations covering these points, the description leaves meaningful 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%, with the key format ('Latin key starting with a lowercase letter') and the name localization object shape documented in the schema itself. The description adds no parameter meaning, so the baseline 3 applies.

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?

States a specific verb and resource ('Create a resolution'), which an agent can distinguish from get_resolutions and update_resolution by verb alone. The '(admin)' qualifier adds a scope hint. It does not, however, explain what a resolution is or how it relates to the sibling resolution tools, so it stops short of a 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?

There is no when-to-use guidance and no mention of alternatives such as update_resolution or get_resolutions. The parenthetical '(admin)' is the only contextual cue, implying a permission prerequisite but not a usage condition.

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

create_sprintA

Create a sprint on a board (the board must have sprints enabled).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
boardIdYesBoard id
endDateYesYYYY-MM-DD
startDateYesYYYY-MM-DD

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the mutation profile is covered. The description adds the 'sprints enabled' precondition, which is real behavioral context, but says nothing about required permissions, what happens to an existing active sprint, or failure modes for a create operation with four required fields.

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?

One sentence, front-loaded with the action, with the constraint tucked into a parenthetical. Nothing is wasted and nothing needs reordering.

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?

No output schema exists, and the description is silent on what is returned or how the new sprint is identified. For a create tool whose safety profile is carried by annotations, this is adequate but thin — the required-date semantics and the result of a successful creation are left entirely to the schema and 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?

Schema description coverage is 75% with boardId, startDate and endDate documented in the schema; only 'name' is undocumented but self-evident. The description adds no parameter-level detail beyond the schema, so the baseline 3 applies.

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 states a specific verb and resource (create a sprint on a board), which is immediately distinguishable from the get_/update_/start_/archive_/delete_sprint siblings by name and action. It stops short of explicitly contrasting itself with any sibling, but the action 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 Guidelines3/5

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

It provides one genuine precondition — the board must have sprints enabled — which tells the agent when this call will fail. However, it gives no guidance on how this relates to alternatives such as update_sprint or start_sprint, and no prerequisite about sprint board types beyond the single parenthetical.

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

create_statusB

Create an issue status (admin).

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYesLatin key starting with a lowercase letter
nameYes{"ru": "…", "en": "…"}
typeYesStatus category

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the agent knows this is a non-destructive write. The description adds the admin-permission requirement, which is genuinely beyond the annotations, but says nothing about key uniqueness, response shape, or what happens on conflict.

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?

A single short sentence with the verb and resource front-loaded and zero filler. Nothing redundant is present.

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 three-parameter creation tool with no output schema and fully documented parameters, the definition is barely adequate: it omits whether the created status is returned, whether keys must be unique, and any admin-permission consequences. The admin note helps but the behavioral picture is thin.

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 key format, the localized name object, and the type enum are all documented in the schema. The description contributes no additional parameter meaning, which is the expected baseline when the schema carries the load.

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?

States a specific verb and resource ("Create an issue status") and the parenthetical "admin" signals scope. It is clearly distinguishable from read/update siblings like get_statuses and update_status by the verb alone, though it never explicitly routes between 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?

The only guidance is the parenthetical "(admin)", which hints at a permission requirement but does not state when to use this versus update_status or get_statuses, nor any prerequisites or ordering constraints. No when-not-to-use or alternative is offered.

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

create_workflowB

Create a workflow (admin): statuses/steps plus transitions. Omit "queue" to create a common workflow available to all queues. Attach issue types via issueTypeResolutions.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoCustom workflow id (auto "W…" if omitted)
nameYes
typeNo"VISUAL"
queueNoBind to one queue; omit for a common workflow
stepsYes
initialActionYesInitial transition: {"name": {"ru": "Открыть"}, "target": "open"}
issueTypeResolutionsNoAllowed resolutions per issue type

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the safety profile is covered. The description adds the admin-permission requirement and the queue-binding semantics, which is real added context. It does not describe what happens on conflict or whether the created entity can be re-created, so it is adequate but not rich.

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?

Three compact clauses with no wasted words, and the core action plus the key queue caveat are front-loaded. It is efficient, though the parenthetical "(admin)" is slightly cryptic and the sentences truncate some detail.

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 7-parameter nested create tool with no output schema, the description covers the sharing nuance and issue-type attachment but leaves the required steps/initialAction structure entirely to the schema. Given the nested-object complexity, a bit more on what a valid workflow requires would round it out.

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 71%, so the schema carries most parameter meaning. The description adds value for two parameters — the omit-queue-to-share convention and that issueTypeResolutions is how issue types get attached — but says nothing about the required steps, initialAction, or type beyond what the schema states. Baseline 3 fits.

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?

States a specific verb and resource ("Create a workflow") and enumerates the substance it holds (statuses/steps plus transitions), so the agent knows this builds a workflow object rather than reading or editing one. It stops short of differentiating from siblings like update_workflow or get_workflow, which is what a 5 would require.

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

Usage Guidelines3/5

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

It gives one conditional usage rule — "Omit 'queue' to create a common workflow available to all queues" — which is genuinely useful branching guidance. However, it never says when to reach for create_workflow versus update_workflow, nor outlines prerequisites beyond the parenthetical "(admin)".

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

delete_boardC
Destructive

Delete a board by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
boardIdYes
confirmNoSet to true to confirm this destructive/bulk operation

TDQS

C2.8/5.0
Behavior2/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the destructive nature is structured data, not a description contribution. Critically, the description omits that a separate confirm flag must be set to proceed, which is the single behavioral fact an agent actually needs here.

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 single sentence is front-loaded and waste-free, which is good, but its brevity comes at the cost of under-specification rather than genuine conciseness. One sentence is appropriate in size but does too little work.

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 mutation with an undocumented required confirmation step and no output schema, the description is too thin. An agent could call it without knowing that confirm=true is needed to complete the delete.

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 50%: the confirm parameter is documented in the schema but boardId is not. The phrase 'by id' loosely identifies boardId as the key, adding marginal value, but does not specify type or format to compensate for the coverage gap.

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?

States a specific verb (Delete) and resource (board) plus the lookup key (by id), so the action is unambiguous. However, it offers no differentiation from siblings like delete_board_column, delete_queue, or delete_entity, leaving the agent to rely on the name alone.

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 gives no when-to-use or when-not-to-use guidance, no prerequisites, and no mention of alternatives such as archive_sprint or update_board. Usage must be inferred entirely from the tool name.

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

delete_board_columnB
Destructive

Delete a board column (version = board version).

ParametersJSON Schema
NameRequiredDescriptionDefault
boardIdYes
confirmNoSet to true to confirm this destructive/bulk operation
versionYesCurrent board version
columnIdYes

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is covered structurally. The description adds the useful concurrency detail that the version argument must equal the board version, but says nothing about irreversibility, what happens to cards/issues in the column, or the role of the confirm flag.

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?

A single short sentence with the verb and resource front-loaded and no filler. The version parenthetical is slightly cryptic but does not waste space.

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, non-reversible operation with no output schema and a confirm parameter, the description omits what the confirm flag does, what is lost when the column is deleted, and any permission requirements. Too thin for the risk level of the 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?

Schema coverage is 50%; 'version' already carries 'Current board version' in the schema, so the parenthetical is close to a restatement rather than new meaning. boardId and columnId are undocumented but self-explanatory by name, so the baseline 3 for a partially documented schema 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?

States a specific verb and resource ('Delete a board column'), which cleanly separates it from siblings like update_board_column, get_board_column, and delete_board. It does not explicitly contrast with those siblings, but the verb+resource pair 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 on when to use this versus alternatives, and no statement of prerequisites or consequences. The parenthetical about version is a parameter note rather than usage guidance, leaving the agent to infer everything about context.

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

delete_checklistB
Destructive

Delete the whole checklist of an issue.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet to true to confirm this destructive/bulk operation
issueIdYesIssue key or id

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so safety is covered structurally. The description adds scope value by clarifying that the entire checklist (not a single item) is removed, but says nothing about irreversibility, permissions, or whether the confirm flag is mandatory.

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?

A single, front-loaded sentence with no filler. Every word carries weight.

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?

For a low-complexity destructive tool with no output schema and full schema coverage, the description is nearly sufficient; annotations cover the safety profile and the schema covers the confirm gate. Only the missing pointer to item-level alternatives keeps it from a 5.

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 both issueId and confirm are already documented in the schema, including the confirmation requirement for the destructive/bulk operation. The description adds no parameter detail beyond that, so baseline 3 applies.

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?

States a specific verb (Delete) and resource (the whole checklist of an issue). The word 'whole' distinguishes it from item-level siblings like delete_checklist_item and delete_entity_checklist_item, though no sibling is named explicitly.

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 when-to-use guidance, no when-not-to-use exclusions, and no mention of alternatives such as the item-level deletion tools. The agent must infer scope selection on its own.

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

delete_checklist_itemB
Destructive

Delete a checklist item from an issue.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYesChecklist item id (from get_checklist)
confirmNoSet to true to confirm this destructive/bulk operation
issueIdYesIssue key or id

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the agent knows this is a destructive write, and the description is consistent with that. It adds nothing beyond the annotations, though, notably omitting that the schema requires a confirm flag for this destructive operation. With annotations carrying the safety profile, 3 is appropriate.

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?

A single clean, front-loaded sentence with no wasted words. It is efficiently sized for a simple delete, though it errs toward under-specification rather than over-verbosity.

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 simple destructive tool with full schema coverage and no output schema, the minimal prose is largely adequate, but the description never surfaces that a confirmation flag is mandatory for this irreversible operation, leaving the agent dependent on reading structured fields.

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 three parameters (issueId, itemId, confirm) are documented in the schema itself. The description only loosely implies issueId ('from an issue') and says nothing about the confirm parameter, so baseline 3 applies.

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?

States a specific verb (Delete) and resource (checklist item) with scope ('from an issue'), so the purpose is unambiguous. However, it does not distinguish itself from close siblings like delete_entity_checklist_item, delete_checklist, or delete_entity_checklist, so it falls short of a 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 gives no when-to-use guidance, no prerequisites, and names no alternatives. An agent is left to infer that the item must already exist and that get_checklist is a likely prerequisite (which is only hinted at in the schema, not the description).

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

delete_commentC
Destructive

Delete a comment from an issue.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet to true to confirm this destructive/bulk operation
issueIdYesIssue key or id
commentIdYesComment id (numeric id or longId)

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is covered structurally. The description adds nothing beyond that: it doesn't say the deletion is irreversible, whether a confirm flag is mandatory, or what happens to comment reactions/replies attached to the comment.

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?

A single front-loaded sentence with zero filler, appropriate for a simple delete. It is efficient, though its brevity contributes to the usage and behavioral gaps noted elsewhere.

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 destructive tool with no output schema, annotations cover the safety signal and the schema covers all parameters, so nothing is strictly missing. Still, the description could have disclosed the confirm requirement and irreversibility to make the destructive nature actionable.

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 issueId, commentId, and the confirm flag are all documented in the schema. The description adds no parameter meaning, which is the expected baseline 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.

Purpose4/5

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

States a specific verb and resource ('Delete a comment from an issue'), which is unambiguous. It edges out the similarly named delete_entity_comment by scoping to issues, but it never names that sibling explicitly, so differentiation is implied rather than stated.

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 versus edit_comment, delete_entity_comment, or update_entity_comment, and no mention of the required confirm flag or any prerequisite. The agent must infer usage entirely from the name.

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

delete_componentC
Destructive

Delete a component by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet to true to confirm this destructive/bulk operation
componentIdYes

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already flag this as destructive (destructiveHint=true, readOnlyHint=false), so the safety profile is partly covered. However, the description adds nothing beyond that: it never says the deletion is irreversible, what happens to issues referencing the component, or that the `confirm` flag is required to proceed.

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?

A single front-loaded sentence with no wasted words. It is efficient, though for a destructive operation the terseness shades into under-specification rather than optimal 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 destructive mutation with no output schema and an undocumented `confirm` parameter, the description should warn about irreversibility and describe the confirmation requirement. As written it leaves the agent without the information needed to invoke the tool safely.

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 coverage is 50% – `confirm` is documented in the schema while `componentId` is not. The description's 'by id' loosely maps to componentId, but it does not explain the id type or the role of `confirm`, so it adds only marginal value over the schema.

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 states a specific verb (delete) and resource (component) and clarifies the identifier mechanism ('by id'), which lets an agent distinguish it from get_component, update_component and create_component. It offers no further scoping, but the verb+resource pairing 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?

There is no when-to-use guidance, no mention of alternatives such as update_component, and no stated prerequisites or cautions. An agent must infer everything about when deletion is the right call.

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

delete_entityB
Destructive

Delete a project, portfolio or goal by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet to true to confirm this destructive/bulk operation
entityIdYesEntity id
entityTypeYesEntity type: "project", "portfolio" or "goal"

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=true, so the agent knows this is a destructive write. The description adds the entity types affected (project/portfolio/goal) but says nothing about reversibility or cascade effects. With annotations carrying the safety profile, this is adequate but thin.

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?

A single efficient sentence with no filler, front-loading the verb and the affected resources. It is arguably too terse, but nothing is wasted.

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 destructive 3-param tool with no output schema, the schema covers the parameters and annotations cover safety, so the core is present. However, the cascading/write behavior of deletion and the confirm-gating workflow are not explained, leaving the definition minimally 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%, with the enum and the confirm flag fully documented in the schema itself. The description only echoes 'by id' and the entity types, adding no format or constraint detail beyond the schema. Baseline 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?

States a specific verb (Delete) and the resource (project, portfolio or goal) plus the keying mechanism ('by id'). It is clear what the tool does, but it does not distinguish itself from overlapping siblings like delete_project, leaving ambiguity about when this generic tool applies.

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?

There is no guidance on when to prefer this over delete_project or other entity-specific deleters, and no mention of prerequisites such as the confirm flag being needed before success. Usage context is entirely left to inference.

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

delete_entity_attachmentB
Destructive

Delete a file from a project, portfolio or goal.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet to true to confirm this destructive/bulk operation
entityIdYes
entityTypeYesEntity type: "project", "portfolio" or "goal"
attachmentIdYes

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is covered. The description confirms the delete is scoped to three entity types but omits whether deletion is irreversible, whether the solution's confirm flag is required in practice, and what permission is needed.

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?

A single tight sentence with the action and scope front-loaded and no filler. It is arguably too terse given the destructive nature, but nothing in it is wasted.

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, 4-parameter mutation with no output schema, the description should at minimum flag irreversibility or the confirm expectation. It covers only the entity scope, leaving confirmation behavior, permissions, and post-delete state unaddressed.

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 50%: entityType and confirm are documented in the schema, while entityId and attachmentId are bare. The description only restates the three entity types already enumerated in the schema, adding no new meaning such as ID formats or where attachmentId comes from.

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?

Names a specific verb (Delete) and resource (file/attachment) plus the scope of entity types it applies to (project, portfolio, goal). An agent can distinguish it from delete_issue_attachment by the entity scope, though the description never names that sibling explicitly.

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?

There is no guidance on when to use this versus delete_issue_attachment, list_entity_attachments, or download_entity_attachment, and no mention of prerequisites such as ownership or the confirm flag. The reader must infer usage entirely from the name.

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

delete_entity_checklistB
Destructive

Delete all checklist items of a project/portfolio.

ParametersJSON Schema
NameRequiredDescriptionDefault
notifyNo
confirmNoSet to true to confirm this destructive/bulk operation
entityIdYes
entityTypeYesChecklists are available for projects and portfolios only

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, so the safety profile is covered. The description adds only the scope (all items, project/portfolio), and omits useful behavioral context such as whether the operations are irreversible, why 'confirm' is required, or what 'notify' triggers.

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?

A single front-loaded sentence with zero filler, which is appropriately tight for a scoped delete. It is arguably too terse given the destructive bulk nature, but it wastes no words.

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 bulk operation with no output schema and only 50% schema coverage, the description should explain the confirm-gate, reversibility, and notify semantics. None of that is present, leaving the agent to infer the consequences of an irreversible bulk delete.

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

Parameters2/5

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

Schema coverage is 50%; 'confirm' and 'entityType' are documented in the schema, but 'notify' and 'entityId' have no descriptions anywhere. The description adds no parameter meaning beyond restating the project/portfolio scope already present in the entityType enum 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?

States a specific verb (delete) plus resource and scope (all checklist items on a project/portfolio), which distinguishes it from the item-level siblings delete_entity_checklist_item and delete_checklist_item. However, it never names those alternatives explicitly, so differentiation relies on the agent inferring 'all' means bulk entity-level.

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

Usage Guidelines3/5

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

The word 'all' implies this is the bulk variant versus the single-item deletion siblings, giving implied usage context. There is no explicit when-to-use/when-not statement, no mention of prerequisites, and no routing to alternatives for single-item deletion.

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

delete_entity_checklist_itemC
Destructive

Delete one checklist item of a project/portfolio.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYes
notifyNo
confirmNoSet to true to confirm this destructive/bulk operation
entityIdYes
entityTypeYesChecklists are available for projects and portfolios only

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is covered. The description adds only the project/portfolio scoping; it says nothing about the confirmation requirement, the notify behavior, or irreversibility beyond what the annotation implies.

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?

A single front-loaded sentence with no wasted words. It is efficient, though its brevity contributes to the gaps noted in other dimensions rather than being an independent virtue.

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?

A destructive, confirmation-gated tool with five parameters and no output schema needs more than one sentence. The description omits the confirm requirement, the notify behavior, and any return/error information, leaving the agent to infer invocation behavior entirely from the schema.

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

Parameters2/5

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

Schema description coverage is only 40% (confirm and entityType are documented in-schema; itemId, entityId, notify are not). With low coverage the description should compensate, but it adds no semantics for any of the five parameters, including the notify flag.

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?

States a specific verb (Delete), resource (checklist item), and scope (of a project/portfolio), which distinguishes it from the issue-level delete_checklist_item sibling. It is clear but does not explicitly name the alternative tool an agent might confuse it with.

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 when-to-use guidance, no prerequisites, and no conditions under which this tool should be chosen over delete_entity_checklist, update_entity_checklist_item, or delete_checklist_item. The entity-type hint is the only routing signal.

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

delete_entity_commentC
Destructive

Delete a comment of a project, portfolio or goal.

ParametersJSON Schema
NameRequiredDescriptionDefault
notifyNo
confirmNoSet to true to confirm this destructive/bulk operation
entityIdYes
commentIdYes
entityTypeYesEntity type: "project", "portfolio" or "goal"
notifyAuthorNo

TDQS

C2.7/5.0
Behavior2/5

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

The annotations already declare readOnlyHint=false and destructiveHint=true, so 'Delete' adds nothing about safety. The description does not mention that a confirm flag is required to proceed, whether deletion is permanent/recoverable, or how the notify/notifyAuthor flags behave, which are the meaningful behavioral gaps for a destructive op.

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?

A single efficient sentence with no wasted words, and the primary action is front-loaded. It is concise, though thin rather than optimally informative.

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 mutation with no output schema and only 33% parameter coverage, the description is too sparse. It omits the confirmation requirement and the notification flags that materially affect how the tool is called, leaving the agent under-informed.

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

Parameters2/5

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

Schema description coverage is only 33% (only confirm and entityType are documented), yet the description adds no parameter detail at all. It restates the entity types but says nothing about entityId, commentId, notify, or notifyAuthor, so a third of the params remain undocumented in both places.

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?

States a specific verb ('Delete') and resource ('a comment') plus the scope of entities it applies to (project, portfolio, goal), which is useful. It does not, however, say how it differs from the sibling delete_comment, leaving the agent to infer the 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?

There is no guidance about when to use this tool versus delete_comment or update_entity_comment, and no prerequisites or conditions are stated. The agent must infer applicability from the entity-type scope alone.

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

delete_filterC
Destructive

Delete a saved filter (uses the v2 API path per official docs).

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet to true to confirm this destructive/bulk operation
filterIdYes

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false and destructiveHint=true, so the description's 'Delete' wording is consistent with them, but it adds nothing beyond that baseline: it never states the deletion is irreversible, whether the deleted filter can be restored, or what the required 'confirm' flag does. The v2 API note is implementation trivia, not behavioral disclosure. No contradiction with annotations.

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?

A single short sentence with the action front-loaded, which is appropriately sized for a simple delete. The parenthetical 'uses the v2 API path per official docs' does not earn its place, but the sentence is not bloated.

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, no-output-schema tool that requires an explicit confirm flag, the description should say the operation is irreversible and how to obtain the filterId. Neither is present, leaving important call-time information missing.

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

Parameters2/5

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

Schema description coverage is only 50%: 'confirm' is documented in the schema, but 'filterId' (a bare number) has no description anywhere. The description does not compensate by explaining where filterId comes from or its format, so the ID parameter remains ambiguous.

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 gives a specific verb and resource ('Delete a saved filter'), which cleanly separates it from the sibling create_filter, get_filter, and update_filter tools. No explicit sibling callout, but the verb alone is unambiguous. The trailing parenthetical about the v2 API path is irrelevant filler rather than clarifying.

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?

There is no guidance on when to use this tool versus update_filter (to rename/modify) or get_filter (to inspect), and no note that the filterId must come from a prior create/get call. The agent is left to infer all usage context.

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

delete_gapsB
Destructive

Delete absences by ids (admin).

ParametersJSON Schema
NameRequiredDescriptionDefault
gapIdsYesAbsence ids
confirmNoSet to true to confirm this destructive/bulk operation

TDQS

B3.1/5.0
Behavior3/5

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

The annotations already declare destructiveHint=true and readOnlyHint=false, so the transparent part is largely covered. The description adds the admin-permission requirement, which is genuinely useful context beyond the annotations, but it omits the 100-id bulk cap and the confirm flag's role in this destructive flow.

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?

A single front-loaded sentence with no waste, but it is arguably too terse for a destructive bulk operation where the confirm/bulk semantics are non-obvious.

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, admin-gated bulk delete with no output schema, the description is thin: it omits the bulk cap, the confirm requirement, and what happens on partial failure. Annotations cover safety, but the operational context an agent needs before calling is largely absent.

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 both parameters are already documented in the schema. The description's "by ids" adds little beyond what gapIds conveys and says nothing about the confirm parameter or the maxItems limit; baseline 3 applies when the schema does the 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?

States a specific verb ("Delete") and resource ("absences"), and notes the input is by ids. However it uses "absences" while the tool is named delete_gaps and siblings are find_gaps/create_gaps, so the terminology doesn't line up cleanly with the rest of the set, and no sibling is explicitly distinguished.

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 parenthetical "(admin)" hints at a permission requirement, but there is no explicit when-to-use vs when-not, no mention of find_gaps as the read counterpart, and no note that this is bulk/destructive. Usage is only implied.

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

delete_issue_attachmentC
Destructive

Delete an attached file from an issue.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet to true to confirm this destructive/bulk operation
issueIdYesIssue key or id
attachmentIdYesAttachment id (from list_issue_attachments)

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is conveyed structurally. The description adds nothing beyond that — no note that the deletion is irreversible, that confirm=true is required, or what permissions are needed.

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?

A single front-loaded sentence with zero waste. It is appropriately sized for a simple two-required-parameter delete, though it is arguably too terse to be maximally useful.

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 simple destructive tool with annotation coverage and a fully documented schema, the essentials are present. It still omits the irreversibility/confirm requirement and any pointer to list_issue_attachments for obtaining the id, which would round out the definition.

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?

With 100% schema description coverage, the schema already explains issueId, attachmentId, and the confirm flag. The description contributes no additional parameter meaning, so the baseline 3 applies.

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?

States a specific verb (delete) and resource (an attached file on an issue), so the agent can tell it apart from list/upload/download attachment siblings. It does not, however, differentiate itself from the generic delete_entity_attachment sibling, leaving a small 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 contains no when-to-use guidance, no prerequisites, and no mention of the confirm flag that the schema requires for this destructive operation. The agent must infer context purely from the annotations and parameter schema.

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

delete_projectA
Destructive

Delete a project by id. Issues are not deleted.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet to true to confirm this destructive/bulk operation
projectIdYesProject id

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is covered structurally. The description earns credit for disclosing blast radius beyond annotations ('Issues are not deleted'), which directly tells the agent what survives a destructive call. It omits irreversibility and permission requirements, keeping it short of a 5.

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?

Two short sentences, zero waste, with the action front-loaded and the critical caveat immediately following. Nothing is padded or restated.

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?

For a destructive tool with no output schema, annotations carry the safety profile and the description covers scope. The confirm parameter is documented in the schema, so the main omission is any note on irreversibility or required permissions, which is minor here.

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 both parameters (projectId, confirm) are already documented in the schema, including the confirm flag's purpose. The description's 'by id' adds no syntax or format detail beyond that, so the baseline 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?

States a specific verb and resource ('Delete a project by id') and adds a scope note ('Issues are not deleted'). It is unambiguous against siblings like delete_board or delete_entity, though it does not explicitly name an alternative to distinguish itself further.

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 versus alternatives (e.g. archive vs delete), nor any prerequisites about permissions or the confirm flag. The scope note implies context but does not route the agent.

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

delete_queueA
Destructive

Delete a queue (only when empty of issues). Only queue owner or Tracker admin can.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet to true to confirm this destructive/bulk operation
queueIdYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the mutation profile is known. The description adds two genuinely useful behavioral constraints beyond the annotations: the empty-queue precondition and the permission requirement. It does not say whether the deletion is reversible or what happens to associated tags/fields, keeping it below 5.

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?

Two short sentences, zero filler, with the destructive action and its precondition front-loaded before the permission note.

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?

For a destructive tool with no output schema, the description covers the essential call-time concerns: emptiness precondition and authorization. It omits any mention of the required confirm flag or irreversibility, which would help an agent avoid an accidental confirmed deletion.

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

Parameters2/5

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

Schema description coverage is only 50%: only the 'confirm' parameter is documented in the schema, while queueId has no description anywhere. The description adds no parameter-level meaning, so it fails to compensate for the coverage gap.

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?

States a specific verb (Delete) and resource (queue), plus a scoping condition (only when empty of issues). It is distinguishable from neighboring delete tools like delete_queue_tag and delete_queue_version, though it does not name an alternative explicitly.

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

Usage Guidelines4/5

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

Gives a clear precondition (queue must be empty of issues) and an authorization rule (owner or Tracker admin). It does not mention restore_queue as the recovery path or any alternative tool, so it falls short of a 5.

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

delete_queue_macroD
Destructive

Delete a queue macro.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet to true to confirm this destructive/bulk operation
macroIdYes
queueIdYes

TDQS

D1.6/5.0
Behavior2/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is covered structurally. The description adds nothing beyond that — it doesn't state that deletion is irreversible, whether a confirmation step is enforced, or what permissions are required, despite the schema exposing a `confirm` flag that hints at a safety gate.

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?

The single short sentence is technically brief, but it is under-specified rather than concise — it consumes a sentence without conveying any information beyond the tool name.

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?

For a destructive mutation with two required but undocumented parameters, no output schema, and no annotation-adjacent detail in the text, the description is completely inadequate. An agent knows only what the name already told it.

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

Parameters1/5

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

Schema description coverage is only 33% (only `confirm` is documented), and the description supplies no meaning for queueId or macroId at all. With two undocumented required parameters and a low coverage rate, the description was obligated to compensate and does not.

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 restates the tool name almost verbatim ('Delete a queue macro'), naming a verb and resource but adding nothing an agent couldn't infer from the identifier. It does not differentiate it from sibling CRUD tools like get_queue_macro, create_queue_macro, or update_queue_macro.

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?

There is no guidance on when to use this tool, no prerequisites, and no mention of the related deletion tools (delete_queue, delete_queue_tag) that an agent must choose between. The text offers zero usage context.

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

delete_queue_tagA
Destructive

Remove a tag from a queue (must not be used in any issue; admin only).

ParametersJSON Schema
NameRequiredDescriptionDefault
tagYesTag name
confirmNoSet to true to confirm this destructive/bulk operation
queueIdYes

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, so the destructive nature is covered. The description adds real value beyond that: an admin-only permission requirement and a business precondition that the tag must be unused, both of which affect whether the call succeeds.

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?

One sentence with the operation front-loaded and constraints parenthesized; no wasted words, and the most important restriction (unused tag) is included inline.

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?

For a destructive mutation with no output schema, the definition covers permissions and preconditions, which is what an agent needs before calling. It stops short of saying whether the deletion is reversible or what error surfaces when the tag is in 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 coverage is 67%: tag and confirm are documented in the schema, while queueId has no description. The description adds no parameter-level meaning beyond naming the resource, so with mid-level coverage it sits at the baseline rather than compensating for the undocumented queueId.

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?

States a specific verb and resource ("Remove a tag from a queue") with the scoping entity named, so an agent can immediately distinguish it from sibling reads like get_queue_tags or other delete_* queue tools.

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

Usage Guidelines4/5

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

Gives a concrete precondition for use (the tag must not be in use by any issue) and an authorization constraint (admin only), which tells the agent when the call will be rejected. It does not name an alternative tool, but no obvious sibling performs this operation.

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

delete_queue_versionC
Destructive

Delete a queue version by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet to true to confirm this destructive/bulk operation
versionIdYes

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the destructive nature is covered structurally. The description adds nothing beyond the verb 'Delete' - it does not mention the confirm requirement, irreversibility, or any effect on dependent entities, so it earns no extra behavioral credit.

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?

A single efficient sentence with the resource and selector front-loaded and no filler. It is well-formed, though the brevity borders on under-specification for a destructive 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?

For a destructive mutation with no output schema, the description omits the confirm=true requirement, irreversibility, and consequences. Annotations cover the safety profile, but the description leaves the agent without the operational context needed to invoke it correctly.

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 50%: 'confirm' is documented in the schema but 'versionId' is bare. 'By id' in the description slightly compensates by implying versionId is the queue version identifier, but the description ignores the confirm flag entirely. Marginal value over the schema.

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?

States a specific verb ('Delete') and resource ('queue version'), with 'by id' indicating the selector. This clearly distinguishes it from the sibling read/update/create operations (get_queue_version, update_queue_version, create_queue_version), though it does not explicitly name 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?

No guidance on when to use this versus alternatives, no prerequisites, and no warning that the operation is irreversible. The agent gets no context about the conditions under which deletion is appropriate.

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

delete_sprintC
Destructive

Delete a sprint by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet to true to confirm this destructive/bulk operation
sprintIdYes

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the destructive profile is covered structurally. The description adds nothing beyond that: it does not say the deletion is irreversible, whether sprint issues are reassigned, or that the 'confirm' flag must be supplied for a destructive 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?

A single, front-loaded sentence with no filler, which is appropriate for a simple delete. It is arguably under-specified rather than bloated, so it scores well on structure without being maximal.

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 mutation with no output schema and only partial parameter documentation, the description should cover confirmation requirements and side effects such as what happens to the sprint's issues. None of that is present, leaving the agent to guess at the blast radius.

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

Parameters2/5

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

Schema coverage is only 50% — sprintId has no description at all. The phrase 'by id' weakly implies sprintId is the identifier, but the description never mentions the 'confirm' parameter or its role in authorizing this destructive operation, so it fails to compensate for the schema gap.

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?

States a specific verb (delete) and resource (sprint) plus the scoping key (by id), so the action is unambiguous. However it does nothing to distinguish itself from the closely related sibling archive_sprint, which is also a removal-style operation an agent could plausibly pick by mistake.

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?

There is no when-to-use guidance, no prerequisites, and no mention of what happens to issues assigned to the sprint. Critically, it never tells the agent that archive_sprint is the non-destructive alternative, which is exactly the routing decision this tool needs to support.

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

delete_workflowB
Destructive

Delete a workflow by id (admin).

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet to true to confirm this destructive/bulk operation
workflowIdYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is covered. The description adds the meaningful '(admin)' permission requirement, but says nothing about irreversibility, cascade effects, or whether the confirm flag is mandatory for this single (non-bulk) 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?

A single tight sentence with the essential information front-loaded, no padding. It is arguably under-specified rather than over-long.

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 delete tool with annotations covering the safety profile and no output schema, this is minimally adequate. The admin requirement is noted, but the role of the 'confirm' flag and any side effects of deletion are not addressed.

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 coverage is 50%: 'confirm' is documented in the schema, 'workflowId' is not. The description only implies workflowId via 'by id' and adds no semantics beyond what the schema already provides, so the baseline 3 applies.

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?

States a specific verb (Delete) and resource (workflow) plus the identifying parameter (id), and adds an '(admin)' scope hint. It is clearly distinguishable from the sibling create/get/update_workflow tools, though it doesn't explicitly name 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?

There is no when-to-use guidance, no mention of alternatives, and no stated prerequisites beyond the parenthetical '(admin)'. The agent must infer everything about the correct context for calling this.

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

delete_worklog_recordC
Destructive

Delete a time tracking record (worklog).

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet to true to confirm this destructive/bulk operation
issueIdYesIssue key or id
worklogIdYesWorklog record id (from get_issue_worklog)

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is covered. The description adds nothing beyond that: it does not state that the operation is irreversible, that confirm=true is mandatory in practice, or that deleted worklogs affect issue time tracking totals.

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?

One short, front-loaded sentence with zero waste. It is efficient, though the size is achieved partly by omitting useful content rather than by disciplined editing.

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?

A destructive, no-output-schema tool whose parameters are fully documented in the schema, so the description is minimally viable. It still leaves gaps around the confirm requirement and irreversibility that an agent invoking a delete should know.

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 three parameters (issueId, worklogId, confirm) are documented in the schema itself. The description adds no syntax, format, or cross-parameter meaning beyond the baseline.

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?

Clear specific verb + resource: 'Delete a time tracking record (worklog)', which distinguishes it from sibling add_worklog_record, edit_worklog_record, and get_issue_worklog. No explicit sibling routing, but the resource name 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 when-to-use guidance, no prerequisites, and no mention of alternatives (e.g., edit_worklog_record for corrections). The agent must infer everything from the name.

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

download_entity_attachmentA
Read-only

Download an attachment of a project/portfolio/goal. Content path for entities is /attachments/{id}/{filename} (not issue-scoped). Images come back as image content.

ParametersJSON Schema
NameRequiredDescriptionDefault
filenameNoStored file name (auto-resolved if omitted)
attachmentIdYesAttachment id (from list_entity_attachments)

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds genuinely new behavior beyond that: the content-path format ('/attachments/{id}/{filename}') and that images are returned as image content, which tells the agent what to expect from the response for a download tool with no output schema.

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?

Three tight sentences, front-loaded with the core action and scope, followed by the path convention and the return-content hint. No filler or repetition.

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?

For a download tool with no output schema, the description supplies the essential context an agent needs: what entity types are supported, how the content path is formed, and that images come back as image content. It lacks only permission/auth prerequisites, which is a minor gap given the readOnlyHint.

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 both parameters (attachmentId, filename) are already documented, including that filename is auto-resolved if omitted. The description adds no parameter-level detail beyond the schema, so the baseline 3 applies.

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?

States a specific verb (Download) and resource (attachment) with scope ('of a project/portfolio/goal') and explicitly distinguishes itself from the issue-scoped sibling by noting 'not issue-scoped'. An agent can separate this from download_issue_attachment without opening either schema.

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

Usage Guidelines4/5

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

The 'not issue-scoped' note and the project/portfolio/goal scope give clear context for when this tool applies versus download_issue_attachment. However, it never names the alternative or states an explicit when-not condition, so the routing guidance is contextual rather than fully prescribed.

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

download_issue_attachmentA
Read-only

Download attachment content: images come back as image content (visible in chat), text files as text, other binaries as base64. Omit filename to auto-resolve it by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
issueIdYesIssue key or id
filenameNoStored file name (auto-resolved if omitted)
attachmentIdYesAttachment id

TDQS

A3.8/5.0
Behavior4/5

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

Annotations only declare readOnlyHint=true; the description goes further by disclosing the return modality per file type (images as image content, text as text, binaries as base64), which materially affects how the agent consumes the result. It omits size limits, rate limits, or permission requirements, keeping it short of a 5.

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?

Two tightly packed sentences with zero filler, and the core behavior (content download and its return format) is front-loaded ahead of the optional-parameter tip.

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?

With no output schema, the description correctly carries the burden of explaining what comes back, and it covers the optional filename behavior. It is complete for calling the tool, though it leaves the relationship to sibling attachment tools unaddressed.

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 three parameters are already documented. The description's note that filename is auto-resolved when omitted restates the schema's own "auto-resolved if omitted" text rather than adding new meaning, so the baseline 3 applies.

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?

States a specific verb and resource ("Download attachment content") with clear scope, so an agent immediately knows this fetches the file bytes rather than metadata. It does not, however, distinguish itself from close siblings such as get_issue_attachment, download_entity_attachment, or get_attachment_thumbnail.

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

Usage Guidelines3/5

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

Usage is implied rather than stated: you call it when you need the actual file content, and the auto-resolve note implies filename can be skipped. There is no explicit when-not guidance or named alternative (e.g. use get_issue_attachment for metadata only).

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

edit_checklist_itemA

Edit a single checklist item. The Tracker API requires the full item list in the request body, so this tool fetches the current checklist, merges your change into the target item, and sends the whole list back.

ParametersJSON Schema
NameRequiredDescriptionDefault
textNoNew item text
itemIdYesChecklist item id (from get_checklist)
checkedNoMark item as done / undone
issueIdYesIssue key or id
assigneeNoAssignee login or user id
deadlineDateNoItem deadline, format YYYY-MM-DDThh:mm:ss.sss±hhmm

TDQS

A3.5/5.0
Behavior4/5

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

Annotations only declare readOnlyHint=false and destructiveHint=false, so the value here comes from the description explaining the fetch-merge-write cycle forced by the Tracker API and confirming that only the target item is changed. That is genuinely useful behavioral context beyond the annotations, though concurrency/overwrite risk from the full-list write is not mentioned.

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?

Two sentences, zero filler, with the purpose front-loaded and the mechanism following. It is slightly long in the second sentence but each clause delivers distinct information about how the call behaves.

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?

For a six-parameter mutation tool with full schema coverage and no output schema, the description covers the essential behavior an agent needs: what it changes and how the API round-trip works. Missing only edge-case behavior such as stale-list overwrites and what the response contains.

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 six parameters (text, itemId, checked, issueId, assignee, deadlineDate) are already documented in the schema, including the itemId sourcing note ('from get_checklist'). The description adds no parameter-level detail beyond the schema, so baseline 3 applies.

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?

States a specific verb and resource: 'Edit a single checklist item,' which is precise enough for an agent to act on. However, it does not distinguish itself from near-identical siblings such as update_entity_checklist_item or move_entity_checklist_item, so the agent cannot tell which checklist-edit variant applies from the description alone.

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?

There is no when-to-use guidance, no prerequisites, and no mention of alternatives. With siblings like get_checklist, add_checklist_item, update_entity_checklist_item, and move_entity_checklist_item in the same namespace, the absence of any routing guidance is a real gap.

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

edit_commentC

Edit an existing comment text.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesNew comment text
issueIdYesIssue key or id
commentIdYesComment id (numeric id or longId)

TDQS

C2.9/5.0
Behavior2/5

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

Annotations declare readOnlyHint=false and destructiveHint=false, so the basic safety profile is covered. Beyond that, the description adds nothing: it does not state whether the edit replaces all text or merges, whether authorization is required, whether the change is reversible, or what happens on conflict. For a mutation tool with minimal annotation detail, more disclosure is warranted.

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 and the purpose stated up front. It is appropriately sized but does not use the brevity budget to add any clarifying detail.

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 output schema, the description omits critical context: permission requirements, whether the edit overwrites or appends, and how it relates to sibling comment tools. Given the 3-parameter schema and annotations that only cover safety hints, the definition is not complete enough 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 all three parameters (issueId, commentId, text) are already documented in the schema. The description does not add any format, constraint, or semantic detail beyond what the schema provides, which matches the baseline 3 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.

Purpose4/5

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

States the verb (edit) and resource (comment text) clearly, so an agent knows this mutates an existing comment. However, it does not distinguish itself from closely related siblings like update_entity_comment or delete_comment, so it falls short of the sibling-differentiation bar for a 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?

There is no when-to-use or when-not-to-use guidance, and no mention of alternatives such as update_entity_comment or delete_entity_comment. The agent must infer the appropriate context 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.

edit_issueA

Edit an existing issue (PATCH): only provided fields are changed. For array fields you may pass "add"/"remove"/"set"/"replace" commands via extraFields, e.g. extraFields={"tags": {"add": ["new-tag"]}}.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNoIssue tags
typeNoIssue type key, id or name, e.g. "bug", "task"
authorNoAuthor login or user id
parentNoParent issue key or id
sprintNoSprint ids
uniqueNoValue that must be unique across the organization (dedup guard)
dueDateNoDue date, format YYYY-MM-DD
issueIdYesIssue key or id
projectNoPrimary project shortId
summaryNoIssue title/summary
assigneeNoAssignee login or user id
deadlineNoDeadline date, format YYYY-MM-DD
priorityNoPriority key, id or name, e.g. "blocker", "normal"
followersNoFollowers: logins or user ids
startDateNoStart date, format YYYY-MM-DD
componentsNoQueue component names or ids
estimationNoEstimate in ISO 8601 duration format, e.g. "P5DT1H" or "P2W"
descriptionNoIssue description (YFM markup supported)
extraFieldsNoArbitrary additional issue fields as a JSON object (global custom fields, queue local fields, or add/set/remove update commands like {"tags": {"add": ["x"]}}). Merged into the request body as-is.
fixVersionsNoFix version names or ids
attachmentIdsNoTemporary attachment ids to attach
affectedVersionsNoAffected version names or ids

TDQS

A3.7/5.0
Behavior4/5

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

Annotations only say readOnlyHint=false and destructiveHint=false; the description adds the genuinely useful fact that this is a PATCH-style partial update, so unspecified fields are untouched — meaningful behavior not derivable from annotations. It also discloses the array-command mechanism (add/remove/set/replace) for array fields, though it doesn't say what happens to invalid fields or whether the updated issue is returned.

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?

Two sentences, front-loaded with the core action and the PATCH semantics before the array-command detail. Compact and well ordered, though the extraFields example overlaps the schema text and the array-command note could be trimmed.

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?

For a 22-parameter mutation tool with no output schema and only terse annotations, the description covers the two subtlest behaviors (partial update, array-command syntax). It is close to complete; gaps such as return value, error handling, and identity of the item being edited are minor given the 100% schema coverage.

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 baseline is 3 and the schema already documents all 22 fields. The description's array-command example largely restates what the extraFields schema description already says ("add/set/remove update commands like {...}"), adding only marginal 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?

States a specific verb+resource ("Edit an existing issue") and clarifies the HTTP/mutation semantics as PATCH with partial-update behavior. It distinguishes the tool from full-replacement edits conceptually but never names the nearby siblings (bulk_update_issues, update_entity, move_issue, execute_transition) that an agent might confuse it with.

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

Usage Guidelines3/5

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

The partial-update statement ("only provided fields are changed") implies when this tool is appropriate, and the extraFields sentence hints at array-field situations. But there is no explicit when-to-use/when-not versus bulk_update_issues or update_entity, no prerequisites, and no note about permissions needed to edit issues.

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

edit_worklog_recordC

Edit a time tracking record (worklog).

ParametersJSON Schema
NameRequiredDescriptionDefault
commentNoNew comment
issueIdYesIssue key or id
durationNoNew duration in ISO 8601 format, e.g. "PT2H"
worklogIdYesWorklog record id (from get_issue_worklog)

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, and the word 'Edit' is consistent with a non-destructive mutation, so there is no contradiction. But the description adds nothing beyond that: it does not say which fields are replaced vs. preserved, whether omitted fields are cleared, or what permissions are required.

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?

A single front-loaded sentence with zero redundancy. It is efficient, though its brevity borders on under-specification rather than true 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 4-parameter mutation tool with no output schema, the description is too thin. It omits update semantics (partial vs. full replacement), permission requirements, and any guidance on the required identifiers, leaving the agent to infer behavior from the schema 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?

Schema coverage is 100%, so the schema fully documents all four parameters, including the ISO 8601 duration format and the provenance hint for worklogId. The description adds no parameter meaning beyond what the schema provides, so the baseline of 3 applies.

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 states a specific verb and resource: 'Edit a time tracking record (worklog).' An agent can distinguish this from add_worklog_record and delete_worklog_record by the verb alone. However, it does not explicitly name those siblings or clarify its position in the worklog CRUD family.

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 when-to-use guidance is provided. The description does not say when to prefer editing over deleting/re-adding a worklog, nor does it mention prerequisites such as needing an existing worklogId from get_issue_worklog. The usage context is left entirely to inference.

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

execute_transitionA

Move an issue to a new status by executing a workflow transition. First get available transitions via get_issue_transitions. Some transitions (e.g. "close") require a resolution via extraFields, e.g. {"resolution": "fixed"}.

ParametersJSON Schema
NameRequiredDescriptionDefault
commentNoComment to add with the transition
issueIdYesIssue key or id
extraFieldsNoFields to set during the transition, e.g. {"resolution": "fixed"}
transitionIdYesTransition id from get_issue_transitions

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare this is a write (readOnlyHint=false) but non-destructive. The description adds real behavioral value beyond them: that certain transitions (e.g. close) require a resolution passed via extraFields, with a concrete example. It omits permission requirements and failure behavior, but adds meaningful transition-specific 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?

Three tight sentences, front-loaded with the core action, then the prerequisite, then the special-case requirement. No filler; every sentence earns its place.

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?

For a non-destructive write with annotations and full schema coverage, the description supplies the key prerequisites and the resolution special case. It stops short of covering error handling or the effect on existing issue state, but is otherwise sufficient to call correctly.

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 coverage is 100%, so the schema already documents all four parameters, including the extraFields example. The description's extraFields example partially duplicates the schema but reinforces the resolution use case; 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.

Purpose5/5

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

States a specific verb+resource: moving an issue to a new status by executing a workflow transition. Distinguishes itself from siblings like move_issue and bulk_transition_issues by tying the action to a workflow transition id.

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

Usage Guidelines4/5

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

Explicitly routes the agent to call get_issue_transitions first to obtain valid ids, which is strong prerequisite guidance. It does not state when to prefer this over related siblings such as bulk_transition_issues or move_issue, so it stops short of full when/when-not coverage.

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

find_gapsA
Read-only

Find absences of given users in a date range (admin). Pass the last user uid from the previous page to page through large organizations.

ParametersJSON Schema
NameRequiredDescriptionDefault
toNoRange end, ISO 8601
fromNoRange start, ISO 8601 (default now)
pageNo
usersYesLogins or user ids
perPageNo

TDQS

A3.5/5.0
Behavior3/5

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

Adds useful context beyond readOnlyHint=true by disclosing the admin permission requirement. However, the pagination advice ('pass the last user uid from the previous page') conflicts with the schema, which exposes only 'page' and 'perPage' with no uid parameter — this mismatch is potentially misleading.

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?

Two tight sentences; the core operation is front-loaded and the pagination tip is secondary. No filler.

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 read-only tool with 5 params and no output schema, the description covers purpose, auth, and pagination but says nothing about the shape of results (a 'gap' record) and the pagination guidance diverges from the schema. Adequate but with clear 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 coverage is 60%, so the schema documents several params (to, from, users) already. The description frames users as the subject and references date range and paging, but adds no syntax or clarification for page/perPage beyond what the schema provides, so it neither compensates for the gap nor adds much 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?

States a specific verb (find) and domain resource (absences/gaps of given users) with scope (date range, admin). An agent can distinguish it from create_gaps and delete_gaps without opening schemas. The term 'absences' is domain jargon but contextualized well enough.

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

Usage Guidelines3/5

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

The '(admin)' marker implies this requires elevated permissions, and pagination guidance is given, but there is no explicit when-to-use/when-not-to-use framing or comparison against alternatives like find_worklog_records. Usage is implied rather than stated.

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

find_issue_reportsA
Read-only

Search saved issue reports (filter by id/shortId/author).

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo
filterNoOnly id, shortId, author keys are supported
orderByNo
perPageNo
orderAscNo

TDQS

A3.5/5.0
Behavior3/5

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

The readOnlyHint annotation already declares the operation safe and non-destructive, so the description need not repeat that. It adds only the supported filter keys, which is useful context but does not describe pagination, result format, or authorization requirements beyond the annotation.

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, front-loaded sentence with no wasted words. It efficiently conveys the core action, resource, and one detail of filtering.

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 five parameters, a nested filter object, and low schema description coverage, the one-sentence description is insufficient. It omits how pagination, ordering, and the nested filter object behave, leaving an agent to guess about defaults and result structure.

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

Parameters2/5

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

Schema description coverage is only 20%, so the description should compensate, but it only repeats the filter keys already documented in the schema. The other four parameters (page, perPage, orderBy, orderAsc) receive no explanation in either the schema or the description.

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 states a specific verb ('Search') and resource ('saved issue reports'), and the parenthetical clarifies the supported filter keys. It is clearly distinguishable from the sibling 'create_issue_report' by the search action and 'saved' qualifier.

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

Usage Guidelines3/5

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

Usage is implied by 'Search saved issue reports', but there is no explicit guidance on when to use this versus alternatives like 'find_issues' or 'create_issue_report'. No exclusions or prerequisite conditions are mentioned.

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

find_issuesA
Read-only

Find issues in Yandex Tracker. Pass exactly ONE search parameter: "queue" (queue key), "keys" (list of issue keys), "filter" (field->value object), "query" (Tracker query language string, e.g. "Queue: TREK Assignee: me()"), "query2" (query language 2.0 object) or "filterId" (saved filter id). Supports pagination via perPage/page.

ParametersJSON Schema
NameRequiredDescriptionDefault
keysNoIssue key or list of issue keys
pageNoPage number, default 1
orderNoSort order (only with "filter"): [+/-]FIELD, e.g. "+updatedAt"
queryNoQuery in Tracker query language, e.g. 'Queue: TREK Resolution: empty()'
queueNoQueue key, e.g. "TREK"
expandNoComma-separated extra data to include: "transitions", "attachments", "comments"
fieldsNoComma-separated list of issue fields to include in the response
filterNoFilter object: field name -> value, e.g. {"queue": "TREK", "assignee": "user1"}
query2NoQuery language 2.0 object
perPageNoResults per page, default 50
filterIdNoSaved filter id
scrollIdNoScroll page id from the previous response
perScrollNoMax issues per scroll page (default 100, max 1000)
scrollTypeNoEnable result scrolling for large sets: "sorted" keeps the order, "unsorted" is cheaper. First request only.
scrollTTLMillisNoScroll context lifetime, ms (default 60000)

TDQS

A3.8/5.0
Behavior4/5

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

readOnlyHint=true already covers the safety profile, so the bar is lower. The description adds a real behavioral constraint not encoded anywhere else: exactly one search parameter is permitted (the schema does not enforce a oneOf). It omits what happens on violation and says nothing about the scroll workflow.

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?

Front-loaded with the purpose, followed by the one-per-call constraint and its enumeration. Dense but no filler; the example query is useful. Slightly run-on as a single block.

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 15-parameter tool with no output schema, the description covers the search surface and basic pagination but ignores the entire scroll mechanism (scrollId, perScroll, scrollType, scrollTTLMillis) and response-shaping params (expand, fields). Since the schema documents all of these, the gap is tolerable but noticeable for a tool of this 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 baseline is 3. The description adds marginal value by grouping the search parameters and clarifying their mutual exclusivity, plus a sample query string, but leaves the scroll, expand, fields, and order parameters entirely to the schema.

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?

States a specific verb+resource: 'Find issues in Yandex Tracker'. It is clearly distinguishable from count_issues or get_issue by naming the search intent, though it does not explicitly contrast itself with those siblings.

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

Usage Guidelines4/5

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

Gives the operative rule: 'Pass exactly ONE search parameter', then enumerates the mutually exclusive options (queue, keys, filter, query, query2, filterId). This is clear invocation guidance. It does not, however, name alternatives like count_issues or search_entities or state when to prefer them.

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

find_worklog_recordsB
Read-only

Search worklog records across all issues by author and/or creation date range.

ParametersJSON Schema
NameRequiredDescriptionDefault
createdByNoAuthor login or id
createdToNoTo, YYYY-MM-DDThh:mm:ss.sss±hhmm
createdFromNoFrom, YYYY-MM-DDThh:mm:ss.sss±hhmm

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds the cross-issue scope and the eligible filter dimensions, which is useful context, but says nothing about result size, pagination, ordering, or caps — relevant concerns for a search that spans all issues.

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?

One sentence, front-loaded with the action and scope, zero filler. It is arguably a touch terse given the tool spans all issues and could benefit from one more clarifying clause, but nothing is wasted.

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?

A read-only search with three optional, fully documented params and no output schema needs little more, but the absence of any guidance on result volume or pagination for an all-issues scan leaves a real gap for an agent deciding how to call and consume it.

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 createdBy/createdFrom/createdTo each documented including the timestamp format, so the schema carries the parameter burden. The description maps to those filters but adds no format or semantics beyond the schema — baseline 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?

States a clear verb+resource ('Search worklog records') and adds the scope 'across all issues', which meaningfully distinguishes it from the sibling get_issue_worklog (per-issue). No explicit sibling naming, but the scope phrase does the differentiating work.

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

Usage Guidelines3/5

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

Usage is implied by 'by author and/or creation date range' and 'across all issues', so an agent can infer this is a cross-issue search rather than a single-issue fetch. However, it never states when to prefer this tool over get_issue_worklog or find_issues, and gives no prerequisites or exclusions.

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

get_attachment_thumbnailB
Read-only

Download the preview thumbnail of an attached image (image content).

ParametersJSON Schema
NameRequiredDescriptionDefault
issueIdYesIssue key or id
attachmentIdYesAttachment id

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the safe-read profile is covered. The description adds the useful constraint that this returns a preview thumbnail of an image attachment rather than the full file, but it says nothing about supported attachment types, failure behavior for non-images, or whether the payload is binary or a URL.

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?

A single tightly worded sentence with the key qualifier (preview thumbnail) front-loaded; nothing is wasted. The only shortfall is that brevity here comes at the cost of the missing differentiation noted elsewhere.

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 two-parameter read tool with full schema coverage and a readOnly annotation, the core contract is covered and no output schema is expected. Still, in a crowded attachment-tool family the description should say what makes this call distinct and what it returns (thumbnail bytes vs. URL), which it omits.

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% and both required parameters (issueId, attachmentId) are documented in the schema, so the description need only carry baseline weight. It adds no extra semantics about accepted id formats or how attachmentId relates to issueId, so the baseline 3 applies.

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?

States a specific verb (Download) and resource (preview thumbnail of an attached image), so the agent knows exactly the operation. However, it never distinguishes this from the many sibling attachment readers such as get_issue_attachment, download_issue_attachment, or get_entity_attachment, which an agent could easily pick instead.

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?

There is no guidance on when to use this tool versus the alternative attachment tools in the sibling list. The parenthetical '(image content)' vaguely hints at image-only applicability but does not state when this is preferable to download_issue_attachment or get_issue_attachment.

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

get_boardB
Read-only

Get board parameters by id, including its columns.

ParametersJSON Schema
NameRequiredDescriptionDefault
boardIdYesBoard id (from get_boards)

TDQS

B3.2/5.0
Behavior3/5

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

The readOnlyHint=true annotation already establishes this is a safe read. The description adds that columns are bundled into the response, which is useful context beyond the annotation, but says nothing about return shape, pagination, or error behavior for an unknown id.

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?

A single compact sentence with the resource and scope front-loaded and no filler. The word 'parameters' is slightly vague, but nothing is wasted.

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 one-parameter read tool with no output schema, the definition is minimally adequate: it names the returned resource but does not enumerate what 'board parameters' are or how columns are structured, leaving the agent to infer the return contract.

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%, and the schema itself documents boardId, including its provenance ('from get_boards'). The description only restates 'by id' and adds no format or constraint detail, so the baseline 3 applies.

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?

States a specific verb (get) and resource (board) scoped by id, and adds that columns are included in the response. It is distinguishable from the list-style get_boards, though it never names a sibling explicitly.

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?

There is no guidance on when to use this versus get_boards, get_board_columns, or get_board_column. Usage is only weakly implied by the required id parameter.

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

get_board_columnC
Read-only

Get parameters of one board column.

ParametersJSON Schema
NameRequiredDescriptionDefault
boardIdYes
columnIdYes

TDQS

C2.6/5.0
Behavior2/5

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

The readOnlyHint annotation already establishes that this is a safe read operation. The description adds no behavioral context beyond that, such as return format, permissions, pagination, or error conditions. It neither contradicts the annotation nor enriches it.

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, front-loaded sentence with no wasted words. It is efficiently structured, though its brevity contributes to the under-specification captured in other dimensions.

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 two-parameter read tool with no output schema and no schema parameter descriptions, the description is too thin. It does not explain the parameters, what "parameters" are returned, or how the column is identified, leaving the agent with insufficient context to call it confidently.

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

Parameters1/5

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

Schema description coverage is 0%, so the description must compensate for the undocumented boardId and columnId parameters. It does not explain what either parameter means or what format they accept, leaving the required identifiers entirely unclarified.

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 uses a specific verb ("Get") and resource ("parameters of one board column"). The singular "one board column" distinguishes it from the sibling get_board_columns, but it does not explicitly name or contrast with any sibling 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 gives no when-to-use guidance, prerequisites, or alternatives. It only implies that this is the tool for retrieving a single board column, without stating when that is preferable to get_board_columns or any other sibling.

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

get_board_columnsC
Read-only

List columns of a board.

ParametersJSON Schema
NameRequiredDescriptionDefault
boardIdYesBoard id

TDQS

C2.9/5.0
Behavior2/5

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

readOnlyHint=true already declares this is a safe read, and the description adds nothing beyond that — no note on return format, pagination, or ordering. It carries no behavioral information the annotations do not already supply.

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?

One short, front-loaded sentence with zero padding. It is efficient, though its brevity borders on under-specification rather than true 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?

With readOnlyHint covering safety, full schema coverage of the single param, and no output schema to explain, the minimum an agent needs is present. Still missing is the disambiguation from get_board_column and any indication of result shape or pagination.

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 coverage is 100% and there is a single required boardId parameter, so the schema fully documents it. The phrase 'of a board' loosely implies the boardId scoping but adds no syntax or meaning beyond the schema; baseline 3 applies.

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?

States a specific verb ('List') and resource ('columns of a board'), so the operation is unambiguous. It does not, however, distinguish itself from the sibling get_board_column (singular), which an agent could easily confuse with this plural lister.

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 versus get_board_column, get_board, or the column mutation tools. The agent must infer from naming conventions alone.

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

get_boardsB
Read-only

List all issue boards of the organization.

ParametersJSON Schema
NameRequiredDescriptionDefault
perPageNoResults per page, default 50

TDQS

B3.4/5.0
Behavior3/5

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

The readOnlyHint annotation already establishes this as a safe read operation. The description adds organizational scope, but it does not clarify pagination behavior, return format, or why perPage exists alongside a claim to list all boards.

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?

A single, front-loaded sentence with no wasted words. It states the action and scope immediately and does not pad the description with unnecessary detail.

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?

For a simple read-only list tool with one optional parameter and no output schema, the description gives the essential scope. It could be more complete by addressing pagination or the distinction from get_boards_paginate, but the core information needed to invoke it is present.

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 single perPage parameter is already documented as 'Results per page, default 50'. The description adds no additional parameter meaning beyond what the schema provides, which matches the baseline 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?

States a specific verb and resource: list issue boards, scoped to the organization. It is clear for an agent, but it does not differentiate itself from the sibling get_boards_paginate, which likely serves a related but distinct list use case.

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 when-to-use guidance is provided. With a sibling tool like get_boards_paginate, the description should indicate when this non-paginated list should be selected instead, but it offers no such routing information.

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

get_boards_paginateA
Read-only

List boards with relative pagination (for more than one page): pass the last board id as "id" to get the next page. Max 500 per page.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoBoard id to start from (previous page last id)
perPageNo

TDQS

A3.8/5.0
Behavior4/5

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

Annotations only declare readOnlyHint, so the description usefully adds the pagination mechanism: pass the last board id as 'id' to advance, and the 500-per-page cap. It does not state ordering guarantees or behavior on an invalid/absent id, but the core pagination contract is disclosed.

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?

A single tight sentence that front-loads the purpose and then the pagination instruction and cap. Every clause earns its place with no redundancy.

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?

For a two-parameter read tool with a readOnlyHint and no output schema, the description covers the essential pagination flow an agent needs to call it correctly. It is only slightly thin on perPage and result-ordering expectations.

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 coverage is 50%: 'id' is described in the schema and echoed in the description, while 'perPage' only carries a maximum constraint and is never explained in prose. The description reinforces the cursor semantics of 'id' but adds little beyond the schema.

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?

States a specific verb (List) and resource (boards) plus the distinguishing trait (relative pagination). An agent can infer this is the paginated variant, though it never explicitly names the get_boards sibling it complements.

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

Usage Guidelines3/5

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

The parenthetical 'for more than one page' implies the condition under which to prefer this over a plain list, but no alternative tool is named and no exclusions or prerequisites are given. Usage is left to inference.

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

get_board_sprintsA
Read-only

List sprints of a board (agile boards only).

ParametersJSON Schema
NameRequiredDescriptionDefault
boardIdYesBoard id

TDQS

A3.5/5.0
Behavior3/5

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

readOnlyHint=true already tells the agent this is a safe read, so the description need not restate safety. It does add useful behavioral context — that the call only works for agile boards — but says nothing about pagination, ordering, or failure behavior on non-agile boards.

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?

One short sentence, front-loaded with the verb and resource, with the scoping constraint appended. No filler and nothing wasted.

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 simple read-only list tool with one fully documented parameter and annotations covering safety, the definition is minimally viable. It omits pagination and return-shape information, which matters for a 'list' tool that has no output schema to fall back on.

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?

With a single parameter at 100% schema description coverage, the schema already documents boardId. The phrase 'of a board' implies the parameter's role but adds no format or constraint detail beyond the schema, so the baseline 3 applies.

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?

States a specific verb and resource ('List sprints of a board'), which is clearly distinct from the singular get_sprint and the mutation siblings like create_sprint/delete_sprint. It stops short of naming any sibling explicitly, so it does not fully earn a 5.

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

Usage Guidelines3/5

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

The parenthetical '(agile boards only)' gives a real scoping condition that tells the agent when this tool applies. However, it offers no guidance on alternatives (e.g., get_sprint for a single sprint) or what to do for non-agile boards, leaving usage largely implied.

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

get_bulk_operation_infoA
Read-only

Get status and progress of a bulk change operation by its id.

ParametersJSON Schema
NameRequiredDescriptionDefault
bulkOperationIdYesBulk operation id returned by bulk_* tools

TDQS

A3.8/5.0
Behavior3/5

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

The readOnlyHint=true annotation already establishes this is a non-mutating read, so the description's addition of 'status and progress' is useful but modest. It does not disclose whether the result is eventually consistent, how long operation records are retained, or what a completed versus failed operation looks like — all relevant for a job-status endpoint.

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?

One sentence, zero waste, and the resource and lookup key are front-loaded. Nothing redundant and nothing padded.

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?

For a single-parameter read tool with annotations covering the safety profile, this is nearly complete. The one remaining gap is that no output schema exists, so the description could briefly sketch the shape of the returned status/progress rather than leaving the agent to discover it.

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 single parameter is fully documented in the schema itself. The description's 'by its id' adds no syntax, format, or sourcing detail beyond what the schema's 'Bulk operation id returned by bulk_* tools' already provides, so baseline 3 applies.

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?

States a specific verb ('Get'), a specific resource ('status and progress of a bulk change operation'), and the lookup key ('by its id'). An agent can distinguish this polling/inspection tool from the mutation siblings bulk_update_issues, bulk_move_issues, and bulk_transition_issues without opening any schema.

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

Usage Guidelines3/5

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

Usage is implied: the parameter note ('Bulk operation id returned by bulk_* tools') tells the agent this is called after kicking off a bulk job. However, there is no explicit when/when-not guidance, no mention that it should be polled until completion, and no named alternative for checking results after the operation finishes.

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

get_checklistC
Read-only

Get the checklist of an issue.

ParametersJSON Schema
NameRequiredDescriptionDefault
issueIdYesIssue key or id

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds nothing beyond that: no return shape, no note on whether the checklist is issue-level or shared, no indication of what happens when no checklist exists.

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?

One short sentence with the resource and scope front-loaded and zero padding. It is efficient, though the extreme brevity edges toward under-specification rather than optimal 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?

There is no output schema, so the description should carry more of the burden of explaining what is returned, yet it says nothing about the checklist structure or ordering. For a read tool with no output schema, this leaves a meaningful gap.

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?

With a single required parameter at 100% schema description coverage, the schema already documents issueId as an issue key or id. The description adds no formatting hints or validation detail beyond what the schema provides, so the baseline of 3 applies.

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 states a clear verb+resource (get + checklist) scoped to an issue, which distinguishes it from the many checklist siblings that operate on generic entities (delete_entity_checklist, update_entity_checklist). It is clear but adds no detail about what a checklist contains or which issue-scoped checklist variant it is.

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?

There is no when-to-use guidance, no prerequisites, and no mention of alternatives such as the entity-based checklist tools in the sibling list. An agent must infer usage entirely from the name.

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

get_componentC
Read-only

Get one component by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldsNoComma-separated fields to include
componentIdYes

TDQS

C2.8/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, so safety is covered, but the description adds nothing beyond that — no note on what happens for a missing/unknown id, no permission requirements, no indication of what the returned component contains.

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?

A single short sentence with no filler and the key scope ('one', 'by id') front-loaded. Efficient, though extremely terse.

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 simple read-by-id tool with annotations covering safety and no output schema, this is minimally viable but thin. An agent gets no information about failure modes, required permissions, or the fields parameter beyond what the schema partially provides.

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

Parameters2/5

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

Schema coverage is only 50%: 'fields' is documented as a comma-separated list, but componentId has no schema description. The description only says lookup is 'by id' and provides no compensating detail such as the id type/format or the effect of the fields 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?

States a specific verb and resource ('Get one component') and scopes it to a single-item lookup by id, which implicitly separates it from the sibling get_components list tool. It does not explicitly name that sibling, so it falls short of a 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?

There is no guidance on when to call this versus get_components, get_queue_components, or get_component_user_access, and no statement of prerequisites. Only the phrase 'by id' hints at the intended usage context.

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

get_component_group_accessC
Read-only

Get group permissions for a component.

ParametersJSON Schema
NameRequiredDescriptionDefault
groupIdYes
componentIdYes

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, so the description contributes nothing beyond confirming a read. It does not disclose what shape the permissions come back in, whether the group must exist, or how it differs from related access endpoints.

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?

A single short sentence with no padding and the core action front-loaded. It is brief to the point of under-specification rather than verbose, so conciseness itself is not the problem.

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?

With no output schema, 0% parameter description coverage, and only a readOnlyHint annotation, the definition leaves the agent without return shape, ID sourcing, or permission-scope details. For an access-lookup tool in a crowded sibling set, this is too thin.

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

Parameters2/5

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

Schema description coverage is 0% and neither componentId nor groupId is documented with type meaning, ID format, or source. The phrase 'for a component' loosely maps to componentId and 'group' to groupId, but this adds little beyond the parameter names themselves.

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?

States a specific verb ('Get') and resource ('group permissions for a component'), so an agent can tell it returns access info rather than mutating it. However, it offers no differentiation from near-identical siblings such as get_component_user_access, get_queue_group_access, or get_entity_access.

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?

There is no when-to-use guidance, no mention of prerequisites, and no routing to alternatives despite many overlapping access tools in the sibling list. The agent must infer the use case 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_componentsA
Read-only

List all components of the organization.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.6/5.0
Behavior2/5

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

The readOnlyHint annotation already covers the safety profile. The description adds no behavioral context beyond the annotation—it does not mention pagination, ordering, return fields, or any constraints. It merely restates a read-only list 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?

A single, front-loaded sentence that states the action and scope without any wasted words. It is appropriately sized for a zero-parameter listing tool.

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 zero parameters, no output schema, and a readOnlyHint annotation, the description is nearly complete. The only minor gap is that it does not describe the return shape or pagination behavior, but for a simple list-all tool this is not critical.

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 takes zero parameters, so the baseline is 4. The description correctly implies no input is needed, and there are no parameter semantics to clarify further.

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 states a specific verb ('List') and resource ('all components of the organization'), clearly distinguishing it from the singular sibling get_component and from queue-scoped tools like get_queue_components. An agent can identify the tool's scope without opening the schema.

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 such as get_component or get_queue_components. It simply states what it does, with no conditions, prerequisites, or exclusions.

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

get_component_user_accessC
Read-only

Get user permissions for a component.

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdYes
componentIdYes

TDQS

C2.7/5.0
Behavior2/5

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

readOnlyHint=true already tells the agent this is a safe read, but the description adds nothing further — no auth/permission requirements, no indication of whether the result is a single permission set or a list, and no return shape. With no output schema, this is a notable gap.

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?

A single clean sentence with the resource front-loaded. It is not bloated, though its brevity is driven by under-specification rather than efficient 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 two-parameter lookup with no output schema and no parameter descriptions, the definition leaves too much unspecified: ID formats, what permissions are returned, and how this differs from sibling access tools are all absent.

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

Parameters2/5

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

Schema description coverage is 0% for two required parameters. The description's words 'user' and 'component' loosely map to userId and componentId, but it never explains accepted ID forms (numeric componentId vs. string|number userId) or what the IDs identify.

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?

States a specific verb (get) and resource (user permissions for a component), which is enough to distinguish it from the group-access sibling get_component_group_access. However, it never names or contrasts with that sibling explicitly, so an agent must infer the user-vs-group 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?

There is no when-to-use guidance, no prerequisites, and no mention of alternatives such as get_component_group_access or get_entity_permissions. The sentence only restates what the tool retrieves.

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

get_current_userA
Read-only

Get info about the current user (the token owner). Good for connectivity checks.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

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

readOnlyHint already covers the safety profile, so the bar is lower; the description still adds that the subject is derived from the auth token rather than a parameter, which is meaningful authentication context. It stops short of describing the returned fields or failure modes for an invalid/expired token.

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?

Two short sentences, zero filler, with the core purpose front-loaded ahead of the secondary use case. Nothing needs trimming or reordering.

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?

For a parameterless read with no output schema, the description covers purpose, identity source, and a use case. It only leaves unspecified what user information is returned, a minor gap given the tool's simplicity.

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 takes zero parameters, so the schema carries no semantics to compensate for; baseline 4 applies. The description's token-owner note usefully explains why no user identifier is accepted.

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?

States a specific verb and resource ('Get info about the current user') and disambiguates scope with '(the token owner)', which separates it from the sibling get_user/get_users tools that target arbitrary users. An agent can identify the resource without opening the schema.

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

Usage Guidelines4/5

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

Gives a concrete when-to-use case ('Good for connectivity checks') and, via the token-owner parenthetical, implicitly routes away from get_user when the caller's own identity is wanted. No explicit exclusions or named alternatives, so it stops just short of a 5.

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

get_entityA
Read-only

Get a project, portfolio or goal by id (use search_entities to find ids).

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldsNoComma-separated extra fields to include
entityIdYesEntity id
entityTypeYesEntity type: "project", "portfolio" or "goal"

TDQS

A3.8/5.0
Behavior3/5

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

The readOnlyHint=true annotation already establishes this as a safe read, so the bar is lower, but the description adds no behavioral context beyond that - nothing about lookup failures, whether the fields parameter degrades the default payload, or response shape. It is the minimum viable amount of behavioral information for a read 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?

A single front-loaded sentence with the lookup contract first and the id-discovery hint parenthetically attached. No filler and nothing to trim.

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?

For a simple three-parameter read tool with no output schema and annotations covering safety, the description says what it fetches and how to obtain the required id. Remaining gaps (not-found behavior, default returned fields) are minor, though the unaddressed overlap with get_project leaves some ambiguity.

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 entityType enum values and both required ids documented in the schema itself, so the baseline is 3. The description restates the three entity types but adds no semantics for the optional 'fields' parameter beyond what the schema already says.

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 gives a specific verb ('Get') and resource ('a project, portfolio or goal by id'), and it usefully expands the vague term 'entity' into the three concrete types it covers. It does not, however, clarify how it relates to the sibling get_project, which retrieves one of those same types, so sibling differentiation is incomplete.

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

Usage Guidelines4/5

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

It explicitly routes the agent to search_entities for obtaining the id it requires, which is a concrete alternative-use pointer. It stops short of stating when to prefer this over get_project or what happens if the id is unknown, so it is clear context without full exclusions.

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

get_entity_accessB
Read-only

Get extended access settings of an entity, including inheritance sources.

ParametersJSON Schema
NameRequiredDescriptionDefault
entityIdYes
entityTypeYesEntity type: "project", "portfolio" or "goal"

TDQS

B3/5.0
Behavior3/5

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

The readOnlyHint=true annotation already establishes that this is a safe, non-mutating read, so the description is not burdened with the safety profile. It adds one genuinely useful behavioral detail – that the result includes inheritance sources – but says nothing about authorization requirements, whether it returns inherited vs. direct entries, or any scope limits.

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?

A single front-loaded sentence with no filler; the key scope qualifier ('including inheritance sources') arrives at the end but the sentence is short enough that nothing is buried. No structural issues, though there is no room for expansion given the small size.

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?

There is no output schema, so the description must convey what comes back; it gestures at this ('extended access settings ... inheritance sources') but does not describe the shape of the response or how direct vs. inherited access is represented. For a simple two-parameter read-only tool with annotation support, this is minimally adequate rather than complete.

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

Parameters2/5

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

Schema description coverage is only 50%: entityType carries an enum and a description, but entityId is completely undocumented in both the schema and the description. The description does not mention either parameter or clarify that entityType governs which entityId namespace applies, so it fails to compensate for the coverage gap.

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?

States a specific verb ('Get') and resource ('extended access settings of an entity') plus a scope qualifier ('including inheritance sources'). However it does not distinguish itself from the sibling get_entity_permissions, so an agent cannot tell which of the two access-related reads to pick without opening schemas.

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?

There is no when-to-use guidance, no exclusions, and no reference to alternatives such as get_entity_permissions or update_entity_access. The agent must infer the selection context entirely from the tool name.

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

get_entity_attachmentB
Read-only

Get metadata of one file attached to a project, portfolio or goal.

ParametersJSON Schema
NameRequiredDescriptionDefault
entityIdYes
entityTypeYesEntity type: "project", "portfolio" or "goal"
attachmentIdYes

TDQS

B3.3/5.0
Behavior3/5

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

readOnlyHint=true already tells the agent this is a safe, non-mutating read. The description usefully clarifies that it returns metadata rather than the file itself, which is a real behavioral distinction from the download sibling, but it says nothing about what metadata is returned, whether an attachment can be missing, or any access constraints.

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?

A single front-loaded sentence with no filler; the resource and scope appear immediately.

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 simple read-only lookup the description covers the essential action, but with no output schema the description is the only place return values could be characterized and it never says what 'metadata' includes. Two of three parameters are also undocumented anywhere, leaving an agent to guess ID formats.

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

Parameters2/5

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

Schema description coverage is only 33%: entityId and attachmentId carry no schema description at all. The description merely repeats the three entity types already enumerated in the schema for entityType, and adds nothing about entityId format or the fact that attachmentId accepts a string or number, so it fails to compensate for the coverage gap.

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?

States a specific verb and resource ('Get metadata of one file attached to a project, portfolio or goal'), and the word 'metadata' separates it from the download_entity_attachment sibling that fetches file content. It does not, however, explicitly name the alternative tools (list_entity_attachments, download_entity_attachment), so differentiation is implied rather than stated.

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

Usage Guidelines3/5

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

Usage is only implied: an agent can infer you call this when you need information about a single already-known attachment. There is no statement of when to prefer it over list_entity_attachments (to discover attachments) or download_entity_attachment (to fetch bytes), and no mention of prerequisites such as needing IDs from a listing call.

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

get_entity_commentC
Read-only

Get one comment of a project, portfolio or goal.

ParametersJSON Schema
NameRequiredDescriptionDefault
expandNo"all", "html", "attachments" or "reactions"
entityIdYes
commentIdYes
entityTypeYesEntity type: "project", "portfolio" or "goal"

TDQS

C2.8/5.0
Behavior2/5

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

readOnlyHint=true already tells the agent this is a safe read; the description adds essentially no behavioral context beyond that. It says nothing about permissions needed, error behavior when the comment/entity does not exist, or what the expand parameter changes in the response.

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?

A single short sentence with no filler, front-loaded with the verb and resource. It is appropriately sized for a simple lookup, though it is arguably too terse given the documentation gaps elsewhere.

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 simple read with no output schema, the description covers the essential what. However, it omits the existence of the expand option's effect and leaves two required identifiers undocumented, which is a gap for a tool with 3 required parameters.

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

Parameters2/5

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

Schema coverage is only 50%: entityId and commentId have no descriptions anywhere, and the description does not compensate. The one concrete hint it gives ('project, portfolio or goal') merely restates the entityType enum already present in the schema.

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?

States a specific verb ('Get'), a specific cardinality ('one comment'), and the scope ('project, portfolio or goal'). This implicitly distinguishes it from the plural sibling get_entity_comments, though it never names that alternative explicitly.

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 single-comment fetch versus get_entity_comments, get_issue_comment, or the entity/issue variants. The agent must infer the use case from the singular 'one comment' phrasing alone.

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

get_entity_commentsC
Read-only

List comments of a project, portfolio or goal.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number, default 1
perPageNoResults per page, default 50
entityIdYesEntity id
entityTypeYesEntity type: "project", "portfolio" or "goal"

TDQS

C2.9/5.0
Behavior2/5

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

The readOnlyHint=true annotation already tells the agent this is a safe read. The description adds nothing beyond that — no note on pagination behavior, default ordering, empty results, or whether comments include replies/reactions, all of which matter for a listing tool.

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?

A single short sentence with the resource and scope front-loaded and no filler. It is efficient, though almost to the point of under-specification rather than true 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?

With no output schema and a read-only annotation covering safety, the definition is minimally adequate: it says what is listed and for which entity types. It omits ordering, pagination limits, and how this differs from the sibling comment tools, so an agent lacks routing and result-shape 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 page, perPage, entityId, and entityType all documented in the schema, so the baseline is 3. The description only echoes the entityType enum values and adds no format, ID-source, or paging semantics beyond what the schema states.

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 gives a specific verb (List) and resource (comments) plus the three supported entity scopes (project, portfolio, goal), which matches the entityType enum. It does not distinguish itself from near-neighbors such as get_issue_comments or get_entity_comment, but the purpose 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?

There is no when-to-use guidance, no prerequisites, and no mention of alternatives. An agent seeing get_entity_comments alongside get_entity_comment, get_issue_comments, and add_entity_comment must infer from the name alone which one applies.

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

get_entity_eventsB
Read-only

Event history of a project, portfolio or goal (relative pagination: pass the last event id as "from" or focus with "selected").

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoShow events after this event id (exclusive)
perPageNo
entityIdYes
selectedNoShow a window around this event id (not combinable with "from")
directionNo
entityTypeYesEntity type: "project", "portfolio" or "goal"
newEventsOnTopNo

TDQS

B3.1/5.0
Behavior3/5

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

The readOnlyHint annotation already declares this is a safe read, so the safety bar is largely covered. The description adds useful behavioral context about relative pagination and the 'selected' focus mode, but says nothing about ordering (direction, newEventsOnTop) or result size despite those being behavioral concerns.

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?

Single sentence with a parenthetical, front-loading what the tool returns before the pagination detail. Efficient and no wasted filler, though the parenthetical is dense.

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 7-parameter tool with no output schema and 43% schema coverage, the description is too thin: it omits the semantics of direction, newEventsOnTop, and perPage, which an agent needs to paginate an event list correctly.

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

Parameters2/5

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

Schema coverage is only 43%, so the description must compensate, but it only paraphrases 'from' and 'selected' which the schema already documents. Undocumented parameters (perPage, direction, newEventsOnTop, entityId) receive no explanation, leaving half the meaningful inputs unexplained.

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?

States a specific verb+resource: it returns the event history of a project, portfolio, or goal, and the entity types are enumerated. It's clear and self-contained, though it offers no explicit differentiation from any sibling tool.

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

Usage Guidelines3/5

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

The parenthetical gives implied usage for pagination (pass last event id as 'from', or focus with 'selected'), which is a usage hint. But there is no statement of when to call this versus alternatives, nor any prerequisites or exclusions.

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

get_entity_permissionsB
Read-only

Get direct access permissions (READ/GRANT/WRITE) of an entity.

ParametersJSON Schema
NameRequiredDescriptionDefault
entityIdYes
entityTypeYesEntity type: "project", "portfolio" or "goal"

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so safety is covered. The description adds one useful scoping trait — that only 'direct' permissions are returned, implying inherited permissions are excluded — but does not state the return shape, pagination, or whether an entity with no explicit grants returns empty.

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?

A single efficient sentence with the core action and return values front-loaded and no filler. It is arguably too terse for the tool's ambiguity with siblings, but nothing in it is wasted.

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 simple read-only getter with annotations covering safety and no output schema, the description is close to adequate. The main missing piece is disambiguation from get_entity_access/update_entity_permissions and any detail on the entityId parameter, leaving the agent under-informed at selection time.

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

Parameters2/5

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

Schema description coverage is 50%: entityType carries its enum description in the schema, but entityId is undocumented in both schema and description. The description says only 'of an entity' and gives no hint about entityId format (numeric vs. string ID) or how it pairs with entityType, so it fails to compensate for the coverage gap.

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?

States a specific verb (Get) and resource (entity permissions) and even enumerates the permission levels returned (READ/GRANT/WRITE). However, it does not distinguish itself from the very similar sibling get_entity_access (nor from update_entity_permissions), so an agent must guess between 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 when-to-use guidance, no prerequisites, and no mention of alternatives such as get_entity_access or update_entity_permissions. The agent is given no criteria for choosing this tool over its near-duplicate siblings.

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

get_external_applicationsA
Read-only

List external applications available for issue external links.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the safe read-only nature is covered by structured data. The description adds only that the result set is scoped to applications usable for issue external links; it says nothing about pagination, ordering, or whether apps are workspace-scoped.

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?

A single short sentence with no filler, and the resource being listed is front-loaded after the verb. Nothing could be removed without losing information.

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?

For a trivial no-param read tool with annotations covering safety, the description states what is returned at a high level. Since there is no output schema, it could say more about the shape of an application entry (id/name needed for create_external_link), but it is adequate for invocation.

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 takes zero parameters, so there is nothing for the description to disambiguate; the baseline for a no-param tool is 4. Schema coverage is reported at 100% and the schema is an empty object.

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 gives a specific verb and resource: list external applications usable for issue external links. It is distinguishable from the sibling get_external_links (which lists links, not applications), though the term 'external applications' is never defined and no sibling is named explicitly.

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

Usage Guidelines3/5

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

Usage is only implied by the phrase 'available for issue external links' — an agent can infer this is a discovery step before create_external_link. There is no explicit when-to-use statement, no prerequisites, and no mention of get_external_links as the alternative for reading existing links.

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

get_filterB
Read-only

Get saved filter parameters by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
filterIdYes

TDQS

B3.2/5.0
Behavior3/5

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

readOnlyHint=true already declares this is a safe read, so the description only needs to add context. Saying it returns the filter's 'parameters' (rather than filter metadata) is a small useful signal, but there is no note on error behavior for a missing id or what the returned parameters look like.

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?

A single short sentence that front-loads the verb and resource with no filler. It is appropriately sized, though the extreme brevity leaves it under-specified rather than genuinely wasteful.

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 one-parameter read tool with the safety profile already covered by annotations, the definition is minimally adequate. The remaining gap is that 'parameters' is ambiguous about the return shape and nothing addresses the 0% schema coverage on filterId.

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 coverage is 0%, and the sole parameter filterId is undocumented in the schema. The phrase 'by id' weakly maps to filterId, but adds no type, format, or validity information beyond the property name.

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?

States a specific verb (Get) plus resource (saved filter parameters) and the lookup key (id), which cleanly separates it from the create_filter/update_filter/delete_filter siblings in the same namespace. It is clear without opening the schema, though it never names those siblings explicitly.

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?

There is no when-to-use guidance, no mention of the update_filter/delete_filter alternatives, and no note about prerequisites or what an invalid id yields. The agent must infer that this is the read counterpart to the other filter tools.

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

get_issueC
Read-only

Get issue parameters by key or id, e.g. "TREK-123".

ParametersJSON Schema
NameRequiredDescriptionDefault
expandNoComma-separated extra data to include: "transitions", "attachments", "comments"
fieldsNoComma-separated list of issue fields to include in the response
issueIdYesIssue key or id

TDQS

C2.9/5.0
Behavior2/5

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

Annotations supply readOnlyHint=true, so the safety profile is covered. The description adds nothing beyond that: no note on what is returned, permission requirements, or behavior for nonexistent/invalid keys.

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?

A single short sentence, front-loaded with the verb and resource. "Parameters" is slightly vague wording but the sentence contains no filler.

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?

There is no output schema, so the description should at least hint at what a fetched issue contains; it does not. For a simple read tool with a fully documented schema this is passable but incomplete.

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 coverage is 100%, so issueId, expand, and fields are all documented in the schema (including the valid expand values). The description's "TREK-123" example reinforces the issueId format but adds little beyond the schema's own "Issue key or id".

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?

States a clear verb ("Get") and resource ("issue") and pins the identifier form with the example "TREK-123". It does not differentiate itself from nearby siblings such as find_issues, get_entity, or search_entities, so an agent must infer the boundary.

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 single-issue fetch versus find_issues/search_entities, and no stated prerequisites. The only implicit signal is the key-vs-id identifier form.

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

get_issue_attachmentB
Read-only

Get metadata of one attached file (name, size, mime type).

ParametersJSON Schema
NameRequiredDescriptionDefault
issueIdYesIssue key or id
attachmentIdYesAttachment id

TDQS

B3.4/5.0
Behavior3/5

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

The readOnlyHint annotation already establishes this is a safe read. The description adds that the return is metadata rather than file content, which is genuinely useful given there is no output schema, but it says nothing about pagination, size limits, or what happens if the attachment id is invalid.

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?

A single tight sentence with the resource and its returned fields front-loaded. Every clause earns its place with no redundancy.

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?

With annotations covering the safety profile and the description enumerating the returned metadata fields, the agent has enough to call it correctly. The absence of an output schema is partly compensated, though tie-breaking against sibling attachment tools is left implicit.

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 coverage is 100%, with both issueId and attachmentId documented in the schema itself. The description adds no syntax or format detail about how to identify the attachment, so the baseline 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?

States a specific verb (Get) and resource (metadata of one attached file) and parenthetically enumerates what the metadata contains (name, size, mime type). This distinguishes it from content-retrieval siblings like download_issue_attachment, but it never names or contrasts those siblings explicitly.

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 when-to-use guidance is given beyond the implied scope of a single attachment. It does not tell the agent to use list_issue_attachments to enumerate files first or download_issue_attachment to fetch content rather than metadata.

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

get_issue_changelogC
Read-only

Get the change history (changelog) of an issue.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number, default 1
issueIdYesIssue key or id
perPageNoResults per page, default 50

TDQS

C2.9/5.0
Behavior2/5

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

The readOnlyHint annotation already tells the agent this is a safe read, and the description adds nothing beyond that - no mention of what the changelog contains (field diffs, authors, timestamps), pagination behavior, or ordering. With annotations covering the safety profile, the lowered bar still isn't met because the description contributes zero extra 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.

Conciseness4/5

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

A single front-loaded sentence with no filler, which is appropriate sizing for a simple read. It is efficient but borders on under-specified rather than optimally informative.

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 three-parameter read tool with full schema coverage and readOnlyHint, the essentials are covered, so an agent can invoke it. It is silent on the shape of the history returned and on pagination expectations, which is a modest gap given there is no output 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 issueId, page, and perPage are all documented in the schema itself. The description adds no format or syntax detail beyond them, which lands at the baseline 3 for schema-complete tools.

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?

States a specific verb ('Get') and resource ('change history (changelog) of an issue'), which is clear enough to distinguish it from sibling readers like get_issue_comments or get_issue_worklog. It does not, however, explicitly differentiate itself from the closest sibling, get_entity_events, leaving the agent to guess between changelog and general 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 gives no when-to-use context, no prerequisites, and names no alternative tool. An agent must infer from the name alone whether this or get_entity_events is the right call for an issue's history.

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

get_issue_commentB
Read-only

Get one comment of an issue by id (numeric id or longId).

ParametersJSON Schema
NameRequiredDescriptionDefault
expandNo"attachments", "html" or "all"
issueIdYesIssue key or id
commentIdYesComment id or longId

TDQS

B3.2/5.0
Behavior3/5

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

readOnlyHint=true already declares this is a safe read, so the description's main added value is noting the accepted id forms ('numeric id or longId'). It doesn't disclose return shape or what happens if the id doesn't exist, but with annotations covering safety a 3 is appropriate.

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?

A single economical sentence with the resource and key front-loaded. No waste, though it is almost too terse to be highly informative.

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?

For a simple single-entity getter with full annotation and schema coverage and no output schema, the description covers the essentials. The lack of any disambiguation from the plural sibling is the only real gap.

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 including the id formats and the expand options. The description's '(numeric id or longId)' simply restates the schema's commentId note.

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?

States a specific verb+resource ('Get one comment of an issue') and its lookup key. The singular 'one comment' implicitly contrasts with the plural sibling get_issue_comments, but it doesn't name that sibling explicitly.

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 vs get_issue_comments or get_entity_comment, and no prerequisites. Usage is only inferable from the fact that it returns a single comment by id.

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

get_issue_commentsC
Read-only

List comments of an issue.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number, default 1
issueIdYesIssue key or id
perPageNoResults per page, default 50

TDQS

C2.9/5.0
Behavior2/5

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

readOnlyHint=true already tells the agent this is a safe read, so the description's only remaining job is to add behavioral context — and it adds none. It says nothing about pagination defaults, result ordering, or whether the list includes system/deleted comments, all of which matter for a listing tool.

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?

A single front-loaded sentence with zero waste, which is appropriate for a simple list endpoint. It is efficient but borders on under-specified rather than maximally informative.

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 read-only, three-parameter list tool with a fully documented schema and no output schema, the description is minimally viable. It nonetheless omits sibling differentiation and pagination/ordering behavior that an agent would need to call it confidently.

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 issueId, page, and perPage are already fully documented in the schema. The description adds no syntax or format detail beyond that, so the baseline 3 applies.

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?

States a specific verb and resource ('List comments of an issue'), so the agent knows this is a read operation on issue comments. However, it does nothing to distinguish itself from the near-identical sibling get_issue_comment (singular) or from get_entity_comments, leaving the agent to guess which comment-listing endpoint applies.

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 when-to-use guidance, no prerequisites, and no mention of alternatives such as get_issue_comment for a single comment. The agent must infer the context of use entirely from the name.

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

get_issue_fieldA
Read-only

Get parameters of a single global issue field by its key (e.g. "tags", "priority").

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldIdYesField key

TDQS

A3.7/5.0
Behavior3/5

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

readOnlyHint=true already tells the agent this is a safe read, and the description is consistent with that. It adds useful context by distinguishing 'global issue field' from queue-local fields and by noting the key form, but says nothing about return shape or error behavior on an unknown key.

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?

A single front-loaded sentence with the verb, resource, scope and examples packed in; nothing is redundant or padded.

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?

For a one-parameter read tool whose annotation already covers the safety profile and with no output schema to describe, the description supplies enough to call it correctly. Only the global-vs-local distinction and key examples are covered, which is adequate at this complexity.

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?

Schema coverage is 100%, so baseline is 3, but the description goes beyond the schema's bare 'Field key' by giving concrete example values ('tags', 'priority') that clarify the expected key format and help the agent supply a valid 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?

States a specific verb (Get) and resource (parameters of a single global issue field) and scopes it by key. The words 'single' and 'global' implicitly separate it from the plural get_issue_fields and the queue-local field siblings, though no sibling is named explicitly.

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

Usage Guidelines3/5

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

Usage is only implied: you call this when you already have a field key and need that one field's parameters. There is no explicit when-to-use, when-not-to-use, or pointer to an alternative such as get_issue_fields for listing.

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

get_issue_fieldsA
Read-only

List all global issue fields (standard and custom) with their types and options — useful to discover field ids for filters, create and edit operations.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

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

readOnlyHint=true already establishes this as a safe read. The description adds value beyond the annotation by disclosing the shape of the result (fields with their types and options) and the practical purpose of the returned ids, which the annotation does not convey. It does not discuss pagination or result size, keeping it short of a 5.

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?

A single sentence that front-loads what is returned and then the reason to call it. No filler, no repetition of the name, every clause earns its place.

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?

With no output schema and no parameters, the description carries the burden of explaining return content, and it does so at a high level (fields, types, options). It omits any mention of ordering, size, or whether pagination applies, which is a minor gap for a discovery tool but not a blocking one.

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 takes zero parameters, so the baseline is 4. The description correctly implies a parameterless global listing and introduces no phantom inputs.

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?

States a specific verb ('List') and resource ('all global issue fields (standard and custom)') and names what is returned (types and options). The word 'global' implicitly distinguishes it from sibling scope variants like get_queue_local_fields and the singular get_issue_field, so an agent can route without opening a schema.

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

Usage Guidelines4/5

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

The clause 'useful to discover field ids for filters, create and edit operations' gives clear when-to-use context tied to concrete downstream tasks. It stops short of naming the alternative (get_issue_field for a single field) or stating exclusions, so it is clear context rather than full routing guidance.

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

get_issue_transitionsA
Read-only

List workflow transitions available for the issue (with target statuses). Use transition ids with execute_transition.

ParametersJSON Schema
NameRequiredDescriptionDefault
issueIdYesIssue key or id

TDQS

A4/5.0
Behavior3/5

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

readOnlyHint=true already covers the safety profile, so the description only needs to add behavioral context beyond that. It adds that target statuses are included in the output, but says nothing about ordering, availability rules, or whether transitions are permission-filtered. Useful but modest value on top of annotations.

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?

Two short sentences, purpose front-loaded, with the chaining instruction second. No filler or redundancy.

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?

For a single-param read tool with full annotation coverage and no output schema, the description covers what it returns at a high level and how the result is used. It could say more about the shape of a transition entry, but nothing essential to correct invocation is missing.

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?

Single parameter with 100% schema description coverage ('Issue key or id'), so the schema fully carries this burden. The description adds no syntax, format, or key-vs-id guidance beyond what the schema already states. Baseline 3 applies.

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?

States a specific verb and resource ('List workflow transitions available for the issue') and adds a scope detail (target statuses included), which is enough to tell it apart from execute_transition and bulk_transition_issues. An agent knows exactly what this returns without opening the schema.

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

Usage Guidelines4/5

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

The second sentence explicitly names the consuming tool ('Use transition ids with execute_transition'), which effectively communicates the when-to-use context as a read step preceding execution. It stops short of stating exclusions or what to do if no transitions are available, so not a full 5.

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

get_issue_typesA
Read-only

List all issue types (task, bug, epic, ...) available in the organization.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior3/5

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

readOnlyHint=true already tells the agent this is a safe read. The description adds the org-level scope ('available in the organization'), which is mildly useful, but says nothing about caching, ordering, pagination, or whether archived types are included. With annotations covering the safety profile, this is adequate but not rich.

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?

A single front-loaded sentence with no filler; the scope qualifier and examples each earn their place.

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?

For a trivial zero-parameter read with no output schema, the description is nearly sufficient. It does not describe the shape of the returned list, but the tool's simplicity keeps that gap minor.

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?

Zero parameters, so per the baseline the schema carries nothing the description needs to compensate for. The parenthetical examples clarify what an 'issue type' is, which is a small semantic addition.

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?

States a specific verb and resource ('List all issue types') and gives concrete examples (task, bug, epic). It is distinguishable from the mutating siblings create_issue_type/update_issue_type by the verb, but it does not explicitly position itself against sibling read lookups like get_statuses or get_priorities.

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 when-to-use guidance, no prerequisites, and no reference to alternatives in the large sibling family (get_statuses, get_priorities, get_resolutions, get_issue_fields). The agent must infer that this is a reference-data lookup.

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

get_issue_worklogB
Read-only

Get time tracking records (worklog) of an issue.

ParametersJSON Schema
NameRequiredDescriptionDefault
issueIdYesIssue key or id

TDQS

B3.3/5.0
Behavior2/5

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

readOnlyHint=true already tells the agent this is a safe read, and the description adds no further behavioral detail such as pagination, result limits, sorting, or auth requirements. It essentially restates the annotation rather than contributing new 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?

A single tight sentence with no wasted words; the action and resource are front-loaded and immediately scannable.

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 simple one-parameter read tool the definition is minimally adequate, but with no output schema present it says nothing about what the returned worklog records contain (fields, grouping, volume), leaving a gap an agent might care about.

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% and there is only one parameter (issueId), whose meaning is fully documented in the schema itself. The description adds no syntax, format, or edge-case detail beyond the schema, so the baseline 3 applies.

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?

States a specific verb (Get) plus resource (time tracking records/worklog) scoped to an issue, which clearly separates it from the add/edit/delete_worklog_record siblings. It does not, however, differentiate itself from find_worklog_records, which plausibly overlaps.

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

Usage Guidelines3/5

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

'...of an issue' implies the usage context (fetch worklog attached to a given issue), but the description gives no explicit when-to-use guidance or exclusions relative to find_worklog_records or the other worklog siblings.

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

get_prioritiesB
Read-only

List all issue priorities.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.3/5.0
Behavior2/5

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

readOnlyHint=true already tells the agent this is a safe read operation. The description adds no additional behavioral context such as ordering, pagination, or return format, so it provides minimal value beyond the annotation.

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?

A single, front-loaded sentence with zero waste. It is exactly as long as needed for a zero-parameter list tool.

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?

For a simple zero-parameter read-only list tool with an empty schema and readOnly annotation, the description covers the essential purpose. It could optionally mention return shape or ordering, but the omission is minor given the tool's simplicity.

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 takes zero parameters, so the description does not need to explain any. Baseline of 4 is appropriate since no parameter semantics are required beyond the simple 'list all' behavior.

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?

States a specific verb ('List') and resource ('issue priorities'), making the core action clear. However, it does not distinguish from siblings like create_priority or update_priority beyond the implied read-only nature of 'List all'.

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 when-to-use guidance, no alternatives mentioned, and no conditions for use are provided. The agent must infer that this is the tool for retrieving priorities based solely on the 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_projectC
Read-only

Get project parameters by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectIdYesProject id

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, so the safety profile is covered. Beyond that the description adds nothing behavioral: no error behavior for an unknown id, no note on permissions, and no hint at the shape of the returned project data even though no output schema exists.

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?

A single short sentence with zero filler and the key qualifier ("by id") up front. It is efficient, though its brevity edges toward under-specification rather than optimal density.

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 one-parameter read tool with a readOnly annotation, the minimum is met. But because there is no output schema, the description should ideally indicate what a project retrieval returns; "parameters" is too thin to fill that gap.

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 a single parameter, so the schema fully documents projectId. The description's "by id" merely restates the parameter name and adds no format, source, or constraint detail beyond it.

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 pairs a specific verb ("Get") with a resource ("project") and scopes to a single record by id, which is enough to separate it from get_projects. However, "project parameters" is vague about what is actually returned (settings? fields? metadata?), and nothing distinguishes it from siblings like get_project_queues or update_project.

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?

There is no guidance on when to use this tool versus get_projects, update_project, or the queue-scoped getters, and no stated preconditions (e.g., valid project id, permission requirements). The agent must infer usage entirely from the name.

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

get_project_queuesB
Read-only

List queues whose issues are included in a project.

ParametersJSON Schema
NameRequiredDescriptionDefault
expandNoComma-separated: all, projects, components, versions, types, team, workflows, fields
projectIdYes

TDQS

B3.2/5.0
Behavior2/5

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

readOnlyHint=true already tells the agent this is a safe read. The description adds nothing beyond that: no pagination behavior, no indication of what a returned queue contains, no note on whether the listing is filtered by issue membership vs. project association. With annotations covering safety, the bar is lower, but this adds essentially no 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.

Conciseness4/5

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

A single front-loaded sentence with zero filler; nothing is buried or redundant. It is efficient, though its brevity is also the source of the transparency gaps noted elsewhere.

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 two-parameter read-only list tool with no output schema, the definition is minimally viable. It leaves open return shape, pagination, and the semantics of the undocumented projectId, which an agent would need to call it confidently.

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 coverage is 50%: expand is fully documented in the schema, while projectId has no schema description. The description implies projectId identifies the project whose queues are listed, which adds some meaning, but it says nothing about expand's effect or the accepted projectId formats. Baseline 3 is appropriate given the partial 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?

States a specific verb (List) and resource (queues) plus a scoping qualifier: queues whose issues belong to a project. That implicitly separates it from the unscoped sibling get_queues, though it never names that sibling explicitly, so it falls just short of 5.

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

Usage Guidelines3/5

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

Usage is only implied by the word 'project' – an agent can infer you call this when you have a project and want its queues, but there is no explicit when-to-use, when-not-to-use, or pointer to get_queues/get_project as alternatives.

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

get_projectsB
Read-only

List all projects of the organization.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number, default 1
perPageNoResults per page, default 50

TDQS

B3.2/5.0
Behavior3/5

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

readOnlyHint=true already declares this a safe read, and the description adds the useful scope qualifier 'of the organization'. However, it says nothing about pagination behavior, defaults, or result ordering beyond what the schema parameters imply. With annotations carrying the safety profile, this is a modest but adequate addition.

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?

A single front-loaded sentence with zero filler, which is efficient. It is arguably under-specified rather than over-long, so conciseness is fine but the brevity comes at the cost of other dimensions.

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 simple paginated list tool with readOnlyHint annotations and no output schema, the essentials are present. Still, it never acknowledges that results are paginated despite having page/perPage parameters, which is a small but real gap for an agent planning to enumerate all projects.

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 page and perPage are already documented in the schema with their defaults. The description adds no pagination syntax or format detail beyond that, which is the expected baseline when the schema does 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?

States a clear verb+resource ('List all projects') and scopes it to the organization, so the agent knows it returns a collection rather than a single project. It does not explicitly distinguish itself from the sibling get_project (singular) or note the pagination pattern used by get_boards_paginate, so sibling differentiation is left to inference.

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?

There is no guidance on when to use this versus get_project for a single project, or versus get_project_queues for related data. No prerequisites, no mention of pagination expectations when the result set is large.

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

get_queueC
Read-only

Get queue parameters by key or id.

ParametersJSON Schema
NameRequiredDescriptionDefault
queueIdYesQueue key (case-sensitive) or id

TDQS

C2.7/5.0
Behavior2/5

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

readOnlyHint=true already tells the agent this is a safe read. The description adds no behavioral context beyond that — no note on lookup failure when a key/id doesn't match, no indication of what the 'parameters' payload contains.

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?

A single short sentence with no filler and the key lookup modes front-loaded. It is appropriately brief, though it is brief to the point of under-specification rather than being an efficiently dense definition.

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?

With one required parameter, a read-only annotation, and no output schema, the description is minimally viable, but 'queue parameters' leaves the return content undefined and the tool's place among many get_queue_* siblings unclear.

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% and the schema already documents 'Queue key (case-sensitive) or id'. The description's 'by key or id' merely restates the schema, adding no format, case-sensitivity, or precedence guidance beyond it.

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 verb 'Get' and resource 'queue' are present, but 'queue parameters' is ambiguous about what is actually returned (settings? configuration? metadata?). Among dozens of get_queue_* siblings, nothing here distinguishes it from get_queue_fields, get_queue_versions, or get_queues.

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 statement of when to use this tool versus alternatives such as get_queues (list) or the more specific get_queue_fields/get_queue_versions. No prerequisites or context given; the agent must infer usage entirely from the name.

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

get_queue_autoactionC
Read-only

Get parameters of one autoaction.

ParametersJSON Schema
NameRequiredDescriptionDefault
queueIdYes
autoactionIdYes

TDQS

C2.4/5.0
Behavior2/5

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

The readOnlyHint annotation already establishes that this is a safe read operation. The description adds almost no behavioral context beyond restating that it gets something, with no mention of permissions, return format, pagination, or missing/hidden autoactions.

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 one-sentence description is front-loaded and has no verbal waste, but it is so terse that it omits essential information needed for correct invocation. Conciseness is high, but structural completeness for the tool is weak.

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 two required parameters, zero schema descriptions, and no output schema, the description is not complete enough. It does not clarify the identifiers, the relationship to queueId, or what 'parameters' means in the return context.

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

Parameters1/5

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

Schema description coverage is 0%, so the description must compensate for undocumented parameters. It does not explain queueId, autoactionId, their types, or how they identify the target autoaction, leaving the LLM to infer both required parameters from schema names alone.

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 states a specific verb (Get) and resource (autoaction parameters) and scopes it to one item. It does not name or distinguish itself from the obvious sibling get_queue_autoactions, but the singular scope is clear enough.

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?

There is no explicit guidance on when to use this tool versus get_queue_autoactions, get_queue_autoaction_logs, or create_queue_autoaction. The singular retrieval intent is only implied by 'one autoaction'.

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

get_queue_autoaction_logsA
Read-only

Autoaction run logs. Without runId — list of launches; with runId — one launch with per-issue results (available for auto-update type autoactions).

ParametersJSON Schema
NameRequiredDescriptionDefault
runIdNoLaunch id for the detailed view
queueIdYes
autoactionIdYes

TDQS

A3.8/5.0
Behavior4/5

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

With readOnlyHint already declaring a safe read, the description still adds non-obvious behavior: the dual list/detail modes and the important constraint that the detailed per-issue view is only available for auto-update type autoactions. That availability caveat is genuinely valuable and goes beyond the annotations.

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?

Two short sentences, front-loaded with the resource and then the mode branching. No filler and nothing repeated from structured fields.

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?

For a read-only tool with three inputs and no output schema, the description covers the modes and the key availability constraint. It is nearly complete, missing only pagination/volume expectations for the list mode.

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 coverage is only 33% (only runId is documented in the schema), but the description does explain runId's effect on the result shape. queueId and autoactionId are left to inference, though their names are largely self-explanatory, and no id formats or types are clarified.

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?

States a specific resource (autoaction run logs) and a clear retrieval verb, and unlike most siblings it explains the two shapes the result can take. It does not explicitly differentiate itself from the similarly-named get_queue_trigger_logs, but the resource noun 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 Guidelines3/5

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

The description gives real branching guidance: omit runId for a list of launches, supply runId for a single launch with per-issue results. That is useful in-tool routing, but there is no when-to-use-vs-alternatives context and no mention of prerequisites such as needing an existing autoaction.

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

get_queue_autoactionsC
Read-only

List autoactions configured in a queue.

ParametersJSON Schema
NameRequiredDescriptionDefault
queueIdYesQueue key or id

TDQS

C2.9/5.0
Behavior2/5

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

readOnlyHint=true already tells the agent this is a safe read, so the description carries a lower burden. It nevertheless adds nothing beyond that: no indication of scope, ordering, result size, or whether access restrictions apply to the target queue.

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?

One short, front-loaded sentence with no wasted clauses. It is arguably too terse for the disambiguation it needs, but nothing in it is padding.

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 single-parameter read tool with an annotation and full schema coverage, the description is minimally adequate. With no output schema, it could usefully note that the result is a collection of autoactions and how it relates to get_queue_autoaction, which it omits.

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 coverage is 100% and queueId is documented as 'Queue key or id', so the schema does the heavy lifting. The description adds no meaning beyond the parameter name and the single required argument.

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?

States a specific verb (List) and resource (autoactions configured in a queue), which is clear on its own. However, it does not differentiate itself from the near-identical sibling get_queue_autoaction (singular) or create_queue_autoaction, leaving the plural/singular distinction to inference.

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 gives no when-to-use guidance, no prerequisites, and never names an alternative tool such as get_queue_autoaction. An agent must guess whether this is the list view or the single-item view.

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

get_queue_componentsB
Read-only

List components of a queue.

ParametersJSON Schema
NameRequiredDescriptionDefault
queueIdYesQueue key or id

TDQS

B3.1/5.0
Behavior2/5

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

The readOnlyHint=true annotation already establishes the safe-read profile, and the description adds nothing on top of it — no return shape, pagination, or scope caveats. For a list tool whose structured fields do the heavy lifting, the description contributes essentially no 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?

A single short sentence with the resource and scope front-loaded and zero filler. Nothing is redundant or padded.

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?

With one required param, full schema coverage, and read-only annotations, the definition is minimally sufficient. There is no output schema, so some indication of what the listing returns and whether it is paginated would help, but it is adequate for a simple list 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?

Schema description coverage is 100% and the single queueId parameter is documented as "Queue key or id" in the schema, so the baseline of 3 applies. The description's "of a queue" phrasing adds only marginal meaning beyond the schema.

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?

States a specific verb (List) and resource (components of a queue), and the "of a queue" scope distinguishes it from the sibling get_components, which lists components more broadly. It does not explicitly name or contrast with that sibling, so it falls short of a 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 gives no when-to-use statement, no exclusions, and no routing to alternatives such as get_components or get_component. An agent must infer from the tool name alone that this is the queue-scoped variant.

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

get_queue_fieldsA
Read-only

Get fields available/required for issues of the queue (includes required flags and allowed values) — useful before creating an issue in this queue.

ParametersJSON Schema
NameRequiredDescriptionDefault
queueIdYesQueue key or id

TDQS

A3.9/5.0
Behavior4/5

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

The readOnlyHint annotation already covers the safety profile, and the description adds real value by disclosing the return content ('required flags and allowed values'). With no output schema present, this return-shape disclosure is the description's main burden and it carries it well, though it doesn't mention pagination or format details.

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?

A single compact sentence that front-loads the core purpose and appends the pre-creation hint via an em-dash clause. No redundancy, though it could trim slightly without loss.

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?

For a simple one-parameter read tool, the description plus the readOnlyHint annotation and the parameter schema cover everything needed to invoke it correctly, and it even describes the returned field metadata in lieu of an output schema. Complete enough for the tool's low 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 coverage is 100% and the single queueId parameter is already documented as 'Queue key or id', so the schema does the heavy lifting. The description adds no additional meaning about the parameter (e.g., accepted formats beyond what the schema says). Baseline 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?

States a concrete verb+resource ('Get fields available/required for issues of the queue') and clarifies the scope is queue-level via the queueId parameter, distinguishing it from the issue-level get_issue_fields/g_get_queue_local_fields siblings. It stops short of explicitly naming those siblings, so a 4 rather than a 5.

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

Usage Guidelines4/5

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

Gives a clear usage context: 'useful before creating an issue in this queue.' It tells the agent when to reach for it (pre-creation) but offers no explicit alternatives or when-not conditions, so it's clear context without exclusions.

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

get_queue_group_accessC
Read-only

Get group permissions in a queue.

ParametersJSON Schema
NameRequiredDescriptionDefault
groupIdYes
queueIdYes

TDQS

C2.7/5.0
Behavior2/5

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

The readOnlyHint annotation already establishes this is a safe read, so the description carries a lower burden, but it adds nothing beyond that: no indication of what permissions are returned, whether inherited/effective permissions are included, or any auth requirement. It is essentially a restatement of the name.

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?

A single front-loaded sentence with zero filler. It is efficient, though the extreme brevity borders on under-specification rather than deliberate concision.

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 two-parameter read tool with no output schema and 0% parameter documentation, the description should at least characterize the returned permission data and disambiguate from sibling access tools. It does neither, leaving meaningful gaps.

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

Parameters2/5

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

Schema description coverage is 0%, so both parameters (queueId, groupId) are undocumented in the schema. The description vaguely ties the call to a queue and a group, giving weak semantic mapping, but adds no format, ID type, or scoping detail for either required 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?

States a specific verb (Get) and resource (group permissions in a queue), and the 'group' qualifier implicitly separates it from the sibling get_queue_user_access. It does not name or contrast with that sibling explicitly, so it lands just short of 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?

No when-to-use guidance, no prerequisites, and no reference to the adjacent tools (get_queue_user_access, get_component_group_access, set_queue_access). Usage must be inferred entirely from the name.

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

get_queue_local_fieldC
Read-only

Get one local field of a queue by its key.

ParametersJSON Schema
NameRequiredDescriptionDefault
queueIdYes
fieldKeyYesLocal field key (from get_queue_local_fields)

TDQS

C2.8/5.0
Behavior2/5

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

Annotations only declare readOnlyHint=true, so the description carries most of the burden. It adds nothing about error behavior for a missing field/queue, permissions required, or what is returned, leaving a read-only lookup largely unexplained.

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?

One short, front-loaded sentence with no filler. However, the brevity edges into under-specification rather than economical completeness.

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 simple two-parameter read tool with readOnlyHint and no output schema, the minimum is arguably met, but return shape and failure modes for a missing field are absent.

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

Parameters2/5

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

Schema coverage is only 50%: fieldKey is documented but queueId is not. The phrase "by its key" loosely maps to fieldKey but adds no format or sourcing detail beyond the schema, and queueId gets no meaning from either source.

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?

States a specific verb (Get) and resource (one local field of a queue) with the lookup key named. It is distinguishable from create/update_queue_local_field by the verb, though it never explicitly contrasts itself with the plural sibling get_queue_local_fields.

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 when-to-use guidance and no alternatives or prerequisites mentioned. The agent must infer that this is for single-field retrieval versus the list-returning sibling.

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

get_queue_local_fieldsA
Read-only

List local (queue-specific) issue fields of a queue. Field ids look like "--" and can be used in create/edit issue requests.

ParametersJSON Schema
NameRequiredDescriptionDefault
queueIdYesQueue key or id

TDQS

A3.6/5.0
Behavior3/5

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

readOnlyHint=true already declares this as a safe read, so the safety profile is covered. The description adds the field id format convention ('<queue id>--<field key>'), which is genuinely useful context, but omits return shape, ordering, or pagination. With annotations carrying safety, a 3 is appropriate.

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?

Two sentences, zero waste, with the purpose front-loaded and the id-format note following as supporting detail.

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?

A simple single-parameter read tool with full schema coverage and no output schema; the description supplies the id-format convention an agent needs to reuse the results. Nothing critical is missing, though naming the alternative sibling would make routing fully unambiguous.

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% for the single queueId parameter, and the schema already documents it as 'Queue key or id'. The description adds no further parameter detail, so the schema does the heavy lifting; baseline 3 applies.

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?

States a specific verb ('List') and resource ('local (queue-specific) issue fields of a queue'). The 'local/queue-specific' qualifier distinguishes it in spirit from siblings like get_queue_fields and get_issue_fields, but it never names those alternatives, so differentiation is implied rather than explicit.

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

Usage Guidelines3/5

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

Usage is implied through the note that field ids 'can be used in create/edit issue requests', pointing to a fetch-then-write workflow. It does not state when to prefer this over get_queue_fields or get_issue_fields, leaving selection to inference.

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

get_queue_macroC
Read-only

Get one macro of a queue.

ParametersJSON Schema
NameRequiredDescriptionDefault
macroIdYes
queueIdYes

TDQS

C2.4/5.0
Behavior2/5

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

The readOnlyHint=true annotation already tells the agent this is a safe non-mutating read, so the description is not required to restate safety. But it adds nothing else: no note on whether the macro must exist, what error occurs for an unknown macroId, or any scoping behavior. It is pure restatement of the title.

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?

A single short sentence with no waste and the resource is front-loaded. It is genuinely concise rather than padded, but it is also so thin that brevity tips into under-specification.

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 two-required-parameter getter with no output schema, the description should at minimum disambiguate IDs and note the list sibling. With 0% parameter documentation and no return or error context, it is not complete enough for reliable invocation.

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

Parameters2/5

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

Schema description coverage is 0% and neither macroId nor queueId is described anywhere. The phrase "one macro of a queue" weakly implies the two identifiers, which is the only compensation offered, but it says nothing about accepted formats (string vs number) or whether macroId is queue-scoped.

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?

"Get one macro of a queue" names a specific verb (get) and a resource (queue macro), so the basic operation is discernible. However, it never distinguishes itself from its obvious siblings get_queue_macroses (the list form) or update_queue_macro, and "macro" is left undefined. It is adequate but leaves the agent to infer the singular-vs-list relationship.

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 when-to-use guidance, no prerequisites, and no named alternative is given. The agent must guess that this is the single-item fetch paired with get_queue_macroses. Nothing in the text routes the caller.

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

get_queue_macrosesB
Read-only

List macroes of a queue (saved bundles of field updates + comment text).

ParametersJSON Schema
NameRequiredDescriptionDefault
queueIdYesQueue key or id

TDQS

B3.2/5.0
Behavior3/5

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

readOnlyHint=true already declares this a safe read. The description adds useful domain context (macros are saved bundles of field updates plus comment text), but says nothing about pagination, ordering, or what is returned when a queue has no macros.

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?

A single front-loaded sentence with the resource named first and the clarifying definition last. No filler; it could only be improved by spending the same words on sibling differentiation instead.

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?

For a single-parameter read-only list tool with annotations and full schema coverage, this is nearly sufficient. The only real omission is disambiguation from get_queue_macro and any hint about result volume.

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?

Only one parameter and the schema already documents it fully ("Queue key or id"). The description's "of a queue" adds no syntax or format detail beyond the schema, so the baseline of 3 applies.

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?

Clear verb+resource ("List macroes of a queue") plus a parenthetical defining what a macro is. It does not, however, distinguish itself from its singular sibling get_queue_macro, which likely returns a single macro — an agent could confuse the two.

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 when-to-use guidance, no prerequisites, and no mention of the alternative get_queue_macro for retrieving one macro. The plural name implies enumeration only by inference.

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

get_queuesC
Read-only

List queues of the organization.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number, default 1
perPageNoResults per page, default 50

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, so the safety profile is covered. The only added behavioral context is that results are organization-scoped; pagination behavior, ordering, and result size are left unstated.

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?

A single short, front-loaded sentence with no filler. It is efficient, though there is room to fold in routing or pagination hints at little cost.

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 simple read-only list tool with full schema coverage and a safety annotation, the description is adequate but thin. It omits routing versus sibling queue-listing tools, which is the main thing an agent would still need.

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% (page and perPage are documented inline with defaults), so the schema carries parameter semantics. The description adds nothing beyond that, which is the expected baseline when the schema 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 gives a clear verb and resource ('List queues') plus a scope ('of the organization'), so an agent can distinguish it from get_queue (singular). It stops short of explicitly naming siblings like get_project_queues, so it doesn't fully differentiate.

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?

There is no when-to-use or when-not-to-use guidance and no mention of alternatives such as get_queue for a single queue or get_project_queues for project-scoped listing. Usage is only implied by the verb.

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

get_queue_tagsC
Read-only

List tags used in a queue.

ParametersJSON Schema
NameRequiredDescriptionDefault
queueIdYesQueue key or id

TDQS

C2.9/5.0
Behavior2/5

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

readOnlyHint=true already tells the agent this is a safe read, and the description adds nothing beyond that — no pagination behavior, no scoping or permission notes, no indication of whether tags are queue-wide or inherited. With annotations covering the safety profile, the description contributes almost no additional 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.

Conciseness4/5

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

A single front-loaded sentence with no filler or redundancy. It is appropriately sized for a trivial list tool, though it is arguably too terse to earn a 5.

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 one-parameter read tool with no output schema, the definition is minimally viable: the queue is identified and the safety profile is covered by annotations, but nothing is said about the return shape (tag names vs. objects) or ordering. Adequate, with a clear gap on what comes back.

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?

There is a single parameter with 100% schema description coverage ('Queue key or id'), so the schema already carries the semantics. The description only implies that the queue is the scope; baseline 3 applies 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.

Purpose4/5

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

States a specific verb (list) and resource (tags used in a queue), which is clearer than the surrounding CRUD siblings like set_queue_access or delete_queue_tag. It does not, however, explicitly distinguish itself from delete_queue_tag or explain how tag listing relates to tag 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?

There is no statement of when to call this tool, no prerequisites, and no mention of the related tag operations (delete_queue_tag) that an agent might confuse it with. Usage must be inferred entirely from the name.

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

get_queue_triggerC
Read-only

Get one trigger of a queue.

ParametersJSON Schema
NameRequiredDescriptionDefault
queueIdYes
triggerIdYes

TDQS

C2.4/5.0
Behavior2/5

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

The readOnlyHint=true annotation already establishes this as a safe read, and the description adds nothing on top of it — no return shape, no pagination/error behavior, no note that it fails for a nonexistent trigger. With annotations covering the safety profile, a description that only restates the operation contributes almost no extra 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.

Conciseness4/5

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

A single short sentence with the action and target front-loaded and no padding. It is efficient for what it conveys, though it is terse to the point of under-specification rather than true 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 two-parameter required lookup with no output schema and no parameter documentation, the description leaves nearly everything to inference: what the inputs identify, what comes back, and how failure is surfaced. It is not sufficient to call the tool confidently without opening the schema.

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

Parameters2/5

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

Schema description coverage is 0%: neither queueId (string|number) nor triggerId (number) is documented anywhere. The phrase 'of a queue' weakly implies queueId is required, but the description gives no format, ID-type, or scoping detail to compensate for the fully undocumented schema.

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 verb 'Get' plus resource 'trigger of a queue' tells the agent this retrieves a single trigger, which implicitly separates it from both get_queue_triggers (list) and create/update_queue_trigger. However, it never explicitly differentiates itself from those siblings, and it does not say what a 'trigger' is or what identifying information is needed.

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?

There is no when-to-use guidance, no mention of when to prefer get_queue_triggers, and no prerequisites or exclusions. The only steer is the name itself, so the agent must infer usage entirely.

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

get_queue_trigger_logsB
Read-only

Webhook-action execution logs of a trigger (optionally for one issue, time range).

ParametersJSON Schema
NameRequiredDescriptionDefault
toNoYYYY-MM-DDThh:mm:ss.sss±hhmm
fromNoYYYY-MM-DDThh:mm:ss.sss±hhmm
limitNoRecords, default 10, max 100
issueIdNoFilter logs by issue
queueIdYes
triggerIdYes

TDQS

B3.2/5.0
Behavior3/5

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

readOnlyHint=true already tells the agent this is a safe, non-mutating read, lowering the disclosure bar. The description adds that the returned records are webhook-action executions, which is useful scope context, but says nothing about volume, ordering, pagination, or the default/max limit behavior.

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?

A single tight sentence with the core purpose front-loaded and the optional filters appended. No filler, though it is arguably terse enough to leave useful details out.

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?

With no output schema, six parameters, and only 67% schema coverage, the description is minimally adequate. It conveys what the logs are but not the shape or volume of the response, and the required queueId/triggerId pairing is left entirely to the 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 coverage is 67%, with from/to/limit/issueId already documented in the schema. The description's 'optionally for one issue, time range' loosely maps to issueId and the time params but adds no syntax or semantics beyond what the schema already states. Baseline 3 fits.

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?

States a specific verb and resource: 'Webhook-action execution logs of a trigger.' An agent can tell it retrieves logs rather than creating/updating something. It does not, however, distinguish itself from the close sibling get_queue_autoaction_logs, which is the same pattern for a different object.

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 parenthetical 'optionally for one issue, time range' hints at filtering but gives no when-to-use or when-not-to-use guidance, and never routes the agent between this and get_queue_autoaction_logs. The agent must infer the choice 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_queue_triggersC
Read-only

List triggers configured in a queue.

ParametersJSON Schema
NameRequiredDescriptionDefault
queueIdYesQueue key or id

TDQS

C2.9/5.0
Behavior2/5

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

readOnlyHint=true already tells the agent this is a safe read. The description adds only the scope ('configured in a queue') and says nothing about pagination, ordering, or result shape, so it contributes little beyond the annotation.

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?

One short, front-loaded sentence with no filler. It is efficient but so terse that it forfeits the chance to add routing or behavioral detail.

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 one-parameter read tool with annotations and a documented schema, this is minimally viable. Missing return/pagination context and any differentiation from get_queue_trigger keeps it at adequate rather than 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?

There is a single parameter with 100% schema description coverage, so the schema fully documents queueId. The description adds no format or semantics beyond what the schema provides; baseline 3 applies.

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?

States a specific verb (List) and resource (triggers configured in a queue), with 'List' implying the plural collection form. It does not explicitly distinguish itself from the singular sibling get_queue_trigger, but the plural verb does most of the work.

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 versus get_queue_trigger (single trigger) or the log/mutation siblings. The agent must infer that this is the enumeration call from the verb alone.

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

get_queue_user_accessC
Read-only

Get user permissions in a queue.

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdYesLogin or user id
queueIdYes

TDQS

C2.7/5.0
Behavior2/5

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

The readOnlyHint annotation already establishes this is a safe read, and the description adds nothing beyond that — no note on whether inherited/group permissions are included, no permission requirements, no indication of what fields the permission set contains. The description carries no behavior beyond the name.

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?

A single short, front-loaded sentence with no wasted words. It is concise but borders on under-specification rather than efficient density.

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 two-parameter lookup tool with no output schema and no annotation detail beyond readOnly, the description omits the queueId definition, the shape of the returned permission set, and how it relates to sibling access tools. An agent could call it, but with avoidable ambiguity.

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

Parameters2/5

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

Schema coverage is only 50%: userId has a description ('Login or user id') but queueId is undocumented. The description supplies no parameter meaning at all, so it fails to compensate for the schema gap as required at low 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?

States a clear verb+resource: fetching user permissions scoped to a queue. It does not distinguish itself from near siblings such as get_queue_group_access or get_entity_permissions, which an agent would need to choose between, so it falls short of a 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?

No guidance on when to use this versus get_queue_group_access, get_entity_access, or get_entity_permissions. The description gives no context or exclusions, so the agent must infer selection 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_queue_versionC
Read-only

Get one queue version by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldsNoComma-separated fields to include
versionIdYes

TDQS

C2.8/5.0
Behavior2/5

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

The readOnlyHint annotation already establishes this is a safe read, and the description adds nothing beyond that – no detail on what a queue version contains, error behavior for a missing id, or return shape. For a read-only lookup this is tolerable but the description contributes no 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.

Conciseness4/5

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

A single front-loaded sentence with zero waste, but it is terse to the point of under-specification rather than deliberately minimal.

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 simple read tool with no output schema this is roughly the minimum viable definition. It is missing guidance on sourcing the versionId and any distinction from get_queue_versions, both of which the agent would need to call it confidently.

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

Parameters2/5

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

Schema coverage is 50%: 'fields' is documented in the schema, but versionId has no description. The phrase 'by id' only loosely connects to the required versionId parameter and adds no format or type meaning beyond the schema's 'number'.

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?

States a specific verb (get), resource (queue version) and cardinality ('one ... by id'), which implicitly contrasts with the sibling list tool get_queue_versions. It does not, however, name or explicitly distinguish itself from that sibling or from update_queue_version/delete_queue_version.

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 when-to-use guidance, no prerequisites, and no alternatives named. The agent must infer from the name alone that this is a single-record lookup versus get_queue_versions for listing.

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

get_queue_versionsC
Read-only

List versions of a queue.

ParametersJSON Schema
NameRequiredDescriptionDefault
queueIdYesQueue key or id

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds nothing beyond that -- no pagination behavior, ordering, or scope of what versions are returned for a list-style 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?

A single short sentence with no filler, front-loaded with the verb. It is terse to the point of being under-specified rather than wasteful.

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?

With one required param, no output schema, and annotations covering read-only status, the definition is minimally viable. A list endpoint would benefit from noting pagination or result ordering, which is absent.

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% and there is only one parameter (queueId, "Queue key or id"), so the schema carries the full burden. The description adds no syntax or format detail beyond it, making the baseline 3 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?

States a specific verb+resource ("List versions of a queue"), so the agent knows it retrieves version history for a queue. It does not differentiate from close siblings such as get_queue_version (singular) or create_queue_version, which keeps it below a 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?

There is no statement of when to use this tool versus get_queue_version, create_queue_version, or any other variant. An agent must infer usage purely from the name.

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

get_queue_workflowsB
Read-only

Get workflows of a queue: map workflow id → bound issue types.

ParametersJSON Schema
NameRequiredDescriptionDefault
queueIdYes

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds useful context about the return mapping (workflow id → bound issue types), but does not disclose other behavioral traits like required permissions, pagination, or error 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?

A single front-loaded sentence with zero waste. The purpose and return shape are stated immediately and nothing needs trimming.

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 simple, read-only, one-parameter tool, the description covers purpose and return structure. However, it omits parameter semantics and any usage context, leaving the only required input undocumented in both schema and description.

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

Parameters2/5

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

Schema description coverage is 0% – queueId has no description. The phrase 'of a queue' only obliquely ties to the parameter and provides no format, constraint, or meaning beyond what the parameter name already implies.

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 states a specific verb and resource ('Get workflows of a queue') and clarifies the return shape ('map workflow id → bound issue types'). It distinguishes itself from global siblings like get_workflows by scoping to a queue, though it does not name any sibling explicitly.

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?

There is no explicit when-to-use guidance or contrast with alternatives such as get_workflows. The queue scope is inferable from the name and parameter, but the description adds no routing logic.

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

get_resolutionsB
Read-only

List all issue resolutions.

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?

readOnlyHint=true already tells the agent this is a safe read, so the description's job is to add context. It adds only the word 'all', with no mention of pagination, result ordering, caching, or whether archived/default resolutions are included, so it contributes essentially nothing beyond the purpose statement.

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?

A single front-loaded sentence with no filler or redundancy. It is efficient, though its brevity reflects a lack of content rather than disciplined editing.

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-param read tool with annotations covering the safety profile, the description is minimally sufficient. However, with no output schema present, it leaves the return shape (fields per resolution, ordering, completeness) entirely unspecified.

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 takes zero parameters, which is the baseline-4 case. There is nothing parameter-related for the description to clarify, and the schema (empty object) matches the 'all, unfiltered' claim.

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 names a specific verb and resource ('List all issue resolutions'), so the agent knows exactly what is returned. It is clear but generic: it does not distinguish this from the parallel lookups in the sibling set (get_statuses, get_priorities, get_issue_types), which share the same shape.

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?

There is no when-to-use, when-not-to-use, or alternative routing guidance. 'List all' weakly implies usage when resolution options are needed, but nothing in the text tells the agent when this call is appropriate versus create_resolution/update_resolution or the other enum-style lookups.

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

get_search_suggestA
Read-only

Autocomplete suggestions for issue summaries — use when the user references an issue by an imprecise name. Returns matching issues with keys.

ParametersJSON Schema
NameRequiredDescriptionDefault
inputYesText fragment of the issue summary
queueNoLimit suggestions to one queue

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so safety is covered. The description adds the return shape ('matching issues with keys'), which is useful given there is no output schema, but says nothing about result limits, ordering, or how partial matches are ranked.

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?

Two tight sentences, front-loaded with the resource and immediately followed by the usage condition. Every clause earns its place with no repetition of schema or annotation content.

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?

For a simple two-parameter read-only tool with no output schema, the description covers purpose, when to use it, and the shape of the return value ('issues with keys'). Only minor gaps remain (no cap on result count or fallback guidance), so it is largely 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% — both 'input' (text fragment) and 'queue' (limit to one queue) are documented in the schema itself. The description adds no syntax, format, or matching-behavior details beyond what the schema provides, so baseline 3 applies.

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?

States a specific verb+resource: 'Autocomplete suggestions for issue summaries.' An agent can distinguish this from find_issues/search_entities because it is framed as autocomplete for imprecise names rather than full search, though no sibling is named explicitly.

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

Usage Guidelines4/5

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

Gives a clear triggering condition: 'use when the user references an issue by an imprecise name.' It does not state when NOT to use it or name an alternative (e.g. find_issues) for exact/ambiguous lookups, so it falls short of a 5.

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

get_sprintC
Read-only

Get sprint parameters by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
sprintIdYes

TDQS

C2.9/5.0
Behavior2/5

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

readOnlyHint=true already tells the agent this is a safe read, so the description carries a lower burden, but it adds essentially nothing beyond that: no note on what 'parameters' covers, no error behavior for an unknown id, no pagination or scope context.

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?

A single short sentence with the key qualifier ('by id') front-loaded and no filler. It is efficient, though arguably terse to the point of under-specification rather than optimally sized.

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 one-parameter getter with no output schema and annotations covering the read-only profile, a minimal description can suffice. Still, the ambiguous term 'parameters' leaves the agent unsure whether this returns sprint settings, issues in the sprint, or metadata.

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 coverage is 0% and the single sprintId parameter is undocumented in the schema, so the description must compensate. 'by id' does at least identify the parameter's role as the lookup key, but it gives no type, format, or source guidance for an opaque id.

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?

States a specific verb (get) and resource (sprint) scoped by id, so the core operation is unambiguous. However, it does nothing to distinguish itself from siblings like get_board_sprints or get_issue, and 'parameters' is vague about what sprint data is actually 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 on when to use this versus get_board_sprints (list sprints for a board) or the other sprint lifecycle tools. There are no prerequisites, no mention of id formats or where a sprintId comes from, leaving the agent to infer everything.

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

get_statusesB
Read-only

List all issue statuses.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.3/5.0
Behavior2/5

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

The readOnlyHint=true annotation already establishes the safe-read profile, so the description's burden is only to add context beyond that. It adds nothing — no note on whether results are global or project-scoped, whether they are ordered, or whether pagination applies. "List all" merely corroborates the annotation rather than extending it.

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?

A single five-word sentence with no filler, front-loaded with the verb. Nothing could be trimmed without losing meaning.

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?

For a zero-parameter, non-destructive catalog read with no output schema and no annotations beyond read-only, the description covers the essentials an agent needs to invoke it. The only real gap is scope ambiguity (global vs. project-specific statuses), which is minor at this complexity level.

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 takes zero parameters, so there is no parameter semantics for the description to supply; the baseline for a parameterless tool applies. Nothing is misleading or missing on this dimension.

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?

States a clear verb and resource ("List all issue statuses"), so an agent immediately knows this is a read of the status catalog. It does not, however, distinguish itself from adjacent catalog-listing siblings such as get_priorities, get_resolutions, or get_issue_types beyond the noun itself.

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 gives no when-to-use guidance, no prerequisites, and names no alternative. An agent must infer from the name alone that this is the right call for enumerating statuses rather than, say, get_issue_transitions or get_issue_fields.

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

get_userC
Read-only

Get user info by login or uid.

ParametersJSON Schema
NameRequiredDescriptionDefault
loginYesUser login or uid, e.g. "user1" or "112000000001"

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, so the safety profile is covered, and the description adds essentially nothing beyond it. It does not say what happens when the login/uid is unknown, whether the result is cached or rate-limited, or what fields come back.

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?

A single front-loaded sentence with no filler. It is appropriately sized for the operation, though it is sparse enough that brevity shades into under-specification.

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 trivial one-parameter read with no output schema, the description is minimally adequate: the agent knows what to pass and that it is a read. It omits the return shape and error behavior for an invalid identifier, which would be the only useful additions.

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?

With one parameter at 100% schema coverage and an example value in the schema, the baseline is 3. The description's 'by login or uid' restates the schema description rather than adding format or validation detail.

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?

States a clear verb (get) and resource (user) with a lookup key (login or uid). This implicitly distinguishes it from the sibling list tools get_users and get_users_relative and the self-scoped get_current_user, but it never names them, so the differentiation is inferred rather than stated.

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?

There is no explicit when-to-use guidance and no alternatives are named, despite siblings (get_users, get_current_user, get_users_relative) that an agent could easily confuse with this one. The only hint is the singular 'user info', which leaves the agent to infer that this is a single-user lookup.

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

get_usersA
Read-only

List users of the organization (up to 10 000 — use get_users_relative beyond). Filter by email or group.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoUser uid to start from
emailNoFind user by email
groupNoFilter by group id
expandNo"groups" to include user groups
perPageNo

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds genuinely useful behavior beyond that: the 10,000-result ceiling and the org-wide scope, plus the implied cursor semantics of starting from a user id. It doesn't mention permission requirements, which would be the remaining 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?

A single sentence with the resource first, the cap second, and the fallback third. The parenthetical carries non-obvious information (the limit) rather than filler, so every clause earns its place.

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?

For a read-only list tool with no output schema, the description covers scope, result ceiling, filters, and the alternative sibling. Return shape and pagination mechanics are not described, but with readOnlyHint set and schema-level param docs, an agent has enough to call it correctly.

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 80%, so the schema already documents id, email, group and expand. The description only re-confirms the email and group filters and adds no syntax, format, or interaction detail beyond the structured fields, so baseline 3 applies.

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?

States a specific verb (List) and resource (users of the organization) and immediately scopes it with a hard cap (up to 10,000). It also names the sibling to use beyond that cap (get_users_relative), so an agent can distinguish it from get_current_user and get_users_relative without opening any schema.

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

Usage Guidelines4/5

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

Gives a clear routing rule: use this up to 10,000 users, otherwise use get_users_relative. It also names the two supported filter dimensions (email, group). It stops short of stating when-not to use it otherwise (e.g. single-user lookup via get_user), so it's clear context but not exhaustive exclusions.

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

get_users_relativeA
Read-only

List users with relative pagination (works beyond the 10 000-user limit of get_users). Pass the last user uid as "id" to get the next page.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoUser uid to start from
expandNo"groups" to include user groups
perPageNo

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds non-trivial behavioral detail the schema doesn't: the pagination model is cursor-based (relative), requiring the last returned uid to advance. It does not describe return shape or end-of-list signaling, but the pagination mechanism is the key behavioral fact.

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?

Two tight sentences, purpose front-loaded and the pagination mechanic immediately after. Every clause carries information; nothing is filler.

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?

No output schema exists, yet for a read-only list tool with covered safety annotations, the description supplies purpose, the sibling comparison, and the pagination contract. The main omission is guidance on how the caller knows pagination has ended.

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?

Schema coverage is 67%, and the description adds real meaning to the id parameter beyond the schema's terse "User uid to start from" by explaining it should be the last user's uid to fetch the next page. The expand and perPage params rely on their schema text, with perPage lacking any description, leaving a small gap.

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?

States a specific verb (List) and resource (users) and uniquely differentiates itself from the sibling get_users by naming the 10,000-user limit that motivates this tool. An agent can distinguish it from get_users without opening either schema.

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

Usage Guidelines4/5

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

Clears up when to prefer this over get_users (works beyond the 10k limit) and gives the operational condition for the next page (pass last uid). It doesn't explicitly instruct when to start with get_users versus this tool, but the condition that selects it is clear.

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

get_workflowC
Read-only

Get one workflow by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
workflowIdYes

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds nothing beyond that: no note on error behavior for an unknown id, permissions required to read a workflow, or what a workflow object contains.

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?

A single front-loaded sentence with zero filler and no redundancy. It is efficient, though at this length the brevity borders on under-specification rather than polished 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 trivial one-parameter read with readOnlyHint covering safety and no output schema, the description is the minimum viable. It omits any mention of what is returned or how an unknown workflowId behaves, but nothing critical blocks 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?

Schema description coverage is 0%, so the description carries some burden, but 'by id' plus the self-documenting property name workflowId (string) conveys the required identifier. It adds no format, sourcing, or example guidance beyond that single hint.

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?

States a specific verb+resource ('Get one workflow') plus the lookup key ('by id'), and the singular 'one workflow' implicitly separates it from the plural get_workflows sibling. It stops short of explicitly naming that sibling, so it doesn't earn a 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?

No statement of when to use this versus get_workflows, get_queue_workflows, or get_workflow-related updaters. The 'by id' phrasing weakly implies single-item lookup, but no alternative or precondition is ever named.

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

get_workflowsC
Read-only

List all workflows of the organization.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.8/5.0
Behavior2/5

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

readOnlyHint=true in annotations already establishes this is a safe read, so the description carries a lighter burden. 'Of the organization' adds the useful nuance that there is no queue/user scoping, but nothing is said about pagination, result caps, or ordering — meaningful gaps for a list endpoint with no output schema.

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?

A single short sentence, front-loaded with the verb and resource, with no filler or repetition. It is efficient, though its brevity leaves scope and return behavior unaddressed.

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?

With no output schema, no pagination cues, and siblings that suggest paginated variants exist (get_boards_paginate), the description does not say whether results are paginated, capped, or what a workflow record contains. For a bare list endpoint this leaves the agent under-informed about what to expect back.

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 takes zero parameters, so the baseline of 4 applies; there is nothing for the description to clarify or compensate for regarding inputs. No parameter-related gaps exist by construction.

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?

States a clear verb and resource ('List all workflows') with an organization-level scope, so the basic purpose is legible. However, it does not distinguish itself from the singular sibling get_workflow, the queue-scoped get_queue_workflows, or create_workflow/update_workflow, so an agent must infer which listing tool to pick. Accurate but not distinguishing.

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 when-to-use guidance at all: nothing says when to call this versus get_workflow or get_queue_workflows, and no exclusions or prerequisites are given. Usage must be inferred entirely from the name.

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

import_issueA

MIGRATION (admin): create an issue with a custom author and creation date. Use only when migrating from another tracker.

ParametersJSON Schema
NameRequiredDescriptionDefault
endNo
keyNoCustom issue key
tagsNo
typeNoIssue type id
queueYes
spentNoMilliseconds
startNo
statusNoStatus id
uniqueNo
summaryYes
assigneeNo
deadlineNo
priorityNoPriority id
createdAtYesYYYY-MM-DDThh:mm:ss.sss±hhmm, not in the future
createdByYesAuthor login or id
followersNo
updatedAtNo
updatedByNo
estimationNoMilliseconds
resolutionNoResolution id (with resolvedAt/By)
resolvedAtNo
resolvedByNo
descriptionNo
storyPointsNo
originalEstimationNoMilliseconds

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the safety profile is covered. The description adds context the annotations do not: it requires admin privileges and is scoped to migration, implying the custom-author/backdated fields are the point of the call. It still says nothing about duplicate keys, idempotency, or failure modes for a 25-parameter write.

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?

Two short sentences, fully front-loaded, with zero filler. The admin/migration caveat comes before the action, which is the right priority order.

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 25-property mutation tool with 40% schema coverage and no output schema, the description is far too thin. It omits handling of most optional migration fields, key-collision behavior, and the response, leaving an agent under-equipped to call it correctly.

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

Parameters2/5

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

Schema description coverage is only 40% across 25 parameters, so the description is expected to compensate. It only hints at createdAt/createdBy ('custom author and creation date'), leaving fields like key, unique, resolution, status, and type undocumented in both schema and description.

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?

States a specific verb and resource ('create an issue') plus the two defining traits ('custom author and creation date') that separate it from the sibling create_issue. An agent can route between import_issue and create_issue without opening either schema.

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

Usage Guidelines4/5

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

Gives an explicit restricted-use condition: 'Use only when migrating from another tracker.' This is clear when-to-use guidance and implicitly excludes normal issue creation, but it never names the obvious alternative (create_issue) for non-migration cases.

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

import_issue_attachmentA

MIGRATION (admin): attach a local file with a custom author and date, to an issue or to one of its comments.

ParametersJSON Schema
NameRequiredDescriptionDefault
issueIdYesIssue key or id
filePathYesPath to the file on this machine
filenameNoStored name (defaults to the original)
commentIdNoAttach to this comment instead of the issue
createdAtYesBetween issue creation and last update
createdByYes

TDQS

A3.9/5.0
Behavior4/5

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

Annotations only declare readOnlyHint=false and destructiveHint=false. The description adds meaningful context beyond them: this requires admin privileges and is a migration tool that overrides the author and timestamp. It still omits side effects such as notifications or the treatment of the source file, so it is not exhaustive.

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?

A single sentence that front-loads the 'MIGRATION (admin)' qualifier before the action and target. Every clause carries information; nothing is redundant.

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?

For a six-parameter mutation tool with no output schema and 83% schema coverage, the description gives enough to call it correctly: the admin/migration framing, the issue-vs-comment target, and the author/date override. Missing specifics (file constraints, side effects) are minor.

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?

Schema coverage is 83% (baseline 3), and the description adds semantic framing: 'custom author and date' clarifies the purpose of createdAt/createdBy, and 'to an issue or one of its comments' explains the commentId branch. It does not add format or validation detail, but it meaningfully elevates two thinly documented 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?

States a specific verb and resource ('attach a local file ... to an issue or to one of its comments') and scopes it as 'MIGRATION (admin)'. The custom-author/date qualifier implicitly separates it from the ordinary upload_issue_attachment sibling, though it never names that sibling.

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

Usage Guidelines3/5

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

The 'MIGRATION (admin)' tag implies the use case (backfilling history with overridden author/date), but there is no explicit when-to-use vs. when-not, no named alternative (e.g. upload_issue_attachment), and no stated prerequisites beyond the parenthetical.

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

import_issue_commentB

MIGRATION (admin): add a comment with a custom author and date.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
issueIdYesIssue key or id
createdAtYesWithin the issue create→last-update window
createdByYes
updatedAtNo
updatedByNo

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the write-but-not-destructive profile is covered. The description adds real value beyond that — admin authorization requirement and the ability to set custom author/date (backdating) — but says nothing about idempotency, duplicate handling, or ordering effects of backdated timestamps.

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?

A single tight sentence with the critical scope marker ('MIGRATION (admin)') front-loaded. No wasted words; every clause carries information, though it is arguably too terse for a 6-parameter import 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?

For a migration/import mutation with no output schema and annotations covering only the safety profile, the description supplies the essential context (admin-only, migration intent, custom author/date) but omits field-level behavior and any caveats about backdated data. Minimum viable but with clear gaps.

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

Parameters2/5

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

Schema description coverage is only 33% (issueId and createdAt are the only documented properties). The description's 'custom author and date' loosely maps to createdBy/createdAt but leaves text, updatedAt, and updatedBy entirely unexplained in both schema and description. It does not compensate for the coverage gap.

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?

States a specific verb (add) and resource (comment) and the special twist — custom author and date — plus a 'MIGRATION (admin)' scope tag. That scope tag implicitly distinguishes it from the regular add_comment sibling, though it never names that sibling explicitly.

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

Usage Guidelines3/5

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

'MIGRATION (admin)' signals the intended scenario (data migration, admin-only) and thereby implies normal commenting should use add_comment instead, but this is left to inference rather than stated. No explicit when-not or prerequisite text beyond the parenthetical.

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

import_worklog_recordB

MIGRATION (admin): add a worklog record with a custom author and date.

ParametersJSON Schema
NameRequiredDescriptionDefault
startYes
commentNo
issueIdYesIssue key or id
durationYesISO 8601, e.g. "PT2H30M"
createdAtYes
createdByYes

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the mutation-safety profile is covered. The description adds the admin-requirement and migration-only framing, which is real value beyond annotations, but it omits side effects such as whether notifications fire or whether the custom date/author bypasses normal validation.

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?

A single short sentence, front-loaded with the MIGRATION (admin) qualifier and the core action. Nothing is wasted, though the brevity comes at the cost of substance.

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 6-parameter mutation with 5 required fields, no output schema, and only 33% schema coverage, one sentence is thin. It omits what happens on success, whether the custom author/date have constraints, and any admin/permission details beyond a bare label.

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

Parameters2/5

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

Schema description coverage is only 33%: start, createdAt, createdBy, and comment have no descriptions. The description mentions 'custom author and date,' loosely mapping to createdBy/createdAt, but adds no format or meaning for the undocumented parameters, failing to compensate for the coverage gap.

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?

States a specific verb ('add') and resource ('worklog record') and flags the distinguishing traits versus the ordinary worklog tool: a custom author and date, plus the MIGRATION context. It does not name the sibling add_worklog_record explicitly, but the 'custom author and date' qualifier lets an agent differentiate.

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

Usage Guidelines3/5

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

The 'MIGRATION (admin)' prefix implies this is for data-migration scenarios and requires admin rights, which is useful context. However, it never states when to prefer this over add_worklog_record, nor any exclusions or prerequisites, leaving the agent to infer the routing.

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

list_entity_attachmentsC
Read-only

List files attached to a project, portfolio or goal.

ParametersJSON Schema
NameRequiredDescriptionDefault
entityIdYes
entityTypeYesEntity type: "project", "portfolio" or "goal"

TDQS

C2.8/5.0
Behavior2/5

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

readOnlyHint=true already tells the agent this is a safe read. Beyond that the description adds nothing behavioral: no pagination, no ordering, no return shape, no auth or rate-limit context. The bar is lower with annotations, but there is essentially no added context to credit.

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?

A single front-loaded sentence with no filler. It is efficient, though it partially restates the enum values already present in the schema.

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 simple two-parameter read tool with no output schema, the description is minimally adequate. It omits anything about result shape, pagination, or ordering, which an agent would need since no output schema exists.

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

Parameters2/5

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

Schema description coverage is only 50%: entityType is documented and enumerated, but entityId is left bare. The description does not compensate by explaining that entityId is the id of the referenced project/portfolio/goal, so the undocumented half stays unexplained.

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?

States a specific verb (list) and resource (files attached to an entity), and scopes it to project/portfolio/goal, which separates it from list_issue_attachments and get_entity_attachment. It does not explicitly name a sibling, so it stops short of a 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 gives no when-to-use guidance and never contrasts itself with the many nearby alternatives (get_entity_attachment for a single attachment, download_entity_attachment, list_issue_attachments). Usage must be inferred entirely from the name.

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

list_issue_attachmentsB
Read-only

List files attached to an issue and its comments.

ParametersJSON Schema
NameRequiredDescriptionDefault
issueIdYesIssue key or id

TDQS

B3.4/5.0
Behavior3/5

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

readOnlyHint=true already declares this a safe read, lowering the bar. The description usefully discloses that comment attachments are included in scope, but says nothing about pagination, result limits, or ordering, so it adds only modest context beyond annotations.

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?

A single tight sentence with the scope constraint front-loaded. No wasted words.

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?

For a simple read-only list tool with full parameter documentation and safety covered by annotations, this is nearly complete. The only gap is return-shape/pagination behavior, which is minor given there is no output 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 coverage is 100% and the single issueId parameter is fully documented as 'Issue key or id'. The description adds nothing about the parameter, so the baseline 3 applies.

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?

States a specific verb (List) and resource (files attached to an issue), plus the non-obvious scope detail that attachments on comments are included. It distinguishes from the singular get_issue_attachment, though it doesn't explicitly differentiate from list_entity_attachments.

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 when-to-use guidance or prerequisites. With siblings like list_entity_attachments, get_issue_attachment, and download_issue_attachment, the agent gets no explicit routing help and must infer that this is the bulk-listing variant for issues.

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

move_entity_checklist_itemC

Move a checklist item of a project/portfolio before another item.

ParametersJSON Schema
NameRequiredDescriptionDefault
beforeYesId of the item to insert before
itemIdYes
notifyNo
entityIdYes
entityTypeYesChecklists are available for projects and portfolios only

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare this is a non-destructive mutation (readOnlyHint=false, destructiveHint=false), so the description should add context beyond that. It says nothing about whether reordering affects other items, what 'notify' triggers, or what permissions are required. Only the vague 'before another item' reordering semantics are conveyed.

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?

A single, front-loaded sentence with zero waste. It is efficient, though its brevity reflects under-specification rather than true 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 5-parameter mutation tool with no output schema and only 40% schema coverage, the description is inadequate. It omits the notify behavior, the entityId/entityType relationship, and any reordering constraints an agent needs to call it correctly.

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

Parameters2/5

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

Schema description coverage is 40%, so the description must compensate for undocumented parameters. It only implicitly explains the 'before' parameter's meaning and says nothing about itemId, entityId, or notify, leaving half the parameters opaque in both schema and 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?

States a specific verb (move) and resource (checklist item) and scopes it to project/portfolio entities. It is clear what the tool does, but it offers no differentiation from sibling reordering tools like move_issue or update_entity_checklist_item.

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?

There is no guidance on when to use this tool versus siblings such as update_entity_checklist_item, move_issue, or delete_entity_checklist_item. No prerequisites or exclusions are given; the agent must infer usage entirely.

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

move_issueA

Move an issue to a different queue. Components, versions and projects are cleared by default (use moveAllFields to keep them). Local fields of the old queue are removed.

ParametersJSON Schema
NameRequiredDescriptionDefault
queueYesTarget queue key
expandNoComma-separated extra data to include: "transitions", "attachments", "comments"
notifyNoNotify users about the change
issueIdYesIssue key or id
initialStatusNoReset issue status to the initial status of the target queue
moveAllFieldsNoKeep versions/components/projects if they exist in the target queue

TDQS

A3.8/5.0
Behavior4/5

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

Despite annotations declaring destructiveHint=false, the description proactively warns that components/versions/projects are cleared by default and that old-queue local fields are removed — exactly the surprising side-effect data-loss context an agent needs, with the moveAllFields escape hatch named. It omits permission/auth requirements and return behavior, so it is strong but not exhaustive.

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?

Two sentences, front-loaded with the core action followed immediately by the critical side-effect and its mitigation. Every sentence earns its place with zero padding.

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?

For a move tool with no output schema and annotations already covering the safety profile, the description covers purpose, default destructive clearing, the keep-fields flag, and local-field removal. It leaves the notif/status-reset flags to the schema, which is acceptable given full coverage.

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 six parameters, setting the baseline at 3. The description adds the useful framing that clearing is the default rather than the option, but it does not cover expand, notify, or initialStatus semantics beyond what the schema provides.

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?

States a specific verb+resource ('Move an issue to a different queue'), which is clear and unambiguous. It only implicitly distinguishes itself from the sibling bulk_move_issues (singular 'issue' vs bulk), stopping short of naming the alternative explicitly.

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

Usage Guidelines3/5

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

Implies usage and gives one conditional hint: use moveAllFields to preserve versions/components/projects. However, it never states when to prefer this over bulk_move_issues or execute_transition, nor any prerequisites, so routing guidance is left to inference.

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

release_search_scrollA

Free scroll-search resources when you stopped paging through a scrolled find_issues result. Body: {"": ""} for every page you opened.

ParametersJSON Schema
NameRequiredDescriptionDefault
scrollTokensYesMap scrollId → scrollToken from find_issues responses

TDQS

A4/5.0
Behavior4/5

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

Annotations declare readOnlyHint=false and destructiveHint=false, consistent with a non-destructive resource cleanup, and the description adds the useful behavioral fact that freeing must cover every page opened. It does not disclose idempotency, error behavior on stale tokens, or the cost of leaking a session, so it is not fully transparent.

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?

Two tightly written sentences: the purpose/trigger first, then the payload shape. No filler, and the most decision-relevant information is front-loaded.

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?

For a single-parameter cleanup tool with no output schema, the description covers purpose, trigger, and payload shape adequately. A note on what happens to un-released tokens or error handling would make it fully 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 coverage is 100% – the schema already documents the scrollId → scrollToken map. The description's embedded format example and 'for every page you opened' marginally reinforce it but add little beyond the structured field, so the baseline 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 gives a specific verb ('Free') and resource ('scroll-search resources') and ties it to a concrete trigger ('when you stopped paging through a scrolled find_issues result'). It is clearly distinguishable from siblings, none of which release scroll sessions. It stops short of 5 only because there is no explicit sibling contrast to anchor it further.

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

Usage Guidelines4/5

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

It states a clear when-to-use condition: after you have stopped paging through a scrolled find_issues result. The instruction 'for every page you opened' further tells the caller the required scope of the call. No when-not-to-use guidance or mention of consequences for skipping the call, which keeps it below 5.

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

restore_queueA

Restore a deleted queue (Tracker admin only).

ParametersJSON Schema
NameRequiredDescriptionDefault
queueIdYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the safety profile is clear. The description adds a meaningful behavioral constraint beyond annotations by specifying that the operation is restricted to Tracker admins.

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, front-loaded sentence with no redundant or filler content. It states the action and the permission constraint immediately.

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 simple one-parameter mutation tool with annotations covering the safety profile, the description is adequate but incomplete. It omits any explanation of queueId and does not describe side effects or return behavior, leaving gaps that a richer definition would fill.

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

Parameters2/5

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

Schema description coverage is 0%, and the description does not mention queueId at all. The single parameter is required and self-explanatory by name, but the definition adds no meaning beyond the schema's type union.

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 states a specific verb and resource: 'Restore a deleted queue.' This clearly distinguishes the tool from sibling operations like delete_queue, create_queue, and get_queue, and the parenthetical adds the required admin scope.

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

Usage Guidelines3/5

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

Usage is implied by 'Restore a deleted queue,' but the description gives no explicit when-to-use or when-not-to-use guidance relative to alternatives like create_queue or get_queue. The 'Tracker admin only' note is a useful prerequisite but not a full routing rule.

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

search_entitiesA
Read-only

Search projects, portfolios or goals. Filter by name substring, field values or sort the result. Use entityType "goal" for OKR goals, "portfolio" for project portfolios.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number, default 1
inputNoSubstring of the entity name
fieldsNoComma-separated extra fields to include, e.g. "entityStatus,author,followers"
filterNoField filter, e.g. {"entityStatus": "in_progress", "lead": "user1"}
orderByNoField key to sort by, e.g. "entityStatus"
perPageNoResults per page, default 50
orderAscNoSort ascending (default false)
rootOnlyNoOnly return top-level entities
entityTypeYesEntity type: "project", "portfolio" or "goal"

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the safety profile is covered. The description confirms a filter/sort search but adds no behavioral detail beyond that — no pagination semantics, result ordering defaults, or result-shape context, which is modest value for a search 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?

Three short sentences, front-loaded with the action and resource, then filtering capability, then the entityType clarification. No filler or redundancy.

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 9-parameter search with a nested filter object and no output schema, the description covers purpose and entityType but says nothing about return values, pagination, or default ordering. The rich schema compensates for parameters, but the absence of output schema leaves return behavior unexplained.

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 nine parameters are already documented in the schema, making the baseline 3. The description adds only a marginal semantic gloss on entityType values and does not clarify the nested filter object or sorting behavior beyond what the schema states.

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?

States a specific verb and resource set ("Search projects, portfolios or goals") that clearly scopes it to entity search rather than the many issue-oriented search siblings like find_issues or get_search_suggest. It does not name a sibling explicitly, but the resource scope does the differentiating work.

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

Usage Guidelines3/5

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

Gives guidance on parameter values (entityType "goal" for OKR goals, "portfolio" for project portfolios), which helps selection, but offers no when-to-use vs when-not guidance and no mention of alternatives such as find_issues. Usage is implied rather than stated.

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

set_queue_accessA

Change queue access rights: create/write/read/grant/deny with users, groups and roles. Arrays overwrite; {"add": […], "remove": […]} apply deltas. deny supports only users and groups.

ParametersJSON Schema
NameRequiredDescriptionDefault
queueIdYes
permissionsYese.g. {"read": {"users": {"add": ["login"]}}, "write": {"groups": [42]}, "grant": {"roles": ["author"]}}

TDQS

A3.8/5.0
Behavior4/5

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

Annotations only state readOnlyHint=false and destructiveHint=false; the description adds substantive behavior the annotations do not: whole-array overwrite versus delta semantics, and the constraint that deny applies only to users and groups. One caveat it leaves unstated is that array overwrite silently drops existing grants, which sits in mild tension with destructiveHint=false, but this is not a direct contradiction.

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?

Three short, information-dense sentences with no filler, and the core operation is front-loaded. Slightly telegraphic phrasing ('Arrays overwrite') costs a little readability but not correctness.

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?

For a two-parameter nested-object mutation tool with no output schema, the description covers the semantics an agent actually needs to build the payload, including the overwrite/delta distinction. It omits any mention of required privileges or whether changes are reversible, which would round it out.

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?

With schema description coverage at 50% (queueId is bare, permissions carries only an inline example), the description compensates well by naming the valid permission keys, the valid principal keys, and the two accepted value forms. It still doesn't explain queueId's accepted string/number forms or the meaning of role names, so it falls short of fully covering the gap.

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?

States a precise verb+resource (change queue access rights) and enumerates the permission levels it manages (create/write/read/grant/deny) plus the principal types (users, groups, roles). It is clearly a mutation counterpart to siblings like get_queue_user_access and get_queue_group_access, though it never names those alternatives explicitly.

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

Usage Guidelines3/5

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

The description gives strong payload-shape rules (arrays overwrite; {"add":[],"remove":[]} applies deltas; deny supports only users and groups) which imply how to call it, but it offers no when-to-use guidance and no routing against the many sibling access tools (get_entity_permissions, update_entity_access, update_entity_permissions).

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

start_sprintB

Start a sprint (moves to in_progress; version = sprint version).

ParametersJSON Schema
NameRequiredDescriptionDefault
versionYesCurrent sprint version
sprintIdYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the write nature is known. The description adds the state change and clarifies the version parameter, but says nothing about permissions, side effects, or idempotency. With annotations covering the safety profile, a 3 is appropriate for the modest additional 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?

One sentence with a parenthetical, front-loading the core action. Every word earns its place, with no redundancy or filler.

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 output schema and 50% parameter coverage, the description is minimal. It omits prerequisites, error conditions, and what the operation returns or affects beyond the state change. An agent would need to infer too much.

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 coverage is 50%: version has a description, sprintId does not. The description clarifies that version means 'sprint version', adding meaning for one parameter. It does not compensate for the missing sprintId description, though the name is fairly self-explanatory.

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 states a specific verb 'Start' and resource 'sprint', and adds the state transition 'moves to in_progress'. This distinguishes it from update_sprint or get_sprint, but does not explicitly name alternatives. An agent can infer the action, though sibling differentiation is left implicit.

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 when-to-use guidance or alternatives are provided. It does not state prerequisites (e.g., sprint must be in a planned state) or when to choose this over update_sprint. Usage is only implied by the verb.

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

update_boardB

Update a board: name, backlog/sprints toggles, columns (with status mapping). Board owner cannot be changed via API.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
boardIdYes
columnsNo
backlogColumnsNo
backlogAvailableNoMust equal sprintsAvailable
sprintsAvailableNoMust equal backlogAvailable
nonParametrizedColumnsNo

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the mutation/safety profile is covered. The description adds real value beyond that by disclosing that the board owner is immutable via API, but it is silent on whether omitting columns preserves or replaces them, and on whether column replacement discards existing configuration.

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?

A single dense sentence that front-loads the action and the mutable fields, with the owner constraint appended. No filler, though the parenthetical '(with status mapping)' is terse enough to be slightly ambiguous.

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 non-destructive mutation tool with annotations covering safety and no output schema, the main gap is parameter-level: three array-of-object parameters with overlapping semantics are named but never differentiated. The description is adequate but not sufficient for an agent to call this correctly on the first attempt.

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?

With schema description coverage at only 29% across 7 parameters, the description must carry more weight. It does explain name, the backlog/sprints toggles, and columns 'with status mapping', but leaves the confusingly similar columns / backlogColumns / nonParametrizedColumns distinction entirely unexplained, which is where an agent would most likely err.

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 gives a specific verb (Update) and resource (a board) and enumerates the mutable surface: name, backlog/sprints toggles, and columns with status mapping. It distinguishes update_board from create_board/delete_board, but it does not clarify its boundary against the sibling update_board_column, which appears to overlap with the 'columns' it claims to handle.

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

Usage Guidelines3/5

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

Usage is only implied ('update a board when you want to change its settings'); there is no explicit when-to-use, and no routing guidance versus update_board_column or update_sprint. The one exclusion offered ('Board owner cannot be changed via API') is a useful constraint but is a limitation, not a selection rule.

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

update_board_columnB

Rename a board column or change its statuses (version = board version).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
boardIdYes
versionYesCurrent board version
columnIdYes
statusesNo

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, setting the safety bar lower. The description is consistent with those hints and adds one useful behavioral detail: 'version = board version', which signals optimistic-concurrency handling. It does not disclose permissions, reversibility, or side effects on existing statuses.

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?

A single compact sentence that front-loads the operation and tucks the concurrency constraint into parentheses. No wasted words, though it is perhaps too terse for a 5-param mutation 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?

For a mutation tool with no output schema and annotations that only cover the safety profile, the description is adequate but thin. The important concurrency hint is present, but broader behavior (what statuses replacement implies, permission needs) is left unstated.

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 only 20% (just the version field), so the description must compensate. It partially does: it clarifies that 'version' refers to the board version and maps the operation to the name/statuses parameters, but adds no format or syntax detail for boardId, columnId, or the statuses array.

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?

States a specific verb ('Rename', 'change its statuses') applied to a specific resource ('board column'), so the agent knows exactly what operation occurs. It distinguishes reasonably well from siblings like create_board_column/delete_board_column, though it doesn't name them explicitly.

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?

There is no when-to-use guidance, no prerequisites, and no routing to alternatives such as create_board_column or delete_board_column. The parenthetical note about version is a constraint, not usage guidance.

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

update_componentC

Edit a component: name, description, owner, default assignee. version = component version.

ParametersJSON Schema
NameRequiredDescriptionDefault
leadNoOwner login
nameNo
versionYesCurrent component version
assignAutoNo
componentIdYes
descriptionNo

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already flag this as a non-read-only, non-destructive mutation, so safety is partly covered. The description adds almost nothing beyond that: it doesn't say whether omitted fields are left untouched or cleared, whether the version must match the current one to succeed, or what permissions are required. Only "version = component version" hints at concurrency behavior.

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?

Two short, dense sentences with the action front-loaded and zero filler. The field enumeration is efficient rather than padded, though the version clause is slightly cryptic in phrasing.

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 6-parameter mutation tool with no output schema, 33% schema coverage, and no annotations beyond a basic safety profile, the description is thin. It omits the identity parameter's meaning, version-mismatch behavior, and the effect on unspecified fields, which an agent needs to call this correctly.

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 only 33%, so the description must compensate. It partially does: "owner" maps to the ambiguous `lead` param and "default assignee" maps to `assignAuto`, and "version = component version" clarifies `version`. However, `componentId` is unexplained and the description adds no format or constraint detail for the rest.

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?

States a specific verb+resource ("Edit a component") and enumerates the editable fields (name, description, owner, default assignee), so the agent knows exactly what surface this tool touches. It doesn't explicitly differentiate itself from adjacent siblings like create_component or get_component, but the verb makes the distinction inferable.

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?

There is no when-to-use guidance, no prerequisites (e.g. that the component must already exist), and no mention of alternatives to update_component. The agent is left to infer usage entirely from the name.

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

update_entityC

Update a project, portfolio or goal by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
linksNoEntity links to add together with the update
fieldsYesFields to update, e.g. {"summary": "New name", "entityStatus": "at_risk", "parentEntity": {"primary": "portfolio-id", "secondary": []}} or with set/add commands like {"teamUsers": {"add": ["user2"]}}
commentNoComment to post together with the update (a "project status update")
entityIdYesEntity id
entityTypeYesEntity type: "project", "portfolio" or "goal"

TDQS

C2.9/5.0
Behavior2/5

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

Annotations declare readOnlyHint=false and destructiveHint=false, so the mutation/non-destructive profile is already covered. The description adds no behavioral context of its own—nothing about permissions, what 'fields' merges vs replaces, or the side effect of posting a 'comment' status update alongside the mutation.

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?

A single tight sentence with the key scoping ('by id') present upfront and zero filler. It is efficient, though arguably too sparse to earn a 5.

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 output schema, the description is thin. The rich nested fields object, links array, and the comment side effect are left entirely to the schema; the description does not tie these together or note that a status comment may be posted.

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 entityType, entityId, fields, links and comment are all documented in the schema, including the set/add command syntax for fields. The description only restates 'by id', adding nothing beyond the schema, so the baseline 3 applies.

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?

States a specific verb (update) and the resources it applies to (project, portfolio, goal) scoped by id, which is clearer than a bare 'update entity'. It does not, however, distinguish itself from overlapping siblings such as update_project or bulk_update_entities.

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?

There is no guidance on when to use this tool versus alternatives. The obvious siblings update_project and bulk_update_entities are never mentioned, and no prerequisites or preconditions are stated.

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

update_entity_accessA

Update extended access settings: enable/disable inheritance (permissionSources) and/or grant/revoke acl. Disable inheritance first — acl changes are rejected while inherited.

ParametersJSON Schema
NameRequiredDescriptionDefault
aclNo{"grant"|"revoke": {"READ"|"GRANT"|"WRITE": {"users": […], "groups": […], "roles": […]}}}
entityIdYes
entityTypeYesEntity type: "project", "portfolio" or "goal"
permissionSourcesNoParent entity id(s) to inherit from; [] disables inheritance

TDQS

A3.9/5.0
Behavior4/5

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

Annotations only declare readOnlyHint=false and destructiveHint=false, so the burden falls largely on the description, which usefully discloses a server-side validation rule (acl writes rejected while inheritance is active) — a genuine behavioral trait not derivable from the schema. It omits whether access changes are reversible or require elevated auth, keeping it short of a 5.

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?

Two sentences, no filler, and the critical prerequisite is front-loaded in second position where an agent will read it before constructing arguments. Every clause carries distinct information.

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?

For a mutation tool with a nested ACL object and no output schema, the description covers the two mutation modes and the key precondition. It stops short of describing failure modes (partial application when only acl is invalid) or what the caller gets back, which for a no-output-schema tool would be worth a clause.

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?

Schema coverage is 75% and the schema already documents the acl grant/revoke/role shape and the '[] disables inheritance' semantics, so baseline would be 3. The description adds real value by stating the interaction constraint between permissionSources and acl (ordering prerequisite), which the schema cannot express.

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?

States a specific verb and resource ('Update extended access settings') and enumerates the two operations it performs (inheritance toggle via permissionSources, acl grant/revoke). It does not, however, distinguish itself from the near-twin sibling update_entity_permissions or from get_entity_access, so an agent must infer which access-mutation tool to pick.

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

Usage Guidelines3/5

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

It gives one useful operational rule — 'Disable inheritance first — acl changes are rejected while inherited' — and the 'and/or' phrasing signals that either or both field groups may be supplied. But it never says when to use this over update_entity_permissions or set_queue_access, leaving sibling selection to inference.

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

update_entity_checklistA

Bulk-edit ALL checklist items of a project/portfolio (item count cannot change; omitted optional fields are reset).

ParametersJSON Schema
NameRequiredDescriptionDefault
itemsYes
notifyNo
entityIdYes
entityTypeYesChecklists are available for projects and portfolios only

TDQS

A3.7/5.0
Behavior4/5

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

Annotations only declare readOnlyHint=false and destructiveHint=false; the description adds genuinely useful behavior beyond that: item count is fixed and omitted optional fields are reset. This warns the agent about silent data loss, which the annotations do not convey. It stops short of noting permission needs or the effect of 'notify'.

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?

A single front-loaded sentence that packs the key constraints into parentheticals with no filler. Dense and efficient, though it crams several distinct rules into one clause.

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?

For a mutation tool with no output schema and thin schema coverage, it covers the highest-risk behaviors (fixed item count, field resets). The remaining gaps — notify semantics and return shape — are minor and not critical to invoking it correctly.

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 coverage is only 25%, so the description must compensate. It clarifies that the whole item set must be supplied (count cannot change) and that optional fields reset if omitted, which maps meaning onto the items array, but it says nothing about notify or entityId beyond the project/portfolio phrasing.

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?

States a specific verb ('Bulk-edit') and resource ('ALL checklist items of a project/portfolio'), and the emphasis on ALL implicitly separates it from update_entity_checklist_item. It does not name the sibling explicitly, so it lands short of a 5.

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

Usage Guidelines3/5

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

Usage is only implied by the word 'Bulk-edit' and 'ALL checklist items' — an agent can infer this replaces the whole set rather than a single item. There is no explicit when-to-use/when-not guidance or reference to the sibling tools (update_entity_checklist_item, add_entity_checklist_items).

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

update_entity_checklist_itemC

Edit a single checklist item of a project/portfolio.

ParametersJSON Schema
NameRequiredDescriptionDefault
textNo
itemIdYes
notifyNo
checkedNo
assigneeNo
deadlineNo
entityIdYes
entityTypeYesChecklists are available for projects and portfolios only

TDQS

C2.7/5.0
Behavior2/5

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

Annotations declare readOnlyHint=false and destructiveHint=false, and 'Edit' is consistent with that, so no contradiction. However, the description adds nothing beyond the annotations: no note on which fields are writable, what 'notify' triggers, whether changes are partially applied, or permission requirements.

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?

A single, front-loaded sentence with zero waste. It is efficient, though arguably too terse for an 8-parameter mutation 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?

For an 8-parameter mutation with 13% schema coverage and no output schema, the description is far too thin. It omits field semantics, side effects (notify), and any behavior needed to invoke it correctly.

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

Parameters2/5

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

Schema description coverage is 13% (only entityType is documented), and the description adds no meaning for the 8 parameters — text, checked, notify, assignee, deadline, itemId, entityId are all unexplained. With such low coverage the description should compensate but does not.

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 gives a clear verb (Edit) and resource (a single checklist item) scoped to projects/portfolios. It distinguishes itself implicitly from broader siblings like update_entity_checklist (whole checklist) and move/delete variants, though it does not name 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 indication of when to use this tool versus update_entity_checklist, add_entity_checklist_items, move_entity_checklist_item, or the sibling edit_checklist_item. The agent is left to infer selection entirely from the tool name.

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

update_entity_commentC

Edit a comment of a project, portfolio or goal.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesNew comment text
notifyNoNotify users (default true)
entityIdYes
commentIdYes
entityTypeYesEntity type: "project", "portfolio" or "goal"
notifyAuthorNoNotify the author (default false)
attachmentIdsNoTemp file ids to attach

TDQS

C2.9/5.0
Behavior2/5

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

Annotations declare readOnlyHint=false and destructiveHint=false, and the description's 'Edit' is consistent with a mutation, so no contradiction. However, the description adds nothing beyond that: it does not say whether text fully replaces the prior comment, how 'notify'/'notifyAuthor' behave in practice, what happens to attachments omitted from 'attachmentIds', or whether the edit is reversible.

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?

A single tight sentence with the verb and entity scope front-loaded and zero filler. It is concise, but the brevity is partly under-specification rather than pure economy.

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 7-parameter mutation with no output schema and no annotations covering payload semantics, key questions go unanswered: whether omitted attachmentIds drop existing attachments, whether notifications default to all watchers, and what the tool returns. The description is too thin to call this tool correctly in 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?

Schema description coverage is 71%, so the schema already documents most parameters, and the description only echoes the entity-type enum values. Baseline of 3 is appropriate: the description neither compensates for the still-undocumented entityId/commentId nor clarifies the semantics of attachmentIds replacement versus append.

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?

States a specific verb ('Edit') and resource ('a comment') and scopes it to project, portfolio or goal entities, which lets an agent separate it from the issue-oriented 'edit_comment' and from 'add_entity_comment'/'delete_entity_comment'. It does not, however, explicitly name those siblings or the entity-scoped nature of the operation beyond the three 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?

No guidance on when to use this versus the clearly related siblings: 'add_entity_comment' for creating, 'delete_entity_comment' for removal, or 'edit_comment' for issue comments. The agent must infer usage purely from the name, and no prerequisites (required permission, existing comment) are stated.

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

update_entity_permissionsC

Grant/revoke direct permissions on an entity. roles: AUTHOR|OWNER|CLIENT|FOLLOWER|MEMBER.

ParametersJSON Schema
NameRequiredDescriptionDefault
grantNo{"READ"|"GRANT"|"WRITE": {"users": […], "groups": […], "roles": […]}}
revokeNoSame shape as grant
entityIdYes
entityTypeYesEntity type: "project", "portfolio" or "goal"

TDQS

C2.9/5.0
Behavior2/5

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

Annotations only declare readOnlyHint=false and destructiveHint=false, which is a thin safety profile for an access-control mutation. The description doesn't say whether grant/revoke are additive vs replacing, whether revocation is recoverable, or what permissions the caller needs. The role enumeration is the only extra detail, and it is more parameter than behavior.

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?

Two short sentences, front-loaded with the operation and followed by the role vocabulary. No filler, though the role list reads like schema material rather than description prose.

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 access-control mutation with nested grant/revoke objects and no output schema, the definition omits the critical semantics: whether grants merge with existing permissions, what revoke exactly removes, and caller authorization requirements. The agent cannot safely invoke this from 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?

Schema coverage is 75%, so the schema already documents entityType's enum and the grant/revoke shapes. The description usefully spells out the accepted roles (AUTHOR|OWNER|CLIENT|FOLLOWER|MEMBER) that the schema only implies, but adds nothing for entityId or the user/group sub-keys.

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?

States a specific verb pair (grant/revoke) and resource (direct permissions on an entity), which is clear. It does not differentiate from close siblings like update_entity_access or get_entity_permissions, so an agent still has to infer which one is the right entry point.

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?

There is no when-to-use guidance, no mention of prerequisites (permissions required to modify access), and no routing between this tool and update_entity_access or get_entity_permissions. The agent is left to guess 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.

update_filterA

Update a saved filter. "filter"/"query" fully replace the previous conditions.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoFilter name
queryNoQuery language condition (mutually exclusive with filter)
sortsNoSort order
fieldsNoIssue fields shown as columns
filterNoConditions by field, e.g. {"queue": "TREK", "status": "open"} (replaces fully)
folderNoFolder id to place the filter into
groupByNoGrouping field
filterIdYes

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, but the description adds a genuinely useful behavioral fact beyond them: that the "filter"/"query" arguments fully replace prior conditions rather than merging. This warns the agent about overwrite semantics. It stops short of covering permissions or the state of unmentioned fields.

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?

Two short sentences, the core action front-loaded and the replacement caveat immediately following. Every word earns its place with no waste.

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?

For an 8-parameter mutation tool with 88% schema coverage and no output schema, the description supplies the one non-obvious semantic (full replacement of conditions). It is largely complete, missing only auth/permission context and clarity on which other fields are partial updates.

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 coverage is 88%, so the schema already documents filterId's requirement and describes query as mutually exclusive with filter and filter as replacing fully. The description re-emphasizes the replacement/mutual-exclusivity of filter and query, adding marginal value over structured data rather than new semantics.

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?

States a specific verb (Update) and resource (a saved filter), which cleanly distinguishes it from create_filter, get_filter, and delete_filter in the sibling list. It does not explicitly name those siblings, but the verb alone differentiates the operation.

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 states what happens to the conditions but gives no when-to-use context, no prerequisites, and no alternatives. An agent must infer that this is the tool to call when modifying an existing filter rather than creating one.

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

update_issue_fieldA

Rename a global issue field and/or update its dropdown values, category, order, visibility (admin). Optimistic locking: pass the current field version.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoName: string or {"ru": "…", "en": "…"}
orderNo
hiddenNo
fieldIdYesField key
versionYesCurrent field version (optimistic lock)
visibleNo
categoryNo
readonlyNo
descriptionNo
optionsProviderNoNew dropdown values: {"type": "FixedListOptionsProvider", "values": […]}

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare this is a non-destructive mutation, but the description adds two things they cannot: that some operations require admin rights ('(admin)') and that version-based optimistic locking is enforced via the passed version. It still does not say what happens to fields left unspecified or whether renames are reversible.

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?

Two tight sentences, front-loaded with the resource and action, followed immediately by the critical locking prerequisite. No filler.

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?

For a 10-parameter, no-output-schema mutation tool, the description covers the main behavioural risks (admin scope, optimistic lock) and most updateable fields. Minor gaps: two parameters (readonly, description) go unmentioned and return behaviour is unaddressed, though that is acceptable without an 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?

With only 40% schema description coverage across 10 params, the description compensates by enumerating the updateable surfaces: name, dropdown values, category, order, visibility, and the version lock. It does not mention the readonly or description parameters, which remain undocumented in both places, and 'visibility' is ambiguous between the visible/hidden pair.

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?

States specific verbs and resource: rename/update a *global* issue field, which implicitly distinguishes it from the local-field siblings (update_queue_local_field) and from create_issue_field. The 'and/or' makes clear it is a partial-update tool. It stops short of naming a sibling explicitly, so it is clear but not fully differentiating.

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

Usage Guidelines3/5

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

Usage is implied: use this to modify an existing global issue field. There is no explicit when-to-use/when-not statement and no pointer to alternatives such as update_issue_field_category or update_queue_local_field. The optimistic-locking sentence is operational guidance rather than usage routing.

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

update_issue_field_categoryC

Rename an issue field category, change its order (admin).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoName: string or {"ru": "…", "en": "…"}
orderNo
versionNoCategory version (optimistic lock)
categoryIdYes
descriptionNo

TDQS

C2.9/5.0
Behavior3/5

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

Annotations declare readOnlyHint=false and destructiveHint=false, so the mutation/non-destructive profile is already covered. The description adds one useful behavioral fact—that the operation requires admin privileges—but does not mention optimistic locking, reversibility, or what adjacent settings are left untouched.

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?

A single tight sentence, front-loaded with the primary action, with no wasted words. It is efficient but arguably too terse to carry the tool's full behavior.

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 5-parameter mutation tool with 40% schema coverage and no output schema, the description is too sparse—it omits the version/optimistic-lock parameter and the description field, and gives no fallback detail. More disclosure is warranted.

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

Parameters2/5

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

Schema description coverage is only 40% (order, categoryId, description lack descriptions). The description names only 'rename' (name) and 'order', leaving version/optimistic-lock and description semantics undocumented in both schema and prose.

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?

States specific verbs ('rename', 'change its order') on a specific resource ('issue field category'), which distinguishes it reasonably from siblings like create_issue_field_category and update_issue_field. However, it under-describes scope: the tool also updates description and version fields, so the stated purpose is narrower than the actual operation.

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 only guidance is the parenthetical '(admin)', which hints at a permission prerequisite but does not state when to use this tool versus alternatives such as create_issue_field_category or update_issue_field. No conditions or exclusions are provided.

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

update_issue_typeB

Rename an issue type (admin). version locks edits to that version.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes{"ru": "…", "en": "…"}
typeKeyYesType key or id
versionNo

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false. The description adds two pieces of behavioral context beyond that: admin authorization is required, and passing a version scopes/locks the edit to that version. However, the version sentence is cryptic (does it edit only that version's name? block other edits?) and nothing is said about reversibility or response shape.

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?

Two short sentences, front-loaded with the action and the admin constraint, with no filler. It is arguably too terse for a mutation tool, but the second clause about version carries a real constraint rather than padding.

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?

Covers purpose, authorization, and a version caveat for a 3-parameter mutation with no output schema. Still missing whether version is optional and what happens when it is omitted, and how the localized name object is applied — gaps the agent must resolve by guessing.

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 coverage is 67%; the schema already documents name as a localized {"ru":…,"en":…} object and typeKey as "Type key or id". The description adds meaning for the otherwise-undocumented version parameter via "version locks edits to that version", but the phrasing is ambiguous about whether the lock scopes the rename or prevents concurrent edits.

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?

States a specific verb and resource ("Rename an issue type") and adds an "(admin)" scope marker, so an agent can tell it apart from create_issue_type or update_issue_field. It does not explicitly name a sibling alternative, but the verb+resource 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?

The parenthetical "(admin)" implies a permission requirement, but there is no statement of when to use this tool versus siblings like create_issue_type, nor any preconditions or exclusions. An agent must infer usage entirely.

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

update_priorityB

Edit a priority: name, description (admin). The icon cannot be changed.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo{"ru": "…", "en": "…"}
versionNo
descriptionNo
priorityKeyYesPriority key or id

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already establish this as a non-read, non-destructive mutation. The description adds genuinely useful context beyond that: the operation requires admin rights and the icon field is immutable, which an agent cannot infer from the schema. It stops short of describing side effects or the version/concurrency behavior.

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?

Two tight sentences, front-loaded with the editable field list and followed by the immutability constraint. No wasted words, though the '(admin)' fragment is slightly cryptic.

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 annotations covering the safety profile and no output schema, the essentials are present (admin requirement, immutable icon). However, the purpose of 'version' (likely optimistic locking) and whether name/description are optional is not addressed, leaving meaningful 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?

With 50% schema coverage, the description names the updatable fields (name, description) and clarifies that the icon is not updatable, partially compensating for the gap. It says nothing about 'version' or 'priorityKey', which the schema only briefly labels, so meaning is only partially added.

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?

States a specific verb and resource ('Edit a priority') and enumerates the editable fields (name, description), distinguishing it from the read-only get_priorities and the create_priority sibling. It does not explicitly name when to prefer it over those siblings, but the intent 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?

The only usage signal is the parenthetical '(admin)', implying elevated permissions, but there is no explicit when-to-use or when-not-to-use guidance and no routing to alternatives like create_priority or get_priorities.

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

update_projectC

Update project parameters.

ParametersJSON Schema
NameRequiredDescriptionDefault
leadNoNew project lead login or user id
nameNoNew project name
tagsNoNew project tags
endDateNoDeadline date, format YYYY-MM-DD
projectIdYesProject id
startDateNoStart date, format YYYY-MM-DD
descriptionNoNew project description

TDQS

C2.5/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, covering the basic safety profile. The description adds no behavioral context such as partial vs. full update semantics, permission requirements, or side effects on related entities.

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?

Three words for a seven-parameter mutation tool is under-specified rather than concise. It is not front-loaded with useful scope or field 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?

The schema documents all parameters and annotations cover the safety profile, so the description provides the minimum viable context. However, it still omits what 'update' means operationally, such as whether it is a partial update or what side effects may occur.

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 seven parameters are already documented in the schema. The description adds no field-level meaning, syntax, or examples beyond what the schema provides, making the baseline of 3 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?

States the verb 'update' and resource 'project', but 'parameters' is generic and does not identify what can be changed. It does not distinguish this from sibling update tools such as update_component or update_board.

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 when-to-use guidance, prerequisites, or alternatives (e.g., get_project, create_project, delete_project) are provided. The agent receives no routing context.

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

update_queue_local_fieldC

Edit a local field of a queue: name, category, options, visibility.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
orderNo
hiddenNo
queueIdYes
visibleNo
categoryNo
fieldKeyYes
readonlyNo
descriptionNo
optionsProviderNo

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already tell the agent this is a mutation that is not read-only and not destructive, but the description adds nothing beyond that: it does not say whether this is a partial update, what happens to fields omitted from the call, or what permissions are needed. For a 10-parameter mutation with zero added behavioral context, this is a clear gap.

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?

A single front-loaded sentence with no filler, which is structurally efficient. It is arguably over-terse given the parameter count, but there is no wasted language.

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 10 params, 0% schema description coverage, nested objects, and no output schema, the definition is far too thin. An agent cannot reliably determine accepted value shapes or update semantics from this text.

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

Parameters2/5

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

Schema description coverage is 0% across 10 parameters, so the description carries the full explanatory burden, yet it only names a handful ('name, category, options, visibility') and maps them loosely. It never explains order, hidden, readonly, description, optionsProvider's structure, or the required queueId and fieldKey.

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?

States a specific verb ('Edit') and resource ('a local field of a queue'), which clearly separates it from create_queue_local_field and get_queue_local_field. It enumerates a few editable aspects, though it does not explicitly name the sibling tools it must not be confused with.

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 statement of when to use this versus create_queue_local_field, get_queue_local_field, or get_queue_fields, and no prerequisites such as needing an existing queueId/fieldKey. The agent must infer usage entirely from the name.

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

update_queue_macroB

Edit a queue macro: name, comment body, issue updates.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo
nameNo
macroIdYes
queueIdYes
issueUpdateNo

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the write-but-non-destructive profile is covered. The description adds only the list of editable fields; it says nothing about whether this is a partial or full replacement, permission requirements, or what happens when a field is omitted. Adequate but thin 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.

Conciseness4/5

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

A single front-loaded sentence with no filler, naming the tool's action and fields immediately. It is terse to the point of under-specification rather than verbose, so conciseness itself is not the failure.

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 5-parameter mutation tool with a nested object parameter, zero schema description coverage, and no output schema, the description is not complete enough. The agent cannot tell how issueUpdate should be shaped, whether fields are optional, or what the result of the edit is.

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 0%, so the description has to carry the load, and it does name three of the five parameters in prose (name, body as 'comment body', issueUpdate as 'issue updates'). However, the two required identifiers (queueId, macroId) are unmentioned and the nested structure of the issueUpdate object is left entirely unexplained.

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?

States a specific verb (Edit) and resource (queue macro) and enumerates the editable facets (name, comment body, issue updates). It is clearly distinguishable from get_queue_macro, create_queue_macro, and delete_queue_macro by the verb alone.

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 when-to-use guidance, no statement of prerequisites (an existing macroId/queueId), and no mention of alternatives such as create_queue_macro when the macro does not yet exist. Usage is only inferable from the sibling naming.

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

update_queue_triggerC

Edit a trigger: name, actions, conditions, position (version = trigger version).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
activeNo
beforeNoTrigger id to place this one before
actionsNo
queueIdYes
versionYesCurrent trigger version
triggerIdYes
conditionsNo

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare it is a non-read-only, non-destructive mutation. The description adds only the parenthetical '(version = trigger version)', which hints at optimistic concurrency but never says what happens on a stale version, whether fields are partially or fully replaced, or whether omitted fields are preserved or cleared. For a mutation tool this leaves important behavior 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?

A single compact sentence with the verb and resource front-loaded and no filler. It is efficient, though the terseness contributes to the semantic gaps elsewhere rather than being purely a virtue.

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 8-parameter mutation tool with 25% schema coverage and no output schema, the description should explain version semantics, partial-update behavior, and the identity parameters. It provides none of this, so an agent cannot confidently invoke it without trial and error.

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

Parameters2/5

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

Schema description coverage is only 25%, so the description needs to carry parameter meaning, and it largely does not. It names some fields but never explains 'active', 'queueId', 'triggerId', or the fact that 'before' takes a trigger id, and the version note is the only semantic added. The agent is left guessing about most of the 8 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?

States a clear verb+resource ('Edit a trigger') and enumerates the editable surface (name, actions, conditions, position), which lets an agent distinguish it from get_queue_trigger and create_queue_trigger. It stops short of explicitly naming those siblings or the scope of the edit.

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?

There is no when-to-use guidance, no statement that this applies only to an existing trigger, and no mention of prerequisites such as needing the current version or read access first. The agent must infer that this is the mutation counterpart to create_queue_trigger.

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

update_queue_versionC

Edit a queue version: name, description, dates.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
dueDateNoYYYY-MM-DD
startDateNoYYYY-MM-DD
versionIdYes
descriptionNo

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the mutation/safety profile is covered. The description adds nothing further: it does not say whether omitted fields are left untouched or cleared, what permissions are needed, or that versionId is required. For a mutation tool, this is thin.

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?

A single front-loaded sentence with no filler; the resource precedes the field list. It is efficient, though its brevity shades into under-specification rather than disciplined concision.

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?

Five parameters at 40% schema coverage, no output schema, and no annotations beyond the safety hints — the description should carry more, yet it omits the required versionId, update semantics, and any behavioral caveats.

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 coverage is 40% (only the two date formats are documented in the schema). The description names name, description, and dates, loosely mapping to four of the five parameters, but it omits versionId entirely — the one required parameter — and gives no format or optionality detail.

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?

States a specific verb (Edit) and resource (queue version) plus the editable fields, so an agent can distinguish it from create_queue_version, get_queue_version, and delete_queue_version. It lacks any explicit sibling differentiation, but the verb alone makes the intent 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 on when to use this versus create_queue_version or delete_queue_version, no prerequisites (e.g. that the version must already exist), and no mention of whether this is a partial or full replacement edit. Usage is only implied by the word 'Edit'.

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

update_resolutionB

Edit a resolution: name, description, order (admin).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo{"ru": "…", "en": "…"}
orderNo
versionNo
descriptionNo
resolutionKeyYesResolution key or id

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare this is a non-read-only, non-destructive mutation, so the safety profile is partly covered. The description adds the '(admin)' authorization constraint, which is genuine value, but says nothing about what gets modified, reversibility, or the localized-name behavior.

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?

A single tight line with no wasted words and the operation front-loaded. It is efficient, though this brevity is partly what leaves the parameter and behavioral gaps.

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 five parameters, 40% schema coverage, a nested localized-name object, and no output schema, the one-line description is too thin. It should explain version handling, the required key, and the localized name structure since the schema does not.

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 coverage is low (40%), so the description should compensate. It names three of five parameters (name, description, order), but omits the required resolutionKey and the version parameter, and does not explain the nested localized-name object treated only as a format hint in the schema.

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?

'Edit a resolution' states a specific verb and resource, and the field list (name, description, order) narrows scope. It implicitly distinguishes itself from create_resolution and get_resolutions, though it doesn't name those siblings explicitly.

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 '(admin)' tag hints at a permission requirement but the description never states when to use this tool versus create_resolution or get_resolutions, nor any prerequisites. Usage must be inferred entirely from the name.

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

update_sprintB

Rename a sprint, change dates or status (version = sprint version, If-Match lock).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
statusNo
endDateNoYYYY-MM-DD
versionYesCurrent sprint version
sprintIdYes
startDateNoYYYY-MM-DD

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare the write, non-destructive profile. The description adds a genuinely useful hint about optimistic concurrency ('version = sprint version, If-Match lock'), which is behavioral context beyond the annotations, but it is cryptic and does not explain what happens on a version conflict.

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?

A single tight sentence with the primary actions front-loaded and no wasted words. It borders on too terse, packing the concurrency hint into an unexplained parenthetical.

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 output schema, the description covers the updatable fields and the version-lock requirement, but omits failure behavior on version mismatch, permission requirements, and partial-update semantics when only some fields are supplied.

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?

At 50% schema coverage the description does useful work mapping 'version' to the sprint version and the If-Match lock, and implying name/dates/status map to their parameters. However sprintId is left implicit and date formats are only in the schema, so it does not fully compensate for the coverage gap.

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?

States a specific verb ('update') and resource (sprint), and enumerates the mutable fields: rename, dates, status. It clearly distinguishes itself from read/create/delete sprint siblings, though it does not explicitly route to start_sprint or archive_sprint for those dedicated lifecycle changes.

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 when-to-use guidance or alternatives are given. The presence of start_sprint and archive_sprint siblings makes it non-obvious whether a status change should go through this tool or those; the description does nothing to resolve that ambiguity.

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

update_statusC

Edit an issue status: name, description, order, category (admin).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo{"ru": "…", "en": "…"}
typeNo
orderNo
versionNo
statusKeyYesStatus key or id
descriptionNo

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, so the safety profile is covered. The description adds one genuinely useful behavioral note — that the category field requires admin rights — but says nothing about partial-update semantics, whether omitted fields are preserved, or what happens on an invalid statusKey.

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?

A single front-loaded sentence that lists the editable surface with no filler. It is efficient, though its brevity comes at the cost of the parameter accuracy noted above.

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 6-parameter mutation tool with 33% schema coverage and no output schema, the description leaves too much unspecified: it references a non-existent 'category' parameter and never mentions 'type' or 'version'. An agent would need to open the schema to call this correctly, and would be misled if it trusted the prose.

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

Parameters2/5

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

The description names 'category', which is not a property in the schema (properties are name, type, order, version, statusKey, description), while omitting the 'type' and 'version' parameters entirely. With only 33% schema coverage, the description needed to compensate and instead introduces a misleading field name.

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?

Specific verb ('Edit') plus resource ('an issue status') and an enumeration of the editable attributes, which distinguishes it from siblings like create_status and get_statuses. It stops short of naming the related alternatives explicitly, so it is clear but not maximally differentiating.

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 statement of when to use this versus create_status or update_issue_type, and no prerequisites beyond the parenthetical '(admin)' on category. The agent is left to infer that this mutates an existing status rather than creating one.

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

update_workflowA

Update a workflow (admin). Pass only the fields to change; version is required for optimistic locking (412 on conflict).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
typeNo
stepsNo
versionYesCurrent workflow version
workflowIdYes
initialActionNo
issueTypeResolutionsNo

TDQS

A3.5/5.0
Behavior4/5

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

Annotations only declare non-read-only, non-destructive; the description goes further by disclosing partial-update semantics, the optimistic-locking requirement on version, and the 412 conflict outcome. The '(admin)' marker additionally signals an elevated permission requirement. This is meaningful behavior beyond the annotations, though it omits what happens to omitted fields on failure and any rate/permission errors beyond 412.

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?

Two short sentences, front-loaded with the action and followed immediately by the operational constraints. No filler or redundancy.

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 output schema and seven largely undocumented parameters, the description covers concurrency and partial-update behavior but leaves most field semantics and the expected response unspecified. It is adequate for a safe call but incomplete for confident use of the nested step/action structures.

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

Parameters2/5

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

Schema description coverage is only 14% across 7 parameters, so the description must compensate and largely does not. It explains version (already documented in the schema) and the partial-update rule, but name, type, workflowId, initialAction, and issueTypeResolutions are left undefined in both places.

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?

States a specific verb and resource ('Update a workflow') and adds the '(admin)' qualifier, so the agent knows the operation and its privilege level. It is not confused with update_workflow_action or delete_workflow, though it never names those siblings to sharpen the boundary.

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

Usage Guidelines3/5

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

'Pass only the fields to change' tells the agent how to call it (partial update) and 'version is required for optimistic locking' gives a precondition, which is real usage guidance. However, it says nothing about when to choose this over update_workflow_action or create_workflow/delete_workflow.

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

update_workflow_actionB

Update one transition action of a workflow step (admin): name, target status, screen, conditions. Version is the current workflow version.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNostring or {"ru": "…", "en": "…"}
screenNo
targetNoTarget status
versionYesCurrent workflow version
actionIdYesTransition id, e.g. "close"
functionsNo
statusKeyYesStep status key, e.g. "open"
conditionsNo
workflowIdYes
descriptionNostring or {"ru": "…", "en": "…"}

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already establish this is a non-read-only, non-destructive write. Beyond that, the description adds genuinely useful context: admin-only access and that version must be the current workflow version (concurrency constraint). It stops short of describing partial-update semantics or failure behavior on version mismatch.

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?

Two tight sentences with no filler; the action+scope is front-loaded and the version caveat follows. Efficient for the amount of information conveyed, though the version note could be folded more clearly.

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 10-parameter mutation with nested objects and no output schema, the description covers the primary mutable fields but omits `functions` entirely and gives no structure for `screen`, `conditions`, or the array item shapes. Adequate on purpose, thin on the complex nested inputs.

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 60%, so the schema already documents name, target, version, actionId and statusKey. The description adds marginal meaning by grouping name/target status/screen/conditions as the mutable fields, but offers no syntax for the nested screen object or the conditions/functions arrays.

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?

States a specific verb and resource: 'Update one transition action of a workflow step', and lists the scope of fields (name, target status, screen, conditions). This clearly separates it from the sibling update_workflow (which mutates the whole workflow) without naming that sibling explicitly.

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

Usage Guidelines3/5

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

The '(admin)' tag implies a permission precondition, and 'Version is the current workflow version' hints at an optimistic-concurrency requirement. However, there is no explicit when-to-use vs. sibling guidance and no statement of what happens on a stale version.

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

upload_issue_attachmentA

Attach a local file to an issue. Max file size is 1024 Mbit. The file must exist on the machine where the MCP server runs.

ParametersJSON Schema
NameRequiredDescriptionDefault
issueIdYesIssue key or id
filePathYesAbsolute or relative path to the file on disk
filenameNoCustom name to store the file under (defaults to the original name)

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare a write operation that is non-destructive. The description adds useful behavioral constraints beyond annotations: a maximum file size limit and the requirement that the file reside on the server host. It does not mention permissions or overwrite semantics, but the added constraints are valuable.

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?

Three sentences, front-loaded with the action followed by constraints. Every sentence earns its place and there is no redundancy.

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?

For a low-complexity upload tool with complete schema coverage and annotations, the description supplies the key operational constraints. The only notable gap is a lack of routing clues versus similar upload tools, which is a minor omission given the tool's descriptive name.

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?

Schema description coverage is 100%, so the baseline is 3. The description adds critical meaning for the filePath parameter beyond the schema: the file must be accessible on the MCP server's machine, and it is subject to a size limit. This is information an agent cannot infer from the schema alone.

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?

States a specific verb and resource ('Attach a local file to an issue'), which is clear and actionable. It does not explicitly distinguish itself from similar siblings such as upload_temp_attachment or import_issue_attachment, so it falls short of a 5.

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

Usage Guidelines3/5

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

Provides a key prerequisite (the file must exist on the MCP server's machine), which implicitly constrains when the tool is applicable. However, it gives no explicit guidance on alternatives or when not to use it, leaving usage implied rather than stated.

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

upload_temp_attachmentA

Upload a temporary file (not yet attached anywhere). Returns a temp id usable once in create_issue attachmentIds, add_comment attachmentIds and entity attachments.

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathYesPath to the file on this machine
filenameNoServer-side name override

TDQS

A4.2/5.0
Behavior4/5

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

Annotations only declare readOnlyHint=false and destructiveHint=false, so the description adds real value by disclosing that this is a staging operation whose handle is temporary and single-use ('usable once'). That non-obvious constraint is exactly what an agent needs to sequence calls 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?

Two sentences, front-loaded with the operation and scope, then the return value and downstream consumers. No filler; every clause carries signal.

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?

With no output schema, the description correctly carries the return-value burden ('Returns a temp id usable once') and names the consuming tools. The single-use and temporal nature are covered, though the id's validity window/expiry and failure modes are left unstated.

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% (both filePath and filename are documented in the schema), so the baseline is 3. The description adds no per-parameter format or override details beyond what the schema already provides.

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?

States a specific verb+resource ('Upload a temporary file') and immediately disambiguates from sibling uploads with the parenthetical '(not yet attached anywhere).' An agent can distinguish this from upload_issue_attachment and add_entity_attachment without opening any schema.

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

Usage Guidelines4/5

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

The description gives clear downstream usage: the temp id feeds into create_issue attachmentIds, add_comment attachmentIds and entity attachments. It implies the pre-requisite workflow rather than stating explicit exclusions ('use X instead'). Strong context, but no explicit when-not guidance.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 187 tool updatesv1.2.0
    • First observedadd_checklist_item
    • First observedadd_comment
    • First observedadd_comment_reaction
    • First observedadd_entity_attachment
    • First observedadd_entity_checklist_items
    • First observedadd_entity_comment
    • First observedadd_worklog_record
    • First observedarchive_sprint
    • First observedbulk_move_issues
    • First observedbulk_transition_issues
    • First observedbulk_update_entities
    • First observedbulk_update_issues
    • First observedcount_issues
    • First observedcreate_board
    • First observedcreate_board_column
    • First observedcreate_component
    • First observedcreate_cycle_time_widget
    • First observedcreate_dashboard
    • First observedcreate_entity
    • First observedcreate_entity_link
    • First observedcreate_external_link
    • First observedcreate_filter
    • First observedcreate_gaps
    • First observedcreate_issue
    • First observedcreate_issue_field
    • First observedcreate_issue_field_category
    • First observedcreate_issue_link
    • First observedcreate_issue_report
    • First observedcreate_issue_type
    • First observedcreate_priority
    • First observedcreate_project
    • First observedcreate_queue
    • First observedcreate_queue_autoaction
    • First observedcreate_queue_local_field
    • First observedcreate_queue_macro
    • First observedcreate_queue_trigger
    • First observedcreate_queue_version
    • First observedcreate_resolution
    • First observedcreate_sprint
    • First observedcreate_status
    • First observedcreate_workflow
    • First observeddelete_board
    • First observeddelete_board_column
    • First observeddelete_checklist
    • First observeddelete_checklist_item
    • First observeddelete_comment
    • First observeddelete_component
    • First observeddelete_entity
    • First observeddelete_entity_attachment
    • First observeddelete_entity_checklist
    • First observeddelete_entity_checklist_item
    • First observeddelete_entity_comment
    • First observeddelete_entity_link
    • First observeddelete_external_link
    • First observeddelete_filter
    • First observeddelete_gaps
    • First observeddelete_issue_attachment
    • First observeddelete_issue_link
    • First observeddelete_project
    • First observeddelete_queue
    • First observeddelete_queue_macro
    • First observeddelete_queue_tag
    • First observeddelete_queue_version
    • First observeddelete_sprint
    • First observeddelete_workflow
    • First observeddelete_worklog_record
    • First observeddownload_entity_attachment
    • First observeddownload_issue_attachment
    • First observededit_checklist_item
    • First observededit_comment
    • First observededit_issue
    • First observededit_worklog_record
    • First observedexecute_transition
    • First observedfind_gaps
    • First observedfind_issue_reports
    • First observedfind_issues
    • First observedfind_worklog_records
    • First observedget_attachment_thumbnail
    • First observedget_board
    • First observedget_board_column
    • First observedget_board_columns
    • First observedget_board_sprints
    • First observedget_boards
    • First observedget_boards_paginate
    • First observedget_bulk_operation_info
    • First observedget_checklist
    • First observedget_component
    • First observedget_component_group_access
    • First observedget_component_user_access
    • First observedget_components
    • First observedget_current_user
    • First observedget_entity
    • First observedget_entity_access
    • First observedget_entity_attachment
    • First observedget_entity_comment
    • First observedget_entity_comments
    • First observedget_entity_events
    • First observedget_entity_links
    • First observedget_entity_permissions
    • First observedget_external_applications
    • First observedget_external_links
    • First observedget_filter
    • First observedget_issue
    • First observedget_issue_attachment
    • First observedget_issue_changelog
    • First observedget_issue_comment
    • First observedget_issue_comments
    • First observedget_issue_field
    • First observedget_issue_fields
    • First observedget_issue_links
    • First observedget_issue_transitions
    • First observedget_issue_types
    • First observedget_issue_worklog
    • First observedget_link_types
    • First observedget_priorities
    • First observedget_project
    • First observedget_project_queues
    • First observedget_projects
    • First observedget_queue
    • First observedget_queue_autoaction
    • First observedget_queue_autoaction_logs
    • First observedget_queue_autoactions
    • First observedget_queue_components
    • First observedget_queue_fields
    • First observedget_queue_group_access
    • First observedget_queue_local_field
    • First observedget_queue_local_fields
    • First observedget_queue_macro
    • First observedget_queue_macroses
    • First observedget_queue_tags
    • First observedget_queue_trigger
    • First observedget_queue_trigger_logs
    • First observedget_queue_triggers
    • First observedget_queue_user_access
    • First observedget_queue_version
    • First observedget_queue_versions
    • First observedget_queue_workflows
    • First observedget_queues
    • First observedget_resolutions
    • First observedget_search_suggest
    • First observedget_sprint
    • First observedget_statuses
    • First observedget_user
    • First observedget_users
    • First observedget_users_relative
    • First observedget_workflow
    • First observedget_workflows
    • First observedimport_issue
    • First observedimport_issue_attachment
    • First observedimport_issue_comment
    • First observedimport_issue_link
    • First observedimport_worklog_record
    • First observedlist_entity_attachments
    • First observedlist_issue_attachments
    • First observedmove_entity_checklist_item
    • First observedmove_issue
    • First observedrelease_search_scroll
    • First observedrestore_queue
    • First observedsearch_entities
    • First observedset_queue_access
    • First observedstart_sprint
    • First observedupdate_board
    • First observedupdate_board_column
    • First observedupdate_component
    • First observedupdate_entity
    • First observedupdate_entity_access
    • First observedupdate_entity_checklist
    • First observedupdate_entity_checklist_item
    • First observedupdate_entity_comment
    • First observedupdate_entity_permissions
    • First observedupdate_filter
    • First observedupdate_issue_field
    • First observedupdate_issue_field_category
    • First observedupdate_issue_type
    • First observedupdate_priority
    • First observedupdate_project
    • First observedupdate_queue_local_field
    • First observedupdate_queue_macro
    • First observedupdate_queue_trigger
    • First observedupdate_queue_version
    • First observedupdate_resolution
    • First observedupdate_sprint
    • First observedupdate_status
    • First observedupdate_workflow
    • First observedupdate_workflow_action
    • First observedupload_issue_attachment
    • First observedupload_temp_attachment

TDQS

C2.5/5.0

Scored across 187 tools

Disambiguation2/5

Multiple tool pairs have unclear boundaries, especially issue-vs-entity duplicates (add_comment/add_entity_comment, get_issue_attachments/list_entity_attachments), pagination variants (get_boards/get_boards_paginate, get_users/get_users_relative), field scopes (get_issue_fields/get_queue_fields/get_queue_local_fields), access-vs-permission tools (get_entity_access/get_entity_permissions, update_entity_access/update_entity_permissions), and attachment upload routes (upload_temp_attachment vs upload_issue_attachment). Descriptions help somewhat, but with 187 tools an agent will likely misselect among these closely related options.

Naming Consistency3/5

Names are consistently snake_case and mostly verb-first (get_, create_, update_, delete_), but the set mixes synonymous verbs: get_ vs list_, create_ vs add_, and update_ vs edit_. These synonyms are semantic and readable, yet they break strict predictability across otherwise similar operations.

Tool Count1/5

187 tools is far beyond the 50+ threshold for extreme mismatch and creates enormous context and selection overhead for an agent. Even though the domain is broad, the surface should be consolidated or grouped to be practically usable.

Completeness3/5

Core issue, board, project, entity, comment, attachment, link, and workflow operations are well covered, but notable lifecycle gaps remain: no delete_issue, no update_queue, no delete for triggers/autoactions, no delete for statuses/priorities/resolutions/issue types, and incomplete dashboard/report management. These gaps will create dead ends for common administrative workflows.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables AI assistants to interact with JetBrains YouTrack 2025.2 for managing issues, sprints, dependencies, time tracking, and knowledge base content. Supports CRUD operations, bulk commands, analytics with Gantt charts and critical path analysis, and covers ~80% of the YouTrack REST API.
    15 npm
    52
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to interact with Yandex.Tracker task management system through MCP protocol. Supports creating and managing issues, searching tasks, handling comments, managing projects and queues, and generating analytics reports.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables interaction with Yandex Tracker through its API for managing tasks, comments, and attachments. It supports issue searching, status transitions, and metadata retrieval for automated project management.
    MIT