Skip to main content
Glama
lazyants

transkribus-mcp-server

by lazyants

transkribus-mcp-server

Tests

Transkribus REST API용 MCP 서버입니다. Model Context Protocol을 통해 컬렉션, 문서, HTR/OCR 인식, 모델 등을 관리할 수 있습니다.

22개 리소스 도메인에 걸친 300개의 도구와 8개의 진입점을 제공하므로 MCP 클라이언트의 도구 제한에 맞는 서버를 선택할 수 있습니다.

API 범위: 이 서버는 레거시 Transkribus TrpServer REST API를 다룹니다. 최신 Processing API v2(OIDC 인증, /processing/v2, account.readcoop.eu)는 의도적으로 범위에서 제외됩니다.

설치

npm install -g @lazyants/transkribus-mcp-server

또는 직접 실행:

npx @lazyants/transkribus-mcp-server

Related MCP server: paperless-mcp

구성

Transkribus는 세션 기반 인증을 사용합니다. 두 가지 방법으로 인증할 수 있습니다.

옵션 1: 사용자 이름 + 비밀번호 (자동 로그인)

export TRANSKRIBUS_USER=your-email@example.com
export TRANSKRIBUS_PASSWORD=your-password

서버가 자동으로 로그인하여 세션을 관리합니다.

옵션 2: 직접 세션 ID 사용

export TRANSKRIBUS_SESSION_ID=your-session-id

Transkribus 플랫폼에서 이미 유효한 세션을 보유한 경우 이 방법을 사용합니다.

진입점

명령

도메인

도구

transkribus-mcp-server

전체 22개 도메인

300

transkribus-mcp-collections

Auth, Collections (core/docs/pages/users/crowd/editdecl/credits/stats/labels/activity/tags)

132

transkribus-mcp-admin

Auth, Admin, Credits, Uploads, Labels, Files, System, Root

62

transkribus-mcp-transcription

Auth, Recognition, Layout Analysis, PyLaia, P2PaLA, DU

47

transkribus-mcp-users

Auth, Users, Crowdsourcing, eLearning

29

transkribus-mcp-models

Auth, Models

26

transkribus-mcp-jobs

Auth, Jobs, Actions

18

transkribus-mcp-search

Auth, Search, KWS

16

분할 서버를 사용하여 컨텍스트 크기를 줄이세요 — 필요한 분할만 선택하세요.

Claude Code

~/.claude/settings.json에 추가:

{
  "mcpServers": {
    "transkribus": {
      "command": "npx",
      "args": ["-y", "@lazyants/transkribus-mcp-server"],
      "env": {
        "TRANSKRIBUS_USER": "your-email@example.com",
        "TRANSKRIBUS_PASSWORD": "your-password"
      }
    }
  }
}

또는 분할 서버를 사용하세요 (필요한 분할을 선택):

{
  "mcpServers": {
    "transkribus-collections": {
      "command": "npx",
      "args": ["-y", "-p", "@lazyants/transkribus-mcp-server", "transkribus-mcp-collections"],
      "env": {
        "TRANSKRIBUS_USER": "your-email@example.com",
        "TRANSKRIBUS_PASSWORD": "your-password"
      }
    },
    "transkribus-transcription": {
      "command": "npx",
      "args": ["-y", "-p", "@lazyants/transkribus-mcp-server", "transkribus-mcp-transcription"],
      "env": {
        "TRANSKRIBUS_USER": "your-email@example.com",
        "TRANSKRIBUS_PASSWORD": "your-password"
      }
    }
  }
}

Claude Desktop

claude_desktop_config.json에 추가:

{
  "mcpServers": {
    "transkribus": {
      "command": "npx",
      "args": ["-y", "@lazyants/transkribus-mcp-server"],
      "env": {
        "TRANSKRIBUS_USER": "your-email@example.com",
        "TRANSKRIBUS_PASSWORD": "your-password"
      }
    }
  }
}

보안

  • 자격 증명을 버전 관리에 커밋하지 마세요

  • 환경 변수 또는 .env 파일을 사용하세요 (.gitignore를 통해 제외됨)

  • 세션 ID는 만료됩니다 — 장기 실행 설정에는 사용자 이름/비밀번호를 권장합니다

면책 조항

이것은 Transkribus용 비공식 MCP 서버입니다. 작성자는 READ-COOP SCE와 관련이 없습니다. 사용에 따른 책임은 본인에게 있습니다.

릴리스

릴리스는 GitHub Release 이벤트를 통해 배포됩니다. 유지 관리자 절차:

  1. package.json, package-lock.json, server.json의 버전을 올립니다 (npm version <x.y.z> --no-git-tag-version은 처음 두 파일을 함께 업데이트합니다). npm run check-versionspackage.json#/versionserver.json#/packages[0].version이 일치하지 않으면 하드 실패합니다. server.json#/version은 느슨하게 검사됩니다: 존재해야 하며, packages[0].version보다 낮아지는 경우에만 실패합니다 — 이전 릴리스에서 남겨진 값은 WARN: 줄과 함께 종료 코드 0으로 통과합니다. 이 스크립트는 package-lock.json이나 CHANGELOG.md를 전혀 확인하지 않으므로, 종료 코드를 신뢰하지 말고 출력을 읽으세요.

  2. CHANGELOG.md를 업데이트합니다.

  3. 커밋하고, 릴리스를 만들기 전에 버전 변경 사항을 main에 병합합니다. 그런 다음 확인한 SHA에 태그를 직접 만들고, 그 후에야 태그에서 릴리스를 만듭니다:

    V=X.Y.Z && PR=<release-pr-number> &&
      SHA="$(gh pr view "$PR" --json mergeCommit -q .mergeCommit.oid)" && test -n "$SHA" &&
      git fetch origin main && git merge-base --is-ancestor "$SHA" origin/main &&
      PKG="$(git show "$SHA:package.json")" &&
      test "$(printf '%s' "$PKG" | node -pe 'JSON.parse(require("fs").readFileSync(0,"utf8")).version')" = "$V" &&
      CL="$(git show "$SHA:CHANGELOG.md")" &&
      printf '%s\n' "$CL" | awk -v v="$V" 'index($0,"## ["v"]")==1{f=1;next} /^## \[/{f=0} /^\[[0-9]+\.[0-9]+\.[0-9]+\]:/{f=0} f' > "/tmp/notes-v$V.md" &&
      grep -q '[^[:space:]]' "/tmp/notes-v$V.md" &&
      git tag -a "v$V" "$SHA" -m "v$V" &&
      git push origin "v$V" &&
      gh release create "v$V" --verify-tag --notes-file "/tmp/notes-v$V.md"

    이 절차가 방지하는 실패: 기존 태그가 없는 상태에서 gh release create vX.Y.Z는 기본 브랜치의 **최신 커밋(tip)**에 태그를 만듭니다. 버전 변경이 아직 릴리스 브랜치에 있는 동안 실행하면 이전 릴리스의 커밋에 태그가 지정되고, 워크플로는 해당 커밋의 package.json에서 찾은 버전을 게시하여 vX.Y.Z GitHub Release가 이전 버전을 조용히 다시 게시하게 됩니다. 게시 워크플로는 이제 GITHUB_REF_NAMEv<package.json version>이 아닐 때 계속을 거부하므로, 정확히 그 시나리오는 조용히 다시 게시하는 대신 npm publish 전에 실패합니다. 위의 순서는 여전히 필요하며 워크플로가 처리할 수 없는 경우를 방지합니다: 워크플로 가드는 릴리스가 이미 존재한 후에만 실행되며 올바른 버전을 가진 모든 커밋에 대해 통과합니다 — 따라서 잘못된 태그가 지정된 릴리스는 잡아내지만, 잘못된 커밋에 태그가 지정되는 경우는 잡아내지 못합니다.

    각 요소는 필수적인 역할을 합니다:

    • **gh pr view … .mergeCommit.oid**는 릴리스 PR 자체의 스쿼시 커밋을 지정합니다. git rev-parse origin/main으로 대체하지 마세요: 그것은 단지 확인하는 시점에 main에 있는 것일 뿐이므로, 그 사이에 들어온 관련 없는 병합이 대신 태그가 지정되어 배포됩니다. gh는 병합되지 않은 PR에 대해 종료 코드 0으로 아무것도 출력하지 않으므로, 명시적인 test -n이 필요한 것입니다.

    • && 체인은 되돌릴 수 없는 단계로 넘어가지 않고 첫 번째 실패에서 멈춥니다. 두 git show 호출은 직접 파이프하지 않고 변수에 할당되므로 종료 상태가 실제로 확인됩니다 — 파이프라인은 pipefail이 설정되지 않은 한 마지막 명령의 상태만 보고하는데, 여기서는 pipefail을 가정하지 않습니다.

    • **git merge-base --is-ancestor**는 커밋이 main에서 도달 가능함을 증명합니다. 단순히 존재하는 것만으로는 충분하지 않습니다: 다른 브랜치를 fetch했기 때문에 커밋이 로컬에 존재할 수 있으며, 버전 파일이 우연히 일치하면 그 외에는 나머지 모든 검사를 통과할 수 있습니다.

    • 버전 테스트는 작업 트리가 아닌 대상 커밋에서 package.json을 읽습니다 — 작업 트리는 $SHA가 다른 곳을 가리키는 동안에도 올바른 버전을 표시할 수 있기 때문입니다.

    • **awk**--notes-file을 위해 커밋의 CHANGELOG.md에서 해당 버전의 섹션을 추출합니다. 이것이 없으면 릴리스 본문은 --notes-from-tag가 주석에서 찾는 내용이 됩니다 — 여기서는 리터럴 문자열 vX.Y.Z로, 어떤 버전에도 부적절한 릴리스 노트이며 호환성이 깨지는 변경(breaking change)을 포함한 릴리스에는 오해를 불러일으키는 내용입니다. 다음 ## [ 제목 또는 첫 번째 링크 참조 정의에서 멈춥니다. 가장 오래된 항목 뒤에는 제목이 없어 그렇지 않으면 링크 참조 블록 전체를 삼켜버리기 때문입니다. 결과를 검사할 때 test -s 대신 grep -q를 사용합니다: 빈 줄 외에는 내용이 없는 섹션도 1바이트 파일을 생성하며 test -s는 이를 통과시키기 때문입니다.

    • **--verify-tag**는 푸시가 이루어지지 않은 경우 gh가 태그를 임의로 만들지 않고 중단하게 합니다 — 위에서 설명한 기본 브랜치 최신 커밋 폴백에 대한 방어입니다.

    태그가 이미 푸시된 후 gh release create가 실패하면 전체 블록을 다시 실행하지 마세요; git tag에서 멈출 것이며 이는 올바른 동작입니다. 마지막 명령만 다시 실행하세요.

  4. Publish to npm + MCP Registry 워크플로가 자동으로 실행됩니다: 출처(provenance)를 포함하여 npm publish를 실행하고, tarball을 사용할 수 있을 때까지 레지스트리를 폴링한 다음, mcp-publisher를 통해 일치하는 server.json을 MCP Registry에 푸시합니다.

워크플로는 버전이 이미 npm에 있으면 npm publish를 깔끔하게 건너뜁니다 (수동으로 부분 게시된 릴리스에 대한 전환 가드).

npm 인증

게시는 npm Trusted Publishing을 사용합니다: 워크플로의 GitHub OIDC 토큰(id-token: write)이 런타임에 일회용 게시 토큰으로 교환됩니다. 저장소에 NPM_TOKEN 시크릿을 보관할 필요가 없습니다.

바인딩은 npm 웹 UI(패키지 → Trusted Publishers)에서 구성됩니다: 공급자 GitHub Actions, 조직 lazyants, 저장소 transkribus-mcp-server, 워크플로 publish-registry.yml.

라이선스

FSL-1.1-MIT — 전체 약관은 LICENSE를 참조하세요. 1.x 버전은 MIT 라이선스로 유지됩니다.

Available Tools

304 tools
transkribus_action_countCount ActionsA
Read-onlyIdempotent

Get the total count of actions, optionally filtered by collection or type.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoFilter by action ID
endNoEnd timestamp
pageNoFilter by page number
typeNoFilter by action type
startNoStart timestamp
collIdNoFilter by collection ID
pageIdNoFilter by page ID
typeIdNoFilter by action type ID
useridNoFilter by user ID
clientIdNoFilter by client ID
isDeletedNoInclude deleted actions
mostRecentByNoMost recent by filter

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, destructiveHint=false, idempotentHint=true, openWorldHint=true, covering the safety and idempotency. The description adds 'optionally filtered' but does not elaborate on return format or behavior beyond what annotations provide. With strong annotations, the description's added value is minimal.

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, complete sentence that front-loads the purpose. Every word earns its place with no extraneous 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?

No output schema exists, yet the description does not specify the return format (e.g., a single number). With 12 optional parameters and no guidance on their interaction, the description is incomplete for an agent to fully understand the tool's behavior without additional inference.

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

Parameters3/5

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

Input schema has 100% coverage with descriptions for all 12 parameters. The description only highlights 'collection or type' filters, not adding meaning beyond schema. Baseline is 3 for high schema coverage; description does not compensate for low coverage (which is not the case).

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

Purpose5/5

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

The description clearly states the verb 'Get' and resource 'total count of actions', directly specifying the tool's function. It distinguishes from sibling tools like transkribus_action_list (returns list) and transkribus_action_info (returns info) by focusing on a count.

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 mentions optional filtering but provides no explicit guidance on when to use this tool versus alternatives. It does not indicate when not to use it or direct the agent to other tools for more detailed queries, leaving the agent to infer usage context.

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

transkribus_action_infoGet Action InfoA
Read-onlyIdempotent

Retrieve detailed information about a specific action.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID

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, destructiveHint=false, idempotentHint=true, and openWorldHint=true. The description does not add any behavioral context beyond the annotations, but it does not contradict them either.

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

Conciseness5/5

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

The description is a single, clear sentence with no unnecessary words. It is front-loaded with the action verb and resource.

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

Completeness3/5

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

Given the tool has no output schema, the description does not elaborate on what 'detailed information' includes. While annotations provide safety and idempotency hints, the description could be more complete by listing typical response fields. However, it is adequate for a simple retrieval 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 100% for the single parameter 'id', which is described in the schema as 'Resource ID'. The description does not add any further meaning or constraints to the parameter.

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

Purpose5/5

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

The description clearly states the verb 'Retrieve' and the resource 'detailed information about a specific action'. It distinguishes from sibling tools like transkribus_action_list (which lists actions) and transkribus_action_count (which counts actions) by specifying 'specific action' via an ID.

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 implies usage when you need details of a single action, but does not provide explicit when-to-use or when-not-to-use guidance. No prerequisites or alternatives are mentioned.

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

transkribus_action_listList ActionsB
Read-onlyIdempotent

List actions with optional filtering by collection, type, and pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoFilter by action ID
endNoEnd timestamp
pageNoFilter by page number
typeNoFilter by action type
indexNoStart index (0-based)
startNoStart timestamp
collIdNoFilter by collection ID
pageIdNoFilter by page ID
typeIdNoFilter by action type ID
useridNoFilter by user ID
nValuesNoNumber of results (-1 for all)
clientIdNoFilter by client ID
isDeletedNoInclude deleted actions
sortColumnNoColumn to sort by
mostRecentByNoMost recent by filter
pagingWrapperNoUse paging wrapper
sortDirectionNoSort direction: asc or desc

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, destructiveHint=false, and idempotentHint=true, so the description adds minimal behavioral context beyond stating optional filtering. It does not describe the response format, pagination behavior, or any side effects, but annotations cover the safety profile.

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 sentence of 12 words, extremely concise. It is front-loaded with the core action and filtering options. While concise, it could be more structured by separating pagination detail, but there is no wasted content.

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

Completeness2/5

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

Given the tool has 17 parameters, no output schema, and no explicit return value description, the description is too minimal. It does not explain the meaning of 'actions', the response structure, or pagination behavior. Sibling tools exist but no guidance is provided. The description leaves significant gaps for an agent.

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

Parameters3/5

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

Schema coverage is 100% (all 17 parameters have descriptions). The description mentions filtering by collection, type, and pagination, which maps to a subset of parameters, but does not explain pagination-related parameters like index, nValues, sortColumn, etc. Baseline 3 is appropriate as the schema already provides parameter documentation.

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

Purpose4/5

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

The description clearly states the tool lists actions with optional filtering, using a specific verb 'List' and resource 'actions'. However, it does not differentiate from sibling tools like transkribus_action_count or transkribus_action_info, which perform related but different tasks.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention when not to use it or any prerequisites. The agent must infer usage from the name and schema.

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

transkribus_admin_authorize_users_for_jobAuthorize Users for JobC

Authorize specific users to run a job implementation.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobImplYesJob implementation identifier
userIdsYesList of user IDs to authorize

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, idempotentHint=false, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds only the scoping phrase 'to run a job implementation' and says nothing about whether it appends to or replaces the existing ACL, or that repeated calls (non-idempotent) may duplicate grants.

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 clean. It is arguably too sparse for an admin mutation tool, but there is no wasted language.

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 admin mutation with full schema coverage and no output schema, the description is minimally adequate. It omits key behavioral context about ACL semantics and permissions, but the annotations carry the safety profile.

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

Parameters3/5

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

Schema description coverage is 100%, with both jobImpl and userIds clearly documented in the schema, so the baseline of 3 applies. The description's 'specific users' and 'job implementation' merely restate what the schema already conveys, adding no format or constraint 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?

The description states a specific verb (Authorize) and resources (specific users, job implementation), which is more precise than the bare title. It does not, however, differentiate itself from related siblings such as transkribus_user_is_allowed_for_job, transkribus_admin_get_job_users, or transkribus_user_get_job_acl.

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 checking whether a user is already allowed (transkribus_user_is_allowed_for_job) or listing current job users (transkribus_admin_get_job_users). Prerequisites such as requiring admin rights are also absent, leaving usage entirely to inference.

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

transkribus_admin_get_job_logGet Job LogB
Read-onlyIdempotent

Retrieve the log output for a specific job.

ParametersJSON Schema
NameRequiredDescriptionDefault
dbNoDatabase identifier
idYesResource ID

TDQS

B3.1/5.0
Behavior3/5

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

The annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true, so the agent knows it is a safe, non-destructive read. The description adds minimal extra behavioral context beyond confirming it retrieves log output. No contradictions.

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, well-structured sentence that is front-loaded and concise. Every word earns its place, though it is very brief.

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

Completeness2/5

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

Given the number of sibling tools and the lack of an output schema, the description is too minimal. It does not explain the content of the log output, expected format, or any constraints (e.g., job must exist), leaving the agent with insufficient information to fully understand the tool's behavior.

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 clear field descriptions ('Resource ID', 'Database identifier'). The description does not add any additional meaning to the parameters, so a baseline of 3 is appropriate.

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

Purpose4/5

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

The description clearly states the verb 'Retrieve' and the resource 'log output for a specific job', making the purpose evident. It is distinct from sibling tools like transkribus_job_get (which gets job details) and transkribus_job_get_errors (which gets errors), though it does not explicitly differentiate 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 provides no guidance on when to use this tool versus alternatives such as transkribus_job_get or transkribus_job_list. It lacks context about prerequisites, job state, or when not to use it.

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

transkribus_admin_get_job_usersGet Job Authorized UsersA
Read-onlyIdempotent

List users authorized to run a specific job implementation.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobImplYesJob implementation identifier

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive. Description adds context that it lists authorized users for a specific job implementation, reinforcing safe behavior without 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?

Single sentence, no wasted words. Could be slightly more detailed but adequate for the tool's simplicity.

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?

Tool has one parameter, no output schema. Description sufficiently covers purpose and required input. Complete enough for its 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 has 100% coverage with description for jobImpl. Description adds no extra meaning beyond schema. Baseline 3.

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?

Description clearly states verb 'List', resource 'users authorized', and context 'for a specific job implementation'. It distinguishes from siblings like transkribus_admin_authorize_users_for_job.

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?

Description implies usage (when needing authorized users for a job implementation) but does not explicitly state when to use or avoid, nor mention alternatives.

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

transkribus_admin_get_reportsGet Admin ReportsB
Read-onlyIdempotent

Retrieve administrative reports by type and time period.

ParametersJSON Schema
NameRequiredDescriptionDefault
reportTimeYesTime period for the report
reportTypeYesType of report to retrieve

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, making the behavior clear. The description adds no additional behavioral context (e.g., format, pagination, or authorization needs). It does not contradict 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?

The description is a single, efficient sentence of 8 words that immediately conveys the tool's purpose. It is front-loaded and free of unnecessary verbiage.

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

Completeness2/5

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

Given the tool's simplicity (2 string params, no output schema, comprehensive annotations), the description lacks essential details about acceptable report types, time period formats, and the structure of returned data. The agent would benefit from examples or references to documentation.

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 both parameters are documented in the input schema. The description merely echoes the parameter names ('type and time period') without adding semantic details beyond the schema's minimal descriptions. It meets the baseline but adds no extra value.

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

Purpose4/5

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

The description clearly states the verb 'retrieve' and resource 'administrative reports', specifying the key dimensions 'by type and time period'. It effectively differentiates from sibling tools like transkribus_admin_get_job_log or transkribus_stat_get_coll, though it does not explicitly mention 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 usage guidelines are provided. The description does not indicate when to use this tool over other administrative or statistics tools, nor does it mention prerequisites like admin permissions or specific report types available.

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

transkribus_admin_list_sessionsList Active SessionsA
Read-onlyIdempotent

List all currently active user sessions.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the description adds some context ('active') but does not go beyond what annotations imply.

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

Conciseness5/5

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

The description is a single, clear sentence with no extraneous words, achieving maximum 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?

While the purpose is clear, the description lacks details on the output format or any prerequisites, but given the tool's simplicity and rich annotations, it is minimally complete.

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?

No parameters exist, and schema coverage is 100%, so description is not required to add parameter info; baseline 4 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?

The description clearly states it lists all currently active user sessions, which is specific and distinct from sibling admin tools like transkribus_admin_authorize_users_for_job or transkribus_admin_get_job_log.

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 does not provide explicit guidance on when to use this tool versus alternatives, but its purpose is straightforward for listing active sessions, so usage is implied.

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

transkribus_admin_move_field_modelMove Field ModelB
Idempotent

Move a field recognition model to a different directory.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoTarget directory path
modelNameYesField model name to move

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already indicate idempotency and non-destructive behavior. The description adds no extra behavioral context beyond 'move', which is consistent but doesn't disclose details like directory creation 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?

The description is a single concise sentence that quickly conveys the core function. It is front-loaded but could be slightly more 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?

Given the tool has only 2 parameters and no output schema, the description covers the basic purpose. However, it omits details like whether the target directory must exist or if the operation is reversible.

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 parameters described adequately. The description adds no additional meaning 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?

The description clearly states the verb 'Move' and the resource 'field recognition model' to a 'different directory'. It effectively distinguishes from siblings like transkribus_admin_move_table_model.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, such as prerequisites for the target directory or when not to move a model.

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

transkribus_admin_move_table_modelMove Table ModelA
Idempotent

Move a table recognition model to a different directory.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoTarget directory path
modelNameYesTable model name to move

TDQS

A3.6/5.0
Behavior2/5

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

Annotations already indicate idempotent and non-destructive behavior. The description adds no additional behavioral traits, such as the effect on model references or if moving deletes the original. It does not contradict 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?

The description is a single, efficient sentence of 11 words with no redundancy. It conveys the essential information without 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 move operation with two parameters and good annotations, the description provides the core action. However, it does not specify whether the path is relative or absolute, or error handling for non-existent models, which would enhance completeness.

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?

Both parameters have clear descriptions in the schema ('Table model name to move' and 'Target directory path'). The description adds no extra meaning beyond what the schema provides, so baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the specific action (move), resource (table recognition model), and destination (different directory). It effectively distinguishes from the sibling tool 'transkribus_admin_move_field_model' by specifying the model type.

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?

No explicit guidance on when to use this tool versus alternatives, or prerequisites. The description implies usage when a table model needs moving, but lacks context like when not to use it or comparison to similar move tools.

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

transkribus_admin_rebuild_models_indexRebuild Models IndexA

Rebuild the search index for all recognition models.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior2/5

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

Annotations provide limited info (destructiveHint=false), but 'rebuild' implies potential overwriting; description adds no behavioral traits like side effects, duration, or admin requirements.

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?

Single sentence that is front-loaded and concise, with zero wasted words.

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?

Minimal but adequate for a simple admin action. Lacks details on prerequisites, whether it triggers a background job, or impact on existing indices.

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?

No parameters exist, and description correctly implies no input needed. Baseline 4 for zero-param tools, and no additional info required.

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 explicitly states the verb (rebuild), resource (search index), and scope (for all recognition models), providing clear purpose. It distinguishes from sibling tools like transkribus_search_reset_index by specifying models.

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

Usage Guidelines2/5

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

No guidance on when to use this tool, prerequisites, or alternatives. The description lacks context like 'use after model updates' or comparisons to similar tools.

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

transkribus_auth_check_sessionCheck SessionA
Read-onlyIdempotent

Check if the current Transkribus session is valid.

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?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the read-only, side-effect-free profile is covered. The description adds no behavioral detail beyond stating the validity check, but it does not contradict 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?

The description is a single sentence, front-loaded with the verb and object, and contains no filler. It is appropriately sized for a zero-parameter 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 the absence of parameters, rich safety annotations, and low complexity, the description is essentially complete for invoking the tool. It does not specify the exact return type of the validity check, but that is a minor gap for such a simple operation.

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?

This tool has zero parameters and schema coverage is 100%, so there is nothing for the description to add about inputs. The baseline of 4 for parameterless tools is appropriate here.

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 ('Check') and a clear resource ('current Transkribus session') with an explicit outcome ('is valid'). It is distinguishable from sibling auth tools like auth_refresh and auth_get_details by the validity focus, though it does not explicitly name these 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?

There is no guidance on when to use this tool instead of auth_get_details, auth_refresh, or auth_logout, and no mention of using it as a precondition for other operations. Any usage context is only implicit in the name and short description.

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

transkribus_auth_get_detailsGet Auth DetailsA
Read-onlyIdempotent

Get details of the currently authenticated user.

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, idempotentHint, openWorldHint, and destructiveHint=false, so the safety profile is covered. The description adds no additional behavioral context such as auth requirements or output variability, but it is consistent with 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?

A single clear sentence fully conveys the tool's function with no filler or redundant restatement of the name.

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

Completeness3/5

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

For a zero-parameter, read-only tool, basic invocation is straightforward. However, there is no output schema and the description says only 'details' without indicating what user fields are returned, leaving some ambiguity about the tool's output.

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

Parameters4/5

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

The tool has zero parameters and schema description coverage is 100%, so there is no parameter information for the description to supplement. Baseline 4 is appropriate.

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 uses a specific verb ('Get') and an unambiguous resource ('details of the currently authenticated user'). This clearly distinguishes it from sibling auth tools like transkribus_auth_check_session, transkribus_auth_invalidate, transkribus_auth_logout, and transkribus_auth_refresh, which concern session lifecycle rather than user details.

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, exclusions, or alternatives. It does not mention when to prefer this over transkribus_auth_check_session (for session status) or transkribus_user_get (for other user lookups).

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

transkribus_auth_invalidateInvalidate SessionB
DestructiveIdempotent

Invalidate the current authentication session.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already signal destructiveHint=true and readOnlyHint=false, and the description adds that the affected resource is the current authentication session. It does not disclose downstream effects such as requiring re-authentication or whether all sessions are affected, but it does not contradict 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?

The description is a single, front-loaded sentence with no filler. Every word contributes to the meaning, making it highly concise and 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 zero-parameter destructive auth action, the description plus annotations make the tool callable, but it omits useful context such as the effect on subsequent authenticated requests and the relationship to logout/refresh siblings. The absence of an output schema or explicit behavioral context leaves some ambiguity about the real-world impact.

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

Parameters4/5

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

The input schema has zero parameters and 100% schema description coverage, so there is no parameter documentation gap. The baseline for a zero-parameter tool is 4, and the description does not need to compensate for missing parameter 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?

The description clearly identifies the action ('invalidate') and the resource ('current authentication session'), so an agent can tell what the tool does. However, it does not distinguish it from the similarly scoped sibling transkribus_auth_logout, so it falls 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 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 instead of alternatives such as transkribus_auth_logout or transkribus_auth_refresh, nor any warning about when not to call it. The description only states the operation without usage context.

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

transkribus_auth_logoutLogoutA
Idempotent

Log out of the current Transkribus session.

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?

Annotations already indicate the operation is idempotent and non-destructive. The description adds the useful scoping cue 'current Transkribus session', but it does not mention post-logout effects such as invalidating the token or requiring re-authentication.

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 concise, front-loaded sentence with no filler or redundancy. It fully communicates the tool's action in minimal space.

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, idempotent authentication action, the description plus annotations provide enough to invoke the tool correctly. It lacks explicit post-conditions and sibling-routing details, but the simplicity of the operation keeps the gap modest.

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

Parameters4/5

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

The input schema has zero properties and schema description coverage is 100%, so there are no parameters requiring documentation. The description needs no parameter-level 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?

Description states a specific verb ('Log out') and resource ('current Transkribus session'), making the purpose clear. It is easily distinguished from check_session and get_details, but it does not explicitly differentiate from auth_invalidate, which may be a nearby alternative.

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

Usage Guidelines2/5

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

No guidance is given about when to use logout versus auth_invalidate, auth_refresh, or check_session. The description simply restates the action without providing selection criteria or exclusions.

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

transkribus_auth_refreshRefresh SessionA
Idempotent

Refresh the current authentication session token.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

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

Annotations already indicate idempotentHint=true and destructiveHint=false, so the agent knows the operation is non-destructive and safe to repeat. The description adds no behavioral context beyond naming the resource, e.g., no mention of side effects on the existing token or behavior if the session is invalid. It does not contradict 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?

The description is a single, direct sentence with no filler. It is front-loaded with the action and names the target resource immediately. Every word 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 zero-parameter, no-output-schema tool with annotations covering safety, the description is nearly complete. It states the action and target. It could mention the effect (e.g., extends token validity) or note a prerequisite that an authenticated session exists, but these are minor gaps for such a simple operation.

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

Parameters4/5

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

The tool has zero parameters and the schema is an empty object, so the baseline is 4. The description need not explain parameters. The phrase 'current authentication session token' implicitly clarifies that no parameters are needed because the session is identified by the existing token.

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 uses a specific verb ('refresh') and a clear resource (current authentication session token). It is distinct from sibling auth tools like check_session, get_details, invalidate, and logout, so an agent can distinguish it. It does not restate the title alone; it specifies exactly what is refreshed.

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 implies usage: when the current authentication session token needs refreshing. However, it does not explicitly mention when to use it compared to alternatives (e.g., auth_check_session, auth_logout) or state any prerequisites or exclusions. The context is clear enough for a trivial zero-parameter operation, but no guidance is provided.

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

transkribus_coll_activity_recognitionGet Recognition ActivityB
Read-onlyIdempotent

Get recognition activity records for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
toNoEnd timestamp (epoch ms)
fromNoStart timestamp (epoch ms)
collIdYesCollection 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=true and idempotentHint=true, so the description's claim of 'Get' is consistent. However, the description adds no extra behavior details beyond what annotations and schema imply.

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 is concise and front-loaded. However, it could include more detail without sacrificing brevity.

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

Completeness3/5

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

Given no output schema and many sibling tools, the description lacks an explanation of what constitutes 'recognition activity' or the return format. Adequate for a simple read, but incomplete for full understanding.

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

Parameters3/5

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

Schema description coverage is 100%, so parameters are self-explanatory. Description adds no additional semantics about parameter usage or format.

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?

Description clearly states the action (Get), resource (recognition activity records), and scope (for a collection), distinguishing it from siblings like transkribus_user_activity_recognition and transkribus_coll_activity_saves.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternative activity tools such as transkribus_coll_activity_saves. The description does not provide context for selection.

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

transkribus_coll_activity_savesGet Save ActivityB
Read-onlyIdempotent

Get save activity records for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
toNoEnd timestamp (epoch ms)
fromNoStart timestamp (epoch ms)
collIdYesCollection ID

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint=true, destructiveHint=false, idempotentHint=true. The description adds no behavioral context beyond the name, but does not contradict annotations. With annotations, minimal extra information is acceptable.

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, no wasted words. While minimal, it effectively states the tool's purpose. Could benefit from a bit more detail, but remains concise.

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 three parameters and no output schema, the description is adequate but lacks explanation of what 'save activity' includes (e.g., types of saves, timestamps). Annotations cover safety, but completeness could be improved.

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 descriptions for all three parameters (collId, from, to). The description does not add further meaning, such as the relationship between from/to or default behavior. Baseline 3 is appropriate given high schema coverage.

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

Purpose4/5

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

Description clearly states 'Get save activity records for a collection' with a specific verb and resource. However, it does not differentiate from sibling tools like transkribus_user_activity_saves or transkribus_coll_activity_recognition, which could lead to confusion.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. Lacks context about prerequisites, such as requiring a valid collId, or when to choose this over other activity-related tools.

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

transkribus_coll_add_docAdd Document to CollectionB

Add an existing document to a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoDocument ID
docIdYesDocument ID
collIdYesCollection ID
moveToNoMove instead of copy (default false)

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, openWorldHint=true, idempotentHint=false, and destructiveHint=false, which covers the basic safety profile. The description adds little behavioral context beyond what the annotations and title already imply; it does not mention copy-versus-move behavior, permissions, or duplicate handling. It is consistent with the annotations, so there is no contradiction.

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 filler or redundancy. It communicates the core operation efficiently. It is concise without being a bare tautology.

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 mutation with two required integer IDs and one optional flag, the schema and annotations are mostly sufficient for invoking the tool. However, the description omits any note about return values, duplicate membership behavior, or the copy-versus-move default, and no output schema exists to fill that gap. A bit more context would make it more complete.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description adds slight meaning by emphasizing that the document must already exist, but it does not clarify the relationship between the optional 'id' and required 'docId', nor does it explain the moveTo semantics 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?

The description clearly states a specific action: add an existing document to a collection. The verb 'add' and the resources 'document' and 'collection' are clear, and 'existing' distinguishes this from creation or upload tools. However, it does not explicitly distinguish itself from the similarly named sibling transkribus_coll_add_docs, 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?

No guidance is provided on when to use this tool versus alternatives. It does not mention sibling tools such as transkribus_coll_add_docs for adding multiple documents, transkribus_coll_remove_doc for removal, or the various document creation/upload tools. The agent is left to infer usage from the tool name and schema.

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

transkribus_coll_add_docsAdd Documents to CollectionA

Add multiple existing documents to a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
docIdsYesArray of document IDs to add
moveToNoMove instead of copy (default false)

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already signal a non-read-only, non-idempotent, open-world operation; the description does not contradict them. It adds no extra detail about side effects such as duplicate behavior, permissions, or whether moveTo changes the operation, so it stays at baseline.

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?

Single sentence, front-loaded with the verb and object, no filler. Every word earns its place for such a simple tool.

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

Completeness3/5

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

Adequate for a straightforward bulk-add call because all parameters are documented and the purpose is unambiguous. However, with no output schema and no guidance on duplicates, preconditions, or failure behavior, an agent has to infer those from the API 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 coverage is 100%, so the schema already documents collId, docIds, and moveTo clearly. The description adds no parameter-specific meaning beyond the schema, so baseline 3 is appropriate.

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 uses a specific verb ('add'), a clear resource ('existing documents'), and a target ('collection'). The plural 'multiple' signals this is the bulk variant of transkribus_coll_add_doc, distinguishing it without extra wording.

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 clearly states the operation is for multiple existing documents, which implies use when batching additions. It does not explicitly name the singular alternative transkribus_coll_add_doc or state when not to use this tool, but the context signal is strong enough.

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

transkribus_coll_add_favoriteAdd Collection to FavoritesC

Add a collection to the user favorites.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations (readOnlyHint=false, idempotentHint=false) already signal a mutating, non-idepotent operation, but the description adds no behavioral context beyond that. It does not disclose whether re-adding an already-favored collection fails or silently succeeds, what happens if the collection does not exist, or whether the favorite is per-user. No contradiction with annotations, but no added value either.

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 borders on redundancy with the tool name and title, but it remains an efficient and complete sentence rather than a tatuological stub.

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 tool with one fully documented parameter and no output schema, all required calling informtion is present: what the tool does and what to pass. However, it omits useful context such as the existance of the inverse sibling for removal, repeat-call behavior, and user scopcing of favorites, which would help an agent use 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 100%, so collId is already documented as 'Collection ID' in the schema. The description merely echoes 'collection' without adding extra meaning or constraints beyond what the schema provides, matching the baseline for fully 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?

The description states a specific action ('Add') and a clear resource ('collection' to 'user favorites'), making the core operation unambiguous. However, it does not explicitly distinguish itself from siblings, particularly the inverse transkribus_coll_remove_favorte, leaving the differentiation to the tool name and title.

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 its alternatives. It does not mention the inverse operation transkribus_coll_remove_favorte, nor any conditions or prerequisites (e.g., ownership, authentication, or whether favorites are user-scoped).

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

transkribus_coll_can_manageCan Manage CollectionB
Read-onlyIdempotent

Check if the current user can manage the specified collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection 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=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the 'current user' scope, but does not disclose anything else about behavior such as return shape, error conditions, or authentication requirements.

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, concise sentence that directly states the operation. Every word contributes meaning and there is no redundant or filler 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?

This is a simple single-parameter, read-only permission check with strong annotations and no output schema. The description is adequate for an agent to understand the tool, though it leaves the boolean result implicit rather than stating it explicitly.

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 collId described as 'Collection ID'. The description adds no additional parameter semantics beyond confirming the collection is the target of the check, 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 ('Check if') and a specific resource ('the current user can manage the specified collection'), so an agent can understand the tool's purpose. It does not explicitly distinguish itself from sibling permission-related tools such as transkribus_auth_check_session or transkribus_coll_user_stats, 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 description gives no guidance on when to use this tool versus alternatives, nor does it mention prerequisites or exclusions. There is only an implicit sense that it should be used to verify management permission before performing collection-managing actions.

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

transkribus_coll_countCount CollectionsA
Read-onlyIdempotent

Get the total number of collections accessible to the current user.

ParametersJSON Schema
NameRequiredDescriptionDefault
emptyNoInclude empty collections
filterNoFilter string

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds that the count is scoped to collections accessible to the current user, but does not disclose details like whether empty collections are counted by default or how the filter affects results.

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 operation, resource, and scope with no wasted words. It is exactly as long as needed for the tool's simplicity.

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 count tool with annotated safety and fully described parameters, the description is mostly complete. It states the result domain ('total number') and the scope, but with no output schema it leaves the exact response representation unstated, which is a minor 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 both parameters are already documented in the input schema. The description adds no extra meaning about the parameters, and the schema's 'Filter string' is terse, but the description does not need to compensate for a coverage 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 operation ('get the total number') on a specific resource ('collections') and defines the scope ('accessible to the current user'). It is immediately distinguishable from sibling count tools like coll_count_docs and coll_count_find_documents by naming collections as the counted entity.

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 clearly implies this tool is for obtaining a count rather than a list or detailed collection data. It does not explicitly name alternatives or state when not to use it, but the context is clear and the scope is well-defined.

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

transkribus_coll_count_docsCount Documents in CollectionB
Read-onlyIdempotent

Get the number of documents in a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
labelIdNoFilter by label ID
isDeletedNoInclude deleted documents
uploaderIdNoFilter by uploader 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=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds no extra behavioral context, such as how filters like labelId or isDeleted affect the count. It does not contradict annotations, but it provides minimal additional transparency beyond what the annotations already convey.

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 sentence with no filler words. It immediately conveys the purpose and is perfectly structured for quick comprehension.

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

Completeness4/5

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

Given the simplicity of the tool (counting documents), the description is adequately complete. The schema explains all filters, annotations cover safety, and the description implies a numeric return value. No critical information is missing for an agent to call the tool 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 100%: each parameter has a description ('Collection ID', 'Filter by label ID', 'Include deleted documents', 'Filter by uploader ID'). The description adds nothing 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?

The description states a clear action: 'Get the number of documents in a collection.' It specifies the verb (get), the resource (collection), and the result (count). It does not explicitly distinguish from siblings like transkribus_coll_count or transkribus_coll_count_find_documents, but the scope is unambiguous.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives such as transkribus_coll_count_find_documents (which likely supports more complex filters) or transkribus_coll_list_docs (which returns documents rather than just a count). The description gives no context for selection.

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

transkribus_coll_count_find_documentsCount Found DocumentsB
Read-onlyIdempotent

Count documents matching the given search criteria.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoFilter by ID
descrNoFilter by description
docIdNoFilter by document ID
titleNoFilter by document title
authorNoFilter by author
collIdNoFilter by collection ID
useridNoFilter by user ID
writerNoFilter by writer
labelIdNoFilter by label ID
isDeletedNoInclude deleted documents
exactMatchNoRequire exact match
uploaderIdNoFilter by uploader ID
caseSensitiveNoCase sensitive search

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, idempotentHint=true, and destructiveHint=false, so the safety profile is fully covered and the bar for the description is lower. The description adds no behavioral context beyond restating the operation — no mention of result bounding, the open-world scope implied by openWorldHint, or what the count represents. This is acceptable but adds no 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.

Conciseness4/5

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

The description is a single front-loaded sentence with zero wasted words — the verb and object appear immediately. It is appropriately brief for a count operation, though it errs on the side of brevity given the 13-parameter search surface it governs.

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 tool with 13 filter parameters, no required arguments, and no output schema, the description is thin: it does not state the return shape, whether the count is bounded, or how this differs from the find_documents variants among siblings. The 100% schema coverage and safety annotations partially compensate, making this minimally viable but not complete.

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

Parameters3/5

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

Schema description coverage is 100%, so every one of the 13 filter parameters is already documented with a description; the baseline of 3 applies. The description's phrase 'search criteria' broadly groups the parameters but adds no combinatorial semantics, such as how filters combine or the effect of defaults like isDeleted and exactMatch.

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 ('Count') plus resource ('documents') and the scoping mechanism ('matching the given search criteria'), which inherently distinguishes it from transkribus_coll_find_documents (returns the documents) and transkribus_coll_count_docs (counts within a single collection). However, the differentiation is implicit in the word 'Count' rather than explicit, and no sibling is named.

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?

Provides no guidance on when to choose this over the adjacent family: transkribus_coll_find_documents, transkribus_coll_find_documents_post, and transkribus_coll_count_docs are all plausible alternatives an agent could confuse it with. No exclusions, prerequisites, or decision context are given — the single sentence simply restates the operation.

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

transkribus_coll_createCreate CollectionB

Create a new collection with the given name.

ParametersJSON Schema
NameRequiredDescriptionDefault
collNameYesName for the new collection

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already indicate a mutating, non-idempotent, non-destructive operation. The description adds no additional behavioral context such as duplicate-name handling, permission requirements, or side effects beyond the obvious 'create' action.

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

Conciseness5/5

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

The description is a single clear sentence with no filler, and the key action is front-loaded. Nothing extraneous 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?

This is a simple one-parameter creation tool, and annotations plus schema cover the core safety and input requirements. However, the description does not mention return behavior, duplicate-name outcomes, or any other post-creation expectation, leaving some practical gaps.

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

Parameters3/5

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

The input schema already documents collName with its own description, and schema coverage is 100%. The description only restates the idea of 'the given name' and adds no extra meaning about format, uniqueness, or validation.

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

Purpose4/5

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

The description clearly states the verb and resource: create a new collection. This is distinguishable at a high level from the many sibling document/page creation tools, though it does not explicitly call out any sibling distinction.

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

Usage Guidelines2/5

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

There is no guidance about when to use this tool versus alternatives such as creating a document, adding a document to a collection, or importing from METS/PDF/IIIF. The agent must infer usage entirely from the tool name and description.

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

transkribus_coll_create_doc_from_ftpCreate Document from FTPB

Ingest a document into a collection from an FTP source.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
fileNameNoFile name on FTP
doDeleteImportSourceNoDelete import source after ingest
checkForDuplicateTitleNoCheck for duplicate title

TDQS

B3.3/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false, so the safety profile is covered. The description adds little beyond that: it says 'ingest a document into a collection from an FTP source,' which mostly restates the name and title, with no extra detail about authentication, FTP path handling, or side effects beyond the schema's parameters.

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

Conciseness5/5

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

One short sentence with the action and source front-loaded, no filler, and no redundant clauses. It is appropriately sized for the description's limited scope.

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 description is adequate given 100% schema coverage and existing annotations, but it is thin for a tool with many closely related import siblings. It does not explain when to choose this FTP variant over other create_doc_from_* tools, nor does it mention any FTP-specific prerequisites.

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 already documented in the schema. The description adds no additional parameter meaning, so the baseline of 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 ('ingest') and resource ('document into a collection') along with a source type ('FTP'). This distinguishes it from siblings such as transkribus_coll_create_doc_from_iiif and transkribus_coll_create_doc_from_mets, though it does not explicitly name an alternative.

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 phrase 'from an FTP source' implies the usage context: use this tool when importing from FTP. However, it gives no explicit when-to-use/when-not-to-use guidance and does not compare against sibling import tools like add_doc or create_doc_from_mets.

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

transkribus_coll_create_doc_from_iiifCreate Document from IIIF URLC

Create a document in a collection from an IIIF manifest URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesIIIF manifest URL
collIdYesCollection ID
canvasFilenameReferenceNoCanvas filename reference

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already cover safety (readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=true), so the bar is lower, but the description adds nothing beyond restating the operation. It does not say the tool fetches an external manifest, whether the resulting document contains pages, or whether repeated calls create duplicates (notably relevant given idempotentHint=false).

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 is partly the source of the missing usage and behavior 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 non-idempotent, open-world creation tool with no output schema, the description leaves the agent without the returned identifier, any indication of whether the imported manifest is fetched synchronously, or permission/collection-membership prerequisites. The schema covers inputs, but key behavioral expectations are 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?

Schema description coverage is 100% and all three parameters (url, collId, canvasFilenameReference) are documented in the schema. The description adds no extra meaning, such as URL format requirements or what the optional canvasFilenameReference does, 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 (Create), resource (document), container (in a collection) and source (IIIF manifest URL). The IIIF qualifier implicitly distinguishes it from siblings such as transkribus_coll_create_doc_from_mets, _from_mets_url and _from_ftp, 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?

There is no explicit when-to-use guidance or exclusion criteria. An agent must infer from the name that this is the IIIF variant versus the METS/FTP siblings; the description never says to prefer this tool when the source is an IIIF manifest rather than another import format.

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

transkribus_coll_create_doc_from_metsCreate Document from METSA

Create a document in a collection from a METS XML document, uploaded as multipart form data. Provide exactly one of metsXml or metsFilePath.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
metsXmlNoInline METS XML content
metsFilePathNoLocal file path to a METS XML file

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare this is a non-readonly, open-world, non-idempotent, non-destructive write. The description adds useful context (multipart upload, exactly-one-source constraint) but says nothing about permissions required, cost implications, or side effects of repeated calls.

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 waste, with the core action front-loaded and the input constraint immediately following. Every clause earns 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?

The absence of an output schema means the description could usefully say what a successful call returns (e.g., document ID), and it omits prerequisites like collection permission. Adequate for invoking the tool but not fully complete for a creation operation.

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 field meanings are covered, but the description adds the mutual-exclusivity rule ('exactly one of metsXml or metsFilePath') that the schema does not encode via anyOf/oneOf. That is genuine semantic value beyond the structured fields.

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 (document in a collection) with the source format (METS XML) and transport (multipart form data). The multipart phrasing implicitly distinguishes it from the sibling transkribus_coll_create_doc_from_mets_url, though siblings iiif/ftp are not named.

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 through source format and the upload mechanism, but never states when to prefer this tool over the sibling create_doc_from_mets_url, iiif, or ftp variants. No exclusions or prerequisites are given, leaving the selection decision to inference.

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

transkribus_coll_create_doc_from_mets_urlCreate Document from METS URLC

Create a document in a collection from a METS URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesMETS URL
collIdYesCollection 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=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false, so the safety profile is covered. The description adds nothing beyond that - it does not say whether the METS fetch is synchronous or job-based (the openWorldHint suggests an external network call that could fail or be slow), whether repeat calls with the same URL create duplicates, or what permissions are required. Given the lowered bar from annotations, this is thin rather than contradictory.

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 repetition of the title. It is efficient, though its brevity is also the source of the gaps scored elsewhere rather than a virtue of structure alone.

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 creation tool with a fully covered schema and no output schema, the description is minimally sufficient. However, against a sibling set that contains four near-identical 'create document from X source' variants, it leaves routing and preconditions unresolved, so it is adequate but clearly 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% with only two required parameters (url, collId), both described in the schema, so the baseline is 3. The description confirms the url must be a METS resource but adds no format constraints or error semantics beyond the schema's format=uri.

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 (Create), resource (document in a collection), and source qualifier (from a METS URL), which distinguishes it from the sibling variants that create documents from IIIF, FTP, or an uploaded METS file. It stops short of explicitly naming those siblings or the ambiguous transkribus_coll_create_doc_from_mets, so an agent must infer the routing from the URL phrasing 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 statement of prerequisites (valid METS URL, write access to the target collection), and no explicit comparison with the near-identical siblings coll_create_doc_from_iiif, coll_create_doc_from_ftp, and coll_create_doc_from_mets. The reader has to infer everything 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.

transkribus_coll_create_iob_importIOB ImportA

Create documents from an IOB import.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoDocument ID
collIdNoTarget collection ID
fileNameNoIOB file name

TDQS

A3.6/5.0
Behavior2/5

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

Annotations say the operation is not read-only, not idempotent, and open-world, but the description adds no behavioral context beyond the bare creation statement. It does not explain side effects, whether an existing document is modified, what happens to the IOB data, or what the caller should expect afterward. No contradiction exists, but the description contributes little 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?

A single, front-loaded sentence with no filler. Every word contributes to stating the action and the source format. There is no redundancy with the title or schema.

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

Completeness2/5

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

Despite full schema coverage, an agent is left without enough context to call this safely: no output schema, no explanation of what 'IOB import' means operationally, and no clarification of the optional-looking 'id' parameter. The tool is a non-idempotent creation action with open-world effectss, so more guidance about file source, target collection, and expected result is needed.

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

Parameters3/5

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

Schema description coverage is 100%, so the parameters are already documented individually. The description adds no extra meaning about how 'id', 'collId', and 'fileName' relate to the IOB import process. Baseline 3 applies because the schema carries the burden.

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 uses a specific verb ('Create') and resource ('documents from an IOB import'), clearly distinguishing this tool from sibling document-creation tools like from_mets, from_pdf, and from_iii. The format, IOB, is the key discriminator and is front and center.

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 phrase 'from an IOB import' gives a clear contextual trigger: use this tool when the source data is an IOB-format import. It does not explicitly name alternative tools or exclusion conditions, but the IOB-specific context is strong enough that an agent can decide when this tool applies.

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

transkribus_coll_credit_add_packageAdd Credit PackageA

Add a credit package to a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesCredit package ID to add
collIdYesCollection ID

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already indicate add operation (readOnlyHint=false, destructiveHint=false, idempotentHint=false). The description adds no further behavioral context, such as whether duplicate adds are allowed or what side effects occur (e.g., credit consumption).

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, no unnecessary words. Front-loaded with the action and resource.

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

Completeness3/5

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

Given the tool's simplicity (2 params, no output schema), the description is minimal but adequate. However, it could mention expected return value or confirmation behavior, especially since annotations are not fully informative.

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 clear descriptions for both parameters ('Collection ID' and 'Credit package ID to add'). The description does not add any additional meaning beyond the schema.

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 'Add a credit package to a collection' clearly states the action (add) and the primary resource (credit package) and target (collection). It distinguishes from sibling tools like transkribus_coll_credit_remove_package.

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 usage guidelines are provided. The description does not indicate when to use this tool versus alternatives (e.g., transkribus_coll_credit_list for viewing packages), nor does it mention prerequisites like whether the collection or credit package must exist.

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

transkribus_coll_credit_historyGet Credit HistoryB
Read-onlyIdempotent

Get the credit usage history for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

TDQS

B3.3/5.0
Behavior3/5

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

The annotations already declare readOnlyHint, idempotentHint, openWorldHint, and non-destructive behavior, so the safety profile is covered. The description adds that the history is collection-scoped, but it does not describe pagination, sorting behavior, or what the returned history contains.

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 states the core action immediately and does not bury it under extraneous text.

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 and annotations carry most of the structural and safety context, but the description is thin for a tool with five parameters and many adjacent credit-related siblings. It omits return-value expectations and does not help the agent distinguish this from other credit-history endpoints.

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 every parameter is already documented in the schema. The description adds no parameter-level meaning beyond the collection scope that is already captured by the required collId field.

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 and resource: 'Get the credit usage history for a collection.' It is specific and not tautological, but it does not distinguish this tool from several similar credit-history siblings such as transkribus_credit_get_history or transkribus_coll_credit_transactions.

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 guidance about when to use this tool instead of the many other credit-related tools. There is no mention of alternatives, prerequisites, or exclusion conditions, so the agent must infer routing from the name and sibling list alone.

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

transkribus_coll_credit_listList Collection CreditsC
Read-onlyIdempotent

List credit packages associated with a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)
minBalanceNoMinimum balance filter
onlyActiveNoOnly active credits
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc
includeExpiredNoInclude expired credits

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, idempotentHint=true, and destructiveHint=false, so safety is covered. The description adds nothing beyond the purpose line: it does not disclose pagination behavior, default filtering (onlyActive=true, includeExpired=true), or what a returned credit package includes, leaving meaningful behavior 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?

A single front-loaded sentence with zero waste; the verb and scoping are immediately clear. It is perhaps overly terse given the tool's eight parameters, but nothing is padded or redundant.

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 eight parameters, no output schema, and no return-value documentation, the description should at minimum explain that results are filterable/paged credits and what fields a package contains. As written it is adequate only in the narrowest sense for such a parameter-rich 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 description coverage is 100%, so all eight parameters including index, nValues, minBalance, onlyActive, sortColumn and sortDirection are already documented in the schema. The description adds no extra syntax or constraints, 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 and resource ('List credit packages') scoped to a collection, which distinguishes it from coll_credit_transactions/credit_history siblings. However, it does not explicitly name which sibling to use for transactions versus packages, so the 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?

There is no when-to-use guidance, no mention of prerequisites (e.g., the required collId being mandatory), and no routing to alternatives such as transkribus_credit_get_package_transactions or transkribus_coll_credit_history. The agent must 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.

transkribus_coll_credit_remove_packageRemove Credit PackageB
DestructiveIdempotent

Remove a credit package from a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesCredit package ID to remove
collIdYesCollection ID

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, idempotentHint=true. The description adds no additional behavioral context such as side effects, authorization needs, or what happens if the package doesn't exist. It is consistent with annotations, so no contradiction, but does not enhance information beyond them.

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, clear sentence with no unnecessary words. It is appropriately sized for a straightforward operation, though a bit more detail on the package removal process would not hurt.

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?

No output schema exists. The description does not indicate what the tool returns upon success or failure, nor does it mention any side effects or error conditions. For a removal tool, this is a significant 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 descriptions for both parameters ('Collection ID', 'Credit package ID to remove') are clear and cover 100% of parameters. The tool description adds no further meaning beyond the schema, meeting the baseline expectation.

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

Purpose4/5

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

The description clearly states the action and resource: 'Remove a credit package from a collection.' It distinguishes from sibling tools like 'add' and 'list' by using 'remove', though it could be more specific about the context (e.g., removing a previously added package).

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., credit removal via other methods), no prerequisites, and no conditions for safe usage. The description is purely declarative.

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

transkribus_coll_credit_transactionsGet Credit TransactionsC
Read-onlyIdempotent

Get credit transaction records for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds no behavioral context beyond the annotations—no pagination behavior, return shape, or permission requirements are described.

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, front-loaded sentence with no filler. It is appropriately concise, though the terseness contributes to missing context elsewhere.

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

Completeness2/5

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

For a read-only transaction retrieval tool with five parameters and many similar siblings, the description is incomplete. It does not clarify scope (all collection transactions vs. history vs. list) or mention required collId and pagination/sorting options, all of which are needed to select and invoke 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%, and each parameter (collId, index, nValues, sortColumn, sortDirection) has a schema description. The tool description adds no additional parameter meaning, 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?

Specific verb 'Get' and resource 'credit transaction records for a collection' are clear. However, it does not differentiate from sibling tools like transkribus_coll_credit_history, transkribus_coll_credit_list, and transkribus_credit_get_transactions, so an agent cannot tell which to use 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?

No explicit when-to-use guidance, no alternatives named, and no exclusions. The description only implies it is for retrieving collection credit transactions; it does not say when to prefer it over similar credit-history or listing tools.

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

transkribus_coll_deleteDelete CollectionB
DestructiveIdempotent

Delete a collection by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
forceNoForce delete even if not empty (default false)
collIdYesCollection ID

TDQS

B3.1/5.0
Behavior2/5

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

The description simply restates the action already implied by the tool name and annotations; it adds no behavioral context beyond the structured hints. It does not mention that deletion is permanent, what happens to contained documents, or any permission requirements. It does not contradict the annotations, but it contributes no additional transparency.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no filler or redundancy. Every word contributes to the core meaning, making it an appropriately concise 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?

For a simple delete action with a fully documented schema and a destructiveHint annotation, the core invocation information is present. However, the definition lacks any usage alternatives, behavioral warnings, or clarification of what happens when force is false and the collection is non-empty, leaving the agent to infer important operational context on its own.

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 applies: both collId and force are already documented in the schema. The description's 'by ID' phrasing mirrors collId but adds no new parameter semantics, and it says nothing about the force parameter.

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

Purpose4/5

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

The description clearly states the action (Delete) and the resource (a collection), qualified by ID, so the tool's purpose is unambiguous. It does not explicitly distinguish itself from siblings like transkribus_coll_delete_empty or transkribus_doc_delete, but the 'by ID' qualifier provides some differentiation.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives such as transkribus_coll_delete_empty or when a force delete is appropriate. The only implied usage is that the caller has a collection ID, but no explicit scenarios, prerequisites, or exclusions are given.

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

transkribus_coll_delete_emptyDelete Empty CollectionA
DestructiveIdempotent

Delete a collection only if it is empty.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID

TDQS

A4.2/5.0
Behavior4/5

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

Annotations include destructiveHint: true and idempotentHint: true. The description adds the conditional behavior (only if empty), which is not captured by annotations. No contradictions.

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?

Single short sentence that front-loads the key behavior. 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 conditional delete with one parameter and no output schema, the description is adequate. It could mention error handling (e.g., if collection not empty or not found), but the core behavior is clear.

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 'collId' with schema description 'Collection ID'. Schema coverage is 100%, so description does not add extra meaning beyond the schema. Baseline 3.

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 name 'Delete Empty Collection' and description 'Delete a collection only if it is empty.' clearly state the action and condition. This distinguishes it from 'transkribus_coll_delete' which presumably deletes any collection.

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 implies when to use (safe deletion of empty collections). It does not explicitly state prerequisites or when not to use, but the sibling tool name suggests an alternative for non-empty collections.

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

transkribus_coll_duplicateDuplicate CollectionB

Duplicate an entire collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID

TDQS

B3.3/5.0
Behavior2/5

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

Annotations already convey that this is a mutating, non-idempotent, non-destructive operation, but the description adds no additional behavioral context. It does not disclose whether a new collection is created, whether documents and members are copied, or whether duplicate operations are asynchronous or require special permissions. No contradiction exists, but the description does not go beyond the structured 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?

The description is a single, front-loaded sentence with no redundant wording. It states the action and target resource directly, making the tool easy to scan and understand.

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 tool with 100% schema coverage and relevant annotations, the description is minimally viable. However, it leaves some ambiguity about whether collId refers to the source collection only, what the output is (e.g., a new collection ID), and whether duplication is asynchronous or blocks until 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?

The schema provides 100% coverage with a clear 'Collection ID' description for collId, so the baseline is 3. The tool description does not add parameter-level details, but the single parameter is already well-documented by the schema.

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 uses the specific verb 'Duplicate' with the resource 'an entire collection', which clearly states what the tool does. It also distinguishes itself from the sibling transkribus_coll_duplicate_doc by indicating this operates at the collection level rather than document level.

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 like transkribus_coll_create, transkribus_coll_export, or transkribus_coll_duplicate_doc. It also does not mention any prerequisites, naming behavior, or cases where this tool should be avoided.

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

transkribus_coll_duplicate_docDuplicate DocumentC

Duplicate a document within a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoName for the duplicated document
docIdYesDocument ID
collIdYesCollection ID
targetCollIdNoTarget collection ID for the copy

TDQS

C2.4/5.0
Behavior2/5

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

Annotations indicate readOnlyHint=false, but description does not disclose behavior beyond duplication. No mention of side effects, permissions needed, or whether the original document is affected. With no output schema, the return value is also opaque.

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?

Description is extremely short (one sentence) but under-specifies the tool's capabilities. It is not appropriately sized; it loses points for lacking necessary details.

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

Completeness2/5

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

Given 4 parameters, no output schema, and sparse annotations, the description is incomplete. It does not explain the duplication destination options, the effect of optional parameters, or what the response contains (e.g., new doc ID).

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 baseline is 3. The description 'Duplicate a document within a collection' adds no additional meaning beyond the schema's param descriptions. It does not clarify optionality of targetCollId or name default behavior.

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?

Description states verb 'Duplicate' and resource 'document within a collection', but is ambiguous about scope: it could mean only within the same collection, yet parameters allow copying to a different collection via targetCollId. It does not differentiate from sibling transkribus_coll_duplicate which duplicates the whole collection.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives, prerequisites, or when not to use. For example, no mention of when to use transkribus_coll_add_doc or transkribus_coll_duplicate instead.

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

transkribus_coll_ead_metadata_importEAD Metadata ImportC

Import EAD metadata into a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
fileNameNoEAD file name

TDQS

C2.9/5.0
Behavior2/5

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

Annotations indicate a write operation that is not read-only, not idempotent, and not flagged as destructive. The description only repeats the import concept and adds no behavioral context about side effects, such as whether existing metadata is overwritten, whether documents are created, or whether the operation can be safely repeated. With annotations covering only basic hints, the description fails to disclose meaningful behavioral traits.

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

Conciseness5/5

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

The description is a single clear sentence with no filler or repetition. It front-loads the action and target, making it easy to scan. Nothing in the description is wasted, though it is quite terse.

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-like import operation with no output schema, the description is too sparse. It does not explain what happens after import, whether fileName refers to a local or server-side file, whether the operation affects existing metadata, or what results the agent should expect. These gaps matter because the required parameter is only collId, leaving fileName's role ambiguous.

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%: collId is documented as 'Collection ID' and fileName as 'EAD file name'. The description adds no additional semantic nuance, such as the required format of fileName or why fileName might be optional while collId is required. This meets the baseline for a tool whose schema already documents its parameters.

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

Purpose4/5

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

The description uses a specific verb ('Import') and names the resource ('EAD metadata') along with the destination ('a collection'). It also denotes the importer's general scope, making it reasonably distinguishable from many other collection-related tools, though it doesn't explicitly differentiate it from sibling tools that handle metadata updates or bulk uploads.

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 explicit guidance on when to use this tool versus alternatives such as transkribus_coll_update_metadata, transkribus_upload_bulk_update_isad_metadata, or document creation tools. It implies the use case of importing EAD metadata, but it does not state prerequisites, exclusions, or when another tool would be preferable.

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

transkribus_coll_exportExport CollectionB
Read-onlyIdempotent

Export documents from a collection in the specified format.

ParametersJSON Schema
NameRequiredDescriptionDefault
pagesNoPage range to export (e.g. "1-10")
collIdYesCollection ID
formatNoExport format (e.g. "pdf", "docx", "tei")

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, destructiveHint=false, idempotentHint=true. The description adds no extra behavioral context (e.g., what the tool returns, whether it creates a download, any side effects). It does not contradict annotations, but the minimal description doesn't add value beyond them.

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 sentence that is concise and front-loaded with the key action and resource. Every word earns its place; no extraneous text.

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?

The description does not explain what the tool returns (e.g., a download URL, file, or status), nor does it clarify whether it exports all documents or selected ones (despite the 'pages' parameter). With no output schema, this omission significantly reduces completeness for a tool that initiates an export.

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 describes all parameters (collId, pages, format) with examples and types. The tool description adds no additional meaning or clarification to the parameters, making it adequate but not helpful beyond the schema.

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

Purpose5/5

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

The description clearly states 'Export documents from a collection in the specified format,' providing a specific verb (export) and resource (documents from a collection). It distinguishes this tool from sibling tools like transkribus_doc_export, which exports a single document.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives (e.g., transkribus_doc_export). The description lacks context for when this tool is appropriate and does not mention prerequisites or exclusions.

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

transkribus_coll_find_documentsFind DocumentsB
Read-onlyIdempotent

Search for documents across collections using filters.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoFilter by ID
descrNoFilter by description
docIdNoFilter by document ID
extIdNoFilter by external ID
genreNoFilter by genre
indexNoStart index (0-based)
titleNoFilter by document title
authorNoFilter by author
collIdNoFilter by collection ID
useridNoFilter by user ID
writerNoFilter by writer
labelIdNoFilter by label ID
nValuesNoNumber of results (-1 for all)
languageNoFilter by language
uploaderNoFilter by uploader name
authorityNoFilter by authority
createdtoNoCreated to timestamp
hierarchyNoFilter by hierarchy
isDeletedNoInclude deleted documents
exactMatchNoRequire exact match
scriptTypeNoFilter by script type
sortColumnNoColumn to sort by
uploaderIdNoFilter by uploader ID
createdfromNoCreated from timestamp
ultimestampNoLast modified timestamp
includeNullsNoInclude null values
caseSensitiveNoCase sensitive search
pagingWrapperNoUse paging wrapper
sortDirectionNoSort direction: asc or desc

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, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds only 'across collections' and 'using filters' as behavioral context. It does not disclose pagination defaults, result count limits, or how filters combine (AND vs OR, partial vs exact match), though nValues, index, exactMatch, and caseSensitive parameters suggest these behaviors matter. With strong annotations, a 3 is appropriate — the description adds minimal context beyond them but does not contradict them.

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 clear sentence with no fluff or repetition of the title. It is front-loaded with the core action. It could arguably add more operational detail, but as written it is efficiently structured with zero wasted words, which is slightly above the minimum viable bar.

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 29 optional parameters and no output schema, the description is far too thin. It does not explain what the returned documents look like, how pagination behaves, whether results span all accessible collections or require a collId, or how this differs from transkribus_coll_find_documents_post/old and transkribus_coll_count_find_documents. The annotations cover safety but not operational completeness, and the schema's terse 'Filter by X' descriptions leave search semantics 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%, so the schema carries the documentation burden for all 29 parameters and the baseline is 3. The schema's parameter descriptions are terse ('Filter by ID', 'Filter by description') but some do add semantics ('Number of results (-1 for all)', 'Start index (0-based)', 'Sort direction: asc or desc'). The tool description itself adds no parameter-level meaning beyond what the schema provides, so it does not push above 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?

The description states a specific verb ('Search') and resource ('documents across collections') and notes that filtering is supported. This is clearly a query/read tool. However, it does not differentiate from the closely named siblings transkribus_coll_find_documents_post, transkribus_coll_find_documents_old, and transkribus_coll_count_find_documents, so an agent cannot tell which variant to pick 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?

No guidance is given on when to use this tool versus alternatives such as transkribus_coll_find_documents_post, transkribus_coll_find_documents_old, or transkribus_coll_count_find_documents. There is also no mention of prerequisites (e.g., whether collId is expected, authentication requirements, or when the count variant would be more appropriate). The description leaves all selection logic to the agent.

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

transkribus_coll_find_documents_oldFind Documents (Legacy)C
Read-onlyIdempotent

Search for documents using the legacy endpoint.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoFilter by ID
descrNoFilter by description
docIdNoFilter by document ID
indexNoStart index (0-based)
titleNoFilter by document title
authorNoFilter by author
collIdNoFilter by collection ID
writerNoFilter by writer
nValuesNoNumber of results (-1 for all)
exactMatchNoRequire exact match
sortColumnNoColumn to sort by
uploaderIdNoFilter by uploader ID
caseSensitiveNoCase sensitive search
sortDirectionNoSort direction: asc or desc

TDQS

C2.3/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=true, and destructiveHint=false, covering the safety profile. The description adds only the word 'legacy,' which hints at deprecation status but provides no behavioral context such as pagination semantics of index/nValues, result limits, or differences from the current endpoint. No contradiction with annotations, but minimal added value.

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 sentence is efficiently short, but it borders on under-specification rather than genuine conciseness. 'Legacy endpoint' adds nothing beyond the title, and no other information is front-loaded because there is no other information.

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 14-parameter tool with no output schema sitting in a dense cluster of sibling find_documents tools, a one-line description is grossly inadequate. An agent cannot determine which endpoint this calls, how results are returned, how it differs from the modern variant, or what the legacy constraints are.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema fully documents all 14 parameters. The description adds nothing about parameter meaning or relationships beyond what the schema provides, so the baseline score of 3 is appropriate.

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

Purpose3/5

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

States a verb and resource ('Search for documents'), but 'the legacy endpoint' is vague and merely restates the title's 'Legacy'. With three near-identical siblings (transkribus_coll_find_documents, transkribus_coll_find_documents_post, transkribus_coll_count_find_documents), it fails to clarify what distinguishes this variant. Purpose is clear at a high level but not specific enough 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?

No guidance whatsoever on when to use this tool versus the non-legacy find_documents variants or the count variant. An agent has no way to know whether 'legacy' means deprecated, restricted, or preferred for certain cases. No exclusions, prerequisites, or alternatives are mentioned.

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

transkribus_coll_find_documents_postFind Documents (POST)B
Read-onlyIdempotent

Search for documents across collections using a POST request body.

ParametersJSON Schema
NameRequiredDescriptionDefault
docIdNoFilter by document ID
indexNoStart index (0-based)
titleNoFilter by document title
authorNoFilter by author
collIdNoFilter by collection ID
nValuesNoNumber of results (-1 for all)
exactMatchNoRequire exact match
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

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 and destructiveHint=false, so the safety profile is clear. The description adds only the transport detail 'using a POST request body', which is minimally informative beyond the name. It does not disclose result pagination or limits, but annotations lower the burden here.

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 with no filler, clearly stating the operation and the transport mechanism. It is efficient but somewhat terse, repeating the POST detail already present in the title.

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 search tool with 9 optional parameters and no output schema, the description is too thin. It does not explain what the response contains, what happens when no filters are provided, or how this tool compares to the sibling find-document variants. An agent would struggle to know what to expect or when to prefer this 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 description coverage is 100%, meaning every parameter already has its own description. The tool description adds no parameter-level meaning 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+resource: 'Search for documents across collections'. The phrase 'using a POST request body' helps distinguish it from GET-based sibling search tools, though it does not explicitly name the 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 POST variant versus transkribus_coll_find_documents, transkribus_coll_find_documents_old, transkribus_coll_list_docs, or transkribus_search_fulltext. The description only identifies the HTTP method, leaving the selection criteria unstated.

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

transkribus_coll_get_metadataGet Collection MetadataB
Read-onlyIdempotent

Get metadata for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
statsNoInclude statistics
collIdYesCollection ID

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is established. The description adds no further behavioral context, such as whether stats inclusion affects response size or whether metadata is minimal versus full. With annotations covering the main behavioral traits, 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?

The description is a single, clear sentence with no waste. It is front-loaded with the action and resource. It earns a 4 rather than 5 because it does not include a brief note about the optional stats parameter, which could help the agent decide whether to pass it.

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 metadata retrieval with full schema coverage and safety annotations, the description is adequate. However, it does not explain what 'metadata' includes or how the stats flag changes the output, and there is no output schema to clarify the return shape. This leaves minor ambiguity but not critical 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%, so both parameters (collId and stats) are already documented in the schema. The description itself adds no additional parameter-level meaning. The 'stats' parameter's effect on response content is not elaborated beyond 'Include statistics', but the schema handles the baseline.

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

Purpose3/5

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

The description 'Get metadata for a collection' clearly identifies the verb ('Get') and the resource ('metadata for a collection'), so purpose is clear. However, it does not distinguish itself from sibling tools like transkribus_coll_get_recent_collections, transkribus_coll_list, or transkribus_coll_user_stats, which could also be interpreted as retrieving collection-related information.

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

Usage Guidelines3/5

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

The description conveys a straightforward read operation but offers no explicit guidance on when to use this tool over alternatives such as transkribus_coll_list, transkribus_coll_get_recent, or transkribus_doc_get_metadata. The context is clear for a generic metadata fetch, but no exclusions or alternative conditions are provided.

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

transkribus_coll_get_recentGet Recent in CollectionB
Read-onlyIdempotent

Get recently accessed items in a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

TDQS

B3.3/5.0
Behavior3/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the basic scope of 'recently accessed items' but does not disclose pagination behavior, result format, or what 'recent' means.

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 concise sentence with no filler or repetition, which makes it easy to parse. However, its brevity sacrifices clarity because 'items' is undefined and no differentiation from nearby siblings is provided.

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, the description should clarify what the returned items are and how the list is structured, but it does not. The tool's name is ambiguous relative to transkribus_coll_get_recent_documents and transkribus_coll_get_recent_collections, and the description does not resolve this 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%, so the parameters are already documented with meaningful descriptions. The tool description does not add parameter-level semantics beyond confirming the collection context, so the baseline of 3 is appropriate.

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

Purpose4/5

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

The description states a specific action ('Get') and resource ('recently accessed items in a collection'), and the required collId parameter clarifies the scope. However, 'items' is vague and the tool is not clearly differentiated from transkribus_coll_get_recent_documents or transkribus_coll_get_recent_collections.

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 implies this is for retrieving recent entries within a specific collection, but it does not explicitly say when to prefer this tool over the similar sibling tools. There are no exclusions or alternative guidance, so the usage context is only implied.

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

transkribus_coll_get_recent_collectionsGet Recent CollectionsB
Read-onlyIdempotent

Get recently accessed collections.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

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, idempotentHint=true, and destuctiveHint=false, covering the safety profile. The description adds the 'recently accessed' behavioral scoping, but it does not disclose return format, pagination, or any auth expectations, so additional context is limited.

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. Every word contributes to the tool's purpose, and there is no unnecessary verbosity.

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?

Despite 4 parameters and no output schema, the description only offers a minimal phrase. It does not explain how the parameters interact, what the returned list looks like, or how this tool relates to the many nearby collection-list siblings, leaving an agent under-informed for correct invokation.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents the index, nValues, sortColumn, and sortDirection parameters. The description adds no param-level meaning beyond that, which keeps it at the baseline for complete schema coverage.

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

Purpose4/5

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

The description states a clear verb+resource ('Get recently accessed collections'), so an agent knows what the tool does. However, it does not differentiate it from the sibling tool transkribus_coll_get_recent, which appears to overlap in function, so it stops short of full sibling distinction.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives such as transkribus_coll_get_recent, transkribus_coll_list_paged, or transkribus_coll_list. There is no mention of exclusions, prerequisites, or a preferred context.

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

transkribus_coll_get_recent_documentsGet Recent DocumentsB
Read-onlyIdempotent

Get recently accessed documents.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

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, idempotentHint=true, and destructiveHint=false, so the basic safety profile is covered. The description adds only the scoping to 'recently accessed documents,' which is mildly useful but does not disclose details like whether the results reflect the current user's access history or a global history.

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 one short sentence with no waste. It is appropriately sized, though it could have earned more by adding sibling differentiation.

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

Completeness2/5

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

Given the four parameters (index, nValues, sortColumn, sortDirection) and no output schema, the description is too thin to be complete. It does not specify what fields the returned documents contain, how sorting works, or how this differs from get_recent/get_recent_collections.

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. The description itself adds no meaning beyond the schema; it is the minimal 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?

The description states a specific verb ('Get') and resource ('recently accessed documents'), which is clear enough. However, it does not differentiate from sibling tools like transkribus_coll_get_recent or transkribus_coll_get_recent_collections, which could overlap in function.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description lacks context such as whether it replaces get_recent or how it differs from get_recent_collections, so an agent has no way to choose among related siblings.

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

transkribus_coll_get_tag_defsGet Collection Tag DefinitionsC
Read-onlyIdempotent

List tag definitions for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
legacyNoUse legacy tag definitions

TDQS

C2.9/5.0
Behavior2/5

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

The description adds no behavioral details beyond what annotations already provide (readOnlyHint, idempotentHint). It does not explain what happens with invalid collection IDs, the output format, or any safety cues. Minimal value added beyond structured 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?

The description is a single, front-loaded sentence that efficiently states the tool's purpose. No unnecessary words or repetition. Perfectly concise.

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 and only 2 parameters, the description should provide more context about the result format or common usage scenarios. It fails to compensate for the missing output schema, leaving the agent underinformed.

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 clear definitions for collId and legacy. The description adds no additional parameter meaning, so the baseline of 3 is appropriate.

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

Purpose4/5

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

The description clearly states the verb 'List' and the resource 'tag definitions for a collection.' It is specific, but does not differentiate from sibling tools like transkribus_coll_get_metadata or transkribus_coll_label_list. A score of 4 reflects clarity without 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 Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description lacks any context about prerequisites, conditions, or comparison to other tools for listing similar data. This is a significant gap.

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

transkribus_coll_label_listList Collection LabelsB
Read-onlyIdempotent

List all labels associated with a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)
isDeletedNoFilter by deleted status (default "false")
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, openWorldHint=true. The description adds the scope 'associated with a collection' but does not disclose additional behavioral traits like pagination or sorting behavior. 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?

The description is a single sentence with 7 words, highly concise and front-loaded. However, it lacks any additional context that would justify a perfect score; it is efficient but minimal.

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

Completeness2/5

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

Given the tool has 6 parameters including pagination (index, nValues) and filtering (sortColumn, sortDirection, isDeleted), the description fails to mention these capabilities or any output format. No output schema exists, so more explanation was needed.

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

Parameters3/5

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

Schema description coverage is 100%, so all 6 parameters have descriptions in the schema. The tool description adds no parameter-level details beyond what is already documented. Baseline 3 is correct as the schema carries the burden.

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

Purpose5/5

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

The description clearly states the verb 'List' and the resource 'labels' with the qualifier 'associated with a collection', which distinguishes it from sibling tools like transkribus_label_list that list all labels.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives (e.g., transkribus_label_list) nor any prerequisites or exclusions. It is a simple statement without usage context.

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

transkribus_coll_listList CollectionsB
Read-onlyIdempotent

List all collections accessible to the current user.

ParametersJSON Schema
NameRequiredDescriptionDefault
roleNoFilter by user role
indexNoStart index (0-based)
collIdNoFilter by collection ID
filterNoFilter string
useridNoFilter by user ID
nValuesNoNumber of results (-1 for all)
favoritesNoFilter favorites only
sortColumnNoColumn to sort by
excludeEmptyNoExclude empty collections
sortDirectionNoSort direction: asc or desc

TDQS

B3.3/5.0
Behavior3/5

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

The annotations already establish that this is a read-only, idempotent, non-destructive operation. The description adds useful scope by saying only collections accessible to the current user are returned. It does not disclose pagination behavior, filtering behavior, or what the response contains.

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 immediately conveys the action, resource, and scope.

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 description gives the essential scope, but for a list tool with ten optional filtering, sorting, and pagination parameters it omits any mention of those capabilities. The schema covers parameters and annotations cover safety, so this is minimum viable rather than 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 description coverage is 100%, so all ten optional parameters are already documented in the input schema. The description adds no parameter-level meaning beyond that, which makes a baseline score of 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?

The description clearly states a specific verb and resource: list collections. It also scopes the result to those accessible to the current user. However, it does not distinguish this tool from close siblings such as transkribus_coll_list_paged or transkribus_coll_list_by_name.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives. Siblings like transkribus_coll_list_paged and transkribus_coll_list_xml exist, but the description does not explain when this unpaged list is appropriate.

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

transkribus_coll_list_by_nameList Collections By NameB
Read-onlyIdempotent

Search for collections by name.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesCollection name to search for
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)
exactMatchNoRequire exact name match
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

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, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds only the name-search scope and does not describe output format, pagination defaults, or exactMatch behavior, but it does not contradict 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.

Conciseness4/5

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

The description is a single front-loaded sentence with no filler, making it concise. However, it is minimal to the point of omitting useful context, so it does not 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 read-only list tool with full parameter schema and safety annotations, the description is minimally adequate. However, with no output schema and many sibling list/search tools, the agent is left to infer return shape and when to choose this over alternatives.

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 description does not need to redefine the six parameters. It adds no extra defaults or semantics such as the meaning of nValues=-1 or how exactMatch changes behavior, keeping this at 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?

The description states a clear verb ('Search') and resource ('collections') with a name-based scope, and the title reinforces the same idea. It does not explicitly contrast with sibling collection-listing tools, but the 'by name' qualifier distinguishes it from generic list variants.

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; the description only restates the tool's purpose. Given many sibling tools like transkribus_coll_list, transkribus_coll_list_paged, and transkribus_coll_list_for_user, an agent gets no help deciding which tool to choose.

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

transkribus_coll_list_docsList Documents in CollectionC
Read-onlyIdempotent

List all documents in a collection with pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
extIdNoFilter by external ID
genreNoFilter by genre
indexNoStart index (0-based)
titleNoFilter by document title
authorNoFilter by author
collIdYesCollection ID
writerNoFilter by writer
labelIdNoFilter by label ID
nValuesNoNumber of results (-1 for all)
languageNoFilter by language
uploaderNoFilter by uploader name
authorityNoFilter by authority
createdtoNoCreated to timestamp
hierarchyNoFilter by hierarchy
isDeletedNoInclude deleted documentsfalse
scriptTypeNoFilter by script type
sortColumnNoColumn to sort by
uploaderIdNoFilter by uploader ID
createdfromNoCreated from timestamp
descriptionNoFilter by description
ultimestampNoLast modified timestamp
includeNullsNoInclude null values
pagingWrapperNoUse paging wrapper
sortDirectionNoSort direction: asc or desc

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 and non-destructive, so the description's minimal addition of 'with pagination' does not significantly enhance transparency. No disclosure of performance, rate limits, or return format.

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 short sentence with no redundancy. It could be slightly expanded to include more context without losing conciseness, but it is 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?

With 24 parameters and no output schema, the description is too minimal. It lacks information about return values, default pagination behavior, and how this tool differs from other list/search tools. Annotations partially compensate, but the description remains 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 covers 100% of parameters with descriptions. The description's mention of pagination aligns with index/nValues parameters but adds no new meaning 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?

The description clearly states the tool lists documents in a collection and mentions pagination. However, it doesn't explicitly differentiate from sibling tools like transkribus_coll_find_documents or transkribus_coll_list_docs_xml, which have similar purposes.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives (e.g., filtered search or document counting). No contextual clues such as 'use when you need all documents without filters'.

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

transkribus_coll_list_docs_xmlList Documents in Collection (XML)B
Read-onlyIdempotent

List all documents in a collection in XML format.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)
isDeletedNoInclude deleted documentsfalse
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true, covering the safety profile. The description adds only that the output is XML; it omits pagination behavior (index/nValues), deleted-document inclusion, and whether 'all documents' is affected by the default nValues=0.

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 filler or repetition. It is appropriately concise for a simple list operation.

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 fully documents parameters and annotations cover safety, but there is no output schema and the description does not explain XML return structure, pagination behavior, or deleted-document handling. It is minimally adequate but leaves important operational context to 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 100%, and all six parameters (index, collId, nValues, isDeleted, sortColumn, sortDirection) are documented in the schema. The description adds no parameter-level meaning beyond what the schema already provides, so the baseline score 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 ('List'), resource ('documents in a collection'), and output format ('XML'). The XML qualifier distinguishes it from the non-XML sibling transkribus_coll_list_docs, though it does not explicitly name that alternative.

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 or comparison to alternatives such as transkribus_coll_list_docs. The agent must infer from the name and title whether XML output is preferred over the non-XML sibling.

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

transkribus_coll_list_for_userList Collections for UserB
Read-onlyIdempotent

List collections accessible to a specific user.

ParametersJSON Schema
NameRequiredDescriptionDefault
roleNoFilter by user role
indexNoStart index (0-based)
useridYesUser ID
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
excludeEmptyNoExclude empty collections
sortDirectionNoSort direction: asc or desc

TDQS

B3.3/5.0
Behavior3/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds only that results are scoped to a user's accessible collections, without detailing pagination, sorting behavior, or return format.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no filler. It states the action, resource, and scope immediately, which is appropriate for a tool of this type.

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 listing tool with no output schema, the description is minimal but not misleading. It omits pagination behavior, output shape, and sibling-tool distinctions, leaving the schema and annotations to carry most of the 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%, and all seven parameters are documented in the input schema, including userid, role, index, nValues, and sort options. The description adds no parameter meaning beyond what the schema already provides, making 3 the appropriate 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?

The description uses a specific verb and resource ('List collections') and adds scope ('accessible to a specific user'), so an agent can tell it is a user-scoped collection listing. It does not differentiate from sibling tools such as transkribus_coll_list, transkribus_coll_list_paged, or transkribus_coll_user_list, which limits it to a 4.

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 exclusions, and does not name alternatives. With many sibling collection-listing tools available, an agent receives no help choosing this one over transkribus_coll_list or transkribus_coll_user_list.

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

transkribus_coll_list_pagedList Collections (Paged)B
Read-onlyIdempotent

List collections with pagination support.

ParametersJSON Schema
NameRequiredDescriptionDefault
emptyNoInclude empty collections (default false)
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and no destructive behavior, so the safety profile is covered. The description adds only that pagination is supported, which is a minor behavioral detail, but does not disclose return format, default sorting, or scoping. There is no contradiction with 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?

The description is a single, front-loaded, efficient sentence with no wasted words. It states the core action and key feature (pagination) without redundancy.

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

Completeness2/5

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

The description is too minimal for a tool with no output schema and many sibling listing tools. It does not explain what the response contains, whether it returns all collections or only those for the current user, or how the pagination parameters interact. An agent would need to infer critical context from the name and schema, which is insufficient given the tool's ambiguous placement among transkribus_coll_list, transkribus_coll_list_by_name, and transkribus_coll_list_for_user.

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

Parameters3/5

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

Schema description coverage is 100%, and every parameter has a clear description in the input schema. The tool description adds no parameter-level meaning beyond what the schema already provides, so the baseline score 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 uses a specific verb ('List') and resource ('collections'), and 'with pagination support' distinguishes it from the unpaged sibling transkribus_coll_list. However, it does not clarify the exact scope of collections (e.g., all accessible vs. current user's) or differentiate it from other collection listing siblings like transkribus_coll_list_by_name and transkribus_coll_list_for_user.

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 explicit guidance on when to use this tool versus alternatives. It only implies that pagination is the distinguishing use case, but never names when-not-to-use it, does not mention unpaged alternatives, and lacks any exclusion criteria or context about the intended listing scenario.

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

transkribus_coll_list_xmlList Collections (XML)B
Read-onlyIdempotent

List all collections in XML format.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is fully covered structurally. The description's only added behavioral fact is the XML output format, which is genuinely useful since it is not in the annotations. Nothing is said about pagination defaults, result size, or auth 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 no filler; the format qualifier is placed where it matters. It is tight but borderline under-specified rather than merely concise.

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 4-parameter list tool with no output schema, the definition is minimal. The claim 'List all collections' is ambiguous against an nValues default of 0, and there is no mention of pagination behavior or the shape of the XML response, leaving real 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 description coverage is 100%, so all four parameters (index, nValues, sortColumn, sortDirection) are already documented in the schema. The description adds no parameter meaning — notably it never explains that nValues=0 is the default or how it interacts with 'List all'.

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 ('List all collections') and adds a distinguishing output-format qualifier ('in XML format'), which sets it apart from the plain transkribus_coll_list sibling. It does not, however, explicitly name that sibling or scope the listing (e.g., all vs. owned/for-user), so differentiation is inferential 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 guidance on when to use this over transkribus_coll_list, transkribus_coll_list_paged, transkribus_coll_list_for_user, or transkribus_coll_list_by_name. The agent must infer that 'XML format' is the only selection criterion, and no exclusions or prerequisites are given.

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

transkribus_coll_modifyModify CollectionC
Idempotent

Modify the properties of a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
collNameNoNew collection name
descriptionNoNew description

TDQS

C2.9/5.0
Behavior2/5

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

The description adds no behavioral detail beyond the annotations. It does not mention permission requirements, whether only provided fields are updated, side effects on existing collection data, or what happens if the collection does not exist. Annotations indicate a non-read-only, idempotent, non-destructive operation, but the description itself contributes no operational context.

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

Conciseness4/5

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

The description is a single, waste-free sentence with the action front-loaded. It is concise but under-specified: it could list the modifiable properties or clarify the update semantics without becoming verbose. That leve is appropriate for a simple update tool, so a 4 is warranted.

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

Completeness2/5

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

Given the large sibling list and the existence of transkribus_coll_update_metadata, the description is not complete enough for reliable tool selection. It lacks usage context, alternative routing, and any statement about what fields are affected. The schema helps with parameters, but the description does not provide enough surrounding context to fully disambiguate this 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%, so the input schema already documents collId, collName, and description. The description does not add parameter-level meaning, but with full schema coverage 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 states a clear action and target: 'Modify the properties of a collection.' It is not a tautology and an agent can tell it operates on collection-level settings rather than pages, documents, or recognition models. However, it does not distinguish this from overlapping siblings like transkribus_coll_update_metadata, 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 is given about when to use this tool versus alternatives. There is no mention of when to choose coll_modify over coll_update_metadata, coll_create, coll_duplicate, or other collection-related tools, so an agent must infer usage from the name and schema.

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

transkribus_coll_remove_docRemove Document from CollectionB
DestructiveIdempotent

Remove a document from a collection without deleting it.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID to remove
collIdYesCollection ID

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare the operation as destructive and idempotent, so the description does not need to restate those. It adds one useful behavioral clarification: the document itself is not deleted. However, it does not mention side effects, error behavior, or reversibility beyond what the annotations already imply.

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 sentence that uses every word effectively. It front-loads the core action and immediately clarifies the important non-destructive aspect.

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 mutation, the description plus schema and annotations are mostly sufficient for an agent to invoke it correctly. The main gap is the lack of routing context to distinguish it from the nearly identical sibling transkribus_doc_remove_from_collection, which prevents a perfect score.

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

Parameters3/5

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

Schema description coverage is 100%, with both 'id' and 'collId' already documented. The description adds no further parameter meaning, so it does not improve on what the schema provides. The baseline of 3 is appropriate because the schema carries the representational burden.

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

Purpose4/5

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

The description clearly states the action: remove a document from a collection, and adds the key qualifier 'without deleting it,' which distinguishes it from document deletion. However, it does not differentiate this tool from the very similar sibling transkribus_doc_remove_from_collection, so it is not fully distinct among siblings.

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

Usage Guidelines2/5

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

The description offers no explicit guidance on when to use this tool versus alternatives such as transkribus_doc_remove_from_collection, transkribus_doc_delete, or transkribus_coll_delete. The phrase 'without deleting it' implicitly suggests it is not for permanent deletion, but no alternatives or selection criteria are named.

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

transkribus_coll_remove_favoriteRemove Collection from FavoritesB
DestructiveIdempotent

Remove a collection from the user favorites.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already convey destructiveHint: true and idempotentHint: true, indicating it is a non-read-only but safe repeated operation. The description adds no additional behavioral context beyond what annotations provide, such as what happens if the collection is not currently a favorite or if the user is not authorized.

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, concise sentence with no redundancy. It is appropriately sized for a simple operation, but could include more contextual information without becoming verbose.

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

Completeness3/5

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

Given the tool's simplicity (one parameter, no output schema) and presence of annotations, the description is minimally sufficient to understand the core action. However, it lacks usage context and relationship to sibling tools, which limits its completeness for effective agent decision-making.

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

Parameters3/5

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

The input schema has 100% description coverage for the single parameter 'collId' (described as 'Collection ID'). The description does not add any extra meaning or constraints beyond the schema, so baseline score of 3 is appropriate.

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

Purpose4/5

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

The description clearly states the action ('Remove a collection') and the context ('from the user favorites'). It uses a specific verb and resource, distinguishing it from the sibling tool 'transkribus_coll_add_favorite'. However, it could be more precise by explicitly noting that it affects the current user's favorites only.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives, such as its counterpart 'add_favorite' or other collection manipulation tools. It does not mention prerequisites (e.g., the collection must already be a favorite) or behavior if the condition is not met.

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

transkribus_coll_remove_userRemove User from Collection (POST)B
DestructiveIdempotent

Remove a user from a collection using the POST endpoint.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
useridYesUser ID to remove

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already indicate destructiveHint=true (removal) and idempotentHint=true (safe to retry). The description adds no further behavioral context, such as whether the operation is reversible, what happens to associated data, or permission requirements. The phrase 'using the POST endpoint' is implementation detail, not behavioral transparency.

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

Conciseness4/5

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

The description is a single sentence with no wasted words. It is front-loaded with the core purpose. However, it could be slightly more informative without being verbose.

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

Completeness3/5

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

Given the simple operation (2 required params, no output schema, annotations present), the description is minimally complete. It doesn't explain return value, side effects, or error conditions. For a destructive but idempotent operation, more context on what happens when the user is not in the collection would be helpful.

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

Parameters3/5

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

Schema coverage is 100%, with both parameters described ('Collection ID', 'User ID to remove'). The description adds no additional meaning beyond the schema. Baseline 3 is appropriate as the schema handles parameter documentation.

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 name 'transkribus_coll_remove_user' and title 'Remove User from Collection (POST)' clearly indicate the action (remove) and resource (user from collection). The description restates this with the same specificity. It distinguishes from siblings like 'transkribus_coll_user_add' or 'transkribus_coll_user_update_role' by focusing on removal.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool vs alternatives. For example, it doesn't mention that 'transkribus_coll_user_add_or_modify' could add or modify, or that 'transkribus_coll_user_update_role' changes roles. No mention of prerequisites or conditions.

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

transkribus_coll_subscribe_getGet Collection SubscriptionB
Read-onlyIdempotent

Get the subscription status for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true. The description adds no behavioral context beyond annotations, but it does not contradict them. Baseline score 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?

The description is a single concise sentence with no wasted words, and it is front-loaded with the core action.

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

Completeness3/5

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

Given no output schema, the description could clarify the return value (e.g., boolean or object). It does not describe the output format or potential errors, leaving the agent with incomplete context for interpreting results.

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

Parameters3/5

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

Schema coverage is 100% with the 'collId' parameter described as 'Collection ID'. The description does not add further meaning beyond what the schema provides. 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 clearly states it retrieves the subscription status for a collection, using a specific verb and resource. It distinguishes itself from sibling collection tools that focus on metadata, listing, or modifications, though it does not clarify what 'subscription status' entails.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like transkribus_coll_get_metadata or transkribus_crowdsource_subscribe. No when-not or alternative tool mentions are provided.

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

transkribus_coll_update_default_tag_defsUpdate Default Tag DefinitionsB
Idempotent

Update the default tag definitions across all collections.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesTag definitions data

TDQS

B3.1/5.0
Behavior2/5

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

Annotations indicate non-destructive, idempotent, and open-world behavior, but the description adds no additional behavioral context (e.g., whether it replaces or merges definitions, or any side effects). It does not contradict 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?

The description is a single concise sentence that is front-loaded and contains no wasted words. However, it could be slightly more informative without becoming verbose.

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 that updates default tag definitions globally, the description lacks details on the expected structure of the 'body' parameter, the impact on existing definitions, and any prerequisites or consequences. More context is needed.

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

Parameters3/5

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

The input schema covers 100% of parameters, with 'body' described as 'Tag definitions data'. The description adds no further semantic value beyond the schema, so a baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the action ('Update') and the resource ('default tag definitions across all collections'). It distinguishes from sibling tools like transkribus_coll_update_tag_defs by specifying 'across all collections', implying a global scope.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool vs. alternatives (e.g., transkribus_coll_update_tag_defs for per-collection updates). No prerequisites or context are mentioned.

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

transkribus_coll_update_metadataUpdate Collection MetadataC
Idempotent

Update the metadata for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleNoCollection title
collIdYesCollection ID
languageNoPrimary language
descriptionNoCollection description

TDQS

C2.9/5.0
Behavior2/5

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

The description adds no behavioral context beyond what annotations already provide. Annotations indicate this is a mutating but non-destructive, idempotent operation; the description merely says 'update' without disclosing partial-update behavior, permission requirements, or side effects. No contradiction exists, but no new information is added.

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 filler or unnecessary elaboration. It is concise and immediately front-loaded, though it largely echoes the title.

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 update tool with full schema coverage and annotations covering mutation safety, the description plus schema is minimally viable for constructing a call. However, it is incomplete in routing an agent to this tool over siblings and in explaining the update semantics beyond the parameter list.

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

Parameters3/5

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

Schema description coverage is 100%, so the input schema already documents title, collId, language, and description. The description does not need to explain these, but it also adds no extra semantic detail such as whether unspecified fields remain unchanged.

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: 'Update the metadata for a collection.' This clearly conveys the operation and target. However, it does not distinguish itself from similar sibling tools such as transkribus_coll_modify or transkribus_doc_update_metadata.

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 alternatives, no prerequisites, and no exclusions. The description only restates the purpose, leaving an agent to infer selection from the tool name alone despite the large sibling set.

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

transkribus_coll_update_tag_defsUpdate Collection Tag DefinitionsC
Idempotent

Update tag definitions for a specific collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesTag definitions data
collIdYesCollection ID

TDQS

C2.9/5.0
Behavior2/5

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

Description does not disclose any behavioral traits beyond 'update'. Annotations indicate idempotentHint true, but description doesn't explain. No mention of permissions, side effects, or idempotency.

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, no fluff. However, it could be slightly expanded for clarity without losing conciseness.

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

Completeness2/5

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

No output schema, nested body object lacks explanation. Annotations provide some context, but overall the description is insufficient for an agent to use the tool correctly without additional inference.

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

Parameters3/5

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

Schema covers 100% of parameters (collId, body). Description adds no additional meaning beyond schema. Body is described as 'Tag definitions data' but no format or structure guidance provided.

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

Purpose4/5

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

The description clearly states the tool updates tag definitions for a specific collection. It distinguishes from sibling tools like transkribus_coll_get_tag_defs and transkribus_coll_update_default_tag_defs, though could be more explicit about 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?

No guidance on when to use this tool vs alternatives, prerequisites, or when not to use. Sibling tools exist for getting or updating default tag definitions, but no hints are provided.

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

transkribus_coll_user_addAdd User to CollectionB

Add a new user to a collection with an optional role.

ParametersJSON Schema
NameRequiredDescriptionDefault
roleNoRole to assign to the user
collIdYesCollection ID
userIdYesUser ID to add
sendMailNoSend notification email (default false)

TDQS

B3.1/5.0
Behavior2/5

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

Annotations indicate mutation (readOnlyHint=false) and non-destructiveness. The description adds no additional behavioral details, such as whether adding an existing user results in an error or is idempotent, or any authorization 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?

The description is a single, efficient sentence of 10 words. It is front-loaded and to the point. However, it could include a bit more context without becoming verbose.

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

Completeness2/5

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

Given the presence of sibling tools and no output schema, the description is incomplete. It does not explain return values, error handling, or behavior when adding a user that already exists. Annotations are present but underutilized.

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 descriptions for all parameters. The description highlights that role is optional but adds no new information beyond what the schema provides. Minimal extra value.

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

Purpose5/5

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

The description clearly states the action ('Add'), the resource ('user'), and the target ('collection'), with an optional role. This distinguishes it from sibling tools like transkribus_coll_user_remove and transkribus_coll_user_add_or_modify, which have different purposes.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives like transkribus_coll_user_add_or_modify or transkribus_coll_user_update_role. There is no mention of prerequisites, when not to use, or any edge cases like adding an existing user.

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

transkribus_coll_user_add_or_modifyAdd or Modify User in CollectionB
Idempotent

Add a user to a collection or modify their role if they already exist.

ParametersJSON Schema
NameRequiredDescriptionDefault
roleYesRole to assign to the user
collIdYesCollection ID
userIdYesUser ID to add or modify
useridNoUser ID (alternative)
sendMailNoSend notification email

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare idempotentHint=true, destructiveHint=false, and readOnlyHint=false. The description adds no further behavioral context, such as side effects of sending email (sendMail parameter) or what happens when a user already exists. The description provides minimal transparency 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?

The description is a single sentence, only 15 words, and immediately conveys the tool's purpose. It is front-loaded and contains no unnecessary information, making it highly efficient for an AI agent to parse.

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

Completeness2/5

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

The description is minimal for a tool with 5 parameters, no output schema, and many siblings. It does not mention return values, error scenarios, or optional parameters like sendMail. Given the lack of output schema and the tool's complexity, the description is insufficiently complete.

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

Parameters3/5

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

Schema description coverage is 100%, so the parameter descriptions already exist in the schema. The tool description adds no additional meaning about parameters, such as explanation of role values or clarification of the alternative userid parameter. Baseline 3 is appropriate as the schema carries the burden.

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

Purpose5/5

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

The description clearly states the tool adds a user to a collection or modifies their role if they already exist. This distinguishes it from sibling tools like transkribus_coll_user_remove (removes user) and transkribus_coll_user_update_role (likely only updates role), as it covers both add and modify actions in one tool.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus its siblings, such as transkribus_coll_user_add or transkribus_coll_user_update_role. It does not mention prerequisites, when not to use it, or how to choose it over alternatives.

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

transkribus_coll_user_countCount Collection UsersB
Read-onlyIdempotent

Get the number of users in a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
roleNoFilter by user role
collIdYesCollection 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=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true, which cover the safety and idempotency profile. The description adds no additional behavioral context beyond the annotations, such as authentication requirements, response format, or error handling.

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 sentence with no wasted words. It is concise and to the point, though it could be slightly expanded to include more context without sacrificing brevity.

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

Completeness3/5

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

Given the tool's simplicity (two parameters, no output schema, good annotations), the description is minimally adequate. However, it does not mention that the tool returns a single integer count, nor does it elaborate on the effect of the optional 'role' filter. This leaves some ambiguity for the agent.

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

Parameters3/5

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

Schema description coverage is 100% for both parameters (collId and role), so the description does not add meaning beyond what the schema provides. The description does not explain how the 'role' parameter filters the count, but the schema already describes it as a filter.

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

Purpose5/5

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

The description clearly states the tool's purpose: 'Get the number of users in a collection.' This is a specific verb+resource pair that differentiates from sibling tools like transkribus_coll_user_list (lists users) and transkribus_coll_user_stats (statistics).

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives such as transkribus_coll_user_list or transkribus_coll_user_stats. It does not mention any prerequisites, context for use, or when not to use it.

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

transkribus_coll_user_get_listGet Collection UsersC
Read-onlyIdempotent

Get the list of users with access to a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
roleNoFilter by user role
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

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, idempotentHint=true and destructiveHint=false, so safety is covered by structured data. The description adds nothing beyond that: no note on pagination behaviour (index/nValues), result ordering, or whether the full list is always 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?

A single, front-loaded sentence with no filler. It is appropriately sized, though it is arguably under-specified rather than maximally 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?

This is a paged listing tool with six parameters and no output schema, yet the description says nothing about the shape of the returned user list, pagination, or how the role filter interacts with results. For a tool of this complexity, the description leaves real 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 6 documented parameters, so the schema carries the parameter burden and baseline is 3. The description does not clarify the role filter values, sorting semantics, or the -1 'all' convention, so it adds no 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 and resource ('Get the list of users with access to a collection'), which is immediately understood. However, it does not differentiate from the near-duplicate sibling transkribus_coll_user_list, nor from coll_user_count/coll_user_stats, so an agent has no basis from the description alone to pick this one.

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 versus transkribus_coll_user_list or transkribus_coll_user_count, no prerequisites, no mention of permissions needed to view a collection's user list. Usage is only implied by the tool's purpose.

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

transkribus_coll_user_listList Collection UsersC
Read-onlyIdempotent

List users of a collection with optional pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
roleNoFilter by user role
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

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, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds only 'optional pagination', which the schema already conveys via index/nValues, and discloses nothing about auth requirements or return 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 front-loaded sentence with no filler, and the resource is stated before the modifier. It is efficient, though almost too terse to carry much 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?

For a read-only, six-parameter list operation with full schema coverage and no output schema, the description covers the essentials. It stops short of describing the returned user objects or default sort behavior, which an agent might reasonably 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%, so all six parameters are already documented (role filter, index, nValues, sortColumn, sortDirection, collId). The description's mention of pagination adds no syntax or format 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 clear verb (List) and resource (users of a collection) plus scope. However, it does not distinguish itself from very similar siblings such as transkribus_coll_user_get_list, transkribus_coll_user_count, or transkribus_coll_user_stats, so an agent cannot route confidently between them 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 guidance on when to use this tool versus alternatives like coll_user_get_list or coll_user_count, and no prerequisites (e.g., required role/permission to see collection users) are mentioned. Only the phrase 'optional pagination' hints at usage.

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

transkribus_coll_user_removeRemove User from CollectionA
DestructiveIdempotent

Remove a user from a collection by their user ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
useridYesUser ID to remove

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already indicate destructiveHint=true and idempotentHint=true, so the description adds no extra behavioral context. It doesn't mention permissions, error conditions, or the effect on related data.

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, concise and front-loaded. However, it could include more helpful detail without becoming verbose.

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 removal tool, the description covers the essential action. It is mostly complete but lacks usage context like error handling or the need to verify user membership first.

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 parameters having descriptions. The tool description adds no additional meaning beyond the schema.

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

Purpose5/5

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

The description clearly states the action 'remove', the resource 'user from a collection', and the identifier 'by their user ID'. It distinguishes from sibling tools like transkribus_coll_user_add or transkribus_coll_user_update_role.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like transkribus_coll_user_add_or_modify or transkribus_coll_user_update_role. No context about prerequisites or side effects.

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

transkribus_coll_user_statsGet User StatsC
Read-onlyIdempotent

Get user statistics for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is covered structurally. The description adds nothing beyond that — it does not explain pagination via index/nValues, what sorting does, or what the statistics contain, leaving the tool's behavior opaque for a multi-param query endpoint.

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 arguably too terse given the tool's complexity — there is no wasted text, but also no useful text beyond the minimum.

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 five-parameter statistics endpoint with no output schema, the description should at least indicate what statistics are returned (per-user counts, roles, activity) and how index/nValues paginate the result. None of that is present, so an agent knows the surface but not the payload.

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 (index, collId, nValues, sortColumn, sortDirection) are already documented in the schema. The description contributes no additional parameter meaning, which is the expected baseline 3 when the schema does the work.

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

Purpose3/5

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

The description names a specific verb and resource ('Get user statistics') scoped to a collection, which is more than a tautology. However, it does not differentiate from close siblings such as transkribus_user_get_stats, transkribus_coll_user_count, transkribus_coll_user_list, or transkribus_stat_get_coll_stats, so an agent cannot tell which of these to pick from the text 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 prerequisites, and no mention of alternatives among the many sibling stats/count tools. The agent must infer usage purely 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.

transkribus_coll_user_update_roleUpdate User RoleB
Idempotent

Update the role of a user in a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
roleYesNew role to assign
collIdYesCollection ID
useridYesUser ID to update
sendMailNoSend notification email (default true)

TDQS

B3.3/5.0
Behavior3/5

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

The description adds minimal behavioral context beyond annotations. Annotations already indicate idempotentHint=true and non-destructive, but description doesn't mention side effects like the sendMail parameter.

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, concise sentence conveying the core purpose with no unnecessary words.

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?

Missing details like allowed role values, permission requirements, and return behavior. Adequate for a simple update but could be more helpful.

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

Parameters3/5

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

All parameters have descriptions in the input schema (100% coverage). The description adds no additional parameter meaning, such as acceptable role values or constraints.

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

Purpose4/5

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

The description clearly states the action (update) and the resource (role of a user in a collection). It distinguishes from sibling tools like add/remove user, though not 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 tool vs alternatives, no prerequisites or permissions mentioned. The description lacks context for appropriate usage.

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

transkribus_credit_createCreate Credit PackageC

Create a new credit package.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNoCredit package type
labelNoLabel for the credit package
amountNoCredit amount
sourcePackageIdNoSource credit package ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations indicate readOnlyHint=false and openWorldHint=true, but the description adds no behavioral context beyond 'create'. It does not mention authentication needs, side effects (e.g., does it debit from a source?), or whether creation 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?

The description is a single, concise sentence with no unnecessary words. It is appropriately front-loaded.

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

Completeness2/5

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

Given the four optional parameters and no output schema, the description should explain the purpose of each parameter, return value, and side effects. It is incomplete for a non-idempotent write operation with open world hint.

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 descriptions cover all 4 parameters (100% coverage), but the tool description does not add meaning beyond what the schema already provides. The schema describes each parameter minimally; the description could clarify usage (e.g., relationship between type and amount).

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

Purpose4/5

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

The description clearly states the verb-resource combination ('Create a new credit package'), but it does not distinguish this tool from sibling credit tools like transkribus_credit_manage or transkribus_credit_handle_order, which may have overlapping functionality.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives or what prerequisites are required. The description lacks context such as required roles, relation to other credit operations, or typical use cases.

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

transkribus_credit_getGet Credit PackageA
Read-onlyIdempotent

Get details of a specific credit package by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true. The description adds no additional behavioral traits beyond confirming it retrieves details by ID. With annotations present, the description is adequate but not enriched.

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, concise sentence with no redundant information. It is front-loaded and efficient.

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 tool with one parameter, no output schema, and robust annotations, the description is sufficient to explain core function. However, it could include a note about return type or usage context to be 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?

The single parameter 'id' is fully documented in the schema with description 'Resource ID'. The description only restates 'by ID' without adding new meaning. Schema coverage is 100%, so baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states the verb 'Get', the resource 'credit package', and the required identifier 'by ID'. It effectively distinguishes from siblings like transkribus_credit_list_by_user or transkribus_credit_get_history.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus other credit-related tools (e.g., transkribus_credit_list_by_user, transkribus_credit_get_history). The description lacks context for selection.

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

transkribus_credit_get_collectionsGet Credit Package CollectionsA
Read-onlyIdempotent

List collections associated with a specific credit package.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true. The description adds that it lists collections, which is consistent but does not reveal additional behavioral traits beyond what annotations provide (e.g., potential error responses or pagination).

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, well-formed sentence that conveys the tool's purpose without any unnecessary words 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?

Given the tool's simplicity, one parameter, and strong annotations, the description is minimally adequate. However, it lacks details about the return format (e.g., list of collection objects) and error handling, which could be helpful.

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

Parameters3/5

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

Schema coverage is 100%, and the description does not add any meaning beyond the schema's 'Resource ID' description. Baseline 3 is appropriate as no extra value is provided.

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

Purpose4/5

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

The description uses a specific verb ('List') and resource ('collections') with a qualifier ('associated with a specific credit package'). It clearly states the tool's function. However, it does not explicitly differentiate from siblings like transkribus_credit_get or transkribus_credit_list_by_user, though the scope is distinct.

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 implies usage when needing collections for a credit package, but provides no guidance on when to use this tool versus alternatives (e.g., transkribus_coll_credit_list) or any prerequisites (e.g., how to get the credit package ID).

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

transkribus_credit_get_costsGet Credit CostsB
Read-onlyIdempotent

Get the credit cost information, optionally filtered by type.

ParametersJSON Schema
NameRequiredDescriptionDefault
timeNoTime filter
typeNoFilter by cost type

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, destructiveHint, idempotentHint, openWorldHint. The description adds no behavioral context beyond the optional filter. For a read-only tool, this is adequate but not enhanced.

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, very concise. However, it omits mention of the time parameter which is present in the schema. Still, it is front-loaded and to the point.

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, and the description does not clarify return format or data scope. With many credit siblings, more context would help, but for a simple read tool with rich annotations, it is 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 coverage is 100% with descriptions for both parameters. The description adds 'optionally filtered by type' which aligns with schema but does not mention the time parameter. Minimal added value beyond 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 clearly states the tool gets credit cost information with optional type filtering. It is specific but does not distinguish from sibling tools like transkribus_credit_get which may have overlapping functionality.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus other credit-related tools, no exclusions or alternatives mentioned. The description provides no context for decision-making.

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

transkribus_credit_get_historyGet Credit HistoryB
Read-onlyIdempotent

Get the credit usage history with pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
useridNoFilter by user ID
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

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, idempotentHint=true, etc., covering the safety profile. The description adds only the pagination context, which is useful but does not elaborate on response format, rate limits, or data recency.

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, well-structured sentence that effectively communicates the core purpose without extraneous words. Front-loads the key action and resource.

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

Completeness2/5

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

With 5 parameters, no output schema, and many sibling credit tools, the description is too sparse. It fails to explain what 'credit usage history' entails, how pagination parameters work, or what the response looks like, making it difficult for an agent to use 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 each parameter already has a description. The tool description adds no additional meaning beyond the schema; it only generically mentions pagination, which is already implied by index and nValues parameters.

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

Purpose4/5

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

The description clearly states the verb 'get' and the resource 'credit usage history', and mentions pagination. However, among many sibling credit tools (e.g., transkribus_credit_get_transactions, transkribus_credit_list_by_user), it does not distinguish what makes 'history' unique.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives like transkribus_credit_get_transactions or transkribus_credit_list_by_user. There is no mention of prerequisites, use cases, or exclusions.

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

transkribus_credit_get_package_transactionsGet Credit Package TransactionsB
Read-onlyIdempotent

List credit transactions for a specific credit package.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true. The description adds 'List', which is consistent but not additional. No extra behavioral context such as pagination behavior or auth requirements is provided. With annotations covering the safety profile, this is adequate but not enhanced.

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 conveys the essential purpose with no unnecessary words. Perfectly concise and structured.

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

Completeness3/5

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

Given no output schema, the description could mention return structure or pagination behavior. It is minimal but functional for a simple list operation. Adequate but not 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?

The input schema has 100% description coverage, so each parameter already has a clear meaning in the schema. The description does not add any semantic value beyond what the schema provides. Baseline score of 3 is appropriate.

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

Purpose4/5

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

The description clearly states the tool lists credit transactions for a specific package. The verb 'list' and resource 'credit transactions for a specific credit package' make the purpose clear. However, it does not explicitly differentiate from sibling tools like transkribus_credit_get_transactions, though the name itself is specific.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. There is no mention of prerequisites, exclusions, or typical scenarios. The agent must infer usage from context alone.

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

transkribus_credit_get_productsGet Credit ProductsC
Read-onlyIdempotent

List available credit products for purchase.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

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, idempotentHint=true, openWorldHint=true, and destructiveHint=false, covering the safety profile, yet the description adds nothing beyond that. It does not disclose pagination behavior, whether the catalog is account-specific, or whether pricing/auth is required, leaving the schema's index/nValues paging unexplained in prose.

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 sentence, front-loaded with the verb and resource and free of filler. It is efficient but arguably under-developed given how terse it is for a four-parameter 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?

The tool is a simple read-only list with no output schema, so the description should ideally hint at the shape of a returned 'credit product' or the paging model. Those gaps are minor but real, leaving the agent with only the schema to infer return structure.

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 index, nValues, sortColumn, and sortDirection all documented in the schema itself. The description adds no parameter meaning on top of 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?

The description states a specific verb (list) and resource (credit products) with the qualifier 'for purchase', so an agent knows this is a read-only catalog lookup. However, it does not distinguish itself from nearby siblings such as transkribus_credit_get_collections or transkribus_credit_get_costs, which an agent could easily confuse with product listing.

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, no prerequisites, and no mention of alternatives. The only implied usage is that this is for discovering purchasable credit products, which the agent must infer from the word 'purchase'.

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

transkribus_credit_get_transactionsGet Credit TransactionsB
Read-onlyIdempotent

List credit transactions with pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already provide readOnlyHint=true, destructiveHint=false, idempotentHint=true, openWorldHint=true. Description adds pagination context but does not disclose return format, rate limits, or other behaviors beyond what annotations imply. Useful but not comprehensive.

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?

Extremely concise single sentence without filler words. Every word adds value.

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?

No output schema exists, and the description does not explain what fields are returned. Lacks differentiation from siblings and does not cover filtering or ordering behavior beyond schema. Incomplete for a listing tool without 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%, so each parameter is well described. The description adds no new meaning beyond the schema, which already explains pagination parameters. 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?

Description clearly states 'List credit transactions with pagination', specifying verb and resource. However, it does not differentiate from sibling tools like transkribus_credit_get_history or transkribus_credit_get_package_transactions, which also list credit-related data.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. No prerequisites, context, or exclusions provided.

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

transkribus_credit_handle_orderHandle Credit OrderC
Idempotent

Process a credit order by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
statusNoOrder status
paymentMethodNoPayment method

TDQS

C2.9/5.0
Behavior2/5

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

Annotations indicate idempotentHint=true and non-destructive, but the description does not explain what processing a credit order involves (e.g., status changes, payment handling). The description adds minimal behavioral context beyond what annotations already provide.

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 sentence, which is concise. However, it is overly brief and could benefit from additional context without becoming verbose.

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

Completeness2/5

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

Given the tool's three parameters and no output schema, the description fails to explain what the result of processing is, what side effects occur, or how the parameters interact. It is insufficient for a complex operation like processing a credit order.

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 descriptive parameter names and descriptions. However, the tool description adds no additional meaning or clarifications about parameter usage or allowed values.

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

Purpose4/5

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

The description clearly states it processes a credit order by ID. However, it does not differentiate from other credit-related tools like transkribus_credit_create or transkribus_credit_update, leaving ambiguity about what 'process' entails.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives, nor are there any prerequisites or conditions for use mentioned.

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

transkribus_credit_list_by_userList Credits by UserC
Read-onlyIdempotent

List credit packages for the current user.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
useridNoFilter by user ID
nValuesNoNumber of results (-1 for all)
isSharedNoFilter shared credits
shareableNoFilter shareable credits
minBalanceNoMinimum balance filter
onlyActiveNoOnly active credits
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc
includeExpiredNoInclude expired credits

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, destructiveHint=false, idempotentHint=true. The description adds minimal behavioral context beyond repeating the purpose. It does not mention rate limits, authentication requirements, or the effect of parameters like 'onlyActive' or 'userid' on the returned data.

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 sentence that is concise and front-loaded with the key action. It is not verbose, but could be slightly more informative without sacrificing 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?

With 10 parameters and no output schema, the description does not explain pagination (index, nValues), sorting, filtering, or the structure of the response. This leaves significant gaps for the agent to understand the tool's full behavior.

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 parameters are already documented. The tool description does not add any additional meaning or context for the parameters beyond what the schema provides, so a baseline score of 3 is appropriate.

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

Purpose4/5

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

The description clearly states the verb 'list' and resource 'credit packages', and specifies scope 'for the current user'. However, the presence of the 'userid' parameter creates ambiguity about whether credits for other users can be listed, which is not clarified.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus sibling tools like transkribus_credit_get, transkribus_coll_credit_list, or others. The agent is left to infer usage 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.

transkribus_credit_manageManage Credit HistoryD
Idempotent

Create or update credit history entries.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sourceUserIdNoSource user ID
sortDirectionNoSort direction: asc or desc

TDQS

D1.3/5.0
Behavior1/5

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

The description claims 'Create or update', which is not idempotent, but annotations set idempotentHint=true. This is a direct contradiction. The openWorldHint=true suggests additional side effects, but the description fails to disclose any behavioral traits.

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

Conciseness2/5

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

The description is concise (one sentence) but sacrifices accuracy. It front-loads incorrect information, failing to clearly convey the tool's function.

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

Completeness1/5

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

Given the 5 parameters and lack of output schema, the description is grossly incomplete. It does not explain the operation, expected inputs for create vs update, or return values.

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?

Although parameter descriptions are present, they describe pagination and filtering fields (index, nValues, sortColumn, sortDirection) which align with a list/query operation, not create/update. The description does not explain how these parameters relate to creating or updating credit history entries, causing misalignment.

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 states 'Create or update credit history entries' but the parameters (index, nValues, sortColumn, sortDirection) are typical for listing rather than creating/updating. Sibling tools transkribus_credit_create and transkribus_credit_update exist, making the purpose vague and potentially overlapping.

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

Usage Guidelines1/5

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

No guidance is provided on when to use this tool versus alternatives like transkribus_credit_create or transkribus_credit_update. No prerequisites or context are given.

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

transkribus_credit_updateUpdate Credit PackageB
Idempotent

Update an existing credit package by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
labelNoUpdated label
amountNoUpdated amount

TDQS

B3.3/5.0
Behavior3/5

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

Annotations indicate idempotentHint=true and destructiveHint=false, which conflict with the mutation nature of 'update', but the description aligns with the annotation by not claiming destructive behavior. However, it adds no additional behavioral context beyond what annotations provide (e.g., permissions, side effects on associated jobs).

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 waste. It is concise but could benefit from slightly more detail without becoming verbose.

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

Completeness2/5

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

Given the simplicity of the tool (3 parameters, no output schema, annotations present), the description is minimal. It lacks context about return values, usage lifecycle, or relationships to sibling tools, leaving gaps for an AI agent.

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

Parameters3/5

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

Schema description coverage is 100%, with each parameter having a basic description. The tool description adds no additional meaning beyond restating that it updates by ID. With high coverage, a score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the verb 'update', the resource 'credit package', and the identifier method 'by ID'. It differentiates from sibling tools like 'transkribus_credit_create' and 'transkribus_credit_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?

No usage guidelines are provided. The description does not specify when to use this tool versus alternatives (e.g., credit_create for new packages, credit_manage for broader operations) or any prerequisites.

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

transkribus_crowd_delete_messagesDelete Crowd Project MessagesB
DestructiveIdempotent

Delete messages from the crowd project of a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoSpecific message ID to delete
collIdYesCollection ID

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and idempotentHint=true, so the behavior is partially disclosed. The description adds that messages are deleted from a crowd project, but does not elaborate on side effects, authorization needs, or irreversibility beyond what annotations provide.

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 sentence, concise and front-loaded. However, it is somewhat vague and missing important details, but it remains efficient without unnecessary verbiage.

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 tool with no output schema, the description is incomplete. It does not explain the effect of omitting the optional id, whether deletion is permanent, or what authorization is required. Given the tool's complexity (destructive, batch possible), more context is needed.

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

Parameters3/5

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

The input schema has 100% coverage with descriptions for both parameters (collId as 'Collection ID', id as 'Specific message ID to delete'). The description does not add meaning beyond the schema; it does not clarify, for example, that omitting id might delete all messages or that deletion is scoped to a collection.

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

Purpose5/5

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

The description clearly states 'Delete messages from the crowd project of a collection.' It uses a specific verb (Delete) and resource (messages), and distinguishes from siblings like transkribus_crowd_delete_milestones (which deletes milestones) and transkribus_crowd_post_message (which creates messages).

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives (e.g., when to delete a specific message vs. all messages, or prerequisites like collection ownership). Sibling tools such as transkribus_crowd_post_message are not mentioned, nor are usage contexts or exclusions.

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

transkribus_crowd_delete_milestonesDelete Crowd Project MilestonesA
DestructiveIdempotent

Delete milestones from the crowd project of a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoSpecific milestone ID to delete
collIdYesCollection ID

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already indicate destructiveHint=true and idempotentHint=true, so the description need not repeat these. It does not add further behavioral context beyond what annotations provide. No contradiction found.

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, concise sentence that efficiently communicates the tool's purpose without extraneous 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 simple tool with two parameters, no output schema, and annotations providing destructive/idempotent hints, the description is adequate. It could mention that deleting without id removes all milestones, but overall it is complete enough.

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 description does not add additional meaning beyond the schema. Baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the action ('Delete'), the resource ('milestones'), and the context ('from the crowd project of a collection'). It effectively differentiates from sibling tools like transkribus_crowd_post_milestone (create) and transkribus_crowd_get_project (retrieve).

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives, such as deleting all milestones vs. a specific one, or prerequisites like requiring milestone IDs. The description lacks contextual usage advice.

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

transkribus_crowd_get_projectGet Crowd ProjectA
Read-onlyIdempotent

Get the crowd project details for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already provide readOnlyHint, idempotentHint, etc. Description adds 'crowd project details' context but no further behavioral insights. No contradiction.

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?

Single sentence, no unnecessary words, front-loaded with action and resource.

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

Completeness5/5

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

Simple read-only tool with one parameter; description is fully adequate. No output schema needed.

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

Parameters3/5

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

Schema coverage is 100% with one parameter clearly described as 'Collection ID'. Description adds no additional meaning beyond the schema.

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?

Description clearly states the action (get) and resource (crowd project details for a collection), distinguishing it from sibling tools like transkribus_crowd_post_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?

No guidance on when to use this tool versus alternatives (e.g., when to retrieve project details before posting updates).

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

transkribus_crowd_post_messagePost Crowd Project MessageB

Store a new message in the crowd project of a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
messageYesMessage content to store

TDQS

B3.1/5.0
Behavior2/5

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

Annotations indicate readOnlyHint=false (write operation), destructiveHint=false (not destructive), and openWorldHint=true (side effects). The description adds little beyond stating it 'stores' a message, omitting details like whether it appends or overwrites, limits, or return behavior. The brief text does not elaborate on side effects hinted by openWorldHint=true.

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 sentence that directly communicates the tool's action with no extraneous information. It is front-loaded and efficient, fitting the conciseness ideal.

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

Completeness3/5

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

Given the tool's simplicity (two parameters, no output schema) and annotations, the description is minimally adequate. It explains the basic operation but lacks context about crowd projects, permissions, or side effects. For a write operation with openWorldHint=true, more completeness would improve agent understanding.

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 descriptions for both parameters ('Collection ID' and 'Message content to store'). The description reinforces that the message is stored in a crowd project of a collection, but does not add new semantic meaning beyond what the schema provides. Baseline score of 3 is appropriate.

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

Purpose4/5

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

The description 'Store a new message in the crowd project of a collection' clearly states the verb 'Store' and the resource 'message' in a specific context. It distinguishes from sibling tools like transkribus_crowd_delete_messages (delete) and transkribus_crowd_post_milestone (post milestone) by focusing on storing a message. However, it could be more precise about what a 'crowd project' entails.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description does not mention prerequisites, such as requiring a collection to have a crowd project, or when not to use it. Implied usage is only for storing a message, but explicit context is missing.

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

transkribus_crowd_post_milestonePost Crowd Project MilestoneC

Store a new milestone in the crowd project of a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateNoMilestone date
titleYesMilestone title
collIdYesCollection ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already indicate non-readOnly, non-destructive, non-idempotent, and open-world. The description adds no behavioral details beyond 'store', such as whether duplicates are allowed or if updates occur. It does not leverage annotations to enhance transparency.

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

Conciseness4/5

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

The description is a single efficient sentence of 12 words. It is front-loaded and concise, though it could include more context without becoming verbose.

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 creation tool with no output schema, the description is minimally adequate. However, it lacks mention of return values, side effects, or expected date formats, which would improve completeness.

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 descriptions for all parameters (collId, title, date). The description adds no extra meaning beyond the schema, so 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 clearly states the tool stores a new milestone in the crowd project of a collection, distinguishing it from sibling tools like transkribus_crowd_post_message. However, it lacks specificity about what a milestone represents (e.g., a date with a title).

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, such as prerequisites (e.g., existence of a crowd project) or constraints. The description does not mention conditions for use or exclusions.

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

transkribus_crowd_post_projectCreate or Update Crowd ProjectC
Idempotent

Create or update the crowd project configuration for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesCrowd project data
collIdYesCollection ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations indicate idempotency and non-destructive behavior, but the description adds no behavioral context. It does not explain whether the configuration is merged or replaced, or what happens to existing settings.

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, front-loaded with purpose. No redundant information. Efficient for a simple tool.

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

Completeness2/5

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

No output schema, and description does not mention what the tool returns (e.g., success status, project ID). The 'body' parameter's expected structure is not elaborated. For a write operation with a complex input, more completeness is needed.

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

Parameters3/5

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

Schema covers both parameters with descriptions (collId as 'Collection ID', body as 'Crowd project data'). However, the 'body' is an open object with no further structure hints, which the description could have addressed. Baseline 3 due to full schema coverage.

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

Purpose4/5

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

The description clearly states the action (create or update) and the resource (crowd project configuration for a collection). It distinguishes from sibling read tools like transkribus_crowd_get_project, but does not differentiate between create and update scenarios.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., when to create vs update, or when to use other crowd tools). No mention of prerequisites or context.

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

transkribus_crowdsource_countCount Crowdsourcing ProjectsA
Read-onlyIdempotent

Get the total count of crowdsourcing projects.

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, destructiveHint, idempotentHint, and openWorldHint, covering safety and idempotency. The description adds no extra behavioral details (e.g., rate limits, return format). It does not contradict annotations, but also does not add value beyond them.

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

Conciseness5/5

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

The description is a single, clear sentence (8 words) that front-loads the verb and resource. Every word is necessary, and there is no redundancy or fluff.

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?

As a simple count tool with no parameters and no output schema, the description is minimal but lacks return type information (e.g., integer). While annotations cover safety, the description would benefit from stating what the output represents (e.g., 'Returns an integer count').

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

Parameters4/5

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

The input schema has zero parameters, and schema description coverage is 100%. With no parameters to document, the baseline per rubric is 4. The description appropriately avoids adding unnecessary detail.

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 'Get the total count of crowdsourcing projects' uses a specific verb ('Get') and resource ('total count of crowdsourcing projects'). It clearly distinguishes itself from sibling tools like transkribus_crowdsource_list and transkribus_crowdsource_get_details, which serve different purposes (listing or fetching details).

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention scenarios where a count is preferred over a list, nor does it exclude any contexts. Without any usage direction, agents may misuse or overlook the tool.

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

transkribus_crowdsource_get_detailsGet Crowdsourcing DetailsB
Read-onlyIdempotent

Get crowdsourcing details for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID

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, destructiveHint=false, idempotentHint=true. The description adds no behavioral context beyond stating it's for a collection, which is already in the schema. Without annotations, this would score lower, but given annotations, it's adequate.

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, 5 words - very concise. However, it could be slightly more informative while remaining succinct, such as mentioning it returns detailed info about a specific collection.

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?

No output schema exists, yet the description does not mention what 'details' are returned (e.g., status, settings, contributions). For a simple get tool, more context about the return value is needed to complete the picture.

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 clear 'Collection ID' description. The description adds no additional meaning to the parameter, so 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 states 'Get crowdsourcing details for a collection' - a clear verb and resource. However, it doesn't differentiate from sibling tools like transkribus_crowdsource_list or transkribus_crowd_get_project, leaving ambiguity about what specific details are retrieved.

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, when-not-to-use, or alternative tool suggestions are provided. The description gives no context about appropriate usage compared to sibling crowdsourcing tools.

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

transkribus_crowdsource_listList Crowdsourcing ProjectsA
Read-onlyIdempotent

List available crowdsourcing projects.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

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, destructiveHint=false, idempotentHint=true, openWorldHint=true. The description adds no additional behavioral context beyond what annotations provide, such as pagination or result format.

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?

Description is a single sentence, concise and direct. While it could include a bit more detail, it avoids unnecessary verbosity.

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 list operation with comprehensive annotations and fully described parameters, the description is adequate. It clearly states what it does, though it does not mention the return format or any result limits.

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?

Input schema has 100% description coverage for all 4 parameters. The description does not add any extra meaning beyond what is already in the schema, so baseline score of 3 is appropriate.

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?

Description clearly states action ('List') and resource ('crowdsourcing projects'). It is specific and distinguishes from sibling tools like transkribus_crowdsource_get_details or transkribus_crowdsource_subscribe.

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?

No explicit guidance on when to use this tool versus alternatives. Usage is implied (when you need a list), but no exclusions or alternative tool mentions are provided.

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

transkribus_crowdsource_subscribeSubscribe to CrowdsourcingC

Subscribe to a crowdsourcing project for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations indicate readOnlyHint=false (write operation), destructiveHint=false (non-destructive), and idempotentHint=false (not idempotent), but the description adds no additional behavioral context such as side effects, permissions, or what happens if already subscribed.

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, concise sentence with no wasted words. However, it could be more informative while still being concise.

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

Completeness3/5

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

Given the tool's simplicity (one parameter, no output schema), the description is adequate but lacks important context about the subscription action's effects and prerequisites. The openWorldHint suggests external effects, but these are not explained.

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

Parameters3/5

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

The input schema describes 'collId' as 'Collection ID', giving basic meaning. The description does not add any further parameter semantics, but with 100% schema coverage, the baseline is 3. No extra value is provided.

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

Purpose4/5

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

The description clearly states the verb 'subscribe' and the resource 'crowdsourcing project for a collection', which differentiates it from sibling tools like transkribus_crowdsource_unsubscribe and transkribus_crowdsource_list. However, it lacks specificity about what subscribing entails (e.g., notifications, participation).

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives, nor any prerequisites or context (e.g., required authentication or collection ownership). The agent has no information to decide if this is the right tool.

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

transkribus_crowdsource_unsubscribeUnsubscribe from CrowdsourcingB
DestructiveIdempotent

Unsubscribe from a crowdsourcing project for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID

TDQS

B3.4/5.0
Behavior2/5

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

Annotations already indicate destructiveHint=true and idempotentHint=true. The description does not add further behavioral context such as side effects or permissions beyond the obvious unsubscribe action.

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 short and to the point, with no unnecessary words. It could be slightly more structured, but it is efficient.

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 tool, the description is minimal. It does not explain what happens after unsubscribing or any side effects, but it is arguably sufficient given the tool's simplicity.

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% for the single parameter 'collId', which is described as 'Collection ID'. The description mentions 'for a collection' but adds no new meaning beyond the schema.

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

Purpose5/5

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

The description clearly states the action 'Unsubscribe' and the resource 'crowdsourcing project for a collection'. It is specific and distinguishes from the sibling tool 'transkribus_crowdsource_subscribe'.

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 implies usage when one wants to unsubscribe from a crowdsourcing project, but it does not provide guidance on when not to use it or any prerequisites.

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

transkribus_doc_deleteDelete DocumentC
DestructiveIdempotent

Delete a document from a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
collIdYesCollection ID
deleteNoConfirm deletion (default false)

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already convey destructiveness (destructiveHint=true), non-read-only status, and idempotency, so the description carries a lower burden. However, the description adds essentially no behavioral context beyond restating the scope, and it fails to disclose the significant quirk that the 'delete' confirmation parameter defaults to false, which may mean deletion does not occur unless explicitly confirmed.

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 focused sentence with no wasted words, and the core action is front-loaded. It is concise, though it borders on under-specification by omitting behavioral caveats.

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 annotations cover the safety profile and the schema covers all parameters, so the operation is basically callable. The main gap is the interplay between the destructive action and the 'delete' confirmation flag, plus the lack of any statement about consequences (e.g., whether pages/transcripts are destroyed). Given no output schema, a bit more guidance would help.

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

Parameters3/5

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

Schema description coverage is 100%, with all three parameters (id, collId, delete) documented in the schema. The description adds no parameter-level insight, so 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 states a specific verb (delete), resource (document), and scope (from a collection), which distinguishes it from sibling tools like transkribus_coll_delete and transkribus_page_delete. However, the phrase 'from a collection' creates some ambiguity with transkribus_doc_remove_from_collection, which likely removes a document from a collection without destroying it.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives such as transkribus_doc_remove_from_collection (non-destructive removal) or transkribus_coll_delete (deleting a whole collection). For a destructive operation, the absence of a warning or pointer to the safer alternative is a notable gap.

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

transkribus_doc_exportExport DocumentC

Export a document in the specified format.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pagesNoPage range to export (e.g. "1-5")
collIdYesCollection ID
formatNoExport format
doWritePdfNoWrite PDF
doWriteTeiNoWrite TEI
doWordBasedNoWord-based export
doWriteDocxNoWrite DOCX
doWriteMetsNoWrite METS file
doBlackeningNoApply blackening
doCreateTitleNoCreate title page
doPdfWithTagsNoPDF with tags
doWriteImagesNoWrite image files
doDocxWithTagsNoDOCX with tags
doTeiWithZonesNoTEI with zones
doExportAltoXmlNoExport ALTO XML
doExportPageXmlNoExport PAGE XML
doPdfImagesOnlyNoPDF with images only
doWriteTagsXlsxNoWrite tags XLSX
doTeiWithNoZonesNoTEI without zones
useVersionStatusNoVersion status to useLatest
doDocxKeepAbbrevsNoKeep abbreviations in DOCX
doDocxMarkUnclearNoMark unclear text in DOCX
doTeiWithLineTagsNoTEI with line tags
doWriteTablesXlsxNoWrite tables XLSX
doPdfWithTextPagesNoPDF with text pages
doDocxExpandAbbrevsNoExpand abbreviations in DOCX
doPdfImagesPlusTextNoPDF with images plus text
doTeiWithLineBreaksNoTEI with line breaks
doTeiWithZonePerLineNoTEI with zone per line
doTeiWithZonePerWordNoTEI with zone per word
doDocxForcePageBreaksNoForce page breaks in DOCX
doSingleClassColorTeiNoSingle class color TEI
doTeiWithZonePerRegionNoTEI with zone per region
doDocxSubstituteAbbrevsNoSubstitute abbreviations in DOCX
splitIntoWordsInAltoXmlNoSplit into words in ALTO XML
doDocxPreserveLineBreaksNoPreserve line breaks in DOCX

TDQS

C2.9/5.0
Behavior2/5

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

Annotations only signal readOnlyHint=false and openWorldHint=true, so the agent knows the world may change but not how. The description adds no behavioral context: it does not disclose that exports are typically asynchronous job operations, may consume credits, produce downloadable files, or have side effects. No contradiction with annotations, but the description does nothing beyond restating the 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?

Eight words, zero fluff, and the key action is front-loaded. The sentence is efficiently structured, though the brevity borders on under-specification rather than purposeful 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 37-parameter tool with no output schema and no enums, this description is severely incomplete. The agent gets no help choosing among the many overlapping format flags, no awareness of surprising defaults (doWriteMets=true, doWriteImages=true, doExportAltoXml=true, doExportPageXml=true), and no indication of what the export call returns.

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 of 3 applies — every parameter has at least a terse description in the schema. The tool description adds nothing to parameter understanding; critically, it fails to clarify how the 'format' string relates to the doWrite* boolean flags, which is the main semantic ambiguity an agent would face.

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 ('Export') and resource ('a document'), which clearly communicates the tool's core operation and implicitly separates it from the sibling transkribus_coll_export (collection vs. document export). However, 'in the specified format' is vague — the tool actually supports many formats controlled by overlapping boolean flags and a format string — 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 Guidelines2/5

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

There is zero guidance on when to use this tool versus the many related siblings (transkribus_coll_export, transkribus_doc_get_mets, transkribus_upload_create_from_mets). No exclusions, prerequisites, or alternative-routing information is provided, which is a significant gap given the large sibling list.

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

transkribus_doc_get_costsGet Document CostsB
Read-onlyIdempotent

Get the processing costs for a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
collIdYesCollection 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=true, idempotentHint=true, and destructiveHint=false, so the safety profile is fully covered. The description adds no behavioral context beyond the annotations — no mention of units, credit semantics, or auth needs — but since the annotation burden is already satisfied, a 3 is appropriate. No contradiction detected.

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 eight-word sentence that delivers verb, resource, and scope with zero filler. Every word earns its place and the key 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?

Complete for a simple two-parameter read operation with rich annotations and fully documented schema. The only minor gap is that 'processing costs' is ambiguous next to the many cost-related siblings, and without an output schema the agent is left to guess the return shape — but the low complexity keeps this near-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 both parameters clearly documented (id = Document ID, collId = Collection ID). The description adds no parameter-level detail, but with full schema coverage 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 (Get), resource (processing costs), and scope (for a document), which is clear on its own. It does not explicitly differentiate itself from the several cost-related siblings (transkribus_recog_get_costs, transkribus_la_get_costs, transkribus_credit_get_costs, transkribus_recog_get_ocr_costs), so it falls short of the top score.

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

Usage Guidelines2/5

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

Provides no guidance on when to use this tool versus its alternatives. Given the cluster of sibling cost tools (recog_get_costs, la_get_costs, credit_get_costs, ocr_costs), an agent receives no help deciding whether this document-level cost query is the right one versus a recognition- or credit-scoped cost query.

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

transkribus_doc_get_editorial_declarationGet Editorial DeclarationB
Read-onlyIdempotent

Get the editorial declaration for a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
collIdYesCollection ID

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, and the description adds no further behavioral context such as return format, not-found behavior, authorization requirements, or how collId and id relate. It essentially restates the operation without disclosing anything beyond what the structured metadata already establishes.

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 filler or redundant wording. Every word contributes to stating the operation, making it appropriately concise for a simple read-only getter.

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

Completeness3/5

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

Given only two required parameters, complete schema documentation, and strong read-only annotations, this description is just barely sufficient for an agent to invoke the tool. However, it does not explain what an editorial declaration is, what the response contains, or how this relates to the adjacent editdecl and doc_post_editorial_declaration tools, leaving the contextual picture 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%, with both 'id' and 'collId' individually documented as 'Document ID' and 'Collection ID'. The description adds no additional parameter semantics, but because the schema carries the full burden, the baseline score of 3 is appropriate.

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

Purpose4/5

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

The description states a specific verb ('Get') and a specific resource ('the editorial declaration for a document'), so the core action is clear. It does not explicitly contrast with siblings such as transkribus_doc_post_editorial_declaration or transkribus_editdecl_list_features, but the resource noun makes the primary 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?

The description gives no guidance on when to call this tool versus related tools like transkribus_editdecl_* or transkribus_doc_post_editorial_declaration. An agent must rely on the sibling names and annotations to infer the appropriate context, because the description itself provides no when-to-use or when-not-to-use information.

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

transkribus_doc_get_fulldocGet Full DocumentA
Read-onlyIdempotent

Get the full document including all pages and transcripts.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
statsNoInclude statistics
collIdYesCollection ID
statusNoFilter by status
nrOfTranscriptsNoNumber of transcripts to include

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already establish that this is a read-only, idempotent, non-destructive operation, so the safety profile is covered. The description adds value by revealing that the response contains all pages and transcripts, but it does not disclose potential payload size, response structure, or how optional parameters shape the returned data. Given annotation coverage, this is acceptable 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 a single concise sentence with no filler. The key information—what the tool returns—is front-loaded, and every word contributes to the 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?

Without an output schema, the description noteing 'all pages and transcripts' gives a basic idea of return content. However, optional parameters like status, stats, and nrOfTranscripts are not connected to what the returned document will contain, and the relationship to the XML variant is unspecified. Annotations and schema cover safety and parameter names, leaving the behavioral gaps at a moderate level.

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

Parameters3/5

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

The input schema documents all five parameters with descriptions, achieving 100% schema description coverage, so the description is not required to repeat parameter details. The description's mention of 'including all pages and transcripts' loosely relates to the nrOfTranscripts parameter but adds no concrete parameter-level 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?

The description states a specific action ('Get') on a clear resource ('the full document') and specifies scope ('including all pages and transcripts'), which distinguishes it from page-level and collection-level tools. However, the near-identical sibling transkribus_doc_get_fulldoc_xml exists, and the description does not clarify the format difference between this tool and that XML variant, so it falls short of full differentiation.

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

Usage Guidelines3/5

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

The phrase 'full document including all pages and transcripts' implies this is the tool to use when an agent needs the complete document rather than individual pages or snippets. There is no explicit guidance about when to choose it over alternatives such as transkribus_doc_get_fulldoc_xml or transkribus_doc_get_pages, so usage context is only implied.

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

transkribus_doc_get_fulldoc_xmlGet Full Document XMLB
Read-onlyIdempotent

Get the full document in XML format.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
collIdYesCollection ID
nrOfTranscriptsNoNumber of transcripts to include

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, and non-destructive behavior, and the description's 'Get' is consistent with that safety profile. It adds only the output format ('XML') as useful context, but it does not disclose what the full document includes, how nrOfTranscripts affects the result, or any response-size or availability considerations.

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 filler or repetition of parameter details. Every word contributes to conveying the core operation.

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 retrieval with only two required parameters and full schema coverage, the description is minimally viable. However, with no output schema and a large sibling set, it would benefit from explaining what 'full document' encompasses and how this endpoint differs from transkribus_doc_get_fulldoc or METS retrieval.

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%: each parameter (id, collId, nrOfTranscripts) already has a clear description. The tool description adds no parameter-level information beyond that, so the baseline score of 3 is appropriate.

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

Purpose4/5

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

The description states a specific verb ('Get') and resource ('full document') plus the format ('XML'), so an agent can understand the tool's basic purpose. However, it merely rephrases the title and does not distinguish this from the sibling transkribus_doc_get_fulldoc or other XML-related endpoints.

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 such as transkribus_doc_get_fulldoc, transkribus_doc_get_mets, or transkribus_coll_list_xml. The description provides no contextual conditions, exclusions, or alternative routing.

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

transkribus_doc_get_image_namesGet Image NamesB
Read-onlyIdempotent

Get the image file names for all pages in a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
collIdYesCollection ID

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already cover the safety profile (read-only, idempotent, non-destructive), and the description adds the useful 'all pages' scope. It does not disclose output ordering, pagination, or whether a page with no image is omitted, but for a simple read operation this is a moderate 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 front-loaded sentence states the action, scope, and resource with no filler. Every word 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 two-parameter, annotation-rich read-only tool this is nearly complete; the operation and inputs are clear. The main omission is the shape/order of the returned image-name list, which would matter if callers expect an exact array format.

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 id and collId clearly. The description mentions a document but does not add semantics beyond the schema, meeting the baseline but adding no extra value.

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

Purpose4/5

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

The description uses a specific verb and resource: it retrieves image file names for every page in a document, which distinguishes it from page-ID or page-metadata tools. It does not explicitly call out any sibling, so it stops short of the highest clarity level.

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

Usage Guidelines2/5

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

The description provides no guidance on when to prefer this tool over related document/page listers such as transkribus_doc_get_pages or transkribus_doc_get_page_ids, and no when-not-to-use context. The only usage signal is implied by the word 'get'.

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

transkribus_doc_get_metadataGet Document MetadataB
Read-onlyIdempotent

Get metadata for a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
collIdYesCollection 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=true, idempotentHint=true, and destructiveHint=false, so the safe read-only behavior is well covered. The description does not contradict these annotations, but it also adds no behavioral context beyond the basic operation, such as what metadata fields are returned or whether collection membership affects the result.

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 filler or redundant phrasing. It is front-loaded with the verb and resource, though it is slightly too sparse to earn a 5 since it misses an opportunity to add distinguishing context.

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 operation with rich annotations and fully documented parameters, this is minimally viable. However, there is no output schema and no mention of what metadata is included, and the lack of sibling differentiation means an agent may not confidently pick this over document stats, METS, or full-document tools.

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

Parameters3/5

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

The input schema provides 100% coverage with clear descriptions for both parameters: 'Document ID' and 'Collection ID'. The description adds no additional meaning beyond the schema, which is acceptable given the high schema coverage, but it does not explain the relationship between collId and 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?

The description clearly states the verb 'Get' and the resource 'metadata for a document', so an agent can tell this is a document-level metadata read. It does not explicitly differentiate from sibling tools like transkribus_coll_get_metadata or transkribus_page_get_metadata, but including the word 'document' provides basic resource disambiguation.

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 usage is implied: call this when you need metadata for a document. However, there is no guidance on when to prefer this over related sibling tools such as transkribus_doc_get_stats, transkribus_doc_get_mets, or transkribus_doc_get_fulldoc, and no alternatives or exclusions are mentioned.

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

transkribus_doc_get_metsGet Document METSB
Read-onlyIdempotent

Get the METS metadata for a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
collIdYesCollection ID

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already provide clear behavioral hints (readOnlyHint=true, destructiveHint=false, idempotentHint=true, openWorldHint=true). The description adds no behavioral context, but does not contradict 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?

The description is one concise sentence with no filler. It efficiently conveys the core function, though it could be slightly expanded without becoming verbose.

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

Completeness3/5

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

Given the lack of output schema and the richness of annotations, the description is adequate but minimal. It does not explain what METS is, which could be helpful for an unfamiliar agent. The context from schema and annotations partially compensates.

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

Parameters3/5

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

The input schema has 100% description coverage for both parameters (collId and id), so the description does not need to add parameter information. It adds no additional semantics beyond the schema.

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

Purpose5/5

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

The description clearly states the verb 'Get', the resource 'METS metadata', and the context 'for a document'. It distinguishes this tool from siblings like transkribus_doc_get_metadata and transkribus_doc_get_fulldoc by specifying the METS format.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. Given the large sibling list, information about when to prefer this over other doc_get_* tools (e.g., for XML metadata retrieval) would be beneficial.

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

transkribus_doc_get_page_idsGet Page IDsB
Read-onlyIdempotent

Get the page IDs for all pages in a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pagesNoPage range filter (e.g. "1-5")
collIdYesCollection ID

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already cover readOnlyHint=true, destructiveHint=false, idempotentHint=true, openWorldHint=true. The description adds no behavioral context beyond annotations, such as what happens if a document ID is invalid or how pages are ordered.

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, 11-word sentence that is direct and to the point. While concise, it could be slightly more informative without adding significant length.

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 is provided, and the description does not explain the return format (e.g., an array of integers or strings). The tool is simple, but the lack of output specification leaves ambiguity for an AI agent.

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

Parameters3/5

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

All parameters have descriptions in the schema (100% coverage). The description does not add additional meaning or constraints beyond what the schema 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?

The description clearly states the verb (Get), the resource (page IDs), and the scope (all pages in a document). It distinguishes from sibling tools like transkribus_doc_get_pages that retrieve full page objects.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. Sibling tools such as transkribus_doc_list_pages or transkribus_page_get exist, but the description does not clarify the context or trade-offs.

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

transkribus_doc_get_pagesGet Document PagesC
Read-onlyIdempotent

Get all pages for a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
indexNoStart index (0-based)
pagesNoPage range filter
collIdYesCollection ID
statusNoFilter by status
labelIdNoFilter by label ID
modelIdNoFilter by model ID
nValuesNoNumber of results (-1 for all)
clientIdNoFilter by client ID
ctStatusNoFilter by CT status
fileNameNoFilter by file name
modelNameNoFilter by model name
modelTypeNoFilter by model type
clientNameNoFilter by client name
sortColumnNoColumn to sort by
hideOnSitesNoFilter by hide on sites flag
modelUserIdNoFilter by model user ID
modelUserNameNoFilter by model user name
pagingWrapperNoUse paging wrapper
sortDirectionNoSort direction: asc or desc
recognitionTypeNoFilter by recognition type
skipPagesWithMissingStatusNoSkip pages with missing status

TDQS

C2.8/5.0
Behavior2/5

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

Annotations already establish readOnlyHint=true, idempotentHint=true, openWorldHint=true, and destructiveHint=false, covering the safety profile. The description adds no behavioral context beyond that, such as pagination defaults, filter interaction, or how the tool handles large documents.

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 free of filler. For a 22-parameter tool, though, it is arguably too terse to be appropriately sized, leaving important behavioral context unstated.

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

Completeness2/5

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

Given 22 parameters, two required IDs, filter and pagination options, and no output schema, a single sentence is not complete enough. The description omits return shape, pagination behavior, filter semantics, and its relationship to similar page-listing 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%, so all 22 parameters are documented in the input schema. The description does not add any parameter meaning or clarify the filter/paging surface, so the baseline score 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 names a specific verb (Get) and resource (pages for a document), making the core purpose clear. However, it does not distinguish this tool from close siblings such as transkribus_doc_list_pages or transkribus_doc_get_page_ids, so no sibling differentiation is present.

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 indication of when to use this tool versus alternatives like transkribus_doc_list_pages or transkribus_page_get, nor does it mention prerequisites such as required collection/document context. Usage 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.

transkribus_doc_get_plaintextGet Document PlaintextA
Read-onlyIdempotent

Get the transcribed text of a whole document in one call, with "--- page N ---" separators. Fetches at most 100 pages and 100000 characters per call; when more remain, the result carries nextStartPage.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
collIdYesCollection ID
endPageNoLast page to include, inclusive (default: the document's last page)
maxCharsNoCharacter budget for the returned text, separators included (default 100000)
startPageNoFirst page to include (default: the document's first page)

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already establish readOnly/idempotent/non-destructive safety. The description adds genuinely useful behavioral context beyond them: the per-call fetch caps (100 pages, 100000 chars) and the fact that a nextStartPage continuance marker is returned when more remains. It could still say more about transient errors or truncation semantics, but this is solid added value.

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 filler, with the primary purpose front-loaded ahead of the pagination caveat. 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 tool with no output schema, the description adequately covers the return shape (page separators, continuation marker) and the safety profile is handled by annotations. It is largely complete, with only minor gaps around exact return structure.

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 baseline is 3, but the description goes further by clarifying the operational meaning of the budget-related parameters (100000 default chars, 100-page cap) and introducing the nextStartPage continuance mechanism that maps to the startPage parameter. It meaningfully contextualizes how the parameters behave.

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') and resource ('transcribed text of a whole document') and scopes it clearly as whole-document and single-call. An agent can distinguish this from the sibling page-level tools (transkribus_page_get_plaintext, transkribus_page_get_text) 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 Guidelines3/5

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

The phrase 'a whole document in one call' implicitly signals when to use this over per-page retrieval, but the description never names alternatives such as transkribus_doc_get_fulldoc or transkribus_page_get_plaintext, nor states exclusions. Usage is implied rather than explicit.

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

transkribus_doc_get_statGet Document StatC
Read-onlyIdempotent

Get document statistics summary.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
collIdYesCollection ID

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, and the description's 'Get' wording is fully consistent with them — no contradiction. The description adds only thin context (that the result is a 'summary') but nothing about response content, pagination, or access requirements. With the annotations carrying the safety profile, this is acceptable 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?

The four-word sentence is front-loaded and contains zero wasted words, with no structural flaws. It is efficient but so terse that it sacrifices the detail needed to disambiguate from transkribus_doc_get_stats, so it stops short of 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?

The tool is simple — two fully documented required parameters and a complete annotation profile — so an agent can correctly invoke it. However, with no output schema, the description carries the burden of explaining what the 'statistics summary' contains, and it does not; it also leaves the near-identical sibling ambiguity unresolved. These are clear gaps, but the tool's simplicity keeps it minimally 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?

Schema description coverage is 100% — both parameters (id: 'Document ID', collId: 'Collection ID') are documented in the schema itself. The description adds no parameter-level meaning, so the high-coverage baseline of 3 applies.

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

Purpose3/5

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

The description states a real verb and resource ('Get document statistics summary'), so it is not a tautology. However, 'statistics summary' is vague about what statistics are included (pages? transcripts? words? statuses?), and the sibling list contains transkribus_doc_get_stats, a one-character-different tool with an apparently identical purpose, which the description does nothing to distinguish.

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 exclusions, and no mention of alternatives. With numerous stats-related siblings (transkribus_doc_get_stats, transkribus_stat_get_coll_stats, transkribus_coll_user_stats, transkribus_stat_get_storage_usage), an agent has no basis for choosing this tool over them.

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

transkribus_doc_get_statsGet Document StatsC
Read-onlyIdempotent

Get detailed statistics for a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
collIdYesCollection ID

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already provide readOnlyHint=true, destructiveHint=false, etc. The description adds only 'Get detailed statistics' without elaborating on what statistics are included or any behavioral traits (e.g., auth needs, rate 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?

Single sentence, front-loaded with the key action. Efficient, but could include more detail without overwhelming. 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?

With no output schema and many sibling tools, the description lacks completeness—it doesn't explain what 'detailed statistics' means or what the return value looks like. Annotations partially compensate but not enough.

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 basic descriptions for both parameters (collId, id). The description does not add any extra meaning or context beyond the schema, meeting baseline expectations.

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

Purpose3/5

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

The description states the tool gets 'detailed statistics for a document,' which is a clear verb+resource. However, it does not distinguish this from sibling tools like transkribus_doc_get_stat or transkribus_doc_get_metadata, which may serve similar purposes.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs. alternatives (e.g., transkribus_doc_get_stat, transkribus_doc_get_fulldoc). Does not provide context for selection or exclusions.

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

transkribus_doc_get_test_setGet Test SetB
Read-onlyIdempotent

Get the test set data for a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
collIdYesCollection 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, destructiveHint=false, idempotentHint=true, and openWorldHint=true, providing a clear safety profile. The description does not add any additional behavioral context beyond what annotations provide, but it does not contradict them. With annotations covering safety, the description adds no extra value, so a score of 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?

The description is a single sentence, concise and front-loaded. It contains no unnecessary words. However, it is perhaps too brief; adding a bit more context (e.g., what the test set data contains) could improve clarity without significantly increasing length.

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

Completeness3/5

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

Given the tool's simplicity (2 parameters, no output schema), the description is fairly complete. However, without an output schema, the agent does not know what structure to expect from the test set data. There is also potential confusion with the sibling tool 'transkribus_recog_get_test_set', which is not addressed. The description could be more complete by hinting at the return format.

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 parameters ('collId' and 'id') described as 'Collection ID' and 'Document ID' respectively. The description does not add any additional semantic information beyond the schema. Since coverage is high, the baseline score of 3 is applied.

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

Purpose4/5

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

The description 'Get the test set data for a document' clearly states the verb (Get) and resource (test set data) for a specific scope (document). However, it does not distinguish this tool from the sibling tool 'transkribus_recog_get_test_set', which might also retrieve test set data but for a recognition model. The purpose is clear but lacks 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 Guidelines2/5

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

No usage guidelines are provided. There is no mention of when to use this tool versus alternatives like 'transkribus_recog_get_test_set' or 'transkribus_doc_get_validation_data'. The description gives no context for selection.

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

transkribus_doc_get_train_dataGet Training DataC
Read-onlyIdempotent

Get the training data for a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
collIdYesCollection ID

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, destructiveHint=false, idempotentHint=true, so the description's burden is lower. However, it adds no behavioral context beyond the annotations, such as what 'training data' includes, return format, or any restrictions. 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.

Conciseness3/5

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

The description is a single short sentence, which is concise but too minimal—it fails to provide necessary context. It is front-loaded with the action, but the lack of completeness reduces effectiveness. Could be more informative without sacrificing conciseness.

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

Completeness2/5

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

Given no output schema, the description should clarify what the training data consists of (e.g., transcripts, page IDs, or model data) and how it relates to document tasks. It does not explain the return value or behavior, leaving ambiguity given the complexity of training data in Transkribus.

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

Parameters3/5

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

The input schema covers both required parameters with descriptions (100% coverage), so the description does not need to add parameter details. The description adds no extra meaning beyond what the schema provides, which is the baseline expectation.

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

Purpose4/5

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

The description clearly states it retrieves training data for a document, but it does not explicitly differentiate it from related siblings like transkribus_doc_get_validation_data or transkribus_doc_get_test_set. The verb 'Get' and resource 'training data' are specific, but the absence of distinction from alternatives keeps it from 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 provides no guidance on when to use this tool versus alternatives such as transkribus_doc_get_validation_data or transkribus_model_get_train_data. No prerequisites, use cases, or exclusions are mentioned.

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

transkribus_doc_get_transcript_idsGet Transcript IDsB
Read-onlyIdempotent

Get all transcript IDs for a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
indexNoStart index (0-based)
pagesNoPage range filter
collIdYesCollection ID
statusNoFilter by transcript status
nValuesNoNumber of results (-1 for all)
skipPagesWithMissingStatusNoSkip pages with missing status

TDQS

B3.2/5.0
Behavior2/5

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

The annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description adds no further behavioral context such as pagination, filter behavior, or output ordering.

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 is appropriately sized for this 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 100% schema coverage, annotations, and no output schema, the description is largely complete: it identifies the returned entity and the document scope. It could mention filtering or pagination nuances, but the schema handles those parameters.

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 documented in the schema itself. The description adds no parameter-level meaning beyond the schema, which matches the baseline of 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?

The description states a specific verb and resource: get all transcript IDs for a document. It is clear enough to distinguish from page-level transcript tools like transkribus_page_list_transcripts, though it does not explicitly name any sibling.

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 such as transkribus_page_list_transcripts or transkribus_doc_get_pages. The agent must infer usage from the name and description alone.

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

transkribus_doc_get_validation_dataGet Validation DataC
Read-onlyIdempotent

Get the validation data for a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
collIdYesCollection 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, destructiveHint=false, idempotentHint=true, and openWorldHint=true. The description adds no behavioral context beyond these annotations, such as whether the data is paginated, how it is formatted, or any rate limits. The description fails to add value beyond the structured fields.

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, short sentence (8 words) that efficiently communicates the basic action. It is concise and front-loaded, but the extreme brevity may sacrifice necessary detail. However, within the conciseness dimension, it is appropriately sized and not verbose.

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

Completeness2/5

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

Given the lack of an output schema and the presence of many sibling tools, the description is too minimal. It does not explain what 'validation data' specifically refers to in this context, nor does it hint at the return format or structure. For a tool with moderate complexity and no output schema, the description should provide more context to aid the agent in understanding the tool's output.

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% (both collId and id are described in the schema). The description does not add any semantic information about the parameters beyond what the schema provides. According to the rubric, when schema coverage is high, the baseline is 3 even without parameter info in the description.

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

Purpose4/5

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

The description clearly states the verb 'Get' and resource 'the validation data for a document'. However, it does not distinguish this from similar sibling tools like transkribus_doc_get_train_data or transkribus_model_get_validation_data. The purpose is clear but lacks specificity to differentiate among closely related tools.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives. It does not specify prerequisites, such as requiring the document to belong to a collection or that validation data is typically associated with model training. No when-to-use or when-not-to-use information is provided.

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

transkribus_doc_has_affiliationCheck Document AffiliationB
Read-onlyIdempotent

Check if a document has an affiliation.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
collIdYesCollection ID

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior, so the safety profile is clear. The description adds no extra behavioral detail beyond purpose, such as what an 'affiliation' is or whether the tool returns a boolean directly, but it is consistent with 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?

The description is one short, front-loaded sentence with no filler or redundant phrasing. Every word contributes to stating the core operation.

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 predicate with documented parameters and strong annotations, the description is minimally viable. However, there is no output schema and the description never explains what 'affiliation' means nor what a true/false result signifies, leaving a meaningful gap for an agent.

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

Parameters3/5

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

Schema description coverage is 100%, with both collId and id having clear names, integer types, and descriptions. The description does not add any parameter-level meaning, such as how collId and id jointly define the document/affiliation being checked.

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 action ('Check if...has an affiliation') and resource (a document). It is not tautological and conveys that this is a boolean predicate, though 'affiliation' remains somewhat domain-specific and no explicit differentiation from sibling metadata/list-collection tools is given.

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 predicate versus alternatives such as transkribus_doc_get_metadata or transkribus_doc_list_collections. The description implies a simple existence check but does not state when that check is preferred over other document query tools.

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

transkribus_doc_list_collectionsList Document CollectionsB
Read-onlyIdempotent

List all collections a document belongs to.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already communicate that this is a safe, idempotent, read-only operation, which cover the behavioral safety profile. The description adds the 'all collections' scope and the document-collection relationship, but does not explain the behavior around the required collId parameter or what output format to expect, so only a minor additional context is provided.

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

Conciseness5/5

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

The description is a single, clear sentence with zero wasted words. It front-loads the primary verb and resource, making it easy for an agent to quickly understand the core function.

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

Completeness2/5

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

The tool requires a collId parameter that is not explained in the description, and the presence of pagination parameters suggests possible paging behavior that is not mentioned. The existence of a paged sibling adds additional ambiguity about how this non-paged version behaves. For an agent to call this correctly, these gaps are significant.

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 each parameter has a description, meeting the baseline. The tool description adds no extra meaning about parameters; the relationship between collId and id remains unexplained, and the pagination/sorting parameters are not referenced in the narrative at all.

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

Purpose4/5

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

The description clearly states the action (list) and the resource (collections a document belongs to), which is a specific and useful purpose. However, it does not differentiate this tool from the sibling transkribus_doc_list_collections_paged, leaving ambiguity about which variant to choose.

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 paged sibling or other collection-listing tools. The description only states what it does, not the context or conditions under which it is the appropriate choice.

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

transkribus_doc_list_collections_pagedList Document Collections (Paged)A
Read-onlyIdempotent

List all collections a document belongs to with pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description adds the pagination behavior but does not disclose details such as default page size, maximum page size, or behavior when nValues is -1. It does not contradict 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 sentence that conveys the core action, the resource, and the pagination trait without redundancy. It is front-loaded and every word earns its place.

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

Completeness2/5

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

The description is thin for a 6-parameter tool with no output schema. Most notably, it requires collId even though the tool's stated purpose is listing all collections a document belongs to—it never explains why the collection ID is needed or how it scopes the result. It also says nothing about the response format or how pagination parameters interact.

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 every parameter is already documented in the schema. The description does not add parameter-level meaning beyond 'with pagination', which loosely references index and nValues. Baseline 3 is appropriate because the schema carries the semantic weight.

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—'List all collections a document belongs to'—and appends 'with pagination' to distinguish it from the unpaged sibling transkribus_doc_list_collections. This leaves no ambiguity about what the tool does.

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 phrase 'with pagination' implies this tool is for paginated access, but it provides no explicit when-to-use or when-not-to-use guidance. It does not mention the alternative non-paged tool transkribus_doc_list_collections or any conditions that would select one over the other.

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

transkribus_doc_list_pagesList Document PagesB
Read-onlyIdempotent

List pages in a document with pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds that the operation is paginated and scoped to a document, but it does not disclose output shape, default page size, or pagination/sorting behavior beyond what the schema already implies.

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

Conciseness5/5

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

The description is a single, direct sentence with no filler. The verb, resource, and key qualifier ('with pagination') are front-loaded, and every word earns 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 read-only listing tool with strong annotations and full schema coverage, the description is minimally adequate. However, there is no output schema to explain what a page listing returns, and the description does not clarify pagination defaults or how this tool differs from sibling doc_get_pages.

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. The description only mentions pagination generically, which maps to index/nValues but adds no extra semantic value beyond the parameter descriptions.

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 ('List'), a resource ('pages in a document'), and a distinguishing feature ('with pagination'). However, it does not differentiate this tool from sibling tools like transkribus_doc_get_pages or transkribus_doc_get_page_ids, 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 guidance on when to use this tool versus alternatives. Given the large sibling list containing similarly named page-listing tools, the lack of any 'prefer this when...' or 'use X instead for Y' instruction is a notable gap.

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

transkribus_doc_move_pages_by_image_namesMove Pages by Image NamesB

Move pages within a document based on image names.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
bodyYesImage name mapping data
collIdYesCollection ID

TDQS

B3.1/5.0
Behavior2/5

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

Annotations indicate readOnlyHint=false (modifies data) and destructiveHint=false (non-destructive). The description only states the action but adds no additional behavioral context such as whether the operation is reversible, what happens on error, or how the mapping is applied. The description adds minimal value 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.

Conciseness4/5

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

The description is a single, clear sentence with no unnecessary words. However, it lacks structure (e.g., bullet points or examples) that could improve readability. It is efficient but minimal.

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

Completeness2/5

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

Given the tool has three parameters (one a complex object), no output schema, and no annotations indicating side effects, the description is incomplete. It does not explain the format of the body object, expected behavior when image names are missing, or any return value. An agent would need additional documentation to use this tool 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 100% (all three parameters have descriptions). The description does not add meaning beyond the schema; 'body' is described as 'Image name mapping data' which is still vague. Baseline 3 applies because the schema already provides descriptions.

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

Purpose5/5

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

The description clearly states the action (move), resource (pages within a document), and method (based on image names). It distinguishes this tool from siblings like transkribus_page_move, which moves individual pages by ID. The verb+resource+scope is specific and 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 description provides no guidance on when to use this tool versus alternatives such as transkribus_page_move or transkribus_doc_get_image_names. It does not mention prerequisites, context, or scenarios where this tool is preferred. No exclusions or when-not-to-use are stated.

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

transkribus_doc_post_editorial_declarationPost Editorial DeclarationB
Idempotent

Create or update the editorial declaration for a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
bodyNoEditorial declaration data
collIdYesCollection ID

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 (writes), idempotentHint=true (safe to retry), and destructiveHint=false (no destructive changes). The description's 'Create or update' aligns with these hints and adds the upsert semantics, which is marginally useful. However, it does not disclose any additional behavioral traits like authentication requirements, overwrite behavior beyond 'update', or response format, and it does not explain the open world hint. With annotations covering the basic safety profile, the description adds limited value, so 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?

The description is a single concise sentence, front-loaded with the action 'Create or update' and the resource. It is appropriately short for a simple command, with no wasted words. However, it is almost too sparse, offering no structuring of the body or links to related concepts, which would aid comprehension. As conciseness, it scores well.

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?

The tool has no output schema, so return value behavior is unaddressed. The body parameter is an opaque object with no schema structure, and the description gives no hint about what an editorial declaration should contain. Prerequisites like document existence, permission levels, or the effect of overwriting are not mentioned. For an agent to correctly invoke this tool, it would likely need to infer the body structure from other tools or external knowledge. This is a significant gap, so a 2 is appropriate.

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 each parameter is already documented: id (Document ID), collId (Collection ID), body (Editorial declaration data). The description adds no further meaning beyond these labels. Most critically, the 'body' parameter is an open object with 'additionalProperties' and no structure, and the description does not clarify what an editorial declaration contains or which fields are required. Since coverage is complete but the schema itself is sparse for 'body', the description offers little extra — a baseline 3 is fair.

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 pair: 'Create or update the editorial declaration for a document.' It distinguishes the target resource (editorial declaration) and scope (document). It does not explicitly differentiate from sibling editdecl tools, but the name and 'for a document' make it clear this is about the document's declaration, not the declaration's features/options. A 4 is warranted because it's specific but lacks an explicit sibling contrast.

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 like transkribus_doc_get_editorial_declaration or transkribus_editdecl_* tools. No mention of prerequisites, whether the document must exist, or whether this replaces an existing declaration. The description provides no usage context, leaving the agent to infer when this is appropriate.

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

transkribus_doc_remove_from_collectionRemove Document from CollectionA
DestructiveIdempotent

Remove a document from a collection without deleting it.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
collIdYesCollection ID

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already provide destructiveHint=true and idempotentHint=true. The description adds context that the operation removes without deleting, clarifying the scope of destructiveness. This is helpful beyond what annotations convey.

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?

Single sentence, no filler. The description is maximally concise while conveying the essential purpose.

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 operation, the description adequately states the core action. However, it omits any mention of return values, permissions, or side effects (e.g., document remains in other collections). Given no output schema, some minimal guidance would be beneficial.

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?

Input schema has 100% coverage for both parameters (collId and id). The description does not add extra meaning beyond the schema. Baseline of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the action: 'Remove a document from a collection without deleting it.' It specifies the verb 'Remove' and the resources 'document' and 'collection,' and distinguishes from deletion. It differentiates from siblings like transkribus_doc_delete by explicitly stating the document is not deleted.

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

Usage Guidelines2/5

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

No guidance on when to use this tool over alternatives like transkribus_coll_remove_doc or transkribus_doc_delete. No mention of prerequisites, when to choose this over other removal operations, or when not to use it.

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

transkribus_doc_update_metadataUpdate Document MetadataC
Idempotent

Update metadata for a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
titleNoDocument title
authorNoDocument author
collIdYesCollection ID
descriptionNoDocument description

TDQS

C2.4/5.0
Behavior2/5

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

Annotations already indicate that the tool is idempotent and non-destructive. The description adds no further behavioral context, such as whether only provided fields are updated (patch behavior) or other side effects. With rich annotations, additional transparency is expected.

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 description is extremely short (one sentence) but lacks important details for a 5-parameter tool. It is under-specified rather than efficiently concise, missing opportunities to summarize 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?

Given the tool's complexity (5 parameters, no output schema, but annotations present), the description fails to explain partial update behavior, return values, or the scope of metadata changes. It is incomplete for effective use.

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

Parameters3/5

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

Schema coverage is 100% with individual parameter descriptions. The tool description does not add any additional meaning beyond what the schema already provides, which is adequate but not enhanced.

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?

Description states 'Update metadata for a document,' which clearly indicates the action and resource. However, it does not distinguish from the sibling tool 'transkribus_doc_update_metadata_v2,' nor does it specify which metadata fields are affected, leaving some ambiguity.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives like 'transkribus_doc_update_metadata_v2' or 'transkribus_coll_update_metadata.' There is no mention of prerequisites, context, or exclusion criteria.

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

transkribus_doc_update_metadata_v2Update Document Metadata v2C
Idempotent

Update document metadata using the v2 endpoint.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
bodyYesDocument metadata v2 data
collIdYesCollection ID

TDQS

C2.8/5.0
Behavior2/5

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

Annotations carry the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=true) and the description adds no behavioral context beyond them. Critically, it does not disclose whether the free-form body performs a partial merge or full replacement of existing metadata, which is essential behavioral information for a mutation 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.

Conciseness3/5

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

The description is one compact sentence with zero filler and the verb is front-loaded. But the brevity is spent restating the tool name—'Update document metadata using the v2 endpoint' adds almost nothing beyond the title 'Update Document Metadata v2'. This is under-specification, not earned 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 tool with a free-form nested body object, no output schema, and an ambiguous version distinction from a sibling, the description is incomplete. Missing information includes acceptable metadata fields, update semantics (merge vs replace), prerequisites (document ownership/permissions), and what distinguishes v2 from v1. An agent cannot reliably construct a correct request from this definition 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 description coverage is 100%, so the baseline is 3—each parameter has a basic description ('Document ID', 'Collection ID', 'Document metadata v2 data'). However, the body parameter is an opaque free-form object (additionalProperties: {}), and neither the schema nor the description enumerates valid keys, expected structure, or data types, leaving the most important parameter genuinely underspecified.

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 ('Update') and resource ('document metadata'), and the phrase 'v2 endpoint' distinguishes it from the sibling transkribus_doc_update_metadata. However, it never explains what v2 means functionally—what fields, formats, or behaviors differ from v1—so the differentiation is nominal rather than substantive.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus its close siblings: transkribus_doc_update_metadata (v1), transkribus_coll_update_metadata, transkribus_upload_update_metadata, or transkribus_upload_bulk_update_doc_metadata. The agent is left to guess which endpoint is appropriate for a given task, with zero context or exclusions.

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

transkribus_doc_update_transcriptUpdate Document TranscriptB
Idempotent

Update a transcript for a specific page in a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
collIdYesCollection ID
statusNoTranscript status
fileNameNoFile name for transcript sync

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already indicate non-read-only, non-destructive, and idempotent behavior. The description confirms 'update' but adds no additional context beyond that. It does not explain what happens if the transcript doesn't exist, concurrency effects, or the extent of the update (full replace vs. partial).

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, clear and direct. No redundancy. Front-loaded with the action. Could be slightly more descriptive, but overall concise and to the point.

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

Completeness2/5

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

Missing critical context: no output schema, no details on return value or error behavior. Does not explain if the update replaces the entire transcript or applies to specific fields. With 5 parameters and complexity of transcript updates, the description is insufficient for full understanding.

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 parameters. The description does not provide any additional meaning or usage tips for parameters like 'status' or 'fileName'. Baseline 3 is appropriate since schema does the heavy lifting.

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

Purpose4/5

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

The description clearly states it updates a transcript for a specific page in a document. It distinguishes from sibling tools like transkribus_page_post_transcript (which likely creates a new transcript) and transkribus_page_update_transcript_status (which only updates status). The scope is specific and the verb 'update' is appropriate.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like transkribus_page_post_transcript or transkribus_page_update_transcript_status. It does not mention prerequisites (e.g., existing transcript or page) or contextual conditions (e.g., page locking).

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

transkribus_du_recognizeRun DU RecognitionC

Run Document Understanding recognition on a document using a specific model.

ParametersJSON Schema
NameRequiredDescriptionDefault
docIdYesDocument ID
pagesNoPage range (e.g. "1-5")
collIdYesCollection ID
modelIdYesModel/HTR ID

TDQS

C2.9/5.0
Behavior2/5

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

Annotations indicate readOnlyHint=false and destructiveHint=false, implying a non-destructive write operation. The description merely says 'Run recognition', adding no detail about side effects, job creation, or output behavior. It does not exceed what annotations already convey.

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 sentence with no verbosity. However, it is overly terse and could include more detail without becoming wasteful. Still, it is efficient.

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

Completeness2/5

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

Given the complexity of the tool (recognition, many sibling tools, no output schema), the description is insufficient. It does not explain what DU recognition entails, what happens after running, or how the result is accessed. This gap makes it hard for an AI to use 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% with descriptions for all four parameters. The description adds no additional parameter context beyond the schema, so it meets the baseline but does not enrich understanding.

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

Purpose4/5

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

The description clearly states the action ('Run Document Understanding recognition') and objects (document, model). It identifies the specific type of recognition (DU), but does not distinguish it from sibling recognition tools like transkribus_pylaia_recognize or transkribus_recog_run_htr_citlab, which could confuse an AI agent.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. Given many sibling recognition tools (e.g., pylaia_recognize, recog_run_htr_citlab), the description lacks context to help an agent choose correctly.

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

transkribus_editdecl_delete_featureDelete Edit Declaration FeatureB
DestructiveIdempotent

Delete an editorial declaration feature from a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoFeature ID (alternative)
collIdYesCollection ID
featIdYesFeature ID to delete

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already indicate destructiveHint=true, so the description adds no additional behavioral context. It does not explain side effects, permissions required, or what happens upon deletion (e.g., permanent removal, cascade effects). 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?

The description is a single concise sentence with no wasted words. However, it could be slightly expanded to include context without becoming verbose. Front-loaded with the key action.

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

Completeness2/5

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

For a deletion tool with no output schema and rich sibling tools, the description lacks completeness. It does not mention that the feature must exist, the relationship to editorial declarations, or any preconditions. Minimal contextual information.

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 descriptions for all three parameters (collId, featId, id). The tool description adds no extra meaning beyond what the schema provides. Baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the action ('Delete'), the resource ('editorial declaration feature'), and the scope ('from a collection'). It distinguishes from siblings like 'transkribus_editdecl_list_features' and 'transkribus_editdecl_post_feature' by specifying deletion.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives (e.g., 'transkribus_editdecl_delete_option' for deleting options, or 'transkribus_doc_get_editorial_declaration' for viewing). The description lacks context on prerequisites or consequences.

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

transkribus_editdecl_delete_optionDelete Edit Declaration OptionA
DestructiveIdempotent

Delete an option from an editorial declaration feature.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoOption ID (alternative)
collIdYesCollection ID
optionIdYesOption ID to delete

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already provide destructiveHint=true, idempotentHint=true, and readOnlyHint=false. The description states 'delete,' which aligns with destructiveness but adds no extra behavioral context (e.g., what happens if option is in use, or if deletion is permanent). With annotations present, the description adds minimal additional value.

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

Conciseness5/5

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

The description is a single, efficient sentence with no wasted words. It is front-loaded with the key action and resource.

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 description is very brief for a delete operation with no output schema. It lacks context about the editorial declaration system, relationships between options and features, or error conditions. However, annotations and schema cover basic requirements, making it adequate but not 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%, so all three parameters are described in the schema. The description does not add meaning beyond the schema, such as clarifying the difference between optionId and id or providing usage context. Baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states the verb 'delete,' the resource 'option,' and the context 'editorial declaration feature.' It distinguishes itself from sibling tools like transkribus_editdecl_delete_feature and transkribus_editdecl_post_option, providing specificity.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, lacks prerequisites, and does not mention when not to use it. Among sibling tools, there is no explicit comparison or context for selection.

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

transkribus_editdecl_list_featuresList Edit Declaration FeaturesB
Read-onlyIdempotent

List all editorial declaration features for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already provide readOnlyHint=true, destructiveHint=false, idempotentHint=true, openWorldHint=true. The description adds no additional behavioral context beyond stating it lists features.

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, no wasted words. Brief but not overly terse. Could be slightly more informative while staying concise.

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 full schema coverage and annotations, the description is minimally adequate. It does not explain return format or provide example, but the tool is straightforward.

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 (collId) with schema description 'Collection ID'. Schema coverage is 100%, so baseline is 3. The description adds no extra meaning about the parameter.

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?

Description clearly states verb 'List', resource 'editorial declaration features', and scope 'for a collection'. It distinguishes from sibling mutation tools like transkribus_editdecl_delete_feature and transkribus_editdecl_post_feature.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives. The description does not mention when to use this or when to avoid it, nor does it reference sibling tools.

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

transkribus_editdecl_post_featureCreate Edit Declaration FeatureB

Store a new editorial declaration feature in a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesFeature title
collIdYesCollection ID
descriptionNoFeature description

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already indicate non-read-only, non-destructive, non-idempotent, and open world. The description's verb 'Store' adds minimal context. No additional behavioral traits (e.g., side effects, authorization needs) are disclosed 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?

The description is a single 9-word sentence with no extraneous information. It is front-loaded with the verb and resource, achieving maximum conciseness.

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

Completeness2/5

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

Given no output schema, the description should explain return values or outcomes. It does not. It also misses context about prerequisites (e.g., collection must exist), relationship to editorial declarations, or distinction from features vs options. Incomplete for a create tool with 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%, so the schema already explains all parameters. The tool description adds no further meaning or constraints (e.g., uniqueness of title, relationship to collection). Baseline score of 3 applies as schema does the heavy lifting.

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

Purpose4/5

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

The description clearly states the verb 'Store' and the resource 'editorial declaration feature' in a collection. However, it does not differentiate from sibling tools like transkribus_editdecl_post_option or transkribus_doc_post_editorial_declaration, so an agent may not know when to use this specific tool.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. No 'when', 'when not', or mention of alternative tools. The agent is left without context for selecting this tool over siblings like transkribus_editdecl_post_option.

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

transkribus_editdecl_post_optionCreate Edit Declaration OptionC

Store a new option for an editorial declaration feature.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
featIdYesFeature ID to add the option to
optionYesOption value

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already indicate write operation (readOnlyHint=false) and non-destructive (destructiveHint=false). Description adds no behavioral context beyond 'Store', such as what happens if the option already exists, authorization needs, or side effects. With annotations present, the description could still add value but does not.

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 sentence, front-loaded with the key action and resource. It wastes no words. However, it is borderline too terse; a bit more context could improve usability without sacrificing conciseness.

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

Completeness2/5

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

Given the tool's domain (editorial declarations) and no output schema, the description is too minimal. It does not explain the relationship between options and features, the expected return value, or how the option value should be formatted. An AI agent would lack sufficient context to use this tool effectively.

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

Parameters3/5

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

Schema description coverage is 100%, with clear descriptions for all three parameters. The description does not add any additional meaning beyond the schema. Baseline is 3 because schema already covers parameter semantics adequately.

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

Purpose4/5

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

The title and description clearly indicate the tool creates/stores a new option for an editorial declaration feature. The verb 'Store' and resource 'new option' are specific. However, 'editorial declaration feature' is somewhat vague, but it distinguishes from sibling tools like transkribus_editdecl_post_feature which handle features rather than options.

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

Usage Guidelines1/5

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

The description provides no guidance on when to use this tool versus alternatives such as transkribus_editdecl_post_feature or transkribus_editdecl_delete_option. No mention of prerequisites, context, or conditions. Without this, an AI agent may struggle to choose correctly.

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

transkribus_elearning_countCount E-Learning CoursesA
Read-onlyIdempotent

Get the total count of e-learning courses.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true. Description adds no further behavioral context, but is adequate given the safety profile and no parameters.

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

Conciseness5/5

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

Single concise sentence that front-loads the action and resource. No unnecessary 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 count operation with no parameters and strong annotations, the description is complete. No output schema is documented, but a simple count typically returns a number, which is implied.

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?

No parameters exist; schema coverage is 100%. Description adds no parameter info, but baseline is high due to no parameters.

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?

Clear verb 'Get' and resource 'total count of e-learning courses'. Distinct from sibling tools like transkribus_elearning_list which returns list details, and subscribe/unsubscribe.

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?

No explicit guidance on when to use versus alternatives. Usage is implied: use when only the count is needed instead of the full list from transkribus_elearning_list.

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

transkribus_elearning_listList E-Learning CoursesB
Read-onlyIdempotent

List available e-learning courses.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already indicate read-only, idempotent, non-destructive behavior. Description adds no additional behavioral context beyond stating it lists courses.

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, no wasted words. However, it could be slightly more informative without losing 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?

Tool is simple with optional parameters and good annotations. However, no output schema exists, so description should hint at what the list returns (e.g., course IDs/names). It 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?

All 4 parameters are fully described in schema (100% coverage). Description adds no parameter-level semantics beyond what schema already 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?

The description clearly states it lists e-learning courses, distinguishing it from sibling tools like count, subscribe, and unsubscribe.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like transkribus_elearning_count. No when-not-to-use or contextual hints.

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

transkribus_elearning_subscribeSubscribe to E-LearningB

Subscribe to an e-learning course for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID

TDQS

B3.3/5.0
Behavior2/5

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

The description adds no behavioral context beyond the annotations. Annotations indicate readOnlyHint=false and destructiveHint=false, but the description does not clarify side effects, authentication requirements, or any other behavioral traits. More details could help the agent understand the tool's impact.

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

Conciseness5/5

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

The description is a single, clear sentence with no extraneous information. Every word is necessary, making it highly concise and 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?

Given the tool's simplicity (one parameter, no output schema, no nested objects), the description is minimally adequate. However, it omits details like the fact that it applies to the authenticated user and does not describe the response or any side effects. Sibling tools exist that could benefit from more comparative context.

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

Parameters3/5

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

The input schema already describes 'collId' as 'Collection ID' (100% coverage). The description mentions 'for a collection' but does not add further meaning or clarify the parameter's role beyond what the schema provides. Baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the action ('Subscribe') and the resource ('e-learning course for a collection'). It effectively distinguishes from sibling tools like 'transkribus_elearning_list' and 'transkribus_elearning_unsubscribe', making the tool's purpose unambiguous.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives (e.g., list, unsubscribe). It lacks information about prerequisites, the context in which subscription is appropriate, or any conditions that might affect usage.

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

transkribus_elearning_unsubscribeUnsubscribe from E-LearningA
DestructiveIdempotent

Unsubscribe from an e-learning course for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and idempotentHint=true. The description adds no further behavioral context, such as what exactly happens upon unsubscription or any side effects. It is not contradictory, but the minimal description does not enhance transparency.

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

Conciseness5/5

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

A single sentence that precisely conveys the tool's function with no unnecessary words or repetition. It is appropriately 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?

Given the tool's simplicity (one parameter, no output schema), the description is minimally adequate but lacks details like required permissions or reversibility. The annotations partially compensate, but the description could provide more context.

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

Parameters3/5

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

The input schema provides full coverage (100%) with a clear description for the sole parameter 'collId'. The tool description adds no additional semantic information beyond what the schema already offers.

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

Purpose5/5

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

The description clearly states the action (unsubscribe) and resource (e-learning course for a collection). It effectively distinguishes the tool from sibling tools like transkribus_elearning_subscribe and transkribus_elearning_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?

No guidance on when to use this tool versus alternatives. The description does not mention prerequisites (e.g., being subscribed first) or contrast with related tools.

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

transkribus_file_checkCheck FileB
Read-onlyIdempotent

Check the status or existence of a file at a given path.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoFile path to check
fileNameNoFile name to check

TDQS

B3.3/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, openWorldHint=true, so the description carries a low burden. However, it adds no behavioral details beyond 'status or existence', leaving ambiguity about what 'status' entails or the return format.

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

Conciseness5/5

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

The description is a single sentence that directly conveys the tool's purpose without any extraneous words. It is front-loaded and efficient.

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 description is minimal for a simple read-only check, but it does not specify the return value or behavior when the file is missing. Given the lack of an output schema, some additional detail would be beneficial.

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%, meaning the schema already describes both parameters (path and fileName) with clear descriptions. The tool description adds no additional meaning beyond restating that a file path is involved, so a baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the tool checks the status or existence of a file at a given path, using a specific verb (check) and resource (file). It distinguishes itself from sibling tools like transkribus_file_list_files, which list files rather than check a single file.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool instead of alternatives like transkribus_file_list_files or transkribus_file_list_dirs. The description lacks context for appropriate use or exclusion criteria.

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

transkribus_file_list_dirsList DirectoriesA
Read-onlyIdempotent

List directories at a given path on the server.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoDirectory path to list subdirectories from

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. Description adds no behavioral context beyond 'list directories at a given path.' No details on behavior for invalid paths, recursion, or result format.

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, no fluff, front-loaded with action and resource. Could be expanded with more context but is appropriately concise for a simple tool.

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

Completeness3/5

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

Tool is simple with one parameter and no output schema. Description is adequate but lacks details on return format, scope (immediate or recursive), or behavior for invalid paths. Annotations cover safety.

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 schema already describes parameter 'path' as 'Directory path to list subdirectories from.' Description only restates 'at a given path,' adding no new meaning.

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?

Description clearly states the tool lists directories at a given path. The verb 'list' and resource 'directories' are specific, and it distinguishes from sibling transkribus_file_list_files which lists files.

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?

Implied usage: provide a path to list directories. However, no explicit when-to-use, when-not-to-use, or alternatives among siblings. Context from sibling names helps but is not provided in description.

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

transkribus_file_list_filesList FilesA
Read-onlyIdempotent

List files at a given path on the server.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoDirectory path to list files from

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare safe read-only, non-destructive, idempotent behavior; description adds no new behavioral context beyond listing files.

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?

Single sentence, front-loaded, no unnecessary words.

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?

Adequate for a simple list operation but lacks details on default path behavior and return format; 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 describes the 'path' parameter with 100% coverage; description merely references 'given path' without adding new meaning.

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

Purpose5/5

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

The description clearly states the verb 'List' and the resource 'files at a given path', distinguishing it from similar tools like 'transkribus_file_list_dirs'.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives; no mention of optional path or default behavior.

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

transkribus_job_countCount JobsB
Read-onlyIdempotent

Get the total number of jobs, optionally filtered by status or type.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoFilter by job ID
typeNoFilter by job type
collIdNoFilter by collection ID
statusNoFilter by job status
useridNoFilter by user ID
jobImplNoFilter by job implementation class
filterByUserNoFilter jobs by current user

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, destructiveHint=false, idempotentHint=true, openWorldHint=true. The description aligns with these (read-only count operation) but adds no additional behavioral context such as authorization needs or rate limits. With annotations carrying the burden, a score of 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.

Conciseness3/5

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

The description is a single sentence, which is concise, but it omits important filter options (userid, collId, etc.), making it slightly misleading. It earns its place but could be improved by including all filter types.

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

Completeness3/5

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

Given the tool's complexity (7 parameters, no output schema, but good annotations), the description is incomplete because it only mentions two filters. It does not describe the return format. A more complete description would list all filtering options and clarify the output.

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?

Input schema has 7 parameters with 100% description coverage. The description names only two parameters (status, type) and does not add further meaning beyond the schema descriptions. Baseline of 3 applies per guidelines due to high schema coverage.

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

Purpose4/5

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

The description clearly states the verb 'Get' and the resource 'total number of jobs'. It mentions optional filtering by status or type, but omits other available filters (e.g., userid, collId), which slightly reduces clarity. It does not differentiate from sibling tools like transkribus_job_list or transkribus_job_get.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool vs. alternatives. For instance, there is no mention that for detailed job info one should use transkribus_job_get or for a list use transkribus_job_list.

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

transkribus_job_createCreate JobC

Create a new processing job.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYesJob type
docIdNoDocument ID to process
collIdNoCollection ID to process

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already indicate non-read-only behavior. The description confirms mutation but adds no new behavioral context (e.g., side effects, required permissions, or response format). With annotations present, the description's contribution is minimal.

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

Conciseness3/5

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

The description is short (5 words) but overly vague. While front-loaded, it sacrifices necessary detail for brevity, making it less useful than a slightly longer but more informative description.

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

Completeness2/5

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

Given the tool has required parameters and no output schema, the description should at least hint at required inputs, return behavior, or linkage to other job tools. It lacks this context, leaving the agent underinformed.

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 baseline is 3. The description does not add any parameter-specific meaning beyond the schema, such as explaining what 'type' values are expected or how docId/collId relate to job creation.

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

Purpose4/5

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

The description clearly states the verb and resource ('Create a new processing job'), but does not distinguish from sibling tools like transkribus_job_update or transkribus_job_kill, missing an opportunity for differentiation.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives (e.g., transkribus_job_update for modifying jobs, transkribus_job_list for listing). No context on prerequisites or appropriate scenarios.

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

transkribus_job_getGet JobC
Read-onlyIdempotent

Get details of a specific job by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource 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, destructiveHint=false, idempotentHint=true, and openWorldHint=true. The description adds no behavioral context beyond 'get details', such as what fields are returned, error conditions, or rate limits. For a tool with rich annotations, more context would be beneficial.

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 concise sentence that communicates the essential purpose without extraneous words. No wasted text.

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

Completeness2/5

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

Given the lack of an output schema, the description should elaborate on what 'details' includes (e.g., status, progress, creation time). The tool is relatively simple, but the description leaves ambiguity about the return structure, which is important for an agent to decide if this tool meets its needs.

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 for parameters is 100%, and the description does not add additional meaning to the 'id' parameter beyond what the schema already provides. Baseline of 3 is appropriate since the schema handles the 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?

The description clearly states that the tool retrieves details for a specific job using its ID. It differentiates from sibling tools like 'transkribus_job_list' and 'transkribus_job_count' by specifying it is for a single job, but does not explicitly contrast with other get-type tools like 'transkribus_job_get_errors'.

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 indicates basic usage: get details by ID. However, it provides no guidance on when to use this tool versus alternatives (e.g., job_list for summaries, job_get_errors for error details) or any prerequisites or limitations.

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

transkribus_job_get_credit_transactionsGet Job Credit TransactionsC
Read-onlyIdempotent

Get credit transactions associated with a specific job.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
jobIdYesResource ID
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered by structured data. The description adds nothing beyond restating the name — no note on pagination, auth requirements, or whether the job must belong to the caller.

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 waste and the resource/scope front-loaded. It is efficient, though its brevity is also the source of the missing guidance.

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?

No output schema exists, so the description should carry some burden for explaining what a transaction record contains or how results are paged. Instead it says nothing about the return payload, and with many sibling credit tools the selection context 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 all five parameters (jobId, index, nValues, sortColumn, sortDirection) are already documented in the schema. The description adds no extra meaning about parameter format or defaults, 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 ('Get') and resource ('credit transactions') scoped to a specific job, which is clearer than a bare name. However, it does not distinguish itself from credit-related siblings such as transkribus_credit_get_transactions or transkribus_credit_get_package_transactions, leaving the job-scoped vs account-scoped 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?

No indication of when to use this tool versus the other credit transaction tools, nor any prerequisites or exclusions. The agent must guess that the 'job' framing is the differentiator.

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

transkribus_job_get_errorsGet Job ErrorsB
Read-onlyIdempotent

Get error details for a specific job.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

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, destructiveHint=false, idempotentHint=true, openWorldHint=true, which cover safety and idempotence. The description adds no behavioral context beyond 'Get error details', such as whether the output is paginated or sorted. With annotations providing the core transparency, a score of 3 is appropriate as the description does not add value but does not contradict either.

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 sentence that front-loads the verb and resource. It is concise and to the point, but could potentially add a bit more detail without sacrificing brevity (e.g., mentioning pagination). Still, it is efficient and not verbose.

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 ideally indicate what the tool returns (e.g., a list of error objects, error count, etc.). It does not. It also omits any mention of pagination behavior despite having pagination parameters. The annotations provide safety info but do not cover return semantics. For a tool with 5 parameters and no output schema, the description is insufficiently 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?

The input schema has 100% coverage with descriptions for all 5 parameters, including an 'id' required field and optional pagination controls. The description does not add any additional meaning or context to these parameters (e.g., how sorting applies to errors). Baseline 3 is correct given full schema coverage.

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

Purpose4/5

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

The description clearly states the verb 'Get' and the resource 'error details for a specific job'. The name is explicit and the description matches. However, it does not differentiate from sibling tools like transkribus_job_get which might also return job info including errors, but the specificity is adequate.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. For example, it does not mention that it should be used after a job has failed or to inspect errors, nor does it exclude any scenarios. The agent is left to infer usage from the name alone.

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

transkribus_job_killKill JobA
DestructiveIdempotent

Kill a running job by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and idempotentHint=true. The description adds no additional behavioral context such as side effects, return values, or what happens if the job is already stopped. It does not contradict 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?

The description is one short sentence with no extraneous information. Perfectly concise.

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

Completeness4/5

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

Given the tool's simplicity, the description covers the core action. However, for a destructive action, information about the return value or confirmation of success would be helpful. Lacking that, it is mostly 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?

The single parameter 'id' is described in the schema as 'Resource ID'. The description's 'by ID' adds no new meaning. With 100% schema coverage, baseline is 3.

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 'Kill a running job by ID.' clearly specifies the verb (kill), resource (job), and the condition (running) and parameter (ID). It distinguishes well from sibling tools like transkribus_job_create or transkribus_job_get.

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 implies use for running jobs, but does not explicitly state when to avoid using it or alternatives. However, the context of sibling tools makes the usage context clear enough.

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

transkribus_job_listList JobsB
Read-onlyIdempotent

List jobs with pagination, optionally filtered by status or type.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoFilter by job ID
typeNoFilter by job type
indexNoStart index (0-based)
collIdNoFilter by collection ID
statusNoFilter by job status
useridNoFilter by user ID
jobImplNoFilter by job implementation class
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
filterByUserNoFilter jobs by current user
sortDirectionNoSort direction: asc or desc

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, destructiveHint=false, idempotentHint=true, and the description aligns by stating listing behavior. However, it adds no additional behavioral context 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?

A single sentence that is front-loaded with the action (List jobs) and concisely conveys all key functionality without extraneous text.

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?

The description does not explain the output format or content, which is important given no output schema. It also fails to mention other relevant filters like sortColumn or userid.

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 baseline is 3. The description mentions pagination (index/nValues) and filters (status, type), providing minimal extra meaning beyond the schema.

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

Purpose5/5

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

The description clearly states the tool lists jobs with pagination and optional filtering by status or type, distinguishing it from siblings like transkribus_job_get (specific job) and transkribus_job_count.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives; the description implies its purpose but does not provide exclusions or direct users to other tools for specific needs.

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

transkribus_job_restart_all_by_userRestart All Jobs by UserB
Idempotent

Restart all jobs for a specific user.

ParametersJSON Schema
NameRequiredDescriptionDefault
useridYesUser ID whose jobs to restart

TDQS

B3.1/5.0
Behavior2/5

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

Annotations indicate readOnlyHint=false, destructiveHint=false, idempotentHint=true, openWorldHint=true. The description adds no behavioral context beyond 'restart', such as side effects, permission requirements, or what 'restart' entails (e.g., aborting and re-running jobs).

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 sentence with no fluff. It is appropriately concise for a tool with one parameter, though it could include slightly more context without losing conciseness.

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

Completeness2/5

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

Given the tool action (restarting all jobs) and lack of output schema, the description is too minimal. It does not explain what 'restart' does precisely, required permissions, or potential consequences, leaving the agent under-informed.

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 a single parameter 'userid' described as 'User ID whose jobs to restart'. The description ('for a specific user') adds no additional meaning beyond the schema, so baseline score of 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?

The description clearly states the action ('restart') and the target ('all jobs for a specific user'). The name includes 'restart_all_by_user', which differentiates it from siblings like 'job_kill' or 'job_undo' that perform different operations on jobs.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives (e.g., 'job_kill' or 'job_undo'). It does not mention prerequisites, scenarios, or when not to use it.

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

transkribus_job_undoUndo JobB
DestructiveIdempotent

Undo the results of a completed job.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobIdYesResource ID

TDQS

B3.2/5.0
Behavior3/5

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

Description adds the constraint 'completed job' beyond annotations (destructiveHint, idempotentHint). But doesn't disclose what exactly gets destroyed (e.g., transcripts, model updates) or authorization needs. 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.

Conciseness5/5

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

Single sentence, no wasted words, front-loaded with action. Excellent 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?

Minimal completeness: lacks details on scope of undo, reversibility, prerequisites, or consequences. For a destructive tool, more context is needed.

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

Parameters3/5

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

Schema description coverage is 100% with 'Resource ID' for jobId. Description doesn't add meaning beyond that. Baseline 3 for full 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?

Description clearly states verb 'Undo' and resource 'results of a completed job', distinguishing it from job_kill (running jobs) and job_restart. However, 'undo' is vague; does it revert to pre-job state or just remove outputs? Title 'Undo Job' slightly misaligns with 'undo results'.

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

Usage Guidelines2/5

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

No explicit guidance on when to use vs alternatives. Implies only for completed jobs but doesn't state exclusions (e.g., running jobs). Sibling tools like job_kill and job_restart_all_by_user are not mentioned.

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

transkribus_job_updateUpdate JobB
Idempotent

Update properties of an existing job.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
statusNoNew job status
descriptionNoUpdated job description

TDQS

B3.3/5.0
Behavior3/5

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

Annotations indicate idempotent, non-destructive, non-read-only behavior. The description 'update properties' is consistent but adds no additional behavioral context. No contradictions.

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 sentence that is front-loaded and contains no unnecessary words.

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 update with three parameters and no output schema, the description is minimal but adequate. However, it lacks details on allowed status values and behavior of updates (e.g., overwrite or append).

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 descriptions for each parameter. The tool description does not add further semantic detail; baseline score is appropriate.

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

Purpose4/5

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

The description clearly states the tool updates properties of an existing job. It distinguishes from sibling tools like job_create, job_get, job_list, job_kill, job_undo by using the verb 'update', but does not specify which properties beyond what is in 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?

No guidance is provided on when to use this tool versus alternatives like job_create or job_undo. The description lacks context for proper tool selection.

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

transkribus_job_waitWait for JobA
Read-onlyIdempotent

Poll a job until it reaches FINISHED, FAILED or CANCELED, or until the wait budget runs out. Defaults: poll every 5s, wait up to 30s; a timed-out result is not an error — call again to keep waiting.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
maxWaitSecondsNoWall-clock budget in seconds (default 30). Above ~50 needs an MCP client configured with a longer request timeout.
pollIntervalSecondsNoSeconds between polls (default 5)

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already cover safety (readOnly, idempotent, non-destructive), but the description adds genuinely useful behavior: default poll cadence, default budget, and the important fact that a timed-out result is not an error and should be retried. It does not describe what a resolved job result contains.

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 purpose and termination conditions, followed by defaults and retry semantics. No redundant or filler text.

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 polling tool the description covers call cadence, budgeting, and the timed-out-not-error contract well. Since there is no output schema, it could ideally describe the shape of a completed job result, which is the only notable 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 both maxWaitSeconds (including the client-timeout caveat) and pollIntervalSeconds are already documented in the schema. The description merely restates the defaults, adding no semantics beyond what structured data provides — the baseline 3.

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?

Specific verb (poll/wait) plus resource (job) and the exact terminal conditions (FINISHED, FAILED, CANCELED). The polling-until-terminal framing distinguishes it from one-shot siblings like transkribus_job_get without needing to 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 Guidelines4/5

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

Clearly explains how to keep waiting after a timeout ('call again to keep waiting') and outlines the wait budget. It does not explicitly contrast with alternatives such as transkribus_job_get or transkribus_job_list, but the usage context is well-defined.

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

transkribus_kws_create_queryCreate KWS QueryB

Create a new keyword spotting query.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoLimit to a specific document ID
queryYesKeyword query string
collIdYesCollection ID

TDQS

B3.1/5.0
Behavior2/5

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

Annotations indicate it's a write operation (readOnlyHint=false) but non-destructive (destructiveHint=false). The description adds no behavioral context beyond 'create', such as whether the query is saved or immediately usable.

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, clear sentence. It is front-loaded and efficient, though it sacrifices some 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?

No output schema and the description does not explain how this tool fits into the KWS workflow (e.g., relationship to searching or retrieving hits). Incomplete for a creation tool with 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 coverage is 100%, so descriptions already exist for all parameters. The description adds no extra meaning beyond what the schema 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?

The description clearly states the action ('create') and the resource ('keyword spotting query'). It distinguishes from sibling KWS tools like listing or getting hits.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus siblings (e.g., transkribus_kws_list_queries, transkribus_kws_get_hits). No prerequisites or context for using the query creation.

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

transkribus_kws_get_hitsGet KWS Query HitsC
Read-onlyIdempotent

Get hits for a keyword spotting query.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
indexNoStart index (0-based)
keywordNoFilter by keyword
nValuesNoNumber of results (-1 for all)

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint, so safety is covered by structured data. The description adds nothing behavioral beyond that — no mention of pagination via index/nValues, result shape, or the fact that 'id' refers to a previously created KWS query.

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 core operation front-loaded. It is efficient, though so terse that it borders on under-specification rather than maximal clarity.

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?

No output schema exists, so the description should carry more of the burden of explaining what hits look like and how the indexing/paging parameters behave. For a four-parameter retrieval tool with sibling overlap, the definition is too thin to fully guide 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 100%, so the schema already documents id, index, keyword, and nValues. The description adds no extra semantics (e.g., that nValues -1 means all, or that index is a paging offset), 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 gives a clear verb (Get) and resource (hits for a keyword spotting query), so an agent can understand the operation. However, it does not distinguish itself from closely related siblings such as transkribus_kws_get_result_data, transkribus_kws_get_keywords, or transkribus_kws_list_queries, leaving ambiguity about which KWS retrieval call 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 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 other kws_* siblings, nor any mention of prerequisites (e.g., needing an existing query id from kws_create_query or kws_list_queries). The agent must infer usage from the name alone.

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

transkribus_kws_get_keywordsGet KWS Query KeywordsA
Read-onlyIdempotent

Get keywords for a keyword spotting query.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already provide readOnlyHint=true, destructiveHint=false, idempotentHint=true, openWorldHint=true. The description adds no additional behavioral context beyond what annotations provide, but does not contradict them. With rich annotations, the description's contribution is minimal.

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, concise sentence that conveys the core purpose without unnecessary words. It is appropriately front-loaded and efficient.

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 tool has a single parameter and no output schema. Annotations cover safety. The description is minimal but sufficient to indicate the basic function. However, it does not explain what the returned keywords look like or provide context about keyword spotting queries, which could be helpful for an agent.

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

Parameters3/5

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

The input schema has one parameter 'id' with description 'Resource ID'. The description does not add any additional meaning beyond what the schema provides. Schema coverage is 100%, so the baseline is 3.

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

Purpose5/5

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

The description clearly states the verb 'Get' and the resource 'keywords for a keyword spotting query'. It is specific and distinguishes the tool from sibling tools like transkribus_kws_create_query or transkribus_kws_get_hits.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, nor any context about prerequisites or use cases. The description is minimal and provides no exclusions or when-not-to-use information.

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

transkribus_kws_get_result_dataGet KWS Result DataB
Read-onlyIdempotent

Get result data for a keyword spotting query.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID

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 and idempotentHint=true, so the description adds no new behavioral information. It does not contradict annotations, but adds minimal value beyond them.

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 sentence, very concise and front-loaded. However, it is somewhat vague and could benefit from additional context without becoming verbose.

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?

The description is incomplete for a tool with no output schema. It does not describe what the result data contains, nor does it mention any relationship to other KWS tools (e.g., requiring a prior query).

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

Parameters3/5

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

The only parameter 'id' has a schema description 'Resource ID', and the tool description does not add any additional context about what this ID represents. Schema coverage is 100%, so baseline score is appropriate.

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

Purpose4/5

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

The description clearly states the verb 'Get', the resource 'result data', and the context 'keyword spotting query'. It distinguishes from sibling tools like transkribus_kws_get_hits and transkribus_kws_get_keywords by focusing on 'result data', but lacks explicit differentiation.

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

Usage Guidelines2/5

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

No usage guidelines are provided. The description does not specify when to use this tool vs. other KWS tools, nor does it mention prerequisites such as needing a query to exist.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_kws_list_queriesList KWS QueriesB
Read-onlyIdempotent

List keyword spotting queries.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoFilter by document ID
indexNoStart index (0-based)
collIdNoFilter by collection ID
statusNoFilter by query status
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

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, destructiveHint=false, and idempotentHint=true, which adequately convey the tool's safety profile. The description adds no behavioral details beyond a simple list operation, which is acceptable given the annotations but misses the opportunity to mention features like filtering or pagination.

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 sentence, very concise and to the point. It could be slightly expanded to add context without harming conciseness, but it avoids unnecessary verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 7 optional parameters and many sibling tools, the description is too minimal. It does not mention filtering, sorting, pagination, or return format, which are important for proper use. The schema provides details, but the description lacks overarching 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 coverage is 100%, with each of the 7 parameters well-described in the input schema. The description adds no additional meaning beyond the schema, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'List keyword spotting queries' clearly states the verb 'List' and the resource 'keyword spotting queries', making the purpose understandable. However, it does not differentiate this tool from closely related siblings like transkribus_kws_create_query or transkribus_kws_get_hits, which also deal with KWS queries.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, such as when to list queries versus creating new ones or retrieving hits. There are no hints about preferred contexts or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_la_analyzeRun Layout AnalysisC

Run layout analysis on document pages.

ParametersJSON Schema
NameRequiredDescriptionDefault
docIdYesDocument ID
pagesNoPage range (e.g. "1-5" or "1,3,5")
collIdYesCollection ID
creditsNoCredits parameter
jobImplNoJob implementation class
doLineSegNoPerform line segmentation
doWordSegNoPerform word segmentation
doBlockSegNoPerform block segmentation
doBaselineToPolygonNoConvert baselines to polygons
doPolygonToBaselineNoConvert polygons to baselines

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate it is a mutation (readOnlyHint=false), but the description does not disclose details like job creation, return values, or side effects. The description adds minimal value 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.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, concise but lacks structure and is overly minimal. Every word is earned but insufficient for a complex tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (10 parameters, no output schema, job execution), the description omits critical context like return type, parameter usage, and job lifecycle.

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 baseline is 3. The description adds no additional parameter meaning beyond what the schema already 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?

The description clearly states the action 'run' and the resource 'layout analysis on document pages'. It is specific but does not differentiate from siblings like transkribus_la_analyze_advanced.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, such as the advanced version or cost-related tools. No prerequisites or context provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_la_analyze_advancedRun Advanced Layout AnalysisB

Run advanced layout analysis with additional parameters.

ParametersJSON Schema
NameRequiredDescriptionDefault
docIdYesDocument ID
pagesNoPage range (e.g. "1-5" or "1,3,5")
collIdYesCollection ID
creditsNoCredits parameter
jobImplNoJob implementation class
modelIdNoModel/HTR ID
doLineSegNoPerform line segmentation
doWordSegNoPerform word segmentation
doBlockSegNoPerform block segmentation
doBaselineToPolygonNoConvert baselines to polygons
doPolygonToBaselineNoConvert polygons to baselines

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description only states the operation name without disclosing side effects, costs, or asynchronous nature. The annotations indicate it is not read-only, but the description does not add behavioral context beyond what annotations provide.

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 sentence of 7 words, efficiently conveying the tool's core purpose with no extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 11 parameters and no output schema, the description lacks information about the output format, job behavior, and implications of the parameters, leaving the agent with insufficient context 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?

The input schema covers all 11 parameters with descriptions (100% coverage), so the description does not need to elaborate further. It merely says 'additional parameters' which is consistent with the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Run' and resource 'advanced layout analysis', and the term 'advanced' distinguishes it from the sibling tool 'transkribus_la_analyze'.

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 implies through 'advanced' and 'additional parameters' that this tool is for more complex scenarios, but it does not explicitly state when to use this tool versus the basic 'transkribus_la_analyze' or other siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_label_assign_documentsAssign Documents to LabelC

Assign documents to a label.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelIdYesLabel ID
documentIdsYesArray of document IDs to assign

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, destructiveHint=false, openWorldHint=true, and idempotentHint=false, covering the safety profile. The description adds nothing on top of that: it does not explain what happens to existing assignments, whether re-assigning an already-labeled document is an error, or that no output is returned. For a mutation with idempotentHint=false, the duplicate-call behavior is exactly the kind of context that should be disclosed.

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 eight-word sentence with zero padding and the action front-loaded, so there is no wasted verbiage. But the brevity reflects under-specification rather than disciplined conciseness, so it does not earn top marks.

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 write operation in a crowded label-tool family, the description omits effect semantics (append vs replace), failure/duplicate behavior implied by idempotentHint=false, and sibling routing. Full schema coverage and safety annotations help, but they do not fill the gaps around mutation behavior and tool selection.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (labelId and documentIds are both documented in the schema), so the schema carries the parameter semantics. The description only restates the two concepts at a high level and adds no format, bounding, or batching details, which matches the baseline of 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.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The sentence states a specific verb (assign) and two resources (documents, label), so the basic action is legible. However, it is a near-verbatim restatement of the title 'Assign Documents to Label' and gives no differentiation from close siblings such as transkribus_label_assign_pages, transkribus_label_replace_document_assignments, or transkribus_label_remove_documents. It sits between 'clear' and 'tautology'.

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 the alternatives. An agent cannot tell from this text whether assigning appends to existing label membership (vs replace_document_assignments) or how it relates to label_remove_documents. No routing information is provided despite many sibling label tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_label_assign_pagesAssign Pages to LabelC

Assign pages to a label.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelIdYesLabel ID
pageIdsYesArray of page IDs to assign

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, destructiveHint=false, idempotentHint=false, and openWorldHint=true. The description adds nothing on top of that — it does not say whether assignment is additive or overwrites existing assignments, whether it requires edit permissions on the collection, or what limits exist. With annotations present the bar is lower, but this contributes no behavioral context at all.

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 filler, which is structurally clean and front-loaded. However, it is under-specified rather than genuinely concise — it conveys no more information than the tool name already does.

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 no annotation-level detail on assignment semantics, the description leaves key questions unanswered: whether existing page assignments are replaced or appended, and whether pageIds are collection-scoped. An agent calling this correctly needs more than the name restated.

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 only two parameters (labelId, pageIds), so the schema already documents both fully. The description adds no syntax, format, or constraint detail beyond what the schema provides, which lands at the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('assign pages to a label'), but it is essentially a verbatim restatement of the title 'Assign Pages to Label.' It gives no differentiation from close siblings such as transkribus_label_replace_page_assignments, transkribus_label_remove_pages, or transkribus_label_assign_documents, so an agent gets the general action but no disambiguation.

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. Given siblings like label_replace_page_assignments (which likely overwrites) and label_remove_pages, the description gives no signal about how this additive assignment differs from those operations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_label_createCreate LabelC

Create a new label.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesLabel name
colorNoLabel color (hex code)

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description simply says 'Create a new label,' which aligns with the annotation readOnlyHint=false indicating a write operation. However, it does not add any behavioral context beyond the annotations, such as side effects, required permissions, or what happens if a label with the same name 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 description is very concise (one sentence). However, it could include additional useful information without being verbose, so it's efficient but not 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?

Given the simplicity of the tool (2 parameters, no output schema), the description is incomplete. It does not explain the purpose of labels in Transkribus or relate to sibling tools, leaving the agent without sufficient context for proper usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents the parameters. The description adds no extra meaning, so it meets 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?

The description clearly states the verb (create) and resource (label), which is specific. However, it does not differentiate from sibling tools like transkribus_label_update or transkribus_label_assign_documents, so it's clear but lacks distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives such as transkribus_label_update or transkribus_label_assign_documents. No prerequisites or context provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_label_deleteDelete LabelB
DestructiveIdempotent

Delete a label by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
forceNoForce delete even if in use (default false)

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate destructiveHint=true and idempotentHint=true. The description adds no behavioral context beyond the annotations, such as effects, permissions, or side effects.

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 sentence with no fluff. It is front-loaded with the action and resource, making it easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple delete operation, the description is minimally adequate. However, it lacks information about return values (no output schema), error conditions, or differentiation from sibling deletion tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear descriptions. The description adds no additional meaning beyond the schema; it only references 'by ID' which matches the required id parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (delete) and the resource (label) with the identifier (by ID). It is specific and distinguishes from other label operations like create, update, 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?

No guidance on when to use this tool versus alternatives like transkribus_label_create or transkribus_label_remove_all_documents. The description does not mention prerequisites or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_label_getGet LabelA
Read-onlyIdempotent

Get a label by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID

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, destructiveHint=false, idempotentHint=true, and openWorldHint=true, which adequately describe the tool's behavior. The description adds no further behavioral context (e.g., what happens if the label is not found) beyond what is implied by the name and 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?

The description is a single sentence with no wasted words. While efficient, it is extremely minimal and could benefit from additional context without becoming verbose.

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 operation with one parameter and rich annotations, the description is sufficient. It tells the agent that providing an ID retrieves the label. The lack of output schema is acceptable, as the return is likely the label object itself.

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 description does not add meaning beyond the schema. The schema describes 'id' as 'Resource ID', and the description simply says 'by ID', which is already clear from the schema.

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 'Get a label by ID' clearly states the action (get), resource (label), and method (by ID). It distinguishes from sibling tools like transkribus_label_list (lists labels) and transkribus_label_create (creates labels).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. For example, it does not mention that to list all labels one should use transkribus_label_list, or that this tool is for retrieving a specific label when the ID is known.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_label_listList LabelsC
Read-onlyIdempotent

List all labels.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoFilter by label ID
typeNoFilter by label type
indexNoStart index (0-based)
collIdNoFilter by collection ID
useridNoFilter by user ID
labelIdNoFilter by label ID (alias)
nValuesNoNumber of results (-1 for all)
assignedbyNoFilter by assigner user ID
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

TDQS

C2.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, so the description does not need to restate safety. However, it adds no further behavioral details (e.g., pagination, default sorting, or output format). Since annotations cover the safety profile, a score of 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.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise (4 words), which is efficient but at the expense of clarity and completeness. It is front-loaded but lacks substance needed for effective tool selection.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 10 optional parameters, no output schema, and a need to explain pagination (index, nValues) and filtering behavior, the description is incomplete. It fails to describe what the tool returns, how to use filters effectively, or how it differs from sibling list tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 10 parameters. The main description adds no additional semantics beyond what is in the schema. Baseline 3 is justified.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'List all labels' states a verb and resource, but it is vague about scope (global vs per collection/user) and does not distinguish from sibling tools like transkribus_coll_label_list. It lacks specificity about what 'all labels' means in the context of the Transkribus system.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like transkribus_coll_label_list or transkribus_label_get. There are no usage context hints, exclusions, or mentions of prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_label_remove_all_documentsRemove All Documents from LabelA
DestructiveIdempotent

Remove all documents from a label.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelIdYesLabel ID

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint: true and idempotentHint: true. The description adds the scope 'all documents,' which is helpful but does not elaborate on the nature of removal (e.g., permanent unassignment vs deletion). 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no unnecessary words. It conveys the core action efficiently.

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 tool with full schema coverage and no output schema, the description is nearly complete. It lacks a note about destructiveness or reversibility, but the annotations partially 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 coverage is 100% with a single parameter 'labelId' described as 'Label ID.' The tool description does not add any extra meaning or constraints beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Remove all documents') and the target resource ('from a label'). It is specific and effectively distinguishes this tool from siblings like transkribus_label_remove_documents (removes specific documents) and transkribus_label_remove_all_pages (removes all pages).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. It does not mention that the operation is destructive or irreversible, leaving the agent without critical context for decision-making.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_label_remove_all_pagesRemove All Pages from LabelC
DestructiveIdempotent

Remove all pages from a label.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelIdYesLabel ID

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds minimal behavioral context beyond what annotations already provide (destructiveHint=true). It does not disclose side effects, such as whether pages are permanently deleted or unassigned, or if the label itself is affected.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one sentence and concise, but it is too minimal. It lacks structure and additional context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive operation with no output schema, the description omits important details like permanence or reversibility. It does not explain what happens to the label or pages.

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 baseline is 3. The description adds no additional meaning beyond the schema's 'Label ID' description for the parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Remove all pages from a label' clearly states the verb (remove) and resource (pages from a label). It is not a tautology and distinguishes from siblings like 'remove_pages' (which likely removes specific pages). However, it could be more explicit about the 'all' vs 'some' differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like 'label_remove_pages' or 'label_remove_all_documents'. No prerequisites or context provided for usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_label_remove_documentsRemove Documents from LabelC
DestructiveIdempotent

Remove documents from a label.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelIdYesLabel ID
documentIdsYesArray of document IDs to remove

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, idempotentHint=true, readOnlyHint=false, and openWorldHint=true, so the safety profile is fully covered by structured data. The description adds nothing beyond that — it does not say whether removal is reversible, what permissions are needed, or how removal interacts with existing page-level assignments.

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 padding or redundancy. It is efficient, though at this length it borders on underspecification 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?

For a simple two-parameter mutation, the annotations cover destructiveness and the schema covers both parameters, so the essentials are present. Still, with no output schema and no explanation of effects or sibling routing, the definition is only 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 both 'Label ID' and 'Array of document IDs to remove' documented in the schema itself. The description adds no syntax, format, or constraint details beyond what the schema already 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 ('Remove documents from a label'), making the operation instantly identifiable. However, it does not differentiate from close siblings like transkribus_label_remove_all_documents or transkribus_label_remove_pages, so the agent cannot tell from the text alone why it should pick this specific variant.

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., requiring a valid labelId), and no reference to the sibling alternatives for removing pages versus all documents. The agent must infer the appropriate context 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.

transkribus_label_remove_pagesRemove Pages from LabelC
DestructiveIdempotent

Remove pages from a label.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelIdYesLabel ID
pageIdsYesArray of page IDs to remove

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, idempotentHint=true and openWorldHint=true, so the safety profile is covered structurally. The description adds nothing beyond those hints: it does not say what side effects occur (transcripts, page status, downstream collections) or whether the operation is reversible. No contradiction, but no added value either.

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 appropriately sized for a simple operation, though it is bare enough that no structure beyond the one clause exists.

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 full schema coverage and annotations covering the mutation/idempotency profile, and no output schema to explain, the description is minimally adequate. It still omits any context on when the operation is appropriate versus the sibling bulk/replace variants, which is the main remaining 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%: labelId and the pageIds array are documented in the schema itself. The description does not add 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?

Specific verb+resource: removing pages (plural, i.e., a selected subset) from a label. It does not, however, distinguish itself from close siblings such as transkribus_label_remove_all_pages or transkribus_label_replace_page_assignments, so the agent must infer the difference from 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?

No when-to-use guidance, no prerequisites (e.g., label must exist, pages must currently be assigned), and no pointer to the alternative tools for bulk removal or re-assignment. The agent gets no routing help.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_label_replace_document_assignmentsReplace Document Label AssignmentsC
Idempotent

Replace label assignments for a specific document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
labelIdYesLabel ID
labelIdsNoArray of label IDs to assign

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already disclose readOnlyHint=false, idempotentHint=true, and destructiveHint=false, which is the key safety profile for a 'replace' mutation. The description adds nothing beyond that — it does not say whether prior assignments are discarded, whether the call is transactional, or what authorization is required — but the annotation bar is met, so a middle score 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 sentence with the verb and scope front-loaded and no filler. It is efficient, though its brevity shades into under-specification given the tool's ambiguity.

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 write/replace operation with three parameters, a confusing labelId/labelIds pairing, no output schema, and several near-identical sibling tools, the description leaves too much unsaid: replace-vs-assign semantics, the fate of existing assignments, and how the two label parameters combine.

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 nominally 100%, but the schema descriptions are generic ('Label ID', 'Array of label IDs to assign') and the crucial ambiguity is left unresolved: both 'labelId' and 'labelIds' exist, with labelId required, yet the description never explains how the singular required ID relates to the array to be assigned. This is exactly the kind of meaning the description should supply and 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?

States a specific verb ('Replace') and resource ('label assignments') scoped to 'a specific document', so the operation itself is unambiguous. It does not differentiate from the sibling transkribus_label_assign_documents (which presumably adds rather than replaces) or from transkribus_label_replace_page_assignments, so an agent must infer the distinction from 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?

No when-to-use guidance at all. With siblings like label_assign_documents, label_remove_documents, and label_replace_page_assignments present, the agent gets no help deciding which of these four label-mutation tools applies, nor any stated prerequisite (e.g. label must exist, document must be accessible).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_label_replace_page_assignmentsReplace Page Label AssignmentsC
Idempotent

Replace label assignments for a specific page.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
labelIdYesLabel ID
labelIdsNoArray of label IDs to assign

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, idempotentHint=true, and destructiveHint=false, so the safety profile is covered structurally. The description adds nothing beyond that — it does not explain what 'replace' destroys (existing assignments), whether it needs write permission, or how it behaves with an empty labelIds array.

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 zero filler. It is efficient, though its brevity is also the source of the other 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 sitting in a dense sibling cluster, the description is too thin. It omits the replace-vs-assign semantics, the labelId/labelIds relationship, and any permission context; annotations cover safety but not behavior, and there is 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?

Schema description coverage is 100%, so the schema already documents id, labelId, and labelIds, making the baseline a 3. However, the description does not resolve the real ambiguity here: why both a required single labelId and an optional labelIds array exist, or how they interact during a replace.

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 names a verb (replace) and resource (label assignments) and scopes it to 'a specific page', but it is essentially a paraphrase of the title 'Replace Page Label Assignments'. It never distinguishes itself from close siblings like transkribus_label_assign_pages or transkribus_label_replace_document_assignments, leaving the agent to infer the difference from the tool 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?

There is no when-to-use guidance and no alternatives named, despite an obvious sibling cluster (label_assign_pages, label_remove_pages, label_replace_document_assignments). The agent is not told when replace is preferred over plain assign.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_label_updateUpdate LabelB
Idempotent

Update an existing label by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
nameNoUpdated label name
colorNoUpdated label color (hex code)

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate idempotent and non-destructive behavior, but the description adds no further behavioral context such as return values, permission requirements, or effect scope. The agent cannot infer key details like whether the update returns the modified label.

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 sentence that directly states the purpose. It is concise and front-loaded with no extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having only 3 parameters and no output schema, the description omits critical details such as return value, error behavior, and whether partial updates are allowed. For a CRUD update tool, more context is needed for an agent to use 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 100% with descriptions for each parameter (id, name, color). The description adds no additional meaning beyond the schema, meeting the baseline for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Update') and resource ('existing label') with the method ('by ID'). It effectively distinguishes this from sibling tools like create, delete, list, etc.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as transkribus_label_create or transkribus_label_delete. No explicit context about usage conditions or exclusions is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_la_get_costsGet Layout Analysis CostsA
Read-onlyIdempotent

Get the cost estimate for layout analysis on a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
docIdYesDocument ID
collIdYesCollection ID
creditsNoCredits parameter
modelIdNoModel/HTR ID
nrOfPagesNoNumber of pages

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, destructiveHint, idempotentHint, and openWorldHint. The description adds no additional behavioral context such as authorization requirements or rate limits, but does not contradict 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?

The description is a single sentence that efficiently communicates the purpose. It is concise without being overly minimal, though it could include a bit more detail without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the rich annotations and complete schema, the description adequately covers the tool's purpose. It does not explain return values, but for a cost estimate tool, the purpose is clear enough.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for all parameters. The description does not add any meaning beyond what the schema already provides, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get', the resource 'cost estimate', and the specific context 'layout analysis on a document'. This distinguishes it from similar cost tools like transkribus_credit_get_costs and transkribus_recog_get_costs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. There are multiple cost-related tools, and no exclusions or context are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_la_la2_inferenceLA2 InferenceB

Run LA2 model inference on document pages.

ParametersJSON Schema
NameRequiredDescriptionDefault
docIdYesDocument ID
pagesNoPage range (e.g. "1-5" or "1,3,5")
collIdYesCollection ID
creditsNoCredits parameter
modelIdNoModel/HTR ID
thresholdNoDetection threshold (default 0.75)
splitLinesNoSplit lines
addToPageXMLNoAdd results to PAGE XML
approxPolyFracNoApproximate polygon fraction (default 0.7)
keepEmptyRegionsNoKeep empty regions
lineOverlapFractionNoLine overlap fraction (default 0.05)
combineWithBaseLayoutNoCombine with base layout
clusterLinesWithoutRegionsNoCluster lines without regions

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=true. The description adds no behavioral context beyond these annotations. It does not mention whether the tool consumes credits, modifies the document, or creates a job. For a mutation-like tool with side effects (openWorldHint=true), more transparency 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?

The description is a single concise sentence, which is efficient. However, it could be front-loaded with more context. It is not verbose, but it sacrifices completeness for brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (13 parameters, many optional) and absence of an output schema, the description is insufficient. It does not explain what the tool returns, how long it takes, or whether it is synchronous or asynchronous. A user would have to guess the behavior from the parameter names 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 each parameter already has a description in the schema. The tool description does not add any parameter semantics beyond what the schema provides. Baseline score of 3 is appropriate.

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 is specific: 'Run LA2 model inference on document pages.' It clearly identifies the action (run inference), the model (LA2), and the target (document pages). This distinguishes it from sibling tools like transkribus_la_analyze or transkribus_la_table_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 provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, expected input context, or cases where another tool would be more appropriate. Siblings like transkribus_la_analyze or transkribus_la_get_costs are not differentiated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_la_table_inferenceTable InferenceB

Run table structure inference on document pages.

ParametersJSON Schema
NameRequiredDescriptionDefault
docIdYesDocument ID
pagesNoPage range (e.g. "1-5" or "1,3,5")
collIdYesCollection ID
creditsNoCredits parameter
modelIdNoModel/HTR ID

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate readOnlyHint=false (implying mutation) and openWorldHint=true, but the description does not clarify what happens when inference is run (e.g., does it modify page data, create a job, or return results?). No behavioral disclosure beyond the minimal purpose.

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?

Single sentence, concise, but lacks structure. Could benefit from additional context about usage or behavior while remaining brief.

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?

No output schema exists, yet the description does not explain return values or side effects. With 5 parameters and no guidance, the description is inadequate for an agent to fully understand the tool's 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?

Input schema has 100% coverage with individual parameter descriptions, so the description does not need to add parameter details. Baseline 3 is appropriate; no extra value provided.

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?

Description clearly states a specific action: 'Run table structure inference on document pages.' It uses a specific verb ('run') and resource ('table structure inference' on 'document pages'), distinguishing it from sibling tools like transkribus_la_analyze which suggests general layout analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives such as transkribus_la_analyze or transkribus_la_la2_inference. Prerequisites, required model, or typical use cases are not mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_add_collectionAdd Collection to ModelC

Add a collection to a model by type and model ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYesModel type (e.g. htr, la, ocr)
collIdYesCollection ID to add
modelIdYesModel/HTR ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a mutation (readOnlyHint=false) and non-destructive (destructiveHint=false), but the description adds no additional behavioral context. It does not mention side effects, required permissions, or what happens if the collection is already associated with the model.

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. However, it is somewhat sparse.

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 success indicators, error conditions, and prerequisites (e.g., model must exist). Given the context signals (3 required params, no output schema), the description is insufficiently 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?

The input schema covers 100% of parameters with descriptions. The description merely restates the purpose of type and modelId without adding new meaning. Baseline score 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Add a collection to a model') and identifies key parameters ('by type and model ID'). However, it does not differentiate from siblings like transkribus_model_add_collection_by_id, which likely serves a similar purpose with a different identifier.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus related siblings (e.g., transkribus_model_add_collection_by_id, transkribus_model_remove_collection). The agent receives no contextual advice on prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_add_collection_by_idAdd Collection to Model by IDB

Add a collection to a model by model ID and collection ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
modelIdYesModel/HTR ID

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations (non-readonly, not destructive, not idempotent), the description adds no behavioral context such as whether the tool checks existence, returns anything, or overwrites existing associations.

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, no unnecessary words. Efficiently conveys the core action.

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 tool with two integer parameters and no output schema, the description is minimally complete but lacks context on side effects, error conditions, or reversibility (e.g., sibling removal tool exists).

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 descriptions are provided for both parameters. The tool description does not add further meaning beyond restating parameter names, so baseline score 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 clearly states the action ('Add a collection to a model') and the identifiers used (model ID and collection ID). It distinguishes from removal tools but does not differentiate from the sibling 'transkribus_model_add_collection' which may have similar purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like 'transkribus_model_add_collection'. No prerequisites or context for usage provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_deleteDelete ModelA
DestructiveIdempotent

Delete a model by its ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelIdYesModel/HTR ID

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already report destructiveHint=true and idempotentHint=true. The description adds no extra behavioral details beyond stating the delete action, but it does not contradict 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, clear sentence efficiently communicates the tool's function with no extraneous 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 simple delete tool with one parameter and comprehensive annotations, the description is adequately complete. It could mention permanence or prerequisites, but the basic functionality is clear.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'modelId' is fully described in the schema as 'Model/HTR ID'. The description adds no additional meaning, meeting the baseline for 100% schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Delete' and the resource 'model by its ID', making it specific and distinct from sibling tools like 'transkribus_model_delete_by_type'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like deleting by type. The description is minimal and does not provide context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_delete_by_typeDelete Model by TypeB
DestructiveIdempotent

Delete a model by its type and ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
typeYesModel type (e.g. htr, la, ocr)

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description aligns with annotations (destructiveHint=true, readOnlyHint=false), confirming it is a destructive operation. However, it does not add behavioral context beyond what annotations already convey, such as irreversibility 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?

The description is a single sentence with no extraneous words. It is appropriately concise but could benefit from a brief example or additional context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the low complexity (2 params, no output schema) and high schema coverage, the description is minimally adequate. It does not explain return values or side effects, but annotations partially 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 coverage is 100% with descriptions for both parameters. The description merely restates 'by its type and ID', adding no additional 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?

The description clearly states the action ('delete'), resource ('model'), and distinguishing criteria ('by its type and ID'). However, it does not explicitly differentiate from sibling deletion tools like transkribus_model_delete, which may delete by model ID 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 guidance is provided on when to use this tool versus other model deletion tools (e.g., transkribus_model_delete, transkribus_model_remove_collection). There is no mention of prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_getGet ModelC
Read-onlyIdempotent

Get details of a model by its ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
provNoFilter by provider
slugNoFilter by slug
indexNoStart index (0-based)
collIdNoFilter by collection ID
filterNoFilter string
labelsNoFilter by labels
useridNoFilter by user ID
creatorNoFilter by creator
docTypeNoFilter by document type
modelIdYesModel/HTR ID
nValuesNoNumber of results (-1 for all)
featuredNoFilter featured models
centuriesNoFilter by centuries
publisherNoFilter by publisher
facetLimitNoFacet limit
sortColumnNoColumn to sort by
applicationNoFilter by application
scriptTypesNoFilter by script types
isoLanguagesNoFilter by ISO languages
releaseLevelNoFilter by release level
minFacetCountNoMinimum facet count
sortDirectionNoSort direction (asc/desc)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is fully covered elsewhere and this description adds nothing on top. It says nothing about lookup failure behavior (e.g., unknown modelId) or what the returned detail set contains, which is the space left open by 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single short sentence with the resource and lookup key front-loaded; nothing is padded. It is efficient, though bordering on under-specification given the tool's 22-parameter schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description is the only place to explain what 'details' are returned, and it does not. Worse, it never reconciles the 'get one model by ID' framing with a schema containing ~20 filter, facet, and pagination parameters, leaving the agent unsure how those interact with modelId.

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 every parameter including the required modelId is already documented in the schema, and the baseline of 3 applies. The description's phrase 'by its ID' loosely maps to modelId but explains none of the ~20 filter/sort parameters, which is acceptable only because the schema covers them.

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 (model details) and the identifier (ID), so the agent knows it is a single-record fetch rather than a mutation. However, it does not differentiate from near-identical siblings such as transkribus_model_get_details or transkribus_model_get_by_type, leaving the agent to guess which 'get' to call.

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 like model_get_details, model_get_by_type, or model_list. The agent gets no signal for choosing this tool over its almost identically named siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_get_by_typeGet Models by TypeC
Read-onlyIdempotent

Get models filtered by type with optional query parameters.

ParametersJSON Schema
NameRequiredDescriptionDefault
provNoFilter by provider
slugNoFilter by slug
typeYesModel type (e.g. htr, la, ocr)
indexNoStart index (0-based)
collIdNoFilter by collection ID
filterNoFilter string
labelsNoFilter by labels
useridNoFilter by user ID
creatorNoFilter by creator
docTypeNoFilter by document type
nValuesNoNumber of results (-1 for all)
featuredNoFilter featured models
centuriesNoFilter by centuries
publisherNoFilter by publisher
facetLimitNoFacet limit
sortColumnNoColumn to sort by
applicationNoFilter by application
scriptTypesNoFilter by script types
isoLanguagesNoFilter by ISO languages
releaseLevelNoFilter by release level
minFacetCountNoMinimum facet count
sortDirectionNoSort direction: asc or desc

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, idempotentHint=true, and destructiveHint=false, so safety is covered. The description adds nothing beyond that: it does not mention pagination (implied by index/nValues/facetLimit), result volume, or what the 'filter'/'labels' strings do, which matters for a 22-parameter query endpoint.

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 front-loaded sentence with no filler, which is good. But for a tool with 22 parameters and multiple sibling retrieval endpoints, this size is arguably under-specified rather than genuinely concise.

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, 22 parameters, and several near-identical sibling model-retrieval tools, the description leaves too much unanswered — no sibling routing, no pagination behavior, no return shape. The annotations cover the safety profile, but the routing and behavioral gaps remain.

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 every parameter is already documented in the schema and the baseline of 3 applies. The description repeats only the 'type' filter and the existence of 'optional query parameters' without adding interpretation, grouping, or examples for the 21 optional filters.

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 ('Get') and resource ('models') and states the primary filter axis ('by type'), so the core operation is unambiguous. However, it does not distinguish this tool from close siblings such as transkribus_model_list, transkribus_model_get, or transkribus_model_get_details, leaving the agent to guess which retrieval variant 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 choose this over transkribus_model_list or transkribus_model_get_details, nor any stated prerequisites. The phrase 'with optional query parameters' hints at filtering but never says when the extra filters are warranted.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_get_detailsGet Model DetailsB
Read-onlyIdempotent

Get detailed information about a model by type and ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
typeYesModel type (e.g. htr, la, ocr)

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint. The description adds no additional behavioral context beyond restating the purpose.

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, no fluff, but could benefit from slightly more detail without being verbose.

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?

Does not describe what 'detailed information' includes or the return format. Given no output schema, the description should provide more context about expected results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear descriptions for both parameters (id and type). The description does not add extra meaning beyond what the schema 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?

Description clearly states the action (Get detailed information), the resource (model), and the parameters (by type and ID). It effectively distinguishes from sibling tools like transkribus_model_get and transkribus_model_get_by_type.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., transkribus_model_get, transkribus_model_get_by_type). Does not mention prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_get_field_paramsGet Model Field ParametersB
Read-onlyIdempotent

Get the field parameters for a model by type and ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
typeYesModel type (e.g. htr, la, ocr)

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare this as a read-only, idempotent, non-destructive operation, so the description does not need to restate those. However, beyond the schema, the description adds no insight into what the response contains, potential errors, or limitations. It is adequate but not helpful.

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 sentence that is concise and front-loaded with the essential information. While it could benefit from slightly more detail, it avoids verbosity and is efficient for an agent to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of an output schema, the description should help the agent understand what 'field parameters' means and what to expect in the response. It does not. The tool is simple, but the description is too sparse to be fully useful on its own.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema coverage is 100%, providing descriptions for both 'id' (Resource ID) and 'type' (Model type e.g. htr, la, ocr). The description does not add additional meaning, examples, or constraints beyond the schema, so it meets the baseline with no extra value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get' and the resource 'field parameters for a model', specifying the required parameters 'type' and 'ID'. However, it does not differentiate from similar sibling tools like 'transkribus_model_get_details' or 'transkribus_model_get', leaving ambiguity about what 'field parameters' specifically refers to.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., other model getters). There is no mention of prerequisites, context, or contraindications. The agent must rely solely on the tool name and schema to infer usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_get_train_dataGet Model Training DataC
Read-onlyIdempotent

Get the training data for a model by type and ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
typeYesModel type (e.g. htr, la, ocr)
indexNoStart index (0-based)
nValuesNoNumber of values to return

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, so the safety profile is clear. The description adds no additional behavioral context, such as pagination behavior implied by index/nValues, response format, or any potential side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, making it concise but at the expense of completeness. It could use a more structured format (e.g., listing key parameters or behavioral notes) without increasing length excessively.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of pagination parameters (index, nValues) and many similar sibling tools, the description fails to explain what training data is returned, how pagination works, or how this tool relates to others. Output schema is absent, leaving the agent without full context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all four parameters. The description only reiterates 'by type and ID' without adding semantic value beyond the schema. Baseline is 3 due to full schema coverage, and no extra meaning is provided.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb (Get), resource (training data), and key identifiers (type and ID). However, it does not differentiate from sibling tools like transkribus_model_get_train_data_docs or transkribus_recog_get_train_data, which also retrieve training data but for different scopes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. With many sibling tools retrieving training data (e.g., transkribus_doc_get_train_data, transkribus_recog_get_train_data), the absence of context or exclusions makes selection ambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_get_train_data_docsGet Training Data DocumentsC
Read-onlyIdempotent

Get the documents used as training data for a model.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
typeYesModel type (e.g. htr, la, ocr)
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=true, covering the safety profile. The description adds no further behavioral context such as pagination behavior, return format, or permission requirements, so it provides little beyond the structured 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?

The description is a single front-loaded sentence with no wasted words, which is efficient. It is appropriately sized for a simple read operation, though the extreme brevity leaves other dimensions underspecified.

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 getter with full schema coverage and annotations covering the safety profile, the description is minimally sufficient. However, it omits pagination context for the index and nValues parameters and does not distinguish this tool from its many close siblings, leaving ambiguity an agent must resolve elsewhere.

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 already documented in the input schema. The description adds no parameter-specific meaning, which matches the baseline of 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?

The description names a specific verb ('Get') and resource ('documents used as training data for a model'), making the basic purpose clear. It does not explicitly differentiate itself from sibling tools like transkribus_model_get_train_data or transkribus_model_get_train_data_stats, 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 offers no guidance on when to use this tool versus the closely related transkribus_model_get_train_data, transkribus_model_get_train_data_stats, or transkribus_model_get_validation_data_docs. Usage context is only implied by the tool name and must be inferred by the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_get_train_data_statsGet Training Data StatisticsC
Read-onlyIdempotent

Get statistics about the training data for a model.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
typeYesModel type (e.g. htr, la, ocr)

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, and non-destructive behavior. The description adds no behavioral context beyond 'Get statistics' — it does not specify what statistics are returned, format, or pagination. For a read-only tool with no output schema, this is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no waste, but it is too sparse — every word is generic. It does not earn its place beyond stating the obvious. Could be restructured to include more context without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 required params, no output schema, safe read), the description is barely sufficient. However, the large number of similar sibling tools demands more detail to help the agent differentiate. Missing return value info and usage examples. The description is incomplete for effective tool selection.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (both parameters have descriptions in the schema). The description adds no additional meaning about parameters — for example, it does not explain what 'type' values are valid or how 'id' is used. Baseline 3 is appropriate since 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?

Description clearly states verb ('Get statistics') and resource ('training data for a model'). However, the tool name already implies this, and there is no differentiation from siblings like `transkribus_doc_get_train_data` or `transkribus_model_get_train_data`. The purpose is clear but generic.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., `transkribus_model_get_train_data` or `transkribus_model_get_train_data_docs`). No prerequisites or context on required model type or ID. The description is insufficient for an agent to decide when to invoke this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_get_validation_dataGet Validation DataC
Read-onlyIdempotent

Get the validation data for a model by type and ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
typeYesModel type (e.g. htr, la, ocr)
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnlyHint, idempotentHint, destructiveHint=false, openWorldHint), so the description need not restate that. It adds nothing beyond annotations—no note on pagination behavior (index/nValues), result size, or latency—so it contributes 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, front-loaded sentence with no wasted words. It is efficient, though arguably under-specified rather than a model of 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 read-only lookup with a fully documented schema and no output schema, the description is minimally adequate: an agent can form a call, but it lacks any differentiation from the several near-identical validation-data 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%, so the schema already documents id, type, index, and nValues. The description only repeats 'type and ID' and adds no format or constraint detail beyond the schema, 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 and resource ('Get the validation data for a model') and clarifies the lookup key ('by type and ID'). However, it does not distinguish this from close siblings such as transkribus_model_get_validation_data_stats, transkribus_model_get_validation_data_docs, or transkribus_doc_get_validation_data, leaving the agent to guess which variant 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?

The description gives no when-to-use guidance, no prerequisites, and no exclusions relative to the many sibling tools that also return validation data. It only restates the inputs, so an agent gets no routing help.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_get_validation_data_docsGet Validation Data DocumentsB
Read-onlyIdempotent

Get the documents used as validation data for a model.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
typeYesModel type (e.g. htr, la, ocr)
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, openWorldHint, and destructiveHint. The description adds only the domain context that the returned items are validation-data documents, with no additional behavioral details such as pagination behavior, authentication needs, or return format.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no wasted words. For a simple read-only getter, this is appropriately sized and clearly structured.

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?

The tool is a simple read-only retrieval operation with rich annotations and fully documented parameters. The description states what is returned, and the schema covers pagination inputs, so an agent has enough information to call it correctly despite the absence of an 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 the input schema already documents id, type, index, and nValues. The description adds no parameter-level meaning beyond the schema, making the baseline score of 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?

The description states a clear verb-and-resource pair: get the documents used as validation data for a model. It distinguishes the resource from train-data documents and validation-data statistics by the noun phrase itself, though it does not explicitly name sibling alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit guidance on when to use this tool versus alternatives such as get_validation_data_stats or get_train_data_docs. Usage is only implied by the resource name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_get_validation_data_statsGet Validation Data StatisticsC
Read-onlyIdempotent

Get statistics about the validation data for a model.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
typeYesModel type (e.g. htr, la, ocr)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds no additional behavioral context, such as that the tool returns aggregated statistics without side effects.

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?

Description is a single concise sentence with no wasted words. Appropriate for a simple tool, though lacks structured sections.

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?

Description adequately conveys the tool's purpose but does not mention return format or any conditions (e.g., what happens if validation data is missing). Absence of output schema increases need for more detail.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with both parameters (id and type) fully described. The description adds no extra meaning beyond the schema for these 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?

Description clearly states the tool retrieves statistics about validation data for a model, distinguishing it from related tools like get_validation_data or get_validation_data_docs. However, it does not specify what types of statistics are 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 tool versus alternatives such as transkribus_model_get_validation_data or transkribus_model_get_train_data_stats. Missing prerequisites or context (e.g., model must exist, validation set must be present).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_listList ModelsB
Read-onlyIdempotent

List available models with optional pagination and filtering.

ParametersJSON Schema
NameRequiredDescriptionDefault
allNoReturn all models including inactive (default false)
provNoFilter by model provider
typeNoFilter by model type
indexNoStart index (0-based)
collIdNoFilter by collection ID
filterNoFilter string
useridNoFilter by user ID
nValuesNoNumber of results (-1 for all)
onlyActiveNoOnly return active models (default true)
sortColumnNoColumn to sort by
releaseLevelNoFilter by release level
sortDirectionNoSort direction: asc or desc

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, destructiveHint=false, and idempotentHint=true. The description adds 'optional pagination and filtering' but does not elaborate on default behavior, result format, or limits. It adequately confirms the read-only nature but adds little 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?

The description is a single concise sentence that captures the core functionality with no wasted words. It front-loads the purpose and main features effectively.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 12 parameters, many sibling tools, and no output schema, the description lacks important context such as the return format, default pagination behavior, and how filters interact. It does not fully prepare the agent for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with each parameter having a description. The description briefly groups pagination and filtering but does not add significant new meaning 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?

The description clearly states the action (list) and resource (models) along with key features (pagination, filtering). However, it does not explicitly distinguish from siblings like transkribus_model_get or transkribus_model_list_collections, and the term 'available' is somewhat ambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus the many sibling model tools. It lacks information about prerequisites, alternatives, or scenarios where this tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_list_collectionsList Model CollectionsB
Read-onlyIdempotent

List collections associated with a model by type and ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
typeYesModel type (e.g. htr, la, ocr)

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate the tool is read-only, idempotent, and non-destructive. The description adds no behavioral context beyond this, such as whether results are paginated or what the output contains. It does not contradict 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?

The description is a single, front-loaded sentence that efficiently conveys the core purpose. No extraneous information. Slightly more detail could be added without harming 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?

The description is functional for a simple list operation, but lacks details on the return format or scope. With no output schema and many similar siblings, more context (e.g., 'returns a list of collection metadata') would improve completeness.

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 both parameters ('id' and 'type') are documented in the schema. The description echoes 'by type and ID' but adds no additional meaning or usage tips 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 clearly states the tool lists collections for a model using type and ID. It is specific about the resource (collections) and action (list). However, it does not differentiate from the very similar sibling `transkribus_model_list_collections_by_id`, which may cause confusion.

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. Given many sibling tools for model operations (add, remove, list by ID), the description should indicate contexts or prerequisites, but it does not.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_list_collections_by_idList Model Collections by IDC
Read-onlyIdempotent

List collections associated with a model by its ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelIdYesModel/HTR ID
transcriptIdsNoInclude transcript IDs

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, but description adds no additional behavioral traits such as pagination, sorting, error handling, or what 'collections' includes. Minimal added value.

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, no unnecessary words. Could be slightly more informative but is efficient.

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 list tool with two parameters and annotations covering safety, it is adequate. However, lacking output schema, it would benefit from saying what the response contains (e.g., list of collection IDs/names).

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 descriptions for both parameters. The description does not add meaning beyond the schema, e.g., explaining how 'transcriptIds' affects the output. 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?

Description clearly states verb 'List' and resource 'collections associated with a model by its ID'. The name itself is descriptive, but does not explicitly differentiate from siblings like 'transkribus_model_list_collections' which may have different parameters.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives such as 'transkribus_model_list_collections' or 'transkribus_model_get'. No mention of prerequisites or when 'transcriptIds' should be used.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_remove_collectionRemove Collection from ModelB
DestructiveIdempotent

Remove a collection from a model by type, model ID, and collection ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYesModel type (e.g. htr, la, ocr)
collIdYesCollection ID
modelIdYesModel/HTR ID

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate destructiveHint=true and readOnlyHint=false, so the behavior is partially disclosed. The description confirms removal but does not clarify side effects (e.g., whether the collection itself is deleted or just disassociated). This is adequate but not thorough.

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 concise sentence of 13 words, front-loading the main action and parameters without any fluff. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite 100% schema coverage, the description does not explain the return value (no output schema) or the precise effect of 'remove'. For a destructive action, more context about what happens to the collection and model would improve completeness.

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 no extra meaning beyond restating the parameter names. The schema descriptions themselves are clear, so the description does not improve understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (remove), the resource (collection from a model), and the required parameters (type, modelId, collId). However, it does not explicitly distinguish from the sibling tool 'transkribus_model_remove_collection_by_id', which may behave similarly but with different parameters.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as 'transkribus_model_add_collection' or 'transkribus_recog_remove_from_collection'. The description lacks context about prerequisites or situational appropriateness.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_remove_collection_by_idRemove Collection from Model by IDA
DestructiveIdempotent

Remove a collection from a model by model ID and collection ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
modelIdYesModel/HTR ID

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate destructiveHint=true, readOnlyHint=false, and idempotentHint=true. The description adds no further behavioral context (e.g., irreversibility, effects on related data). 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no redundant words. Every part contributes to understanding the action.

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?

While annotations provide safety information, the description lacks details on return values, error handling, or effect persistence. Given the tool's destructive nature and no output schema, more context would be beneficial.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers 100% of parameters with descriptions ('Model/HTR ID', 'Collection ID') that already convey the purpose. The description does not add additional meaning beyond the schema, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly uses the verb 'Remove' and specifies the resource 'a collection from a model', with the parameters model ID and collection ID. This distinguishes it from sibling tools like transkribus_model_add_collection and transkribus_model_remove_collection.

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 such as transkribus_model_remove_collection. No prerequisites, disclaimers, or when-not-to-use advice is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_updateUpdate ModelC
Idempotent

Update a model by posting updated model data.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesModel data to update

TDQS

C2.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide safety profile (idempotent, non-destructive). Description adds only the method 'posting updated model data' without clarifying permissions, side effects, or what fields are updatable.

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?

Single sentence is concise but overly minimal, lacking key details like the input body structure or expected response.

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 a nested object parameter and no output schema, the description is too sparse; it does not explain what constitutes valid model data or what the update returns.

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 description for 'body'. The tool description does not add extra meaning beyond the schema's 'Model data to update'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the verb 'update' and resource 'model', which is clear but does not specify which model or how to identify it among siblings like transkribus_model_update_by_type.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives such as transkribus_model_delete, transkribus_model_get, or transkribus_model_update_by_type.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_model_update_by_typeUpdate Model by TypeB
Idempotent

Update a model by its type and ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
bodyYesModel update data
typeYesModel type (e.g. htr, la, ocr)

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=false, destructiveHint=false, and idempotentHint=true. The description adds that it updates the model, which is consistent. However, it does not disclose further behavioral traits like whether the update is partial or full replacement, or whether type is used in the URL path. Minimal added value 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?

The description is a single, concise sentence that clearly communicates the tool's purpose. It is front-loaded with the key verb and resource, containing no unnecessary words or redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having no output schema, the description does not mention the return value (e.g., the updated model object). Given the tool's complexity and the many sibling model tools, additional context on response format or usage context would be beneficial. The description is too minimal for the domain.

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 each parameter having a basic description (id as 'Resource ID', body as 'Model update data', type as 'Model type (e.g. htr, la, ocr)'). The tool description does not add extra semantic meaning or clarify the structure of the 'body' object. Baseline 3 is appropriate since the schema already 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?

The description clearly states the action ('Update') and resource ('a model'), along with the identifying parameters ('by its type and ID'). This distinguishes it from siblings like transkribus_model_update (which likely uses a different identifier) and transkribus_model_delete_by_type.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. It does not specify prerequisites, restrictions, or when not to use it (e.g., if the model type is unknown). Sibling tools exist for getting, deleting, or training models, but no differentiation is offered.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_p2pala_trainTrain P2PaLA ModelB

Start P2PaLA layout analysis model training for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
modelNameNoName for the new model
descriptionNoDescription of the model

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate non-read-only and non-idempotent behavior, but the description adds no details about side effects, such as whether training can be interrupted, typical duration, or impact on existing models. No contradictions 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?

Single sentence, clearly front-loaded with the action. No wasted words. Could include a bit more context without losing conciseness, but currently efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that training is a complex, long-running operation, the description lacks crucial context: it does not mention that training is asynchronous, returns a job ID, or has any callback mechanism. No output schema, so description should compensate but fails to do so.

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?

All three parameters are described in the schema (100% coverage). The description does not add any extra semantic information beyond what the schema already provides, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the action ('Start'), the specific resource ('P2PaLA layout analysis model training'), and the context ('for a collection'). It effectively distinguishes from sibling training tools like transkribus_pylaia_train and transkribus_recog_train_htr_citlab by specifying P2PaLA layout analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., other training tools). No prerequisites, restrictions, or context for appropriate use are provided. The phrase 'for a collection' hints at the required input but does not elaborate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_addAdd PageA

Add a new page to a document at the specified position.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
collIdYesCollection ID
imgUrlNoURL of the image to add
fileNameNoFile name for the page

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already convey that this is a mutating, non-destructive operation; the description adds the useful detail that the page is inserted at a specified position. However, it does not disclose possible side effects such as renumbering of subsequent pages, auth requirements, or what happens after insertion.

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 one efficient, front-loaded sentence with no filler or redundant restatement of the title. It communicates the core operation and positional nuance 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?

The schema fully documents the five parameters and the annotations cover the mutation safety profile, so the description is adequate for basic invocation. However, because there is no output schema and this is a state-changing operation, the description could have noted whether the call returns the new page identifier or confirms the insertion result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters. The description adds only the 'specified position' hint, which maps to the page parameter, but it does not clarify the relationship between imgUrl, fileName, and the actual page data being added.

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 action ('Add'), a specific resource ('a new page'), and the target container ('a document'), plus the positional modifier ('at the specified position'). This makes the tool's function clear and distinguishable from page deletion, replacement, and retrieval siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as transkribus_upload_page or transkribus_page_replace. There is no mention of prerequisites, exclusions, or the conditions under which a user should prefer this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_assign_plaintextAssign Plaintext to PageB
Idempotent

Assign plain text content to a page as a new transcript.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
noteNoNote for the transcript
pageYesPage number
textYesPlain text content to assign
collIdYesCollection ID
parentNoParent transcript ID
statusNoTranscript status
toolNameNoTool name that created the transcript
nrIsPageIdNoTreat page nr as page ID
useExistingLayoutNoUse existing layout

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare non-destructive, idempotent, open-world mutation, so the safety profile is covered. The description adds only that the result is a 'new transcript', implying creation rather than overwrite, but omits permissions, side effects, and handling of existing transcripts.

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?

Single sentence, front-loaded with the action and resource, no filler. Appropriately concise for the core purpose.

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 fully documents parameters and annotations cover safety, but the description lacks usage context and behavioral details (e.g., transcript creation vs. replacement, permissions). For a mutation tool with 10 parameters, this leaves gaps an agent must infer.

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 10 parameters are documented in the schema. The description adds no parameter syntax or meaning beyond what the schema provides; 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?

Specific verb+resource: assign plaintext content to a page as a new transcript. Clear what it does, but does not distinguish itself from siblings like page_post_transcript or page_replace, so a 4.

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, no prerequisites. The description implies usage but provides no explicit context for choosing this over page_post_transcript or other transcript tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_count_transcriptsCount Page TranscriptsA
Read-onlyIdempotent

Get the number of transcripts for a page.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
collIdYesCollection ID

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint, destructiveHint, idempotentHint, and openWorldHint, covering the safety profile. The description adds no extra behavioral details (e.g., return type or side effects), but the existing annotations moderate the need for more transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is a single, efficient sentence with no wasted words. It is appropriately concise for a simple count operation.

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?

While the tool is simple and annotations provide good context, the description does not specify the return type (e.g., integer count) or any additional details that might be helpful. It is adequate but leaves minor 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?

Input schema covers all parameters (collId, id, page) with descriptions, achieving 100% coverage. The description adds no additional meaning beyond the schema, so it meets the baseline without enrichment.

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?

Description clearly states the verb 'Get' and the resource 'the number of transcripts for a page', which is specific and distinct from sibling tools like transkribus_page_list_transcripts (lists transcripts) and transkribus_page_get_transcript (gets a specific transcript).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives such as transkribus_page_list_transcripts or transkribus_page_get_transcript. The description does not provide context for when a count is appropriate over listing or retrieving a transcript.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_deleteDelete PageB
DestructiveIdempotent

Delete a page from a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
collIdYesCollection ID

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, so the agent knows the tool is destructive. The description adds no additional behavioral context (e.g., whether page numbers shift, if transcripts are also deleted, or if the operation is irreversible). It merely restates the action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one sentence with no extraneous words. It is front-loaded with the purpose. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description lacks context about return values (no output schema), side effects (e.g., impact on document structure), prerequisites (e.g., permissions), and error cases. For a simple delete operation, more completeness is expected.

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 each parameter having a description (collId, id, page). The tool description adds no extra meaning beyond the schema. Baseline 3 is appropriate as the schema carries the descriptive burden.

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 'Delete a page from a document.' uses a specific verb ('Delete') and clearly identifies the resource ('a page from a document'). It distinguishes this tool from sibling tools such as transkribus_page_add (add a page) and transkribus_page_move (move a page).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, such as when not to use it (e.g., for hiding a page) or any prerequisites. No mention of alternatives like transkribus_page_replace or transkribus_page_update_hide_on_sites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_delete_transcriptDelete Page TranscriptB
DestructiveIdempotent

Delete a specific transcript version from a page.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
keyYesTranscript key to delete
pageYesPage number
collIdYesCollection ID

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate destructiveHint=true and idempotentHint=true, but the description adds no further behavioral context (e.g., effects of deleting a nonexistent key, side effects of openWorldHint=true). Minimal value 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?

Single, clear sentence with no filler words. Front-loads the action and resource effectively.

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?

Despite having no output schema and destructive nature, the description lacks information on return values, error handling, or what happens when the transcript key is invalid. OpenWorldHint=true suggests possible side effects not explained.

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?

All four parameters have descriptions in the input schema (100% coverage), so the schema already defines their meaning. The description does not add any extra semantic detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb (Delete) and the resource (transcript version from a page), distinguishing it from sibling tools like transkribus_page_delete (which deletes the page) and transkribus_page_get_transcript.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, no prerequisites mentioned, and no exclusion criteria provided. The agent must infer usage from context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_getGet PageC
Read-onlyIdempotent

Get details of a specific page in a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
collIdYesCollection 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, destructiveHint=false, idempotentHint=true, and openWorldHint=true. The description adds no behavioral details beyond stating 'Get details', so it does not enhance transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence of 8 words, which is concise and front-loaded. However, the brevity sacrifices specificity; a bit more detail on return values would improve clarity without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there is no output schema and the description is vague about 'details', the description is incomplete. It does not clarify what the tool returns, which is critical for an agent to understand its capability.

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 parameter descriptions already present. The tool description does not add any additional semantic value 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?

The description clearly indicates the action ('Get') and resource ('page'), but does not specify what 'details' refers to, leaving ambiguity compared to sibling tools like transkribus_page_get_metadata or transkribus_page_get_plaintext which have more specific purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. Sibling tools include many specialized getters, and the description gives no context for choosing this one.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_get_curr_transcriptGet Current TranscriptB
Read-onlyIdempotent

Get the current transcript for a page.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
collIdYesCollection ID

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the read-only safety profile is covered. The description adds little beyond the basic operation; it does not explain what 'current' means, how the current transcript is selected, or what happens if no transcript exists. With annotations present, this is acceptable but not highly informative.

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 sentence, 'Get the current transcript for a page.', which is front-loaded with the verb and resource and contains no filler. It is appropriately concise for a simple read operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple read-only nature, the annotations and schema cover most operational needs. However, the description leaves important selection context unexplained, particularly what makes a transcript 'current' and how this tool differs from transkribus_page_get_transcript. Without an output schema, the agent also receives no indication of the response format.

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 id described as 'Document ID', page as 'Page number', and collId as 'Collection ID'. The description adds no additional parameter semantics, so it meets the baseline but does not exceed what the schema already 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?

The description states a clear verb ('Get'), resource ('current transcript'), and scope ('for a page'), so the basic purpose is unambiguous. However, it does not distinguish itself from siblings like transkribus_page_get_transcript, transkribus_page_list_transcripts, or transkribus_page_get_plaintext, leaving the meaning of 'current' relative to those tools unclear.

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 usage context is provided. The description does not say when to choose this tool over transkribus_page_get_transcript or transkribus_page_list_transcripts, nor does it mention any exclusions, prerequisites, or alternatives. The only implied guidance is that the user wants the current transcript.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_get_imageGet Page ImageA
Read-onlyIdempotent

Return the scanned image of a page as an image content block, so a multimodal client can read the manuscript itself. Defaults to the thumbnail and a 5000000-byte cap; ask for size "full" to get the full-resolution scan.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
sizeNoWhich image to fetch (default "thumb")
collIdYesCollection ID
maxBytesNoReject an image larger than this many bytes (default 5000000)

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive behavior, so the description only needs to add operational context — which it does by disclosing the thumbnail default and the 5000000-byte cap. It does not mention auth/permission requirements or what happens when the byte cap is exceeded, 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core purpose followed by default/override behavior. Minimal waste, though the default-value sentence partially duplicates the schema's own descriptions.

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 usefully explains the return as an image content block, and covers the key size/cap knobs. It omits error/permission behavior, which is a minor gap for a read-only single-resource fetch.

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 defaults for 'size' and 'maxBytes', so the baseline is 3. The description restates the thumbnail default and the cap but adds no syntax or interaction detail beyond the schema.

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 ('Return the scanned image of a page') and specifies the return form ('as an image content block'), which clearly separates it from text/metadata siblings like transkribus_page_get_text or transkribus_page_get_metadata. An agent can identify the tool's function 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?

It gives clear context for when the tool is appropriate ('so a multimodal client can read the manuscript itself') and hints at an alternative operating mode ('ask for size "full"'). It does not explicitly state when not to use it or name alternative page-content tools, 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.

transkribus_page_get_metadataGet Page MetadataB
Read-onlyIdempotent

Get metadata for a specific page.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
collIdYesCollection ID

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the tool as read-only, non-destructive, idempotent, and open-world. The description adds no behavioral context beyond what annotations provide, such as what metadata is included or any limitations.

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 sentence of 6 words, highly concise and front-loaded. Every word is necessary to convey the core purpose, with no 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?

Given the lack of an output schema and the tool's simple nature, the description minimally conveys the function. However, it does not describe the kind of metadata returned (e.g., image dimensions, OCR status), which would aid completeness. Annotations partially compensate but do not cover return value details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage with descriptions for each parameter (collId, id, page). The description does not add additional meaning or examples beyond the schema, so it meets 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?

The description clearly states the tool retrieves metadata for a specific page, using a verb ('Get') and resource ('metadata for a specific page'). It distinguishes from siblings like transkribus_page_get and transkribus_doc_get_metadata by the focus on page-level metadata, but does not explicitly differentiate among similar page-related tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as transkribus_doc_get_metadata or transkribus_coll_get_metadata. It does not mention prerequisites, context, or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_get_plaintextGet Page PlaintextB
Read-onlyIdempotent

Get the plain text content of a page transcript.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
collIdYesCollection 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=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true, which adequately convey safety and idempotency. The description does not add additional behavioral details (e.g., what if no transcript exists), but does not contradict 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?

The description is a single, concise sentence with no extraneous words. Every word serves a purpose, making it efficient for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given many sibling page tools, the description fails to clarify what 'plain text' entails (e.g., no formatting, tags stripped) or behavior when no transcript is assigned. This reduces completeness for an agent to correctly select and use 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?

All three parameters are described in the schema with coverage of 100%, but descriptions are minimal ('Collection ID', 'Document ID', 'Page number'). The tool description adds no further semantic context beyond what the schema provides, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (Get) and the resource (plain text content of a page transcript). It is specific and distinguishes from siblings like 'transkribus_page_get_text' by specifying 'plain text', making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool vs alternatives such as 'transkribus_page_get_text' or 'transkribus_page_get_curr_transcript'. It does not explain scenarios or exclusions, leaving an agent to guess the appropriate context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_get_textGet Page Text (Transcript)B
Read-onlyIdempotent

Get the transcript text for a specific page.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
collIdYesCollection ID

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true, indicating a safe, idempotent read operation. The description adds no behavioral details beyond the annotation flags, such as return format or pagination.

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 sentence that is front-loaded with the action and resource. It is concise with no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool and rich annotations, the description is adequate but does not explain how 'transcript text' differs from other page text tools or provide return value details. Slightly more context would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with all three parameters (collId, id, page) having descriptions. The tool description does not add any parameter-specific information, so baseline score 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 clearly states the verb 'Get' and the resource 'transcript text for a specific page'. It is specific and unambiguous, but does not differentiate from similar sibling tools like transkribus_page_get_plaintext or transkribus_page_get_transcript, which may confuse 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?

No guidance is provided on when to use this tool over alternatives. The description does not mention prerequisites, exclusions, or context for usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_get_transcriptGet Page TranscriptC
Read-onlyIdempotent

Get a specific transcript version for a page.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
collIdYesCollection ID
transcriptIdYesTranscript ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint and idempotentHint annotations, the description adds no behavioral details. It doesn't explain what a 'transcript version' entails, how versions are differentiated, or the output format. With annotations covering safety, the description still lacks depth.

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, concise sentence. While it's short, it is not overly terse for a simple read operation. Could benefit from additional structure but is efficient.

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 tool retrieves a specific transcript version but lacks information on what the response contains (no output schema). With four required IDs and no versioning context, the description is minimally adequate for a read operation but incomplete for complex scenarios.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 100% description coverage, explaining each parameter (collId, id, page, transcriptId). The description does not add further meaning 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?

The description clearly states the verb 'Get' and the resource 'a specific transcript version for a page'. It distinguishes from siblings like 'transkribus_page_get_curr_transcript' by implying version specificity, but does not explicitly contrast with other page transcript tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like 'transkribus_page_get_curr_transcript' or 'transkribus_page_get_text'. The description omits context for usage decisions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_is_lockedCheck Page LockB
Read-onlyIdempotent

Check if a page is currently locked.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
collIdYesCollection ID

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, indicating a safe read operation. The description adds no further behavioral details beyond stating the check purpose, but does not contradict annotations. Without annotations, this would be insufficient, but given annotations, it is adequate.

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 sentence that is concise and front-loaded with the key action and resource. No unnecessary words.

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?

Though the tool is simple, there is no output schema, and the description does not clarify the return type (e.g., boolean). It also lacks explanation of what 'locked' means in this context. However, the annotations and sibling tool names provide some implicit 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 coverage is 100% with each parameter having a description (collId, id, page). The tool description does not add any additional meaning or context for the parameters, so the baseline score 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 clearly states the tool checks if a page is locked, using specific verb 'Check' and resource 'page'. However, it does not differentiate from sibling tools like transkribus_page_list_locks or transkribus_page_lock, which could cause confusion about when to use this specific tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as transkribus_page_list_locks or transkribus_page_lock. The description lacks context for appropriate invocation scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_list_locksList Page LocksA
Read-onlyIdempotent

List all locks on a page.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
collIdYesCollection ID

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, destructiveHint, idempotentHint, so behavioral safety is clear. The description adds minimal context (listing locks) beyond purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded with verb and object, no extraneous 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 simple read-only list tool with no output schema, the description is adequate. Annotations cover behavior, but minor details like response format could enhance completeness.

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 descriptions for collId, id, and page are clear and complete. With 100% schema coverage, the description adds no further parameter detail, meeting baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists all locks on a page, distinguishing it from siblings like transkribus_page_is_locked and transkribus_page_lock.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like transkribus_page_is_locked for a boolean check or transkribus_page_lock for acquiring locks.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_list_transcriptsList Page TranscriptsB
Read-onlyIdempotent

List all transcript versions for a page.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction (asc/desc)

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, idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds only the notion that multiple transcript 'versions' exist for a page, but says nothing about pagination behavior, default result limits, or ordering despite index/nValues/sortColumn parameters existing.

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 its extreme brevity leaves the sibling-differentiation burden entirely on the name rather than the 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 read-only, idempotent list tool with a fully documented schema and no output schema, the description is minimally adequate. However, with seven parameters and several closely named transcript siblings, it omits return-shape expectations (e.g. whether results are paginated via index/nValues) and any disambiguation, leaving real 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%, so all seven parameters (id, page, collId, index, nValues, sortColumn, sortDirection) are already documented in the schema. The description adds no extra semantics such as what a 'version' identifier means or how sorting applies, 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 clear verb+resource: listing transcript versions for a page. It is immediately understandable, but it never distinguishes itself from close siblings such as transkribus_page_get_curr_transcript, transkribus_page_get_transcript, or transkribus_page_count_transcripts, so an agent cannot tell from the text alone which of these 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 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. collId/id/page must all refer to existing resources), and no mention of alternatives. The agent must infer usage purely from the name and the large family of overlapping page/transcript tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_lockLock/Unlock PageB
Idempotent

Lock or unlock a page for editing.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
typeNoWhether to lock (true) or unlock (false) the page
collIdYesCollection ID

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate non-readOnly (destructiveHint false, but idempotentHint true). The description adds minimal context: 'for editing' implies preventing concurrent edits. It doesn't elaborate on state change effects or conflicts.

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 is concise and front-loaded. However, it could be slightly improved by including quick action guidance (e.g., 'Set type to true to lock'). Still efficient.

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 boolean action tool with good annotations and schema, the description is minimally complete. It lacks mention of return value or side effects (e.g., locking prevents other edits), but the simplicity reduces need for more.

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 clear descriptions for all 4 parameters. The tool description adds no extra meaning beyond what the schema provides. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Lock or unlock a page for editing' clearly states the action and resource. It distinguishes from sibling tools like transkribus_page_is_locked (check status) and transkribus_page_list_locks (list locks) by being an action-oriented tool, though not 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 lock vs unlock, or when to use this tool instead of alternatives like transkribus_page_is_locked. The description lacks context for decision-making.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_moveMove PageB
Idempotent

Move a page to a different position within the document or to another document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
collIdYesCollection ID
moveToYesTarget position to move the page to
nrIsPageIdNoTreat page nr as page ID (default false)
moveToDocIdNoTarget document ID to move the page to

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Description provides minimal behavioral context beyond annotations; annotations already indicate idempotent and non-destructive, but description adds no new traits like permissions or side effects.

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?

Single sentence, no wasted words, efficiently conveys core purpose.

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 main functionality but lacks details on parameter constraints (e.g., negative positions) and no output schema, leaving potential gaps for complex moves.

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 baseline is 3. Description hints at two scenarios (within doc vs to another doc) but doesn't explain position semantics beyond schema.

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?

Description clearly states it moves a page within or between documents, verb+resource specific enough to distinguish from sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool vs alternatives like transkribus_doc_move_pages_by_image_names; only describes two use cases without exclusion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_post_transcriptPost Page TranscriptC

Post a new transcript for a page.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
bodyNoTranscript data
noteNoNote for the transcript
pageYesPage number
collIdYesCollection ID
parentNoParent transcript ID
statusNoTranscript status
toolNameNoTool name that created the transcript
nrIsPageIdNoTreat page nr as page ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a non-read-only, non-destructive, non-idempotent operation, but the description adds nothing beyond 'new transcript'. It omits crucial behavioral details such as authentication requirements, what happens if a transcript already exists, or whether the operation overwrites data.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no wasted words. It is appropriately sized for a terse API description, though its brevity comes at the cost of completeness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (9 parameters, nested body object, no output schema), the description is too sparse. It does not explain the expected structure of the body object, the meaning of optional fields like parent or status, or any non-obvious behavior needed to invoke the tool 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?

With schema description coverage at 100%, the baseline score of 3 applies. The description adds no parameter-level meaning beyond the schema, but the schema itself fully documents the 9 parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (Post) and resource (new transcript for a page), making the core action clear. However, it does not explicitly distinguish itself from sibling tools like transkribus_doc_update_transcript or transkribus_page_replace, leaving the agent to infer the creation-versus-update 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 on when to use this tool versus alternatives, no prerequisites, and no conditions or exclusions. The single sentence provides no usage context at all.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_replaceReplace PageB
Idempotent

Replace a page image in a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
pageYesPage number
collIdYesCollection ID

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Description says 'replace' implying mutation, but annotations show destructiveHint=false and idempotentHint=true; no further behavioral details provided (e.g., what happens to old image, permissions needed).

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?

Single sentence, front-loaded, no redundant information. Every word serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Missing critical context: how the new image is provided (no image parameter in schema), no output specification, and no mention of side effects. Despite simple parameters, the tool is a mutation and should explain what happens to the old image.

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 descriptions cover 100% of parameters; description does not add new meaning beyond what the schema provides. Baseline score of 3.

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?

Description clearly states verb (replace) and resource (page image), distinguishing it from sibling tools like add, delete, move.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives like transkribus_page_add or transkribus_page_delete. Lacks prerequisites or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_update_hide_on_sitesUpdate Page VisibilityB
Idempotent

Set whether a page is hidden on public sites.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
hideYesWhether to hide the page on sites
pageYesPage number
collIdYesCollection ID
nrIsPageIdNoTreat page nr as page ID
hideOnSitesNoWhether to hide on sites

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate that the tool is not read-only (readOnlyHint=false), not destructive (destructiveHint=false), and idempotent. The description adds the context of 'public sites', which is useful but does not elaborate on effects (e.g., whether it overrides other visibility settings). Given annotations carry the safety profile, a score of 3 reflects adequate but shallow additional information.

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 sentence of 8 words, extremely concise. It contains no fluff and is front-loaded with the action. While it could include a bit more context (e.g., required parameters), it earns a 4 for being efficient and to the point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 6 parameters, no output schema, and moderate complexity, the description is too brief. It does not summarize the required inputs (collection ID, document ID, page number), mention what the tool returns (e.g., success/error), or explain the optional 'hideOnSites' parameter. This leaves the agent without essential context 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?

All 6 parameters are described in the schema (100% coverage), so the description does not need to add extra meaning. However, the description does not clarify the relationship between the two boolean parameters ('hide' and 'hideOnSites') or explain that required parameters (collId, id, page) identify the specific page. The schema does this, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Set' and the resource 'a page' with the attribute 'hidden on public sites'. This distinguishes it from sibling page update tools that deal with transcript status, locks, or other metadata.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. There is no information about prerequisites, such as requiring specific permissions, or when not to use it (e.g., if another tool handles collection-level hiding). This lack of context makes it harder for an agent to decide.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_update_status_v2Update Page Status v2C
Idempotent

Update page status using transcript ID (alternative endpoint).

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
bodyNoStatus update data
noteNoStatus note
pageYesPage number
collIdYesCollection ID
statusNoNew status
nrIsPageIdNoTreat page nr as page ID
transcriptIdYesTranscript ID

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate idempotentHint=true and readOnlyHint=false, which already convey basic behavior. The description adds no details about side effects, permissions, or constraints beyond what annotations provide. No value added.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, which is concise but lacks structure. It front-loads the action but misses opportunity to organize information like usage context. Could be improved without increasing length.

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?

No output schema, and the description does not explain what happens upon successful update, what errors may occur, or how the alternative endpoint differs. Given the tool updates state, more context is needed for completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all 8 parameters. The description does not explain any parameter semantics or add meaning beyond what the schema provides. 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 specifies 'Update page status' which clearly identifies the action and resource. However, it adds 'using transcript ID (alternative endpoint)' without explaining what the main endpoint is or how this differs from siblings like 'transkribus_page_update_transcript_status'. This vagueness prevents full clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this vs. alternatives. The phrase 'alternative endpoint' hints at an alternative but provides no criteria for choosing this tool over the presumed main endpoint. No when-to-use or when-not-to-use information.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_page_update_transcript_statusUpdate Transcript StatusB
Idempotent

Update the status of a specific transcript version.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDocument ID
noteNoStatus note
pageYesPage number
collIdYesCollection ID
statusYesNew transcript status
nrIsPageIdNoTreat page nr as page ID
transcriptIdYesTranscript ID

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate non-readonly, non-destructive, idempotent, and open-world. The description adds 'Update', confirming mutation, but provides no further behavioral details (e.g., side effects, trigger of jobs). With annotations present, a baseline of 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?

The description is a single sentence, extremely concise. No extra words, but slightly under-specified for its complexity.

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 7 parameters, 5 required, and no output schema, the description fails to explain status values, the note field, or the role of transcript versions in the pipeline. It is insufficient for an AI agent to fully understand tool usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All 7 parameters have descriptions in the schema (100% coverage), so the description adds no new meaning. Baseline score of 3 is correct.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Update') and the resource ('status of a specific transcript version'). It is specific and distinguishes from sibling tools like 'transkribus_page_get_transcript' or 'transkribus_page_delete_transcript'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as 'transkribus_page_update_status_v2' or other status-related tools. The description lacks context on prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_processing_get_alto_xmlGet Processing Result as ALTO XMLA
Read-onlyIdempotent

Get a finished Processing API result as ALTO v4 XML. Returns 404 while the job is still running.

ParametersJSON Schema
NameRequiredDescriptionDefault
processIdYesProcess ID returned when the image was submitted

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this as a read-only, idempotent, non-destructive operation. The description adds useful behavioral detail beyond annotations by disclosing the 404 behavior for unfinished jobs, though it omits other operational details such as auth requirements or result size.

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 are front-loaded with the core purpose and then the key operational caveat. There is no redundant or filler language.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter retrieval tool with rich annotations and complete schema coverage, the description supplies enough context: what it returns, the required job state, and the error behavior while the job is running. No output schema exists, so return-value explanation is not required.

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 processId parameter is fully documented in the schema as the ID returned when the image was submitted. The description does not add further meaning beyond that baseline.

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, resource, and output format: get a finished Processing API result as ALTO v4 XML. This distinguishes it from sibling processing tools such as status and page XML retrieval without requiring the schema to be opened.

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 by stating the job must be finished and that a 404 is returned while still running, which tells the agent when the tool can be used. It does not explicitly name polling or alternative sibling tools, so it falls short of full when/when-not/alternatives guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_processing_get_page_xmlGet Processing Result as PAGE XMLA
Read-onlyIdempotent

Get a finished Processing API result as PAGE XML (version 2013-07-15). Returns 404 while the job is still running.

ParametersJSON Schema
NameRequiredDescriptionDefault
processIdYesProcess ID returned when the image was submitted

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive and open-world, so the safety profile is covered. The description adds genuine runtime behavior not present in the annotations: the 404 response while the job is running, which tells the agent how to interpret failures. It does not mention auth requirements or output encoding details.

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, no filler, with the format/version specified first and the failure condition second. Every clause carries information an agent needs.

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 usefully pins down the return format and schema version, which is the key ambiguity for this tool. It does not describe how the XML is wrapped in the response payload, which is a minor remaining 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% and the single parameter is already documented as "Process ID returned when the image was submitted". The description adds no syntax, format, or source 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 (Get) and resource (finished Processing API result) plus the concrete output format, PAGE XML version 2013-07-15. It implicitly separates itself from the ALTO sibling by naming the format, but never explicitly names transkribus_processing_get_alto_xml or transkribus_processing_get_status as alternatives.

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?

"Get a finished Processing API result" plus "Returns 404 while the job is still running" gives an actionable precondition: the job must be complete, and a 404 tells the caller to keep polling. No explicit routing to the ALTO or status siblings, so it stops short of full when/when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_processing_get_statusGet Processing StatusA
Read-onlyIdempotent

Get the status of a Processing API job, including the recognised text once it has finished. Status is one of CREATED, WAITING, RUNNING, FINISHED or FAILED; results are kept for two days.

ParametersJSON Schema
NameRequiredDescriptionDefault
processIdYesProcess ID returned when the image was submitted

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so safety is covered. The description adds genuine behavioral context beyond them: the exact status lifecycle (CREATED/WAITING/RUNNING/FINISHED/FAILED) and the two-day result retention window, which affects polling strategy.

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 front-loaded and the enum/retention details following. 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?

No output schema exists, so the description must carry return-value information, and it does cover the two things an agent needs: the status enum and the recognised-text payload plus its retention. It stops short of describing the full response shape (e.g. where the text sits), leaving a minor 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% — processId is documented as 'Process ID returned when the image was submitted', including its numeric bound. The description adds nothing parameter-level, 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+resource ('Get the status of a Processing API job') and scopes it further by naming the enumerated status values and the recognised-text payload, which distinguishes it from siblings like transkribus_upload_get_status and transkribus_job_get.

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: the tool is a poll endpoint, and the two-day retention note hints at a time window, but the description never says to call it after submitting an image or names an alternative for a different job kind. Adequate but with clear gaps.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_processing_submit_imageSubmit Image for ProcessingA

Submit a single image to the Transkribus Processing API for text recognition and get back a process ID. Supply exactly one of imageUrl or base64 (JPEG, TIFF or PNG, up to 20 MB).

ParametersJSON Schema
NameRequiredDescriptionDefault
imageYesThe image to process: exactly one of imageUrl or base64
configYesHow the image should be processed
contentNoExisting regions and lines. When supplied, line detection is skipped.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the safety profile (readOnlyHint=false, idempotentHint=false, destructiveHint=false). The description adds the image format and size constraints, and notes that a process ID is returned. However, it omits important behavioral context such as whether the operation is asynchronous, authentication requirements, or 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core action, and zero wasted words. Efficient and clear.

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 description covers the image parameter and return value, but it completely omits the required 'config' parameter, which has complex nested settings. It also does not explain the asynchronous nature of the operation or how the process ID should be used subsequently. Given the tool's complexity, these are notable 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 100%, so the schema already documents all parameters including the 'exactly one' constraint and image format details. The description repeats this constraint but adds no new parameter-level semantics beyond what is in the schema.

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 ('Submit'), resource ('a single image'), and purpose ('for text recognition and get back a process ID'). It clearly distinguishes itself from sibling tools by scope ('single image') and outcome ('process ID').

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives, nor are there any preconditions or exclusions. The only usage-related information is a parameter constraint ('exactly one of imageUrl or base64'), which is not usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_pylaia_recognizeRun PyLaia RecognitionB

Run PyLaia HTR recognition on a document using a specific model.

ParametersJSON Schema
NameRequiredDescriptionDefault
docIdYesDocument ID
nBestNoNumber of best results (default 1)
pagesNoPage range (e.g. "1-5")
collIdYesCollection ID
creditsNoCredits parameter
modelIdYesModel/HTR ID
batchSizeNoBatch size (default 10)
doWordSegNoPerform word segmentation
b2pBackendNoBaseline to polygon backend (default "Legacy")
clearLinesNoClear existing lines before recognition
doStructuresNoStructure analysis mode
languageModelNoLanguage model to use
writeKwsIndexNoWrite KWS index (default false)
printedModelIdNoPrinted text model ID
doNotDeleteWorkDirNoDo not delete working directory
writeLineConfScoreNoWrite line confidence scores
writeWordConfScoresNoWrite word confidence scores
printedLanguageModelNoLanguage model for printed text
useExistingLinePolygonsNoUse existing line polygons (default false)
allowConcurrentExecutionNoAllow concurrent execution (default false)
keepOriginalLinePolygonsNoKeep original line polygons (default false)
doLinePolygonSimplificationNoSimplify line polygons (default true)

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate readOnlyHint=false and destructiveHint=false, but the description adds no behavioral context. It does not mention that the tool modifies the document, how long it takes, or any side effects. With annotations providing minimal clarity, the description fails to disclose essential behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence, appropriate for a clear purpose. However, it could be slightly more informative without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (22 parameters) and the absence of an output schema, the description is too minimal. It does not explain what the output is, how results are provided (e.g., job creation), or any post-processing needed. The description is incomplete for effective agent use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters. The description adds no additional meaning beyond the schema, justifying a baseline score of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Run') and the resource ('PyLaia HTR recognition on a document using a specific model'). It distinguishes this tool from sibling recognition tools (e.g., transkribus_recog_run_htr_citlab) by explicitly naming 'PyLaia' as the HTR engine.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, such as other HTR recognition tools or OCR tools. It lacks prerequisites, exclusions, or context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_pylaia_trainTrain PyLaia ModelA

Start PyLaia HTR model training for a collection. By default, sends training parameters matching the Transkribus UI defaults (textFeatsCfg with TextFeats preprocessing, use_masked_conv=True, max_epochs=100). Without these defaults, the server uses different preprocessing (trpPreprocPars) which produces significantly worse models. Set noTrainingDefaults=true to send no training parameters (server defaults).

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
imgTypeNoImage type
languageNoLanguage code (e.g. "rus", "deu", "eng")
providerNoTraining provider (default: "PyLaia")PyLaia
testListNoTest page list
modelNameNoName for the new model
trainListNoTraining page list
batch_sizeNoBatch size (default: 24). Shortcut for trainCtcPars --batch_size.
max_epochsNoMaximum training epochs (default: 100). Shortcut for trainCtcPars --max_epochs.
baseModelIdNoBase model ID for transfer learning
descriptionNoDescription of the model
reverseTextNoWhether to reverse text direction
testListFileNoAbsolute path to JSON file containing test page list array of {docId, pageId} objects. Example: /tmp/transkribus-training/test_list.json
textFeatsCfgNoTextFeats preprocessing config override. Merged with UI defaults (normheight=64, deslope/deslant=true, enh=true). Only specify fields you want to change.
trainCtcParsNoCTC training parameters as key-value pairs (e.g. {"--max_epochs": "200"}). Merged with UI defaults (max_epochs=100, learning_rate=3.0E-4, batch_size=24, etc.). Only specify parameters you want to override.
learning_rateNoLearning rate (default: 3.0E-4). Shortcut for trainCtcPars --learning_rate.
trainListFileNoAbsolute path to JSON file containing training page list array of {docId, pageId} objects. Example: /tmp/transkribus-training/train_list.json
omitLinesByTagNoTags of lines to omit from training
createModelParsNoModel architecture parameters as key-value pairs (e.g. {"--rnn_units": "512"}). Merged with UI defaults (use_masked_conv=True, cnn_poolsize="2 2 0 2", etc.). Only specify parameters you want to override.
trainPropertiesNoEnable training properties
customTagTrainingNoEnable custom tag training
noTrainingDefaultsNoIf true, do NOT apply UI-default training parameters. The server will use its own defaults (which differ from the UI and may produce worse models).
customAbbrevsTrainingNoEnable custom abbreviations training
max_nondecreasing_epochsNoEarly stopping patience (default: 20). Shortcut for trainCtcPars --max_nondecreasing_epochs.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations show readOnlyHint=false and openWorldHint=true. The description adds significant behavioral context: that by default it sends UI defaults, and without them the server uses different preprocessing leading to worse models. It also explains that parameters are merged with UI defaults. This goes beyond the annotations, though it could mention job creation or cost implications.

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 concise (three sentences) and front-loaded with the main purpose. It packs critical information about defaults and warnings without excessive verbosity. However, the technical details could be slightly overwhelming for an agent, but overall it's efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the high parameter count (24) and complex default behavior, the description covers the key behavioral aspects: defaults, merging, and the noTrainingDefaults option. It does not explain how to use the result (e.g., job completion, model ID retrieval) but the tool name and context make the purpose clear. It is reasonably complete for an agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so each parameter already has a description. The tool description adds value by explaining the merging behavior for textFeatsCfg, createModelPars, and trainCtcPars, and the shortcut parameters (max_epochs, etc.). It clarifies the role of noTrainingDefaults, which is not detailed in the schema. This adds meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Start PyLaia HTR model training for a collection'. It specifies the resource (PyLaia model) and the action (training). The mention of UI defaults distinguishes it from siblings like transkribus_recog_train_htr_citlab, and the tool name itself is very specific.

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 explains when to use this tool (training PyLaia models) and the impact of the noTrainingDefaults flag. It warns that server defaults produce worse models, providing a clear context. However, it does not explicitly compare with other training tools (e.g., transkribus_recog_train_htr_citlab) or specify when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_add_to_collectionAdd Model to CollectionC

Add a recognition model to another collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
collIdYesCollection ID
targetCollIdYesTarget collection ID to add the model to

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds no behavioral context beyond the annotations. With annotations providing readOnlyHint=false, destructiveHint=false, idempotentHint=false, and openWorldHint=true, the description merely restates the purpose without explaining side effects, auth needs, or what 'add' entails (copy vs. link).

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 sentence that is front-loaded and contains no extraneous words. It is appropriately concise for a simple operation.

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 3 parameters and no output schema, the description lacks context about return values, error behavior, and how it relates to similar sibling tools. This incomplete information may hinder an agent's correct usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema already clearly describes each parameter. The description adds no extra meaning 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?

The description clearly states the action (Add) and the resource (recognition model) and target (collection). It is specific enough to distinguish from generic model tools, though it does not explicitly differentiate from sibling tools like transkribus_model_add_collection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus siblings such as transkribus_model_add_collection or transkribus_recog_remove_from_collection. No prerequisites or conditions are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_compute_error_rateCompute Error RateC

Compute the error rate for a model in a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNoAdditional error rate computation parameters
collIdYesCollection ID
modelIdYesModel/HTR ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate readOnlyHint=false and destructiveHint=false, but the description adds no behavioral details beyond what annotations provide. It does not explain whether the computation is synchronous or asynchronous, whether it returns results directly, or any side effects. The openWorldHint=true suggests unknown behavior, but the description does not clarify.

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 sentence that is well-structured and concise. It conveys the essential purpose without excess words. However, it might be too brief, missing some important details. It earns points for efficiency but loses some for 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?

The tool has no output schema, so the description should hint at what is returned or the nature of the output. It does not. Additionally, the compute action's behavior (synchronous/asynchronous, blocking, etc.) is not mentioned. Given the complexity and lack of output schema, the description 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?

The input schema covers all parameters with descriptions, so schema_description_coverage is 100%. The description does not add any additional meaning beyond what the schema provides. The 'body' parameter is vague, but the schema describes it as 'Additional error rate computation parameters'. A score of 3 is appropriate as the schema does the work, but the description adds no extra insight.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Compute the error rate for a model in a collection', which is specific about the action and resources. However, it does not specify the type of error rate (e.g., CER, WER), which could be important for distinguishing from sibling tools like compute_wer. It does distinguish itself from compute_wer and compute_wer_tasas by using a more general term.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as compute_wer or compute_sample. It does not mention prerequisites, context, or conditions for usage. The absence of any usage guidelines makes it hard for an agent to decide when this tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_compute_sampleCompute SampleC

Compute a recognition sample for a document in a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
docIdYesDocument ID
collIdYesCollection ID

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=false and destructiveHint=false, so the description's 'compute' aligns with a non-read action. However, the description adds no extra behavioral details—such as what a 'recognition sample' entails, whether it creates persistent data, or any side effects 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.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no waste, but it is too brief to be optimally helpful. For a tool with only two parameters, it could include a bit more context about what 'compute a recognition sample' produces or requires without becoming verbose.

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?

The description is minimal: no output schema exists, and the description fails to explain what a recognition sample is, what the tool returns, or any side effects. Given the openWorldHint annotation, the tool may have additional undocumented behavior, leaving the agent underinformed.

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 basic descriptions for collId ('Collection ID') and docId ('Document ID'). The description does not add any additional meaning or context about these parameters, so it provides no value 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?

The description clearly states the verb 'compute' and the resource 'recognition sample' for a document in a collection, which is specific and actionable. However, it does not differentiate from sibling tools like transkribus_recog_compute_error_rate or transkribus_recog_run_htr_citlab, all of which involve computing something recognition-related.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. The sibling list includes many recog_* tools, but the description gives no context on scenarios, prerequisites, or why a user would choose 'compute sample' over 'compute error rate' or 'run HTR'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_compute_werCompute WERC
Read-onlyIdempotent

Compute the Word Error Rate for a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
hypNoHypothesis transcript identifier
keyNoTranscript key
refNoReference transcript identifier
docIdYesDocument ID
pagesNoPage range (e.g. "1-5")
collIdYesCollection ID

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true, indicating a safe read-only operation. The description adds no further behavioral context beyond the stated purpose, which is acceptable given annotation coverage but misses an opportunity to clarify return values or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise (5 words). While not verbose, it under-specifies the tool's behavior given 6 parameters and no output schema. It could be slightly longer to improve clarity without being redundant.

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, the description should at least mention the return type or format. It does not address what the tool returns. Additionally, the complex parameters (ref, hyp, key) are not explained in context. The rich annotations partially compensate, but overall completeness is lacking.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for all 6 parameters. The description does not add any extra meaning beyond what the schema provides. Baseline score of 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (Compute) and the resource (Word Error Rate for a document). However, it does not differentiate from sibling tools like transkribus_recog_compute_error_rate or transkribus_recog_compute_wer_tasas, which could cause confusion.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., compute_error_rate, compute_wer_tasas). The description lacks context for usage scenarios or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_compute_wer_tasasCompute WER (TASAS)B
Read-onlyIdempotent

Compute the Word Error Rate using TASAS method for a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
hypNoHypothesis transcript identifier
keyNoTranscript key
refNoReference transcript identifier
docIdYesDocument ID
pagesNoPage range (e.g. "1-5")
collIdYesCollection ID

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) declare safety traits, but description adds no behavioral context beyond the name (e.g., synchronous vs async, permissions, return format).

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, 12 words, no waste. However, it could be slightly more front-loaded with key details like the method name, but it remains concise and clear.

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 6 parameters and no output schema, the description fails to explain what TASAS is, how to interpret parameters like ref/hyp, or what the tool returns, leaving significant gaps for the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers all 6 parameters with descriptions, so baseline is 3. The tool description does not add any additional meaning to parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool computes Word Error Rate using the TASAS method for a document, distinguishing it from siblings like transkribus_recog_compute_wer and transkribus_recog_compute_error_rate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool over alternatives (e.g., other WER or error rate methods), 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.

transkribus_recog_deleteDelete Recognition ModelC
DestructiveIdempotent

Delete a recognition model from a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
collIdYesCollection ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate destructiveHint=true and idempotentHint=true, but the description adds no behavioral context beyond stating the deletion action. It does not explain irreversibility, required permissions, or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single clear sentence with no unnecessary words. It is front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the rich annotations (destructive, idempotent) and no output schema, the description is minimal but lacks completeness. It does not address that deletion is permanent, potential dependencies, or how to recover. For a destructive tool, more context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage with descriptions for both parameters ('Collection ID' and 'Resource ID'). The description adds no additional meaning beyond what the schema provides, meeting 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?

The description clearly states the action (delete), resource (recognition model), and scope (from a collection). It distinguishes well from similar tools like transkribus_model_delete and transkribus_recog_remove_from_collection, though it does not explicitly 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?

The description provides no guidance on when to use this tool versus alternatives, prerequisites, or situations where it should not be used. This is a significant gap for a destructive operation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_getGet Recognition ModelA
Read-onlyIdempotent

Get details of a recognition model in a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
collIdYesCollection ID

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: true. The description adds minimal behavioral context beyond 'Get details', which is consistent. No additional traits (e.g., required permissions, response format) are disclosed, but the annotations cover the safety profile adequately.

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 (8 words) with no redundant information. It efficiently communicates the tool's purpose.

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 retrieval tool with two well-documented parameters and no output schema, the description is sufficient. It could hint at what 'details' include (e.g., metadata, training status), but the openWorldHint annotation reduces the need for exhaustive enumeration. Overall, it meets the minimum viable completeness.

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?

Input schema provides clear descriptions for both parameters (collId: 'Collection ID', id: 'Resource ID') with 100% coverage. The description does not add further meaning beyond what the schema already conveys, so baseline score 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?

The description clearly states the action 'Get', the resource 'details of a recognition model', and the scope 'in a collection'. It effectively distinguishes from sibling tools like transkribus_recog_delete (delete) or transkribus_recog_list_by_collection (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?

The description provides no guidance on when to use this tool versus alternatives (e.g., transkribus_recog_list_models to list all models, or transkribus_recog_get_atr for specific model data). No when-to-use or when-not-to-use context is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_get_add_infoGet Add InfoC
Read-onlyIdempotent

Get information about adding a recognition model to collections.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
collIdYesCollection 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 and idempotentHint=true, so the description's claim of 'Get information' is consistent. However, it does not elaborate on what specific information is returned, potential prerequisites, or any side effects. The description adds minimal behavioral context 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with 8 words, which is efficient. However, it may be too terse and could benefit from additional structure or details. No wasted words, but under-specification slightly reduces 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?

Given there is no output schema, the description should ideally explain what information is returned when adding a recognition model to collections. The current description is minimal and does not provide enough context for an AI agent to fully understand the tool's output or capabilities.

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 parameters described ('Collection ID' and 'Resource ID'). The description does not add any additional meaning beyond the schema. Baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Get information about adding a recognition model to collections.' It uses a specific verb and resource. However, it does not distinguish itself from sibling tools like transkribus_recog_get or transkribus_recog_add_to_collection, which could cause confusion.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. The description does not provide context for when to choose this over related tools such as transkribus_recog_add_to_collection or transkribus_recog_list_collections. An explicit 'when-not' or mention of alternatives is missing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_get_atrGet ATR InfoA
Read-onlyIdempotent

Retrieve information about available ATR (Automatic Text Recognition) models.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint=true and idempotentHint=true, so the description does not need to repeat safety properties. However, it adds no extra behavioral context beyond stating it retrieves info. With strong annotations, 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?

Single sentence, no extraneous information, perfectly concise for the tool's complexity.

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 no parameters and a straightforward purpose (listing available models), the description is sufficiently complete. It could mention the return format but is adequate for selection.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the description is not required to explain parameter semantics. Per instructions, 0 params baseline is 4. The description correctly identifies the resource.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'retrieve' and the resource 'information about available ATR models', distinguishing it from sibling tools that operate on specific models or run recognition tasks.

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?

No explicit guidance on when to use this tool versus alternatives like transkribus_recog_list_models or transkribus_recog_get. While the purpose is clear, the description does not help select among similar tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_get_costsGet Model CostsC
Read-onlyIdempotent

Get the cost information for a recognition model.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
collIdYesCollection ID
creditsNoCredits parameterAUTO
nrOfPagesNoNumber of pages
writeKwsIndexNoWrite KWS index

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description does not add any behavioral context beyond what is already provided by annotations. Annotations indicate read-only, idempotent, and non-destructive behavior, but the description offers no additional insights such as authentication requirements or rate limits.

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 sentence that is concise and front-loaded. It conveys the essential purpose without any unnecessary words, earning its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of many sibling tools and the absence of an output schema, the description is too sparse. It does not explain what 'cost information' entails, how it relates to the parameters, or how the response should be interpreted, leaving the agent under-informed.

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?

Input schema has 100% description coverage for all 5 parameters, so the baseline is 3. The description does not add any further explanation or meaning to the parameters beyond what the schema already 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?

The description states 'Get the cost information for a recognition model', which clearly identifies the verb and resource. However, it does not differentiate from sibling tools like transkribus_credit_get_costs or transkribus_doc_get_costs, which also get cost information for different 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?

No guidance is provided on when to use this tool versus alternatives. There is no mention of context, prerequisites, or exclusions, leaving the agent to infer 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.

transkribus_recog_get_error_rateGet Error RateB
Read-onlyIdempotent

Get the error rate for a collection or model.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyNoKey identifier
refNoReference identifier
collIdNoCollection ID
modelIdNoModel/HTR ID

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, so the description does not need to repeat safety info. However, it adds no additional behavioral context (e.g., what is returned, prerequisites), which would be useful.

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 sentence that directly states the tool's purpose with no unnecessary words. It is concise and efficiently structured.

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 tool is simple, but with no output schema and many sibling tools, the description could provide more context (e.g., typical use case, relationship to compute_error_rate). It meets minimal adequacy but lacks comprehensiveness.

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?

All 4 parameters have descriptions in the schema (100% coverage). The description does not add parameter-specific meaning beyond what the schema provides, so 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 clearly states the verb 'Get' and the resource 'error rate' for a collection or model, but it does not differentiate from siblings like transkribus_recog_compute_error_rate, which may have a subtly different purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description does not clarify the distinction from compute_error_rate or other error-related tools among the many siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_get_ocr_costsGet OCR CostsC
Read-onlyIdempotent

Get the estimated OCR costs for a document.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoModel ID
typeNoOCR typeLegacy
docIdYesDocument ID
pagesNoPage range
collIdYesCollection ID
nrOfPagesNoNumber of pages
doBlockSegOnlyNoOnly do block segmentation

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate read-only, non-destructive, idempotent, and open world behavior. The description adds no additional behavioral context (e.g., how costs are estimated, data freshness, or error cases).

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 description is a single sentence but lacks substantive information. It does not earn its place as it fails to add value beyond the tool name and annotations.

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, the description should explain what the tool returns. It does not mention return format, data structure, or page-range handling. Given 7 parameters and no guidance, completeness is low.

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?

Input schema has 100% description coverage for all 7 parameters, so baseline is 3. The description adds no parameter-specific information beyond stating 'for a document', so no extra value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it gets estimated OCR costs for a document, with a specific verb and resource. However, it does not distinguish from similar sibling tools like transkribus_doc_get_costs or transkribus_recog_get_costs, which could lead to confusion.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., transkribus_doc_get_costs, transkribus_credit_get_costs). The description fails to set context or exclude other tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_get_test_setGet Test SetC
Read-onlyIdempotent

Get the test set data for a recognition model.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
collIdYesCollection ID
nrOfTranscriptsNoNumber of transcripts

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, destructiveHint=false, idempotentHint=true, openWorldHint=true. The description adds no behavioral context beyond stating it 'Get's data, missing details like data format, pagination, or error conditions that would aid the agent.

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, concise sentence. It is front-loaded with the key action and resource, but omits useful details that could be included without excess verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 3 parameters and no output schema, the description lacks completeness: it doesn't specify what the test set data contains, how results are returned, or how it relates to recognition models. Sibling tools like transkribus_recog_get_train_set suggest there are distinct datasets, but the description does not provide this context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description does not elaborate on the parameters (collId, id, nrOfTranscripts) or their meaning for this specific tool, adding no value 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 states the verb 'Get' and resource 'test set data for a recognition model', making the purpose clear. It differentiates from document-level test set tools like transkribus_doc_get_test_set, but does not explicitly contrast with sibling tools like transkribus_recog_get_train_set, so it lacks full differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, no context on prerequisites or exclusions. The description is too minimal to inform usage decisions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_get_train_dataGet Training DataC
Read-onlyIdempotent

Get the training data for a recognition model.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so safety is covered. The description adds no behavioral context beyond that - it doesn't mention that results are paginated (index/nValues), whether collId must be a recognition collection, or what the returned training data looks like. With annotations doing the safety work, the remaining gaps are notable.

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 wasteful text. It is efficient, though arguably under-specified rather than genuinely concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read tool with no output schema, the description should at least hint at what training data is returned and how pagination behaves. Given a crowded sibling namespace of similarly named 'train data' tools, the description is too thin to let an agent call this correctly with confidence.

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% - all four parameters (id, collId, index, nValues) are documented in the schema with defaults and constraints. The description adds no parameter meaning, so the baseline 3 applies; the schema carries the full burden.

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 (get) and resource (training data for a recognition model), which is better than a tautology. However, it does nothing to distinguish itself from close siblings such as transkribus_model_get_train_data, transkribus_doc_get_train_data, or transkribus_recog_get_train_set, leaving the agent unable to disambiguate by scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance, no preconditions, and no mention of the alternative 'get_*_train_data' tools that appear in the sibling list. The agent must infer everything 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.

transkribus_recog_get_train_setGet Training SetB
Read-onlyIdempotent

Get the training set for a recognition model.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
collIdYesCollection ID
nrOfTranscriptsNoNumber of transcripts

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the tool as read-only, non-destructive, idempotent, and open-world. The description adds no additional behavioral context, such as what a training set includes or how it is structured.

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 sentence with no wasted words. It is appropriately concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple nature of the tool and the presence of annotations, the description is minimally adequate. However, it lacks information about return values or what constitutes a training set, which could be helpful given 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 the schema already explains each parameter. The description offers no additional meaning 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?

The description states 'Get the training set for a recognition model,' which clearly specifies the verb and resource. However, it does not distinguish from sibling tools like transkribus_recog_get_train_data or transkribus_model_get_train_data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives. No context about prerequisites or exclusions is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_get_validation_gt_by_htrGet Validation GT by HTR IDC
Read-onlyIdempotent

Get validation ground truth data for a recognition model.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds nothing beyond that — no mention of pagination behavior implied by index/nValues, no note on what 'ground truth' contains or whether it requires model ownership.

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 filler. It is arguably too terse for the tool's ambiguity, 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 tool with a fully documented schema and no output schema, so the description is minimally viable. It still omits pagination semantics and disambiguation from sibling validation-data tools, which an agent would need to pick 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 100%, with each of id, collId, index and nValues documented, so the baseline is 3. The description adds no interpretation of these parameters (e.g. that nValues=-1 returns all) 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?

States a specific verb+resource ('Get validation ground truth data for a recognition model'), and the title adds the HTR-ID scoping that distinguishes it from the model/doc variants. However, the description never distinguishes it from close siblings like transkribus_model_get_validation_data or transkribus_doc_get_validation_data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance, no prerequisites, and no naming of alternatives despite several near-identical validation-data siblings. 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.

transkribus_recog_list_by_collectionList Models by CollectionA
Read-onlyIdempotent

List recognition models available in a specific collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
provNoFilter by provider
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

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, destructiveHint=false, idempotentHint=true. The description adds no behavioral context beyond the annotations, such as pagination behavior or response format. It is adequate but does not enhance 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that is concise and front-loaded with the main action. However, for a tool with 6 parameters and no output schema, slightly more detail could be beneficial without being verbose.

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?

The description is minimal and does not explain pagination, sorting, filtering parameters, or the return format. Given the tool has 6 parameters and no output schema, the description should provide more context for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage with descriptions for all 6 parameters. The description does not add meaning beyond identifying the main resource (collection). Baseline 3 is appropriate as the schema already documents parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'List' and the resource 'recognition models' with the scope 'available in a specific collection'. It distinguishes from sibling tools like transkribus_recog_list_models (which likely lists all models) and transkribus_model_list.

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 implies when to use (to list models in a collection) but does not explicitly provide guidance on when not to use, nor does it mention alternatives or specify prerequisites. Usage context is implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_list_collectionsList Model CollectionsA
Read-onlyIdempotent

List collections that have access to a recognition model.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
collIdYesCollection ID

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint, destructiveHint, idempotentHint, and openWorldHint, so the agent knows it's a safe read operation. The description adds that the tool returns collections with access to a model, but does not disclose details like pagination, permissions, or response format.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that conveys the tool's purpose without any unnecessary words. Perfectly concise for a simple tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with only 2 parameters and no output schema, the description is adequate but lacks details about the return structure or any constraints. An agent might need to infer the output format from context or experience.

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 describes both parameters (collId and id). The description does not add any new meaning or context about these parameters; it only repeats the overall purpose.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('list') and the resource ('collections that have access to a recognition model'). It is specific and distinguishes from sibling tools like transkribus_recog_list_by_collection which lists models for a collection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool vs alternatives such as transkribus_model_list_collections or transkribus_recog_list_by_collection. No exclusions or context are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_list_dictsList DictionariesA
Read-onlyIdempotent

List available dictionaries for recognition.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true, fully covering the safety profile. The description adds no additional behavioral context, such as authentication requirements, rate limits, or return 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that directly states the tool's purpose. No unnecessary words, and the key 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 simple list tool with no parameters and thorough annotations, the description is adequate. It clearly states what the tool does. While it could mention that it returns a list of dictionary names, the purpose is sufficiently covered.

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?

There are no parameters, and schema coverage is 100% (trivially). With 0 parameters, the baseline is 4, and the description does not need to compensate for parameter semantics.

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 uses a specific verb 'list' and clearly identifies the resource 'available dictionaries for recognition'. It effectively distinguishes from sibling tools like transkribus_recog_list_models, which lists models, not dictionaries.

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 implies usage when you need a list of dictionaries, but it does not provide explicit guidance on when to use this tool versus alternatives or mention any specific context or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_list_modelsList Recognition ModelsC
Read-onlyIdempotent

List available recognition models with optional filtering.

ParametersJSON Schema
NameRequiredDescriptionDefault
provNoFilter by provider (alternative)
indexNoStart index (0-based)
collIdNoFilter by collection ID
filterNoFilter string
nValuesNoNumber of results (-1 for all)
providerNoFilter by model provider
sortColumnNoColumn to sort by
releaseLevelNoFilter by release level
sortDirectionNoSort direction: asc or desc

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already indicate readOnly, non-destructive, idempotent, and openWorld. The description adds only 'with optional filtering', which is already implicit from the schema parameters. No additional behavioral context is provided.

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 concise sentence that captures the core function. However, it could be slightly more informative without sacrificing brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema and 9 optional parameters, the description is somewhat incomplete. It does not mention pagination (index, nValues), the nature of returned data, or the significance of filtering parameters. Annotations provide safety guarantees but not operational context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all 9 parameters, so the baseline is 3. The description adds no further meaning beyond stating 'optional filtering', which does not enhance parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'List' and the resource 'recognition models', with 'optional filtering' adding specificity. It distinguishes from siblings like transkribus_recog_list_by_collection which list models within a specific collection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like transkribus_model_list or transkribus_recog_list_by_collection. The description does not specify prerequisites or typical use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_remove_from_collectionRemove Model from CollectionA
DestructiveIdempotent

Remove a recognition model from a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
collIdYesCollection ID

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate destructiveHint and idempotentHint. The description adds no further behavioral context, such as whether the operation is reversible or cascading. It meets the minimum but does not enhance understanding.

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 sentence, front-loaded with the key action, and contains no unnecessary words.

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, the description is minimal. It does not clarify important details like the effect on the model itself (only removed from collection, not deleted) or prerequisites (e.g., model must exist in collection). Given the annotations and simple input, it is adequate but not 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% with descriptions for both parameters. The description adds no additional meaning beyond the schema, so it scores the baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Remove', the resource 'recognition model', and the target 'from a collection'. It is specific and distinguishes from sibling tools like transkribus_model_remove_collection or transkribus_recog_add_to_collection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as transkribus_recog_delete (which might delete the model entirely) or transkribus_model_remove_collection. The description lacks context for decision-making.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_run_atrRun ATRB

Run Automatic Text Recognition on a document or specific pages.

ParametersJSON Schema
NameRequiredDescriptionDefault
docIdYesDocument ID
collIdYesCollection ID
pageNrNoPage number
modelIdNoModel/HTR ID

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate mutation (readOnlyHint=false) and non-destructiveness, but the description does not disclose that running ATR likely creates an asynchronous job, consumes credits, or what the side effects are. The openWorldHint=true is not explained.

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?

Single sentence, no redundancy, directly conveys purpose. Efficient for an agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, no mention of job lifecycle (e.g., returns job ID), no explanation of how to monitor or retrieve results. For a complex, asynchronous tool, this is insufficient.

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 covers all parameters with descriptions (100% coverage), so the description adds marginal value. It implicitly distinguishes that pageNr is for specific pages, but this is already in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Run Automatic Text Recognition') and the resource ('a document or specific pages'), distinguishing it from sibling tools like transkribus_recog_run_htr_citlab and transkribus_recog_run_ocr by specifying 'ATR'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., when to choose ATR over HTR or OCR). Missing context on prerequisites like model selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_run_htr_citlabRun HTR (CITlab)B

Run CITlab HTR recognition on a document using a specific model.

ParametersJSON Schema
NameRequiredDescriptionDefault
dictNoDictionary to use
docIdYesDocument ID
pagesNoPage range (e.g. "1-5")
collIdYesCollection ID
creditsNoCredits parameter
modelIdYesModel/HTR ID
tempDictNoTemporary dictionary
doStructuresNoRun structure analysis
doStoreConfMatsNoStore confidence matrices (default true)
allowConcurrentExecutionNoAllow concurrent execution (default false)
keepOriginalLinePolygonsNoKeep original line polygons (default false)
doLinePolygonSimplificationNoSimplify line polygons (default true)

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate readOnlyHint=false and destructiveHint=false, but the description does not add meaningful behavioral context beyond that. It does not reveal whether the operation is asynchronous, what side effects occur (e.g., job creation, document modification), or if any state changes persist. 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no wasted words. It communicates the essential function efficiently and is front-loaded with the core action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (12 parameters, no output schema, basic annotations), the description is insufficient. It does not explain what HTR recognition produces, how results are accessed, or the nature of the operation (e.g., asynchronous job). The openWorldHint suggests external impact, but no details are provided. The presence of many similar siblings demands more 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 coverage is 100% with descriptions for all 12 parameters, so the baseline is 3. The description does not add extra meaning or clarify relationships between parameters (e.g., modelId must be a CITlab model, format for pages). It provides no value beyond the schema, thus scoring the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (Run), the specific HTR system (CITlab), the type of operation (recognition), the target (a document), and the prerequisite (a specific model). This distinguishes it from other recognition tools like transkribus_pylaia_recognize or transkribus_recog_run_ocr.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives (e.g., other recognition tools, or when not to use it). There is no mention of prerequisites, context, or exclusions, leaving the agent without sufficient direction to choose correctly among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_run_ocrRun OCRC

Run OCR on a document or specific pages in a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoModel ID
docIdYesDocument ID
pagesNoPage range (e.g. "1-5")
collIdYesCollection ID
ocrTypeNoOCR type (default "Legacy")
languageNoLanguage for OCR
typeFaceNoType face for OCR
doBlockSegOnlyNoOnly do block segmentation (default false)

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=false and destructiveHint=false. The description adds no behavioral context beyond the fact that OCR is run. It does not disclose if the operation creates a job, is asynchronous, or has any side effects. The description does not contradict annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, which is concise but lacks structure. It is not front-loaded with critical information and is overly brief for a tool with 8 parameters and many siblings.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (8 parameters, no output schema, many sibling tools), the description is insufficient. It does not explain return values, job handling, or how to interpret results. The description is too sparse for an agent to use effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with all parameters described in the input schema. The description does not add any additional meaning or context to parameters beyond what is already in the schema. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool runs OCR on a document or pages. It uses a specific verb 'Run' and resource 'OCR'. However, it does not differentiate from sibling tools like transkribus_recog_run_htr_citlab or transkribus_recog_run_atr, which are also recognition tools. The name itself provides clarity but lacks sibling distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus other recognition tools (HTR, ATR, etc.). No prerequisites, context, or exclusions are provided. The description is too brief to guide an agent on appropriate usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_run_trhtrRun TRHTRB

Run TRHTR recognition using a specific model in a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoDocument ID
pagesNoPage range (e.g. "1-5")
collIdYesCollection ID
creditsNoCredits parameterAUTO
modelIdYesModel/HTR ID
modelNameNoModel name
b2pBackendNoB2P backend typeLegacy
doNotDeleteWorkDirNoDo not delete work directory
useExistingLinePolygonsNoUse existing line polygons
allowConcurrentExecutionNoAllow concurrent execution
doLinePolygonSimplificationNoSimplify line polygons

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate a mutation with possible side effects (openWorldHint=true). The description adds no further behavioral detail, such as that it creates a job, consumes credits, or modifies the collection. Missing context beyond what annotations already provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single short sentence, which is concise but too terse; it could be more informative without losing brevity. It conveys the core purpose but leaves out important details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 11 parameters, no output schema, and many similar siblings, the description is insufficient. It doesn't explain what TRHTR is, what the tool returns (e.g., a job ID), or how to monitor progress. An agent would likely need additional 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 clear parameter descriptions. The tool description itself adds no extra parameter information, but the schema covers the semantics adequately, earning the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Run'), the resource ('TRHTR recognition'), and the context ('using a specific model in a collection'). It distinguishes from sibling tools like transkribus_recog_run_htr_citlab and transkribus_recog_run_ocr by specifying the TRHTR engine.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, no prerequisites mentioned (e.g., model must be trained, collection must exist), and no explanation of complex parameters like pages, credits, or concurrency.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_text2imageRun Text2ImageC

Run Text2Image alignment using a specific model in a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesText2Image parameters
collIdYesCollection ID
creditsNoCredits parameterAUTO
modelIdYesModel/HTR ID
doNotDeleteWorkDirNoDo not delete work directory

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate it is not read-only (readOnlyHint=false) and not destructive (destructiveHint=false). The description confirms it 'runs' an alignment, implying a job is started, but it does not disclose potential side effects, asynchronicity, or that it requires credits. The description adds minimal behavioral context beyond what annotations imply.

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 sentence, very concise (10 words), and front-loaded with the key action and resource. However, it could include more detail without becoming verbose. It earns a 4 for efficiency, not penalized for lack of completeness in this dimension.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (5 parameters, no output schema, open-world hint, many siblings), the description is severely lacking. It does not explain what 'Text2Image alignment' entails, how the 'body' parameter configures it, what the return value is (likely a job ID), or how credits are consumed. The description is insufficient for an agent to use this tool correctly without additional knowledge.

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 input schema already describes all parameters (e.g., collId, modelId, body, credits, doNotDeleteWorkDir). The description does not enhance understanding of what these parameters mean or how they interact. Baseline 3 is appropriate since the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (Run) and resource (Text2Image alignment) and context (using a specific model in a collection). However, it does not differentiate this tool from sibling tools like transkribus_recog_text2image_citlab or transkribus_recog_text2image_matching, which have similar names and likely similar purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus its siblings. There is no mention of prerequisites, appropriate contexts, or circumstances where this tool should be avoided. The description merely states what it does without helping the agent decide when to invoke it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_text2image_citlabText2Image (CITlab)C

Run CITlab Text2Image alignment for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesText2Image configuration parameters
collIdYesCollection ID

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate non-read-only, non-destructive, non-idempotent, and open-world behavior, but the description adds no additional context about side effects (e.g., job creation, resource modification). The description does not disclose expected changes or permissions needed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence, but it lacks secondary details that would aid understanding. It is front-loaded but too brief.

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 nested objects and no output schema, the description is insufficient. It does not explain the effect on the collection, how results are returned, or how to monitor progress, leaving significant gaps for an agent.

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 100% with basic descriptions for collId and body, but the description adds no further meaning. The 'body' parameter is a complex object with undefined structure; the description does not clarify required configuration fields, leaving ambiguity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it runs a CITlab Text2Image alignment for a collection, using specific verb 'Run' and resource 'CITlab Text2Image alignment'. However, it does not differentiate from sibling tools like transkribus_recog_text2image, which may use a different engine.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., other text-to-image tools or OCR engines). No prerequisites or context for invocation are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_text2image_matchingRun Text2Image MatchingC

Run Text2Image matching using a specific model in a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
docIdYesDocument ID
pagesNoPage range (e.g. "1-5")
collIdYesCollection ID
creditsNoCredits parameterAUTO
modelIdYesModel/HTR ID
lineThreshNoLine threshold
blockThreshNoBlock threshold
reductionMethodNoReduction method
preserveLineOrderNoPreserve line order
doNotDeleteWorkDirNoDo not delete work directory
keepUnmatchedLinesNoKeep unmatched lines
useSourceLineFeedsNoUse source line feeds
allowDoubleMatchingNoAllow double matching
useCurrentTranskriptNoUse current transcript
addNotMatchedTextInLastLineNoAdd unmatched text in last line

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate the tool is not read-only, not destructive, not idempotent, and open world. The description's single phrase 'Run Text2Image matching' does not disclose any behavioral characteristics beyond what annotations already imply—such as whether it creates a job, how long it takes, or error conditions. It adds no meaningful 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?

The description is a single sentence that is direct and concise. It wastes no words, but it is not structured with bullet points or sections. However, for a simple tool, the conciseness is appropriate.

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 15 parameters and no output schema, the description is too brief. It does not explain what the matching process entails, what the output looks like, or how to interpret results. The tool is complex, and the description lacks necessary details for an agent to use it effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All 15 parameters have descriptions in the input schema (100% coverage). The description does not add any extra meaning or context beyond what the schema provides. Baseline is 3 because schema coverage is high, but the description fails to elaborate on parameter usage or relationships.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Run') and the resource ('Text2Image matching') with the context of using a specific model in a collection. However, it does not distinguish this tool from similar sibling tools like 'transkribus_recog_text2image' or 'transkribus_recog_text2image_citlab', which share the same core resource.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. There is no mention of prerequisites, when not to use it, or comparison to other tools. The agent is given no context for decision-making.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_train_htr_citlabTrain HTR (CITlab)B

Start CITlab HTR model training for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
configYesTraining configuration parameters

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate non-read-only, non-destructive, non-idempotent, and open world. The description adds no behavioral information beyond these annotations, such as duration, side effects on collection, or that training creates a new model. The lack of additional context leaves the agent uninformed about the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, which is concise but lacks important details such as the return behavior or the nature of the 'config' object. It is front-loaded with purpose but insufficiently informative for a complex training tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and the complexity of starting a training job, the description should mention that it triggers an asynchronous job, what the return value indicates, or how to monitor progress. The current minimal text leaves significant gaps for an agent to correctly use 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?

The input schema has 100% description coverage, with 'collId' described as 'Collection ID' and 'config' as 'Training configuration parameters'. The description adds no extra meaning beyond the schema, so it meets the baseline but does not enhance parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'Start CITlab HTR model training' for a collection, with a specific verb and resource. It distinguishes from siblings by naming 'CITlab', which differentiates it from other training tools like 'transkribus_pylaia_train' or 'transkribus_recog_train_la2'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when or when not to use this tool, nor does it mention prerequisites or alternatives. There is no context about required data states, collection readiness, or comparison with sibling training tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_train_la2Train Layout Analysis 2B

Start Layout Analysis 2 model training for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
configYesTraining configuration parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false and destructiveHint=false, but description does not elaborate on side effects like job creation, resource consumption, or expected duration. Does not clarify if training is synchronous or asynchronous.

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?

Single sentence, no wasted words, front-loaded with verb and resource.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, description fails to mention that the tool likely returns a job ID or status. Does not address how to check training progress or retrieve the resulting model. Lacks completeness for a training initiator tool.

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 covers both parameters with basic descriptions, but the description adds no value beyond the schema. The 'config' parameter is a complex object with no structure defined; description should hint at required keys or provide example values.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Start', the resource 'Layout Analysis 2 model training', and the scope 'for a collection'. It distinguishes from sibling training tools for other model types like HTR or table.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like transkribus_la_la2_inference or other training tools. Does not mention prerequisites (e.g., existing training data) or that it initiates an asynchronous job.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_train_la_citlabTrain Layout Analysis (CITlab)B

Start CITlab Layout Analysis model training for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
configYesTraining configuration parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description states 'Start... model training', which implies a mutation, consistent with readOnlyHint=false. However, it does not disclose side effects (e.g., asynchronous job, credit consumption, required permissions) that go beyond what annotations provide. Annotations are minimal, so the description should offer more behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence with no unnecessary words. It is front-loaded with the key action and resource.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite being a training tool with a nested 'config' object and no output schema, the description lacks details on the training process, return value, monitoring, and typical configuration. It is insufficient for an agent to understand how to use the tool effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for both parameters ('Collection ID' and 'Training configuration parameters'). The description adds no additional meaning beyond the schema, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Start'), the specific resource ('CITlab Layout Analysis model training'), and the context ('for a collection'). It distinguishes from sibling tools like transkribus_recog_train_htr_citlab and transkribus_recog_train_la2.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, such as transkribus_recog_train_la2 or transkribus_la_analyze. It does not mention prerequisites, conditions, or typical use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_recog_train_tableTrain Table RecognitionC

Start table recognition model training for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
configYesTraining configuration parameters

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds little beyond the annotations. 'Start training' implies a non-read-only, non-destructive action, aligning with annotations, but fails to disclose that training is an asynchronous job that may consume credits, return a job ID, or have constraints. The openWorldHint annotation suggests broad applicability, but the description provides 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.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no wasted words, but it is overly brief. It could include additional context (e.g., 'Returns a job ID') without sacrificing conciseness. The front-loading is adequate, but depth is lacking.

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?

No output schema is provided, and the description does not specify return values (e.g., job ID or status). Given that the tool starts a training process (likely asynchronous), the agent needs to know what to expect back. The two required parameters (collId and config) are mentioned, but the config object's complexity (nested object) is unaddressed. The description is incomplete for an AI agent to use 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 100%—both parameters (collId and config) have descriptions in the schema. The description adds no extra meaning; it repeats 'collection' but does not explain the config object's structure or expected keys. Baseline score of 3 is appropriate as schema already documents parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('start') and resource ('table recognition model training') with scope ('for a collection'), effectively distinguishing it from inference tools like transkribus_la_table_inference and other training tasks. However, it does not clarify what a 'collection' is in the Transkribus context, slightly limiting precision.

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 such as transkribus_recog_train_htr_citlab or transkribus_recog_train_la2. No prerequisites, preconditions, or exclusions are mentioned, leaving the user to infer the appropriate use case 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.

transkribus_recog_updateUpdate Recognition ModelB
Idempotent

Update a recognition model in a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
bodyYesModel update data
collIdYesCollection ID

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate idempotentHint=true and destructiveHint=false. The description merely says 'Update', which is consistent but adds no further behavioral context, such as whether the update is a full replacement or a patch, or what happens upon success. It does not contradict 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?

The description is a single, well-structured sentence that immediately conveys the purpose. It is concise and front-loaded with the verb and resource. However, it is minimal and could include a bit more context without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of the body parameter (a nested object with arbitrary properties) and no output schema, the description is insufficient. It does not explain expected content for body, return value, or error scenarios. The tool is part of a larger system with many sibling tools, and the description lacks connections or prerequisites.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema provides descriptions for all three parameters (collId, id, body), achieving 100% coverage. The description adds no additional semantic details beyond what the schema already provides. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Update' and the resource 'recognition model', and specifies the context 'in a collection'. This distinguishes it from sibling tools like transkribus_recog_delete or transkribus_recog_get. However, it does not elaborate on what aspects of the model can be updated, such as name or metadata, leaving some ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like transkribus_model_update or transkribus_recog_add_to_collection. It does not mention prerequisites, such as needing an existing model ID, or scenarios where other tools are more appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_search_fulltextFulltext SearchB
Read-onlyIdempotent

Search across document transcriptions using a fulltext query.

ParametersJSON Schema
NameRequiredDescriptionDefault
rowsNoNumber of results (default 10)
typeNoFilter by document type
queryYesFulltext search query
startNoStart offset (default 0)
collIdNoLimit search to a specific collection ID
filterNoFilter string
legacyNoUse legacy search

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, etc., indicating safe read. Description adds minimal context by specifying 'document transcriptions', but no further behavioral details (e.g., result format, pagination).

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?

Single sentence, front-loaded with action and scope, no unnecessary verbiage.

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?

Despite 7 parameters and no output schema, description only states purpose. Does not explain return value, pagination, or how to combine filters, leaving significant gaps for the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with terse descriptions for all 7 parameters. The tool description does not add any extra meaning beyond the schema, so baseline 3.

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?

Clearly states verb 'Search', resource 'document transcriptions', and method 'fulltext query'. Distinguishes from sibling tools like 'search_keyword' or 'search_tags' by specifying fulltext.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives like keyword or tag search. No explicit context or exclusions provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_search_keywordKeyword SearchC
Read-onlyIdempotent

Search for documents matching a keyword.

ParametersJSON Schema
NameRequiredDescriptionDefault
rowsNoNumber of results
fuzzyNoFuzzy matching level
probHNoUpper probability threshold
probLNoLower probability threshold
queryYesKeyword search query
startNoStart offset
collIdNoLimit search to a specific collection ID
filterNoFilter string
sortingNoSorting mode

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, destructiveHint=false, idempotentHint=true. The description adds no behavioral context such as pagination, result format, or rate limits. For a tool with many parameters, more transparency would be helpful.

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 sentence with no wasted words, making it concise and front-loaded. However, it might be too terse given the tool's complexity (9 parameters, multiple siblings).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 9 parameters and no output schema, the description is incomplete. It does not explain how keyword search works, how parameters interact, or what the response looks like. The annotations cover safety but not usage details.

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 parameters. The description does not add any additional meaning or context for the parameters, which is acceptable given 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?

The description clearly states the tool searches for documents by keyword, with a specific verb and resource. However, it does not explicitly differentiate from sibling tools like transkribus_search_fulltext or transkribus_search_tags, which is a minor gap.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, no prerequisites or context for use. The single sentence provides no usage direction beyond the basic purpose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_search_replaceSearch and ReplaceC
Idempotent

Search for a term and replace it across documents.

ParametersJSON Schema
NameRequiredDescriptionDefault
docIdNoLimit to a specific document ID
collIdNoLimit to a specific collection ID
searchTermYesTerm to search for
replaceTermYesReplacement term

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate mutation (readOnlyHint=false) but description adds no detail about scope, reversibility, or side effects beyond 'replace across documents'. For a mutation tool, more behavioral context is expected.

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 conveys core purpose efficiently, though additional details could be incorporated without harming 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?

Description lacks explanation of scope (e.g., which documents are affected) and return value. With no output schema, the agent needs hints about what the tool returns.

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 parameter descriptions. Description adds no extra semantics beyond what is already 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?

Description clearly states search and replace action across documents. However, it does not differentiate from sibling tool transkribus_search_replace_in_collection, which likely has similar purpose but scoped to collections.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives (e.g., transkribus_search_replace_in_collection). No prerequisites or limitations mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_search_replace_in_collectionSearch and Replace in CollectionB
Idempotent

Search for a term and replace it within a specific collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
rowsNoNumber of results
typeNoSearch type
docIdNoLimit to a specific document ID
queryNoSearch query
startNoStart offset
collIdYesCollection ID
filterNoFilter string
legacyNoUse legacy search
searchTermYesTerm to search for
replaceTermYesReplacement term

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=false (modification), destructiveHint=false (not destructive), idempotentHint=true (safe to repeat), and openWorldHint=true. The description adds no behavioral context beyond this—no mention of what gets affected, permissions, or side effects. It is adequate but does not enhance transparency beyond the structured data.

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 unnecessary words. It is concise and to the point. However, it could be slightly improved by adding structure (e.g., listing key parameters or scope). Currently, it is efficient but minimal.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (10 parameters, many optional) and the presence of similar siblings, the description is insufficiently complete. It does not explain return values, behavior when applied to multiple documents, or how it differs from other search-replace tools. The lack of output schema further increases the need for descriptive completeness, which is not met.

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 baseline is 3. The description does not add any parameter meaning beyond what the schema already provides. For example, it does not explain the difference between 'searchTerm' and 'query', or how 'docId' limits the operation. No extra detail is given.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool performs a search and replace within a specific collection, using the verb 'search and replace' and resource 'collection'. However, it does not differentiate from sibling tools like transkribus_search_replace, which likely operates at a different scope (e.g., document-level), missing an opportunity for distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives (e.g., transkribus_search_fulltext, transkribus_search_replace, transkribus_search_keyword). It lacks 'when to use' or 'when not to use' advice, leaving the agent to infer 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.

transkribus_search_reset_indexReset Search IndexC
Idempotent

Reset the search index, optionally for a specific collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoDocument ID
collIdNoCollection ID to reset index for
pageIdNoPage ID

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate idempotentHint=true and destructiveHint=false, so the description adds little behavioral insight. It does not explain potential side effects (e.g., index downtime, impact on searches) or what happens when different parameter combinations are used.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, concise but lacking important details like parameter interaction, return behavior, and usage context. It sacrifices completeness for brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, so description should clarify return values or confirmation. Missing explanation of what resetting entails for different parameter combinations (all index vs. specific scope). Overall insufficient for an AI agent to confidently invoke.

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 descriptions for each parameter. The description only references collection, not clarifying how collId, id, and pageId interact (e.g., independent filters or hierarchical). Baseline is adequate but no added value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (reset) and resource (search index), and mentions optional collection filtering. However, it does not specify that parameters for document ID and page ID are also available, leaving the scope partially ambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus other search-related tools (e.g., transkribus_search_fulltext, transkribus_search_keyword). The description lacks context for when a reset is appropriate and what distinguishes it from sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_search_tagsSearch TagsB
Read-onlyIdempotent

Search for tags, optionally filtered by collection or tag name.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoDocument ID
rowsNoNumber of results (default 20000)
startNoStart offset (default 0)
collIdNoLimit search to a specific collection ID
legacyNoUse legacy search (default false)
pageIdNoPage ID
tagNameNoFilter by tag name
tagValueNoFilter by tag value
attributesNoAttributes filter
exactMatchNoRequire exact match (default true)
regionTypeNoRegion type (default "Line")
caseSensitiveNoCase sensitive search (default false)

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true. The description adds no additional behavioral context beyond stating it searches, so it meets baseline but does not exceed.

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 concise at one sentence, but given the tool has 12 parameters, it could benefit from a bit more structure or front-loading of key filters. Still, it avoids verbosity.

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 12 parameters and no output schema, the description is too brief. It does not cover pagination defaults, result format, or how filters interact. More context is needed for an agent to use 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 100%, so all parameters are documented structurally. The description only mentions collection and tag name, not adding new meaning beyond what the schema provides. Baseline score is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Search' and the resource 'tags', with optional filters by collection or tag name. It effectively distinguishes from sibling tools like transkribus_search_fulltext or transkribus_search_keyword.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternative search tools. The description does not specify prerequisites, exclusions, or context for optimal use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_server_available_filesAvailable Client FilesB
Read-onlyIdempotent

List available client files on the server.

ParametersJSON Schema
NameRequiredDescriptionDefault
isReleaseNoFilter release files

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true, indicating a safe, read-only operation. The description adds no additional behavioral details such as pagination, response format, or filtering behavior beyond the single parameter.

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, clear sentence with no unnecessary words. It is appropriately front-loaded with the action and resource. However, it could benefit from a bit more context without sacrificing 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 list tool with no output schema and only one optional parameter, the description is overly sparse. It does not explain what 'client files' are, how results are returned, or how the 'isRelease' filter affects the output. Given the complex ecosystem of sibling tools, this lack of context impairs correct selection and invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers 100% of parameters (only 'isRelease' with description and default). The description does not add any extra meaning or usage context for the parameter, so it does not compensate beyond the schema's baseline. A score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('List') and the resource ('available client files on the server'). It effectively distinguishes from sibling tools that list other types of files or resources, such as transkribus_file_list_files or transkribus_doc_get_image_names.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. There is no mention of prerequisites, limitations, or contextual scenarios. With numerous sibling tools for listing files, this omission reduces usability.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_server_bug_reportSubmit Bug ReportB

Submit a bug report to the Transkribus server.

ParametersJSON Schema
NameRequiredDescriptionDefault
subjectYesBug report subject
descriptionYesDetailed description of the bug

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=false and destructiveHint=false, so the agent knows this is a mutation. The description adds no behavioral context beyond what annotations provide, such as authentication requirements, side effects, or result format. Given annotations cover basic 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?

The description is a single sentence with no waste. It is front-loaded and efficiently conveys the primary purpose. However, it could be expanded slightly to include context without losing 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 simple form submission tool with two string parameters and no output schema, the description is adequate but lacks post-submission behavior (e.g., confirmation, error handling). Annotations partially fill the safety profile, but the description could be more complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters ('subject' and 'description'). The description does not add any additional meaning, format expectations, or examples. Baseline 3 is correct.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('submit') and resource ('bug report') with the target ('Transkribus server'). While it is specific, it does not explicitly differentiate from siblings; however, the tool name itself provides unique identification among many sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives, nor are there any exclusions or prerequisites mentioned. The description assumes the agent knows when to submit a bug report, but with many sibling tools, this is insufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_server_client_versionGet Client VersionB
Read-onlyIdempotent

Get the current Transkribus client version.

ParametersJSON Schema
NameRequiredDescriptionDefault
isReleaseNoFilter release version
packageTypeNoPackage type

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations (readOnlyHint=true, destructiveHint=false, idempotentHint=true) already indicate a safe, read-only operation. The description adds no additional behavioral information (e.g., about caching, rate limits, or error conditions). It does not contradict 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?

The description is a single, concise sentence with no wasted words. It front-loads the key action and object. It could benefit from slightly more structure, but it is appropriately brief for a simple tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Without an output schema, the description should explain what the tool returns (e.g., a version string, object with fields). It fails to do so. Additionally, it does not describe how the optional parameters affect the result, leaving gaps for the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for its two parameters ('Filter release version' and 'Package type'), so the schema already provides meaning. The description does not add any parameter context beyond what is in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get' and the resource 'current Transkribus client version', making the tool's purpose immediately understandable. It distinguishes itself from the sibling tool 'transkribus_server_version' by specifying 'client version'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus its many siblings. There is no mention of context, prerequisites, or alternatives, leaving the agent without decision support.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_server_download_client_fileDownload Client FileB
Read-onlyIdempotent

Download a specific client file by name.

ParametersJSON Schema
NameRequiredDescriptionDefault
libsMapNoLibraries map
fileNameYesName of the file to download
isReleaseNoFilter release files

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 and destructiveHint=false, so the agent knows it's a safe read operation. The description adds the concept of downloading by name but does not elaborate on what the download entails (e.g., file type, size, side effects). Given the annotation coverage, the description provides marginal 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?

The description is a single concise sentence that is front-loaded with the key action. However, it is so brief that it omits potentially important context, though it avoids verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of 3 parameters and no output schema, the description is too minimal. It does not explain what happens after download (e.g., returns binary data, a URL, or a file path), nor does it address the relationship with the sibling tool. The tool's role in the broader system is 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?

The input schema already has 100% coverage with descriptions for all three parameters (fileName, isRelease, libsMap). The description does not add any new information about parameter meaning or usage 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 clearly states the action (download) and resource (client file) and specifies filtering by name. However, it does not differentiate from the sibling tool 'transkribus_server_download_client_file_new', missing an opportunity to clarify which tool to use for which 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 guidance is provided on when to use this tool versus alternatives like the 'new' variant. The description lacks any context about prerequisites, expected use cases, or exclusions, leaving the agent without decision support.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_server_download_client_file_newDownload Client File (New)C

Download a specific client file using the new endpoint.

ParametersJSON Schema
NameRequiredDescriptionDefault
fileNameYesName of the file to download
isReleaseNoFilter release files

TDQS

C2.6/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description claims 'download' implies a read operation, but annotations set readOnlyHint=false, suggesting possible side effects. This is a contradiction, as download typically does not modify state.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise at 9 words, but it omits necessary context about the tool's behavior and usage.

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?

No output schema is present, and the description does not explain what a 'client file' is, what the new endpoint entails, or whether the file is from the server. The minimal information is insufficient for a download 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 100% with descriptions for both parameters. The description adds no additional information 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?

The description clearly states the verb 'Download' and the resource 'client file', and distinguishes from the old version by mentioning 'new endpoint'. However, it does not clarify what makes this different from other download tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus the old version or alternatives. No when-to-use or when-not-to-use information is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_server_download_guiDownload Latest GUIB
Read-onlyIdempotent

Download the latest Transkribus GUI version.

ParametersJSON Schema
NameRequiredDescriptionDefault
isReleaseNoDownload release version
packageTypeNoPackage type to download

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 and idempotentHint=true, covering safety and idempotency. The description adds no further behavioral context (e.g., download triggers network call, file size implications), but does not contradict 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?

The description is a single concise sentence that is front-loaded with purpose. It is appropriately sized for a simple tool, though it could be slightly more informative without being verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 parameters, no output schema) and rich annotations, the description is minimally adequate. However, it lacks details about package types or what the download provides, which would be helpful for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with parameter descriptions like 'Download release version' and 'Package type to download'. The tool description does not add any additional meaning 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?

The description 'Download the latest Transkribus GUI version' clearly states the action (download) and the resource (latest GUI version), distinguishing it from other download tools like transkribus_server_download_client_file.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, such as when a specific client file is needed instead of the GUI version.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_server_get_eventsGet EventsC
Read-onlyIdempotent

Retrieve server events and notifications.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, so the tool's safety is clear. The description adds no additional behavioral context, but does not contradict annotations. A 3 is appropriate as it meets the baseline without adding value.

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 description is extremely short (two words beyond the title), but it sacrifices essential information. While concise in word count, it fails to provide sufficient detail, making it underspecified rather than efficiently concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters and no output schema, the description should compensate by explaining what events are, the return format, or any filtering. It does not, leaving the agent with minimal actionable information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has no parameters, and schema coverage is 100%. The description adds no parameter-specific meaning, but the baseline is 3 per the rules for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states it retrieves server events and notifications, which is a clear verb and resource, but it fails to differentiate from sibling tools like transkribus_server_version or transkribus_server_available_files. It is not a tautology but lacks specificity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus alternatives. There is no mention of context, exclusions, or related tools, making it impossible for an agent to decide when to invoke this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_server_versionGet Server VersionA
Read-onlyIdempotent

Get the current Transkribus server version.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds no additional behavioral context beyond stating the action. No contradictions, but it misses opportunities to explain what 'version' means or the expected format.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no redundancy. Every word serves a purpose, demonstrating excellent conciseness and front-loading of key information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters, rich annotations, and a simple action, the description is functional but minimal. It lacks details on the response format (e.g., version string structure) which could be useful for an agent, but is adequate for a straightforward version retrieval.

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 has no parameters with 100% coverage. The description does not need to add parameter details, but it also does not clarify return values which could be considered part of semantic context. Baseline 3 is appropriate.

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 'Get the current Transkribus server version' uses a specific verb (get) and resource (server version) with clear scope. It distinguishes well from sibling tools like transkribus_server_client_version which gets client version.

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?

No explicit when-to-use or alternative guidance is provided. The simple nature implies usage when server version is needed, but no exclusions or comparisons to siblings are given, leaving the agent to infer.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_stat_get_collGet Collection StatisticsC
Read-onlyIdempotent

Get statistics for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true. The description adds no behavioral context beyond the annotations, such as what happens if the collection does not exist or permission issues. With annotations covering the safety profile, a score of 2 is appropriate as the description provides no additional transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no unnecessary words. It is front-loaded and efficient. However, it might be considered too brief given the complexity of the tool, but it earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the high number of sibling tools and lack of output schema, the description is insufficient. It does not explain what statistics are returned (e.g., document count, size) or the format. While minimal, it lacks completeness for an agent to use effectively without additional context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% coverage for the single parameter collId with description 'Collection ID'. The tool description does not add any further semantic meaning for the parameter. Baseline 3 is correct since the schema already documents the parameter adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get statistics for a collection' clearly states the verb and resource, distinguishing it from sibling tools like transkribus_coll_get_metadata or transkribus_coll_list. However, it does not specify what type of statistics (e.g., counts, sizes), which would enhance clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. For example, it does not clarify that this tool is for aggregate statistics rather than detailed metadata retrieval, or when to use transkribus_stat_get_coll_stats instead.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_stat_get_coll_statsGet Collection Stats (New)B
Read-onlyIdempotent

Get collection statistics using the new stats endpoint.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection 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, idempotentHint=true, and destructiveHint=false, so the agent knows this is a safe read operation. The description adds no behavioral context beyond mentioning a 'new stats endpoint,' but it does not contradict 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single short sentence that front-loads the purpose. The phrase 'new stats endpoint' is somewhat vague and time-sensitive, but overall the description is concise and easy to consume.

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 single-parameter tool, the description is minimally adequate, but it lacks detail about what statistics are returned and how this differs from transkribus_stat_get_coll. With no output schema, the description would benefit from clarifying the scope or content of the statistics.

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 sole parameter collId is documented as 'Collection ID' with an integer type and valid range. The description adds no additional parameter semantics, so the baseline score 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 clearly states a specific verb and resource: get collection statistics. It is vague about what statistics are included and does not explicitly differentiate from sibling tools like transkribus_stat_get_coll, but it does convey the core operation adequately.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus the many sibling statistics tools such as transkribus_stat_get_coll, transkribus_coll_user_stats, or transkribus_stat_get_storage_usage. The phrase 'new stats endpoint' hints at a version distinction but does not explain when it should be preferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_stat_get_pages_filteredGet Collection Pages (Filtered)B
Read-onlyIdempotent

Get collection pages with filtering via POST body.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNoFilter criteria for pages
collIdYesCollection ID

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already communicate read-only, idempotent, non-destructive behavior, so the description does not need to repeat those. It does add one useful behavioral detail — filtering happens through a POST body — but it does not disclose result shape, pagination, limits, or other caveats. 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?

The description is a single front-loaded sentence with no filler words. It loses a point because 'filtering' is under-specified and 'POST body' is terse enough to leave ambiguity about required body structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has an opaque body parameter, no output schema, and many similarly named sibling tools, yet the description provides no filter-field examples, return-type expectations, or pagination behavior. An agent can identify the operation but lacks enough detail to construct a correct non-trivial filtered request.

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%: collId is described as 'Collection ID' and body as 'Filter criteria for pages'. The description adds only the POST-body transport detail and does not enumerate accepted filter fields, especially since body is an open additionalProperties object. 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 names a specific verb ('Get'), a clear resource ('collection pages'), and a mechanism ('filtering via POST body'), so an agent can tell this is a filtered read operation. It does not fully distinguish this from the many sibling page/stat retrieval tools, and the filter semantics remain generic.

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 alternatives such as transkribus_doc_get_pages, transkribus_doc_list_pages, transkribus_page_get, or other stat tools. The word 'filtered' hints at a use case, but no exclusions, prerequisites, or sibling comparisons are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_stat_get_page_statusGet Page StatusC
Read-onlyIdempotent

Get the page status overview for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
collIdYesCollection ID
nValuesNoNumber of results (-1 for all)
sortColumnNoColumn to sort by
sortDirectionNoSort direction: asc or desc

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, destructiveHint=false, idempotentHint=true, openWorldHint=true. The description adds no behavioral context beyond that, missing opportunities to describe the returned data or any side effects.

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 sentence that is concise and front-loaded with the verb 'Get'. It effectively communicates the core action without extraneous content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 5 parameters, no output schema, and a technical domain, the description is too minimal. It does not explain what 'page status overview' entails, what the return format is, or how parameters like index/nValues affect results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all 5 parameters. According to guidelines, baseline is 3. The description does not add parameter-specific info, but the schema already sufficiently documents them.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get the page status overview for a collection' clearly states the verb, resource, and context. However, it does not differentiate from sibling tools like transkribus_stat_get_coll or transkribus_stat_get_pages_filtered, which reduces clarity 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?

No guidance on when to use this tool versus alternatives. The description lacks any context about prerequisites, typical use cases, or exclusion criteria, leaving the agent to infer usage from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_stat_get_storage_usageGet Storage Usage DetailsC
Read-onlyIdempotent

Get storage usage details for a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection 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, destructiveHint=false, idempotentHint=true, openWorldHint=true. The description adds no behavioral context beyond what annotations provide, such as response format or side effects.

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, short sentence that is front-loaded and concise. It efficiently communicates the core purpose without unnecessary 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?

The tool has no output schema and a vague description. It fails to explain what 'storage usage details' means or what the response contains. Given the low complexity, the description should provide more context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 1 parameter with description 'Collection ID', and schema coverage is 100%. The tool description repeats 'for a collection' but adds no additional meaning or constraints 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 clearly states the verb ('Get'), resource ('storage usage details'), and scope ('for a collection'). It distinguishes from sibling tools like 'transkribus_stat_get_coll' and 'transkribus_stat_get_coll_stats' by specifying 'storage usage' vs general stats, though not 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 tool versus alternatives such as 'transkribus_stat_get_coll' or 'transkribus_stat_get_coll_stats'. The description does not mention prerequisites, exclusions, or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_stat_update_page_statusUpdate Page StatusC
Idempotent

Update the status of pages in a collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
pageIdNoSpecific page ID to update
statusYesNew page status value

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description merely says 'Update', which aligns with the write operation implied by annotations (readOnlyHint=false). However, it adds no behavioral details such as allowed status values, side effects on other pages, or whether the operation is scoped to a single page (pageId parameter is optional). The annotations provide idempotentHint=true and openWorldHint=true, but the description does not explain these or their implications. The lack of transparency about valid status inputs and the effect of omitting pageId is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no unnecessary words. It is appropriately front-loaded and efficient. However, it could be slightly improved by integrating key limitations or clarifying scope without adding bulk.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that there is no output schema and the tool has 3 parameters (one optional), the description is too sparse. It does not explain what status values are acceptable, whether updating applies to all pages in the collection when pageId is omitted, or what the expected behavior is. The name suggests a statistics-related update, but the context is unclear. The presence of sibling tools like 'transkribus_stat_get_page_status' suggests a related query tool, but no linkage is provided.

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. The description does not add any additional semantic meaning or examples beyond what the schema provides. Therefore, a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the verb 'Update' and the resource 'status of pages in a collection', making the core action clear. However, it does not differentiate from sibling tools like 'transkribus_page_update_status_v2' or 'transkribus_page_update_transcript_status', which may cause confusion about which tool to use for specific page status updates.

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. It does not mention prerequisites, typical use cases, or situations where the tool should be avoided. The agent receives no help in decision-making.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_system_db_statusDatabase StatusA
Read-onlyIdempotent

Check the status of the Transkribus database.

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?

The description is consistent with the annotations (readOnlyHint=true, destructiveHint=false), but it adds no additional behavioral context beyond what is already provided by the annotations. The tool is simple, so this is acceptable.

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, concise sentence that front-loads the purpose. Every word is necessary and contributes to clarity.

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 description is minimal but adequate for a simple tool with no parameters and no output schema. It lacks details about the return value or what 'status' entails, which could improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema is empty with 100% coverage, so there are no parameters to describe. The description does not add parameter information, meeting 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?

The description clearly states the verb 'Check' and the resource 'Transkribus database status', making the purpose clear. However, it does not differentiate from sibling tools, and 'status' could be more specific.

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 implies usage for checking database status, but it provides no explicit guidance on when to use this tool versus alternatives, nor any exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_system_fimagestoreImage Store StatusB
Read-onlyIdempotent

Check the status of the Transkribus image store.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

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, destructiveHint=false, and idempotentHint=true, which inform the agent that the operation is safe and repeatable. The description adds minimal behavioral context beyond identifying the resource, but does not contradict 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?

The description is extremely concise, consisting of a single sentence with no redundant information. Every word is necessary.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (no parameters, annotations cover safety), the description is minimally adequate. However, it lacks detail on the expected output (e.g., a health status object) that would help the agent interpret results. An output schema is absent, so extra context would be beneficial.

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 no parameters and 100% schema coverage, the baseline is 4. The description does not need to add parameter information, and it 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 clearly states 'check the status of the Transkribus image store,' specifying the verb (check) and resource (image store status). It distinguishes it from sibling tools like transkribus_system_db_status by naming a different component. However, it lacks detail on what 'status' encompasses.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., DB status, server info). The agent receives no context about scenarios where checking the image store is appropriate or when to avoid it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_upload_bulk_update_doc_metadataBulk Update Document MetadataC
Idempotent

Bulk update document metadata for uploads from a CSV payload.

ParametersJSON Schema
NameRequiredDescriptionDefault
csvNoInline CSV content. Exactly one of "csv" or "csvFilePath" is required.
csvFilePathNoAbsolute path to a local CSV file. Exactly one of "csv" or "csvFilePath" is required.

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, idempotentHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that: no information on CSV column layout, how per-row failures are handled, whether updates overwrite existing metadata, or any permission requirements 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 sentence with no wasted words and the operation front-loaded. It is efficient but so terse that it omits information the agent actually needs, bordering on 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 bulk mutation tool with no output schema and no required parameters, the description should at least sketch the CSV expectations and the effect on existing metadata. It leaves the agent without enough to call the tool confidently, especially against the ISAD sibling.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both csv and csvFilePath including the mutual-exclusivity rule. The description's mention of a 'CSV payload' does not add format or syntax 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 ('Bulk update'), resource ('document metadata'), and the input channel ('from a CSV payload'). It is clear about the operation, but it never distinguishes itself from the near-identical sibling transkribus_upload_bulk_update_isad_metadata, so an agent must infer which metadata kind 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 explicit when-to-use guidance, no prerequisites, and no pointer to alternatives such as transkribus_upload_update_metadata for single-document updates or the ISAD variant. The phrase 'for uploads' is the only contextual signal and it is too thin to route the agent reliably.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_upload_bulk_update_isad_metadataBulk Update ISAD MetadataB
Idempotent

Bulk update ISAD(G) metadata for uploads from a CSV payload.

ParametersJSON Schema
NameRequiredDescriptionDefault
csvNoInline CSV content. Exactly one of "csv" or "csvFilePath" is required.
csvFilePathNoAbsolute path to a local CSV file. Exactly one of "csv" or "csvFilePath" is required.

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 idempotentHint=true, so the mutation/idempotency profile is covered. The description adds only that input comes from a CSV, and says nothing about permissions required, which records are affected, or how partial failures behave. With annotations carrying the safety profile, 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 front-loaded sentence with no padding. It is efficient, though it could carry one more clause of actionable detail without becoming bloated.

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 no output schema, the definition covers the verb, resource, and input medium, but omits the CSV schema/column expectations and any response behavior. Adequate but with clear gaps an agent invoking a bulk metadata write would want filled.

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 both csv and csvFilePath are fully documented including the exactly-one-of constraint. The description's 'from a CSV payload' aligns with the schema but adds no format, delimiter, or column-mapping detail beyond it. 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: bulk update ISAD(G) metadata for uploads, sourced from CSV. The ISAD(G) qualifier and 'bulk' distinguish it from the related upload_bulk_update_doc_metadata and upload_get_bulk_isad_metadata siblings, though it never names 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?

No when-to-use guidance, no prerequisites, and no alternatives named. The sibling set contains get_bulk_isad_metadata (read side) and bulk_update_doc_metadata (non-ISAD variant), which an agent must disambiguate by name inference alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_upload_create_from_metsCreate Upload from METSC

Create an upload from a METS XML document.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdYesCollection ID
metsXmlNoInline METS XML document content. Exactly one of "metsXml" or "metsFilePath" is required.
metsFilePathNoAbsolute path to a local METS XML file. Exactly one of "metsXml" or "metsFilePath" is required.

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, openWorldHint=true, idempotentHint=false, and destructiveHint=false. The description adds no behavioral context beyond restating that the operation creates something from METS XML, so it contributes little beyond the structured hints.

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 extremely terse, but it is structurally clean and 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 write-oriented upload-creation tool in a large sibling set, the description is too minimal. It does not explain what an "upload" means here, how it differs from similar METS-import siblings, or any side effects, though the schema and annotations cover some basic safety and parameter details.

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 collId, metsXml, and metsFilePath, including the exactly-one-of constraint. The description adds no parameter-level meaning beyond that structured information, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (Create) and resource (upload from a METS XML document). It is clear what the tool does, but it does not differentiate itself from close siblings such as transkribus_coll_create_doc_from_mets or transkribus_coll_create_doc_from_mets_url.

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 guidance on when to use this tool versus alternatives like upload_create_structure, upload_create_s3, or coll_create_doc_from_mets. There are no stated prerequisites or exclusions, leaving selection entirely to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_upload_create_s3Create S3 UploadB

Create an upload from an S3 source.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoUpload ID
s3KeyNoS3 object key
titleNoDocument title
collIdYesCollection ID
s3BucketNoS3 bucket name

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate readOnlyHint=false, which aligns with the description's implication of a write operation. However, the description adds no behavioral details beyond annotations, such as side effects, required permissions, or what constitutes an 'upload'.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, which is concise but perhaps overly minimal. It front-loads the action but lacks structure and additional context that could be included without verbosity.

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, and the description does not explain the return value or the process after creation. The openWorldHint suggests unknown side effects, but the description fails to provide completeness.

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 documentation coverage is 100%, so the baseline is 3. The description does not add any additional meaning or examples for the parameters (collId, id, s3Bucket, s3Key, title).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Create an upload') and specifies the source ('from an S3 source'). This distinguishes it from sibling upload creation tools like 'transkribus_upload_create_from_mets' and 'transkribus_upload_create_structure'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives, nor are there prerequisites or context about the upload process. The description is purely declarative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_upload_create_structureCreate Upload StructureC

Create an upload document structure describing pages to be uploaded.

ParametersJSON Schema
NameRequiredDescriptionDefault
pagesYesOrdered list of pages in this upload structure
titleYesDocument title
authorNoDocument author
collIdYesCollection ID
descriptionNoDocument description
relatedUploadIdNoID of a related upload

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false, destructiveHint=false, idempotentHint=false, and openWorldHint=true, so the mutation and non-idempotency are already signaled. The description adds no extra context — it does not say whether data is persisted, what permissions are needed, or what the caller receives 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 efficient, front-loaded sentence with no filler. It is under-specified rather than bloated, which is a completeness problem rather than a conciseness one.

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 creation tool with no output schema, the description leaves critical gaps: what the result is, whether it must be passed to a subsequent upload call, and how it differs from the sibling upload creators. The annotations and rich schema cover part of the burden but not this routing/return-value 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% and covers all six parameters including nested page fields (pageNr, fileName, pageXmlName) with examples, so the schema does the heavy lifting. The description contributes nothing beyond it, so the baseline 3 applies.

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 verb (Create) and a resource (upload document structure describing pages), which is concrete, but 'structure' is ambiguous — it is unclear whether this builds a payload descriptor or persists an upload entity, and it is not distinguished from siblings such as upload_create_from_mets, upload_create_s3, or upload_page.

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: no mention of prerequisites (collection must exist, files must be staged), no indication of the downstream call this structure feeds, and no exclusions relative to the other upload_* tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_upload_deleteDelete UploadB
DestructiveIdempotent

Delete an upload by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
uploadIdYesResource ID

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds no behavioral context beyond annotations, which already indicate destructive and idempotent nature. With annotations present, this is acceptable but minimal.

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?

Extremely concise: one focused sentence with no fluff. Front-loaded with the action, easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple delete tool with one parameter and comprehensive annotations, the description is minimally adequate. However, it lacks context about what an 'upload' is or its lifecycle, which could be helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the description adds no additional meaning beyond the schema's 'Resource ID' description. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (delete) and resource (upload) and method (by ID). It is specific and unambiguous, but does not differentiate from sibling upload tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, nor any prerequisites or conditions such as upload status requirements. The description is purely functional.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_upload_get_bulk_doc_metadataGet Bulk Document MetadataB
Read-onlyIdempotent

Retrieve bulk document metadata for uploads.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdNoCollection ID

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, destructiveHint false, idempotentHint true, and openWorldHint true, indicating safe, idempotent reads. The description adds no further behavioral context (e.g., what metadata fields are returned, pagination behavior, or rate limits). It does not contradict 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?

The description is extremely concise—one short sentence. It is well-structured and front-loaded with the key action and resource. However, it could be slightly more informative without becoming verbose.

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?

Despite having only one parameter and no output schema, the description is too minimal. It fails to explain what 'bulk metadata' entails, what the return format looks like, or how to use the tool effectively. A retrieval tool should provide more 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 coverage is 100% for the single parameter collId, which has a clear description ('Collection ID'). The tool description adds no additional semantics or guidance about the parameter (e.g., optionality, default behavior when omitted). Baseline 3 applies since schema is sufficient.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Retrieve') and resource ('bulk document metadata'), and specifies the domain ('for uploads'). It distinguishes from sibling upload tools like status or update, though not 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 provided on when to use this tool versus alternatives such as transkribus_upload_get_status or transkribus_upload_get_bulk_isad_metadata. The context of use is implied but not clarified.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_upload_get_bulk_isad_metadataGet Bulk ISAD MetadataB
Read-onlyIdempotent

Retrieve bulk ISAD(G) metadata for uploads.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdNoCollection ID

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, destructiveHint=false, idempotentHint=true, and openWorldHint=true. The description adds no additional behavioral context beyond stating the basic action. It does not contradict 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?

The description is a single short sentence that conveys the core purpose without extraneous words. It is front-loaded. However, it could benefit from slightly more context without becoming verbose.

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 only one parameter and no output schema, the description lacks essential context about what 'bulk ISAD(G) metadata' entails and when to prefer this tool over similar ones like 'transkribus_upload_get_bulk_doc_metadata'. Absence of return value expectations or typical use cases makes it incomplete for an agent unfamiliar with Transkribus.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has one parameter (collId) with a description in the schema. The description does not add meaning beyond the schema, leaving the agent to infer that the collection ID relates to uploads. Schema coverage is 100%, so 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 includes a clear verb ('Retrieve') and resource ('bulk ISAD(G) metadata'), and specifies the scope ('for uploads'). However, it does not differentiate from the sibling tool 'transkribus_upload_get_bulk_doc_metadata', which suggests a similar purpose for different metadata 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 is provided on when to use this tool versus alternatives. The description does not mention prerequisites, exclusions, or related tools. Annotations indicate it is read-only and idempotent, but this is not leveraged in the description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_upload_get_statusGet Upload StatusB
Read-onlyIdempotent

Get the status of an upload by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
uploadIdYesResource ID

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true. The description adds no behavioral details beyond restating that it gets status; it does not disclose what status information is returned (e.g., progress, error messages) or any side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no extraneous words. It front-loads the purpose.

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 one parameter and no output schema, the description is adequate but could be more helpful by indicating typical status values or response structure. Given the annotations provide safety context, the description meets minimum viability.

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 'uploadId' described as 'Resource ID'. The description merely repeats 'by ID' without adding meaning or context about how to obtain or interpret the uploadId. With high schema coverage, baseline score is 3.

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 'Get the status of an upload by ID' uses a specific verb ('get') and resource ('status of an upload'), clearly distinguishing this tool from sibling tools like transkribus_upload_delete or transkribus_upload_create_s3.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, such as when to poll status versus other upload operations. No explicit when/when-not context is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_upload_pageUpload PageB
Idempotent

Upload a page image (and optional PAGE XML) to an existing upload.

ParametersJSON Schema
NameRequiredDescriptionDefault
fileNameNoFile name for the image part, overriding the local file's basename
uploadIdYesResource ID
imagePathYesAbsolute local path to the page image file
pageXmlPathNoAbsolute local path to a PAGE XML file for this page

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, destructiveHint=false, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds only the 'existing upload' targeting constraint; it does not mention that re-uploading the same page is idempotent, nor any auth, size-limit, or side-effect context. It does not contradict 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single well-formed sentence with the core action and the required/optional inputs front-loaded, no filler. It is slightly under-specified rather than padded, so it earns a 4 rather than a 5.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, an agent cannot learn what the call returns (e.g., page id or status) since the description stays silent on return values. The input side is adequately covered by the schema plus the 'existing upload' note, making it minimally viable but not complete for an upload/mutation 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 description coverage is 100%, so all four parameters (fileName, uploadId, imagePath, pageXmlPath) are already documented in the schema, including the local-path vs filename override distinction. The description merely restates that the image is required and PAGE XML optional, adding no syntax or format detail 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 and resource ('Upload a page image (and optional PAGE XML)') and scopes it to 'an existing upload', which distinguishes it from the create-from-* / create_structure / create_s3 siblings. It does not explicitly name those alternatives, 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?

The phrase 'to an existing upload' implies the prerequisite that an upload container must already exist, which is useful usage context. However, there is no explicit when-to-use guidance, no comparison to transkribus_upload_create_structure or transkribus_upload_create_s3, and no note on when PAGE XML should be supplied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_upload_update_metadataUpdate Upload MetadataC
Idempotent

Update metadata for an existing upload.

ParametersJSON Schema
NameRequiredDescriptionDefault
collIdNoCollection ID
metadataNoMetadata key-value pairs to update
uploadIdYesResource ID

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=false, destructiveHint=false, idempotentHint=true. The description merely says 'Update metadata,' adding no behavioral details such as whether metadata is merged or replaced, or what response to expect. With annotations present, the description contributes little extra transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, which is concise but lacks necessary details. It is not overly verbose, but it could be more informative without sacrificing brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has three parameters, no output schema, and minimal annotations, the description is too sparse. It does not explain the effect of the update (e.g., overwrite vs. merge), the expected metadata format, or any side effects, leaving the agent underinformed.

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 descriptions for all three parameters ('Resource ID', 'Collection ID', 'Metadata key-value pairs to update'). The description does not add any meaning beyond the schema, so it meets 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?

The description clearly states the verb 'Update' and the resource 'metadata for an existing upload,' making the purpose straightforward. However, it does not differentiate from sibling tools like transkribus_doc_update_metadata or transkribus_coll_update_metadata, which also update metadata on different 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?

No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, context, or exclusions, leaving the agent without decision support.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_user_activity_recognitionGet User Recognition ActivityA
Read-onlyIdempotent

Get recognition activity history for a specific user.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
toNoEnd timestamp (epoch ms)
fromNoStart timestamp (epoch ms)

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, so the description aligns but adds no extra behavioral context beyond stating it's a read operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with no unnecessary words, fully front-loaded with essential 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 simple read operation with good annotations and schema, the description is mostly complete but lacks details on the output format since 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 parameters are documented. The description does not add additional meaning 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?

Description clearly states verb 'Get', resource 'recognition activity history', and scope 'for a specific user'. It differentiates from sibling tools like transkribus_coll_activity_recognition and transkribus_user_activity_saves.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives. No context about intended scenarios or exclusions provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_user_activity_savesGet User Save ActivityB
Read-onlyIdempotent

Get save activity history for a specific user.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
toNoEnd timestamp (epoch ms)
fromNoStart timestamp (epoch ms)

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, so the agent knows it's safe. The description adds no further behavioral traits (e.g., what is returned, pagination, rate limits). With annotations, the description is adequate but not additive.

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?

Single sentence, no fluff, front-loaded with the purpose. Every word earns 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?

No output schema provided, and the description does not describe the return format of the save activity history. For a read-only tool, more detail on expected output would improve completeness. The required parameter is clear.

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 baseline 3. The description does not add any additional meaning beyond the schema descriptions. It does not explain that 'id' is the user's ID or that from/to define a time range.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and resource ('save activity history for a specific user'). It distinguishes from sibling tools like transkribus_coll_activity_saves by specifying 'user', but doesn't explicitly differentiate from all siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives, no prerequisites, no context on when not to use it. Only a brief statement of purpose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_user_count_my_docsCount My DocumentsB
Read-onlyIdempotent

Get the total number of documents owned by the current user.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)
getAllDocsIfAdminNoGet all docs if admin

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, idempotentHint=true and destructiveHint=false, so the safety profile is covered without the description. The description adds the 'owned by current user' scoping, but says nothing about the admin scope implied by getAllDocsIfAdmin or how index/nValues affect the count, so added value is modest.

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 scope front-loaded and zero filler. It is efficient, though its brevity leaves the pagination/admin parameters unaddressed, which is ultimately a completeness concern rather than 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 count tool with no output schema this is nearly adequate, but the description does not reconcile 'total number' with the index/nValues pagination parameters, nor explain the getAllDocsIfAdmin override that changes whose documents are counted. These gaps matter 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 description coverage is 100%, so all three parameters (index, nValues, getAllDocsIfAdmin) are already documented in the schema; baseline 3 applies. The description contributes no additional meaning and in fact creates ambiguity, since a 'total number' would not ordinarily be paginated by index/nValues or scoped by an admin 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?

The description names a specific verb (count) and a clear resource (documents owned by the current user), which is more precise than the tautological title alone. It does not, however, distinguish itself from the closely related sibling transkribus_user_list_my_docs or transkribus_coll_count_docs, 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?

There is no when-to-use guidance at all: nothing states that this should be preferred over list_my_docs when only a total is needed, nor any prerequisite such as being authenticated as the owning user. Usage is only weakly implied by the word 'current user'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_user_deleteDelete UserB
DestructiveIdempotent

Delete a user by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already convey destructiveHint=true and idempotentHint=true, so the safety profile is clear. The description adds no further context about side effects, auth requirements, or behavior on deletion of a non-existent user. It is adequate but not enhanced.

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, direct sentence with no fluff. It is appropriately sized for the tool's simplicity, though it could slightly elaborate on the effect (e.g., permanent deletion).

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 delete operation with one parameter and no output schema, the description covers the basics. However, it lacks details on error cases (user not found) or dependencies, which would be helpful given the tool's destructive nature.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for the 'id' parameter ('Resource ID'). The description only restates that the user is deleted by ID, adding no additional meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Delete') and the target resource ('a user'), with the identifier ('by ID'). It distinguishes itself from sibling tools like transkribus_user_get and transkribus_user_list by explicitly calling out deletion.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., transkribus_user_find, transkribus_user_list). There is no mention of prerequisites, permissions, or situations where deletion might fail (e.g., user in use).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_user_findFind UserB
Read-onlyIdempotent

Search for users by username/email.

ParametersJSON Schema
NameRequiredDescriptionDefault
userNoUsername or email to search for
lastNameNoFilter by last name
firstNameNoFilter by first name
exactMatchNoRequire exact match (default true)
caseSensitiveNoCase sensitive search (default false)

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, destructiveHint, idempotentHint. Description adds no additional behavioral context beyond what annotations provide. No 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?

Single sentence, efficient, front-loaded purpose. No wasted words, but could be slightly more structured without losing 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?

Simple tool with clear parameters but missing return format or pagination details. Adequate but could be more complete given 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% with clear parameter descriptions. Description does not add meaning beyond schema, so baseline 3.

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?

Description clearly states verb 'search', resource 'users', and means 'by username/email'. It distinguishes from sibling tools like transkribus_user_list and transkribus_user_get.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives like transkribus_user_list or transkribus_user_get. Does not mention when not to use or provide context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_user_getGet UserA
Read-onlyIdempotent

Get details of a specific user by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint, destructiveHint, idempotentHint, and openWorldHint. The description does not add behavioral context beyond what annotations convey. It is not contradictory, but adds no extra value here.

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, 8 words, front-loaded with the verb 'Get'. Every word is necessary and there is no fluff.

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 get-by-ID tool with strong annotations and a single well-described parameter, the description is sufficient. It covers the purpose and required input. No output schema exists, but that is acceptable given the simplicity.

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% (parameter 'id' has description 'Resource ID'). The tool description says 'by ID' which essentially restates the schema. No additional meaning provided beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get', resource 'details of a specific user', and the means 'by ID'. It effectively distinguishes from sibling tools like transkribus_user_list and transkribus_user_find.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like transkribus_user_list (for listing all users) or transkribus_user_find (for searching by criteria). The description implies you need a specific ID but does not explicitly state the context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_user_get_job_aclGet Job ACLA
Read-onlyIdempotent

Get the job access control list for the current user.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

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, destructiveHint=false, idempotentHint=true. The description adds 'for the current user' scope but no additional behavioral traits 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?

Single sentence of 11 words, efficient and front-loaded. 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?

Despite no output schema or parameters, the description is adequate for a simple getter. Could optionally explain what an ACL contains, but 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?

No parameters, schema coverage 100%. Baseline 4 applies; description does not need to add parameter info.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly specifies the action 'Get', the resource 'job access control list', and the scope 'for the current user'. It is distinct from sibling tools like admin-oriented ACL tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., admin ACL tools). No mention of prerequisites or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_user_get_statsGet User StatsA
Read-onlyIdempotent

Get usage statistics for the current user.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description does not add any behavioral context beyond what annotations already provide (readOnlyHint, destructiveHint, idempotentHint, openWorldHint). It omits details like authentication requirements, rate limits, or return format.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence with no wasted words. It is front-loaded with the action and resource.

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, zero-parameter read-only tool, the description provides the essential information. However, it could be more complete by hinting at what specific statistics are returned, especially since there is no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With zero parameters, the baseline score is 4. The description correctly implies no input is needed, and the schema is fully covered.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and the resource ('usage statistics for the current user'). It distinguishes itself from sibling tools like transkribus_coll_user_stats or transkribus_stat_get_coll by specifying 'current user'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. Given the large number of sibling tools, some context on when to prefer this over other stats tools would be helpful.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_user_get_storageGet User StorageB
Read-onlyIdempotent

Get storage usage information for a specific user.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=true, destructiveHint=false, and idempotentHint=true. The description adds little beyond saying it gets storage usage; no additional behavioral traits like data scope or limits are disclosed. It neither contradicts nor significantly augments 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?

The description is a single, clear sentence with no unnecessary words. It efficiently conveys the tool's purpose.

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 good annotations, the description is adequate but lacks output details (no output schema). It doesn't mention what format the storage information returns, which could be important for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% coverage for the single 'id' parameter. The description does not add meaning beyond the schema's 'Resource ID', so it meets the baseline but doesn't compensate further.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool gets storage usage information for a specific user, with a specific verb and resource. It distinguishes from other user-related tools like transkribus_user_get (general user info) and transkribus_user_get_stats (user stats), though it doesn't explicitly 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?

The description provides no guidance on when to use this tool versus alternatives, such as transkribus_stat_get_storage_usage (which might be for collections). It lacks context on prerequisites or use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_user_initInitialize UserB
Idempotent

Initialize or set up a user account by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesResource ID
emailNoEmail address
lastNameNoLast name
usernameNoUsername
firstNameNoFirst name

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations provide idempotentHint=true, destructiveHint=false, and readOnlyHint=false. The description adds the term 'initialize' but does not clarify if it creates a new user or updates an existing one, nor does it disclose side effects or authorization needs. It meets the minimum bar but adds little 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.

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 concise, though it may be too terse to fully inform the agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite complete schema coverage and annotations, the description omits crucial context: whether the tool creates or updates a user, what happens on duplicate ID, and the behavior when optional fields are omitted. For a tool with 5 parameters and no output schema, this is insufficient.

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%—all five parameters have descriptions. The description only references 'by ID' and does not add further meaning to parameters like username or email. Baseline 3 is appropriate as the schema already documents parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'initialize/set up' and the resource 'user account', and mentions the key parameter 'by ID'. It distinguishes from sibling tools like transkribus_user_get and transkribus_user_delete by indicating a setup operation, though the exact nature (creation vs. update) is ambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like transkribus_user_get or transkribus_user_find. There is no mention of prerequisites, scenarios, or exclusions, leaving the agent to infer usage from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_user_is_allowed_for_jobIs User Allowed for JobB
Read-onlyIdempotent

Check if the current user is allowed to run a specific job type.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobImplYesJob implementation class name

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 and destructiveHint=false, indicating a safe read operation. The description adds no additional behavioral details (e.g., that it returns a boolean, or requires specific authentication). It does not contradict 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?

The description is a single sentence, front-loading the purpose. It is efficient but could include more detail without being verbose. No waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple nature (one parameter, read-only check), the description is minimally adequate. However, it lacks information about the return value (boolean) and the context of 'current user'. Without an output schema, the agent might benefit from knowing the result format.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers 100% of parameters with a basic description of jobImpl as 'Job implementation class name'. The description does not explain what values are valid or how to find the class name. Schema handles the parameter meaning, so 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 name and description clearly state the purpose: checking user permission for a job type. It is specific enough to distinguish from siblings like transkribus_auth_check_session which checks session validity, not job permission. However, it could be more explicit about the job type context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives such as transkribus_admin_authorize_users_for_job or transkribus_user_get_job_acl. The description provides no context for when a permission check is needed or what constitutes a 'job type'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_user_listList UsersB
Read-onlyIdempotent

List all users with pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
userNoUsername or email to search for
indexNoStart index (0-based)
nValuesNoNumber of results (-1 for all)
lastNameNoFilter by last name
firstNameNoFilter by first name
exactMatchNoRequire exact match
onlyActiveNoOnly return active users
sortColumnNoColumn to sort by
caseSensitiveNoCase sensitive search
sortDirectionNoSort direction: asc or desc

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, destructiveHint=false, idempotentHint=true, and openWorldHint=true, so the safety profile is covered. The description adds 'with pagination' which is already implied by parameters. No additional behavioral details like auth requirements or rate limits are provided.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise with a single sentence. It conveys the core purpose without unnecessary words. However, it could be expanded to include more useful information without becoming verbose.

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?

The tool has 10 parameters and no output schema. The description does not explain the response structure, pagination semantics (how index and nValues work), or the effect of filters. It is insufficient for an agent to fully understand the tool's behavior.

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 no extra meaning beyond the schema; it only hints at pagination without clarifying parameter usage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'List' and resource 'users', indicating the tool lists all users. It also mentions pagination, which is a key feature. However, it does not distinguish this tool from related sibling tools like transkribus_user_get or transkribus_user_find.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It lacks context on filtering, prerequisites, or when pagination is needed. No mention of use cases or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_user_list_my_docsList My DocumentsA
Read-onlyIdempotent

List documents owned by the current user with pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNoStart index (0-based)
collIdNoFilter by collection ID
filterNoFilter string
isStrayNoFilter stray documents
nValuesNoNumber of results (-1 for all)
setCollsNoSet collection info on results
isDeletedNoInclude deleted documents
sortColumnNoColumn to sort by
caseSensitiveNoCase sensitive filter
sortDirectionNoSort direction: asc or desc
getAllDocsIfAdminNoGet all docs if admin

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint, destructiveHint, idempotentHint, openWorldHint. The description adds 'with pagination', confirming pagination support but no other behavioral details 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?

Single sentence, no unnecessary words, front-loaded with action and resource.

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 11 parameters and no output schema, the description only covers pagination. It omits filtering capabilities (collId, filter, isDeleted, etc.) and sorting, which are key features of the tool. Could be more complete given the tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline 3. Description only mentions pagination, which ties to index/nValues, but adds no meaning for other parameters (sortColumn, collId, filter, etc.) beyond what 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?

Description specifies verb 'list', resource 'documents owned by the current user', and feature 'pagination', clearly distinguishing from siblings like transkribus_coll_list_docs and transkribus_user_count_my_docs.

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?

No explicit guidance on when to use this tool vs alternatives. While the scope is implied by 'owned by the current user', it does not mention when not to use or compare with similar tools like transkribus_coll_list_docs.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_user_list_tag_defsList Tag DefinitionsA
Read-onlyIdempotent

List all tag definitions for the current user.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

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, destructiveHint=false, and idempotentHint=true. The description adds no further behavioral context beyond 'list all', but given the annotations, it is not misleading. A 3 is appropriate as the description provides minimal added value.

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 sentence of 7 words, conveying all necessary information without any waste. It is appropriately concise and 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 parameterless tool with good annotations, the description is largely complete. However, it could mention the return format or pagination, especially since there is no output schema. Still, it sufficiently describes the tool's function.

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?

There are no parameters, and the schema description coverage is 100% (empty). The description does not need to add parameter details, so a baseline of 4 is justified.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (list), resource (tag definitions), and scope (current user). This distinguishes it from sibling tools like transkribus_coll_list_tag_defs which list per collection, and transkribus_user_update_tag_defs which updates.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. For example, it does not mention when to use user-level vs collection-level tag listing or any prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transkribus_user_update_tag_defsUpdate Tag DefinitionsA
Idempotent

Create or update tag definitions for the current user.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagDefsNoArray of tag definitions to update

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate idempotentHint=true and readOnlyHint=false, which the description does not contradict. However, the description adds no additional behavioral context beyond 'create or update', missing details on overwrite behavior or limits.

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 succinct sentence that front-loads the key action and scope. No unnecessary words.

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 tool with one parameter and annotations, the description covers the basic operation but lacks usage guidance and behavioral depth. It is minimally 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 coverage is 100% for the single parameter tagDefs, so the baseline is 3. The description does not add extra meaning beyond what the schema 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?

The description clearly specifies the verb (create or update), resource (tag definitions), and scope (for the current user). It distinguishes from sibling tools like transkribus_coll_update_tag_defs which target collection-level tags.

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 does not provide guidance on when to use this tool versus alternatives like transkribus_coll_update_tag_defs or transkribus_coll_update_default_tag_defs. No explicit context for selection is given.

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. 52 tool updatesv4.0.0
    • Changedtranskribus_admin_authorize_users_for_job1 field changed
      • addedInput schema / properties / userIds / items / description
        Added value: +"User ID"
    • Changedtranskribus_coll_create_doc_from_ftp1 field changed
      • removedInput schema / properties / title
        Removed value: -{
        -  "description": "Document title",
        -  "type": "string"
        -}
    • Changedtranskribus_coll_create_doc_from_iiif3 fields changed
      • addedInput schema / properties / canvasFilenameReference
        Added value: +{
        +  "description": "Canvas filename reference",
        +  "type": "string"
        +}
      • removedInput schema / properties / fileName
        Removed value: -{
        -  "description": "File name for the document",
        -  "type": "string"
        -}
      • removedInput schema / properties / title
        Removed value: -{
        -  "description": "Document title",
        -  "type": "string"
        -}
    • Changedtranskribus_coll_create_doc_from_mets4 fields changed
      • removedInput schema / properties / fileName
        Removed value: -{
        -  "description": "METS file name",
        -  "type": "string"
        -}
      • addedInput schema / properties / metsFilePath
        Added value: +{
        +  "description": "Local file path to a METS XML file",
        +  "type": "string"
        +}
      • addedInput schema / properties / metsXml
        Added value: +{
        +  "description": "Inline METS XML content",
        +  "type": "string"
        +}
      • removedInput schema / properties / title
        Removed value: -{
        -  "description": "Document title",
        -  "type": "string"
        -}
    • Changedtranskribus_coll_create_doc_from_mets_url2 fields changed
      • removedInput schema / properties / fileName
        Removed value: -{
        -  "description": "File name for the document",
        -  "type": "string"
        -}
      • removedInput schema / properties / title
        Removed value: -{
        -  "description": "Document title",
        -  "type": "string"
        -}
    • Removedtranskribus_coll_create_doc_from_pdf
    • Changedtranskribus_coll_credit_history4 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
      • changedInput schema / properties / sortDirection / description
        Previous value: -"Sort direction (asc/desc)"New value: +"Sort direction: asc or desc"
    • Changedtranskribus_coll_credit_list4 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
      • changedInput schema / properties / sortDirection / description
        Previous value: -"Sort direction (asc/desc)"New value: +"Sort direction: asc or desc"
    • Changedtranskribus_coll_credit_transactions4 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
      • changedInput schema / properties / sortDirection / description
        Previous value: -"Sort direction (asc/desc)"New value: +"Sort direction: asc or desc"
    • Changedtranskribus_coll_list4 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
      • changedInput schema / properties / sortDirection / description
        Previous value: -"Sort direction (asc/desc)"New value: +"Sort direction: asc or desc"
    • Changedtranskribus_coll_list_docs_xml4 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
      • changedInput schema / properties / sortDirection / description
        Previous value: -"Sort direction (asc/desc)"New value: +"Sort direction: asc or desc"
    • Changedtranskribus_coll_list_for_user4 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
      • changedInput schema / properties / sortDirection / description
        Previous value: -"Sort direction (asc/desc)"New value: +"Sort direction: asc or desc"
    • Changedtranskribus_coll_list_xml4 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
      • changedInput schema / properties / sortDirection / description
        Previous value: -"Sort direction (asc/desc)"New value: +"Sort direction: asc or desc"
    • Removedtranskribus_coll_upload_doc
    • Removedtranskribus_coll_upload_doc_multipart
    • Changedtranskribus_coll_user_get_list4 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
      • changedInput schema / properties / sortDirection / description
        Previous value: -"Sort direction (asc/desc)"New value: +"Sort direction: asc or desc"
    • Changedtranskribus_coll_user_list4 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
      • changedInput schema / properties / sortDirection / description
        Previous value: -"Sort direction (asc/desc)"New value: +"Sort direction: asc or desc"
    • Changedtranskribus_coll_user_stats4 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
      • changedInput schema / properties / sortDirection / description
        Previous value: -"Sort direction (asc/desc)"New value: +"Sort direction: asc or desc"
    • Changedtranskribus_credit_get_products4 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
      • changedInput schema / properties / sortDirection / description
        Previous value: -"Sort direction (asc/desc)"New value: +"Sort direction: asc or desc"
    • Changedtranskribus_doc_get_pages4 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values (-1 for all)"New value: +"Number of results (-1 for all)"
      • changedInput schema / properties / sortDirection / description
        Previous value: -"Sort direction (asc/desc)"New value: +"Sort direction: asc or desc"
    • Addedtranskribus_doc_get_plaintext
    • Changedtranskribus_doc_get_transcript_ids3 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
    • Changedtranskribus_job_get_credit_transactions4 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
      • changedInput schema / properties / sortDirection / description
        Previous value: -"Sort direction (asc/desc)"New value: +"Sort direction: asc or desc"
    • Addedtranskribus_job_wait
    • Changedtranskribus_kws_get_hits1 field changed
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of results"New value: +"Number of results (-1 for all)"
    • Changedtranskribus_label_assign_documents1 field changed
      • addedInput schema / properties / documentIds / items / description
        Added value: +"Document ID"
    • Changedtranskribus_label_assign_pages1 field changed
      • addedInput schema / properties / pageIds / items / description
        Added value: +"Resource ID"
    • Changedtranskribus_label_remove_documents1 field changed
      • addedInput schema / properties / documentIds / items / description
        Added value: +"Document ID"
    • Changedtranskribus_label_remove_pages1 field changed
      • addedInput schema / properties / pageIds / items / description
        Added value: +"Resource ID"
    • Changedtranskribus_label_replace_document_assignments1 field changed
      • addedInput schema / properties / labelIds / items / description
        Added value: +"Label ID"
    • Changedtranskribus_label_replace_page_assignments1 field changed
      • addedInput schema / properties / labelIds / items / description
        Added value: +"Label ID"
    • Changedtranskribus_model_get7 fields changed
      • addedInput schema / properties / facetLimit / default
        Added value: +10
      • addedInput schema / properties / index / default
        Added value: +0
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • addedInput schema / properties / minFacetCount / default
        Added value: +2
      • addedInput schema / properties / nValues / default
        Added value: +-1
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
    • Changedtranskribus_model_get_by_type2 fields changed
      • addedInput schema / properties / facetLimit / default
        Added value: +10
      • addedInput schema / properties / minFacetCount / default
        Added value: +2
    • Changedtranskribus_model_get_train_data_docs5 fields changed
      • addedInput schema / properties / index / default
        Added value: +0
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • addedInput schema / properties / nValues / default
        Added value: +-1
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
    • Changedtranskribus_model_get_validation_data5 fields changed
      • addedInput schema / properties / index / default
        Added value: +0
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • addedInput schema / properties / nValues / default
        Added value: +-1
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
    • Changedtranskribus_model_get_validation_data_docs5 fields changed
      • addedInput schema / properties / index / default
        Added value: +0
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • addedInput schema / properties / nValues / default
        Added value: +-1
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
    • Changedtranskribus_page_assign_plaintext1 field changed
      • addedInput schema / properties / parent / default
        Added value: +-1
    • Addedtranskribus_page_get_image
    • Changedtranskribus_page_list_transcripts5 fields changed
      • addedInput schema / properties / index / default
        Added value: +0
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • addedInput schema / properties / nValues / default
        Added value: +-1
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
    • Changedtranskribus_page_post_transcript1 field changed
      • addedInput schema / properties / parent / default
        Added value: +-1
    • Addedtranskribus_processing_get_alto_xml
    • Addedtranskribus_processing_get_page_xml
    • Addedtranskribus_processing_get_status
    • Addedtranskribus_processing_submit_image
    • Changedtranskribus_recog_get_train_data3 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
    • Changedtranskribus_recog_get_validation_gt_by_htr3 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
    • Changedtranskribus_upload_bulk_update_doc_metadata4 fields changed
      • addedInput schema / properties / csv
        Added value: +{
        +  "description": "Inline CSV content. Exactly one of \"csv\" or \"csvFilePath\" is required.",
        +  "type": "string"
        +}
      • addedInput schema / properties / csvFilePath
        Added value: +{
        +  "description": "Absolute path to a local CSV file. Exactly one of \"csv\" or \"csvFilePath\" is required.",
        +  "type": "string"
        +}
      • removedInput schema / properties / metadata
        Removed value: -{
        -  "description": "Array of document metadata objects to update",
        -  "items": {
        -    "additionalProperties": {},
        -    "propertyNames": {
        -      "type": "string"
        -    },
        -    "type": "object"
        -  },
        -  "type": "array"
        -}
      • removedInput schema / required
        Removed value: -[
        -  "metadata"
        -]
    • Changedtranskribus_upload_bulk_update_isad_metadata4 fields changed
      • addedInput schema / properties / csv
        Added value: +{
        +  "description": "Inline CSV content. Exactly one of \"csv\" or \"csvFilePath\" is required.",
        +  "type": "string"
        +}
      • addedInput schema / properties / csvFilePath
        Added value: +{
        +  "description": "Absolute path to a local CSV file. Exactly one of \"csv\" or \"csvFilePath\" is required.",
        +  "type": "string"
        +}
      • removedInput schema / properties / metadata
        Removed value: -{
        -  "description": "Array of ISAD metadata objects to update",
        -  "items": {
        -    "additionalProperties": {},
        -    "propertyNames": {
        -      "type": "string"
        -    },
        -    "type": "object"
        -  },
        -  "type": "array"
        -}
      • removedInput schema / required
        Removed value: -[
        -  "metadata"
        -]
    • Changedtranskribus_upload_create_from_mets4 fields changed
      • addedInput schema / properties / metsFilePath
        Added value: +{
        +  "description": "Absolute path to a local METS XML file. Exactly one of \"metsXml\" or \"metsFilePath\" is required.",
        +  "type": "string"
        +}
      • removedInput schema / properties / metsUrl
        Removed value: -{
        -  "description": "URL of the METS file",
        -  "type": "string"
        -}
      • addedInput schema / properties / metsXml
        Added value: +{
        +  "description": "Inline METS XML document content. Exactly one of \"metsXml\" or \"metsFilePath\" is required.",
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "collId",
        -  "metsUrl"
        -]New value: +[
        +  "collId"
        +]
    • Changedtranskribus_upload_create_structure6 fields changed
      • addedInput schema / properties / author
        Added value: +{
        +  "description": "Document author",
        +  "type": "string"
        +}
      • addedInput schema / properties / description
        Added value: +{
        +  "description": "Document description",
        +  "type": "string"
        +}
      • removedInput schema / properties / nrOfPages
        Removed value: -{
        -  "description": "Number of pages",
        -  "exclusiveMinimum": 0,
        -  "maximum": 9007199254740991,
        -  "type": "integer"
        -}
      • addedInput schema / properties / pages
        Added value: +{
        +  "description": "Ordered list of pages in this upload structure",
        +  "items": {
        +    "properties": {
        +      "fileName": {
        +        "description": "Page image file name (e.g. \"0001.jpg\")",
        +        "type": "string"
        +      },
        +      "pageNr": {
        +        "description": "Page number (1-based)",
        +        "exclusiveMinimum": 0,
        +        "maximum": 9007199254740991,
        +        "type": "integer"
        +      },
        +      "pageXmlName": {
        +        "description": "PAGE XML file name for this page",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "fileName",
        +      "pageNr"
        +    ],
        +    "type": "object"
        +  },
        +  "minItems": 1,
        +  "type": "array"
        +}
      • addedInput schema / properties / relatedUploadId
        Added value: +{
        +  "description": "ID of a related upload",
        +  "exclusiveMinimum": 0,
        +  "maximum": 9007199254740991,
        +  "type": "integer"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "collId",
        -  "title",
        -  "nrOfPages"
        -]New value: +[
        +  "collId",
        +  "title",
        +  "pages"
        +]
    • Changedtranskribus_upload_page5 fields changed
      • addedInput schema / properties / fileName
        Added value: +{
        +  "description": "File name for the image part, overriding the local file's basename",
        +  "type": "string"
        +}
      • addedInput schema / properties / imagePath
        Added value: +{
        +  "description": "Absolute local path to the page image file",
        +  "type": "string"
        +}
      • removedInput schema / properties / pageData
        Removed value: -{
        -  "additionalProperties": {},
        -  "description": "Page upload data",
        -  "propertyNames": {
        -    "type": "string"
        -  },
        -  "type": "object"
        -}
      • addedInput schema / properties / pageXmlPath
        Added value: +{
        +  "description": "Absolute local path to a PAGE XML file for this page",
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "uploadId"
        -]New value: +[
        +  "uploadId",
        +  "imagePath"
        +]
    • Changedtranskribus_user_count_my_docs3 fields changed
      • changedInput schema / properties / index / description
        Previous value: -"Start index"New value: +"Start index (0-based)"
      • changedInput schema / properties / index / minimum
        Previous value: --9007199254740991New value: +0
      • changedInput schema / properties / nValues / description
        Previous value: -"Number of values"New value: +"Number of results (-1 for all)"
  2. 59 tool updatesv3.1.0
    • Addedtranskribus_auth_check_session
    • Addedtranskribus_auth_get_details
    • Addedtranskribus_auth_invalidate
    • Addedtranskribus_auth_logout
    • Addedtranskribus_auth_refresh
    • Addedtranskribus_coll_add_doc
    • Addedtranskribus_coll_add_docs
    • Addedtranskribus_coll_add_favorite
    • Addedtranskribus_coll_can_manage
    • Addedtranskribus_coll_count
    • Addedtranskribus_coll_count_docs
    • Addedtranskribus_coll_count_find_documents
    • Addedtranskribus_coll_create
    • Addedtranskribus_coll_create_doc_from_ftp
    • Addedtranskribus_coll_create_doc_from_iiif
    • Addedtranskribus_coll_create_doc_from_mets
    • Addedtranskribus_coll_create_doc_from_mets_url
    • Addedtranskribus_coll_create_doc_from_pdf
    • Addedtranskribus_coll_create_iob_import
    • Addedtranskribus_coll_delete
    • Addedtranskribus_coll_duplicate
    • Addedtranskribus_coll_ead_metadata_import
    • Addedtranskribus_coll_find_documents
    • Addedtranskribus_coll_find_documents_old
    • Addedtranskribus_coll_find_documents_post
    • Addedtranskribus_coll_get_metadata
    • Addedtranskribus_coll_get_recent
    • Addedtranskribus_coll_get_recent_collections
    • Addedtranskribus_coll_get_recent_documents
    • Addedtranskribus_coll_list
    • Addedtranskribus_coll_list_by_name
    • Addedtranskribus_coll_list_docs_xml
    • Addedtranskribus_coll_list_for_user
    • Addedtranskribus_coll_list_paged
    • Addedtranskribus_coll_list_xml
    • Addedtranskribus_coll_modify
    • Addedtranskribus_coll_remove_doc
    • Addedtranskribus_coll_update_metadata
    • Addedtranskribus_coll_upload_doc
    • Addedtranskribus_doc_delete
    • Addedtranskribus_doc_export
    • Addedtranskribus_doc_get_costs
    • Addedtranskribus_doc_get_editorial_declaration
    • Addedtranskribus_doc_get_fulldoc
    • Addedtranskribus_doc_get_fulldoc_xml
    • Addedtranskribus_doc_get_image_names
    • Addedtranskribus_doc_get_metadata
    • Addedtranskribus_doc_get_stat
    • Addedtranskribus_doc_has_affiliation
    • Addedtranskribus_doc_kws_search
    • Addedtranskribus_doc_list_collections
    • Addedtranskribus_doc_list_collections_paged
    • Addedtranskribus_doc_list_pages
    • Addedtranskribus_doc_post_editorial_declaration
    • Addedtranskribus_doc_update_metadata_v2
    • Addedtranskribus_page_add
    • Addedtranskribus_page_get_curr_transcript
    • Addedtranskribus_stat_get_coll_stats
    • Addedtranskribus_stat_get_pages_filtered
  3. 77 tool updatesv3.0.0
    • Changedtranskribus_admin_authorize_users_for_job1 field changed
      • addedInput schema / properties / jobImpl / pattern
        Added value: +"^[^/\\s]+$"
    • Changedtranskribus_admin_get_job_users1 field changed
      • addedInput schema / properties / jobImpl / pattern
        Added value: +"^[^/\\s]+$"
    • Changedtranskribus_admin_get_reports2 fields changed
      • addedInput schema / properties / reportTime / pattern
        Added value: +"^[^/\\s]+$"
      • addedInput schema / properties / reportType / pattern
        Added value: +"^[^/\\s]+$"
    • Removedtranskribus_auth_check_session
    • Removedtranskribus_auth_get_details
    • Removedtranskribus_auth_invalidate
    • Removedtranskribus_auth_login
    • Removedtranskribus_auth_logout
    • Removedtranskribus_auth_refresh
    • Removedtranskribus_coll_add_doc
    • Removedtranskribus_coll_add_docs
    • Removedtranskribus_coll_add_favorite
    • Removedtranskribus_coll_can_manage
    • Removedtranskribus_coll_count
    • Removedtranskribus_coll_count_docs
    • Removedtranskribus_coll_count_find_documents
    • Removedtranskribus_coll_create
    • Removedtranskribus_coll_create_doc_from_ftp
    • Removedtranskribus_coll_create_doc_from_iiif
    • Removedtranskribus_coll_create_doc_from_mets
    • Removedtranskribus_coll_create_doc_from_mets_url
    • Removedtranskribus_coll_create_doc_from_pdf
    • Removedtranskribus_coll_create_iob_import
    • Removedtranskribus_coll_delete
    • Removedtranskribus_coll_duplicate
    • Removedtranskribus_coll_ead_metadata_import
    • Removedtranskribus_coll_find_documents
    • Removedtranskribus_coll_find_documents_old
    • Removedtranskribus_coll_find_documents_post
    • Removedtranskribus_coll_get_metadata
    • Removedtranskribus_coll_get_recent
    • Removedtranskribus_coll_get_recent_collections
    • Removedtranskribus_coll_get_recent_documents
    • Removedtranskribus_coll_list
    • Removedtranskribus_coll_list_by_name
    • Removedtranskribus_coll_list_docs_xml
    • Removedtranskribus_coll_list_for_user
    • Removedtranskribus_coll_list_paged
    • Removedtranskribus_coll_list_xml
    • Removedtranskribus_coll_modify
    • Removedtranskribus_coll_remove_doc
    • Removedtranskribus_coll_update_metadata
    • Removedtranskribus_coll_upload_doc
    • Removedtranskribus_doc_delete
    • Removedtranskribus_doc_export
    • Removedtranskribus_doc_get_costs
    • Removedtranskribus_doc_get_editorial_declaration
    • Removedtranskribus_doc_get_fulldoc
    • Removedtranskribus_doc_get_fulldoc_xml
    • Removedtranskribus_doc_get_image_names
    • Removedtranskribus_doc_get_metadata
    • Removedtranskribus_doc_get_stat
    • Removedtranskribus_doc_has_affiliation
    • Removedtranskribus_doc_kws_search
    • Removedtranskribus_doc_list_collections
    • Removedtranskribus_doc_list_collections_paged
    • Removedtranskribus_doc_list_pages
    • Removedtranskribus_doc_post_editorial_declaration
    • Removedtranskribus_doc_update_metadata_v2
    • Changedtranskribus_model_add_collection1 field changed
      • addedInput schema / properties / type / pattern
        Added value: +"^[^/\\s]+$"
    • Changedtranskribus_model_delete_by_type1 field changed
      • addedInput schema / properties / type / pattern
        Added value: +"^[^/\\s]+$"
    • Changedtranskribus_model_get_by_type1 field changed
      • addedInput schema / properties / type / pattern
        Added value: +"^[^/\\s]+$"
    • Changedtranskribus_model_get_details1 field changed
      • addedInput schema / properties / type / pattern
        Added value: +"^[^/\\s]+$"
    • Changedtranskribus_model_get_field_params1 field changed
      • addedInput schema / properties / type / pattern
        Added value: +"^[^/\\s]+$"
    • Changedtranskribus_model_get_train_data1 field changed
      • addedInput schema / properties / type / pattern
        Added value: +"^[^/\\s]+$"
    • Changedtranskribus_model_get_train_data_docs1 field changed
      • addedInput schema / properties / type / pattern
        Added value: +"^[^/\\s]+$"
    • Changedtranskribus_model_get_train_data_stats1 field changed
      • addedInput schema / properties / type / pattern
        Added value: +"^[^/\\s]+$"
    • Changedtranskribus_model_get_validation_data1 field changed
      • addedInput schema / properties / type / pattern
        Added value: +"^[^/\\s]+$"
    • Changedtranskribus_model_get_validation_data_docs1 field changed
      • addedInput schema / properties / type / pattern
        Added value: +"^[^/\\s]+$"
    • Changedtranskribus_model_get_validation_data_stats1 field changed
      • addedInput schema / properties / type / pattern
        Added value: +"^[^/\\s]+$"
    • Changedtranskribus_model_list_collections1 field changed
      • addedInput schema / properties / type / pattern
        Added value: +"^[^/\\s]+$"
    • Changedtranskribus_model_remove_collection1 field changed
      • addedInput schema / properties / type / pattern
        Added value: +"^[^/\\s]+$"
    • Changedtranskribus_model_update_by_type1 field changed
      • addedInput schema / properties / type / pattern
        Added value: +"^[^/\\s]+$"
    • Removedtranskribus_page_add
    • Removedtranskribus_page_get_curr_transcript
    • Removedtranskribus_stat_get_coll_stats
    • Removedtranskribus_stat_get_pages_filtered
  4. 301 tool updatesv2.1.1
    • First observedtranskribus_action_count
    • First observedtranskribus_action_info
    • First observedtranskribus_action_list
    • First observedtranskribus_admin_authorize_users_for_job
    • First observedtranskribus_admin_get_job_log
    • First observedtranskribus_admin_get_job_users
    • First observedtranskribus_admin_get_reports
    • First observedtranskribus_admin_list_sessions
    • First observedtranskribus_admin_move_field_model
    • First observedtranskribus_admin_move_table_model
    • First observedtranskribus_admin_rebuild_models_index
    • First observedtranskribus_auth_check_session
    • First observedtranskribus_auth_get_details
    • First observedtranskribus_auth_invalidate
    • First observedtranskribus_auth_login
    • First observedtranskribus_auth_logout
    • First observedtranskribus_auth_refresh
    • First observedtranskribus_coll_activity_recognition
    • First observedtranskribus_coll_activity_saves
    • First observedtranskribus_coll_add_doc
    • First observedtranskribus_coll_add_docs
    • First observedtranskribus_coll_add_favorite
    • First observedtranskribus_coll_can_manage
    • First observedtranskribus_coll_count
    • First observedtranskribus_coll_count_docs
    • First observedtranskribus_coll_count_find_documents
    • First observedtranskribus_coll_create
    • First observedtranskribus_coll_create_doc_from_ftp
    • First observedtranskribus_coll_create_doc_from_iiif
    • First observedtranskribus_coll_create_doc_from_mets
    • First observedtranskribus_coll_create_doc_from_mets_url
    • First observedtranskribus_coll_create_doc_from_pdf
    • First observedtranskribus_coll_create_iob_import
    • First observedtranskribus_coll_credit_add_package
    • First observedtranskribus_coll_credit_history
    • First observedtranskribus_coll_credit_list
    • First observedtranskribus_coll_credit_remove_package
    • First observedtranskribus_coll_credit_transactions
    • First observedtranskribus_coll_delete
    • First observedtranskribus_coll_delete_empty
    • First observedtranskribus_coll_duplicate
    • First observedtranskribus_coll_duplicate_doc
    • First observedtranskribus_coll_ead_metadata_import
    • First observedtranskribus_coll_export
    • First observedtranskribus_coll_find_documents
    • First observedtranskribus_coll_find_documents_old
    • First observedtranskribus_coll_find_documents_post
    • First observedtranskribus_coll_get_metadata
    • First observedtranskribus_coll_get_recent
    • First observedtranskribus_coll_get_recent_collections
    • First observedtranskribus_coll_get_recent_documents
    • First observedtranskribus_coll_get_tag_defs
    • First observedtranskribus_coll_label_list
    • First observedtranskribus_coll_list
    • First observedtranskribus_coll_list_by_name
    • First observedtranskribus_coll_list_docs
    • First observedtranskribus_coll_list_docs_xml
    • First observedtranskribus_coll_list_for_user
    • First observedtranskribus_coll_list_paged
    • First observedtranskribus_coll_list_xml
    • First observedtranskribus_coll_modify
    • First observedtranskribus_coll_remove_doc
    • First observedtranskribus_coll_remove_favorite
    • First observedtranskribus_coll_remove_user
    • First observedtranskribus_coll_subscribe_get
    • First observedtranskribus_coll_update_default_tag_defs
    • First observedtranskribus_coll_update_metadata
    • First observedtranskribus_coll_update_tag_defs
    • First observedtranskribus_coll_upload_doc
    • First observedtranskribus_coll_upload_doc_multipart
    • First observedtranskribus_coll_user_add
    • First observedtranskribus_coll_user_add_or_modify
    • First observedtranskribus_coll_user_count
    • First observedtranskribus_coll_user_get_list
    • First observedtranskribus_coll_user_list
    • First observedtranskribus_coll_user_remove
    • First observedtranskribus_coll_user_stats
    • First observedtranskribus_coll_user_update_role
    • First observedtranskribus_credit_create
    • First observedtranskribus_credit_get
    • First observedtranskribus_credit_get_collections
    • First observedtranskribus_credit_get_costs
    • First observedtranskribus_credit_get_history
    • First observedtranskribus_credit_get_package_transactions
    • First observedtranskribus_credit_get_products
    • First observedtranskribus_credit_get_transactions
    • First observedtranskribus_credit_handle_order
    • First observedtranskribus_credit_list_by_user
    • First observedtranskribus_credit_manage
    • First observedtranskribus_credit_update
    • First observedtranskribus_crowd_delete_messages
    • First observedtranskribus_crowd_delete_milestones
    • First observedtranskribus_crowd_get_project
    • First observedtranskribus_crowd_post_message
    • First observedtranskribus_crowd_post_milestone
    • First observedtranskribus_crowd_post_project
    • First observedtranskribus_crowdsource_count
    • First observedtranskribus_crowdsource_get_details
    • First observedtranskribus_crowdsource_list
    • First observedtranskribus_crowdsource_subscribe
    • First observedtranskribus_crowdsource_unsubscribe
    • First observedtranskribus_doc_delete
    • First observedtranskribus_doc_export
    • First observedtranskribus_doc_get_costs
    • First observedtranskribus_doc_get_editorial_declaration
    • First observedtranskribus_doc_get_fulldoc
    • First observedtranskribus_doc_get_fulldoc_xml
    • First observedtranskribus_doc_get_image_names
    • First observedtranskribus_doc_get_metadata
    • First observedtranskribus_doc_get_mets
    • First observedtranskribus_doc_get_page_ids
    • First observedtranskribus_doc_get_pages
    • First observedtranskribus_doc_get_stat
    • First observedtranskribus_doc_get_stats
    • First observedtranskribus_doc_get_test_set
    • First observedtranskribus_doc_get_train_data
    • First observedtranskribus_doc_get_transcript_ids
    • First observedtranskribus_doc_get_validation_data
    • First observedtranskribus_doc_has_affiliation
    • First observedtranskribus_doc_kws_search
    • First observedtranskribus_doc_list_collections
    • First observedtranskribus_doc_list_collections_paged
    • First observedtranskribus_doc_list_pages
    • First observedtranskribus_doc_move_pages_by_image_names
    • First observedtranskribus_doc_post_editorial_declaration
    • First observedtranskribus_doc_remove_from_collection
    • First observedtranskribus_doc_update_metadata
    • First observedtranskribus_doc_update_metadata_v2
    • First observedtranskribus_doc_update_transcript
    • First observedtranskribus_du_recognize
    • First observedtranskribus_editdecl_delete_feature
    • First observedtranskribus_editdecl_delete_option
    • First observedtranskribus_editdecl_list_features
    • First observedtranskribus_editdecl_post_feature
    • First observedtranskribus_editdecl_post_option
    • First observedtranskribus_elearning_count
    • First observedtranskribus_elearning_list
    • First observedtranskribus_elearning_subscribe
    • First observedtranskribus_elearning_unsubscribe
    • First observedtranskribus_file_check
    • First observedtranskribus_file_list_dirs
    • First observedtranskribus_file_list_files
    • First observedtranskribus_job_count
    • First observedtranskribus_job_create
    • First observedtranskribus_job_get
    • First observedtranskribus_job_get_credit_transactions
    • First observedtranskribus_job_get_errors
    • First observedtranskribus_job_kill
    • First observedtranskribus_job_list
    • First observedtranskribus_job_restart_all_by_user
    • First observedtranskribus_job_undo
    • First observedtranskribus_job_update
    • First observedtranskribus_kws_create_query
    • First observedtranskribus_kws_get_hits
    • First observedtranskribus_kws_get_keywords
    • First observedtranskribus_kws_get_result_data
    • First observedtranskribus_kws_list_queries
    • First observedtranskribus_la_analyze
    • First observedtranskribus_la_analyze_advanced
    • First observedtranskribus_la_get_costs
    • First observedtranskribus_la_la2_inference
    • First observedtranskribus_la_table_inference
    • First observedtranskribus_label_assign_documents
    • First observedtranskribus_label_assign_pages
    • First observedtranskribus_label_create
    • First observedtranskribus_label_delete
    • First observedtranskribus_label_get
    • First observedtranskribus_label_list
    • First observedtranskribus_label_remove_all_documents
    • First observedtranskribus_label_remove_all_pages
    • First observedtranskribus_label_remove_documents
    • First observedtranskribus_label_remove_pages
    • First observedtranskribus_label_replace_document_assignments
    • First observedtranskribus_label_replace_page_assignments
    • First observedtranskribus_label_update
    • First observedtranskribus_model_add_collection
    • First observedtranskribus_model_add_collection_by_id
    • First observedtranskribus_model_delete
    • First observedtranskribus_model_delete_by_type
    • First observedtranskribus_model_get
    • First observedtranskribus_model_get_by_type
    • First observedtranskribus_model_get_details
    • First observedtranskribus_model_get_field_params
    • First observedtranskribus_model_get_train_data
    • First observedtranskribus_model_get_train_data_docs
    • First observedtranskribus_model_get_train_data_stats
    • First observedtranskribus_model_get_validation_data
    • First observedtranskribus_model_get_validation_data_docs
    • First observedtranskribus_model_get_validation_data_stats
    • First observedtranskribus_model_list
    • First observedtranskribus_model_list_collections
    • First observedtranskribus_model_list_collections_by_id
    • First observedtranskribus_model_remove_collection
    • First observedtranskribus_model_remove_collection_by_id
    • First observedtranskribus_model_update
    • First observedtranskribus_model_update_by_type
    • First observedtranskribus_p2pala_train
    • First observedtranskribus_page_add
    • First observedtranskribus_page_assign_plaintext
    • First observedtranskribus_page_count_transcripts
    • First observedtranskribus_page_delete
    • First observedtranskribus_page_delete_transcript
    • First observedtranskribus_page_get
    • First observedtranskribus_page_get_curr_transcript
    • First observedtranskribus_page_get_metadata
    • First observedtranskribus_page_get_plaintext
    • First observedtranskribus_page_get_text
    • First observedtranskribus_page_get_transcript
    • First observedtranskribus_page_is_locked
    • First observedtranskribus_page_list_locks
    • First observedtranskribus_page_list_transcripts
    • First observedtranskribus_page_lock
    • First observedtranskribus_page_move
    • First observedtranskribus_page_post_transcript
    • First observedtranskribus_page_replace
    • First observedtranskribus_page_update_hide_on_sites
    • First observedtranskribus_page_update_status_v2
    • First observedtranskribus_page_update_transcript_status
    • First observedtranskribus_pylaia_recognize
    • First observedtranskribus_pylaia_train
    • First observedtranskribus_recog_add_to_collection
    • First observedtranskribus_recog_compute_error_rate
    • First observedtranskribus_recog_compute_sample
    • First observedtranskribus_recog_compute_wer
    • First observedtranskribus_recog_compute_wer_tasas
    • First observedtranskribus_recog_delete
    • First observedtranskribus_recog_get
    • First observedtranskribus_recog_get_add_info
    • First observedtranskribus_recog_get_atr
    • First observedtranskribus_recog_get_costs
    • First observedtranskribus_recog_get_error_rate
    • First observedtranskribus_recog_get_ocr_costs
    • First observedtranskribus_recog_get_test_set
    • First observedtranskribus_recog_get_train_data
    • First observedtranskribus_recog_get_train_set
    • First observedtranskribus_recog_get_validation_gt_by_htr
    • First observedtranskribus_recog_list_by_collection
    • First observedtranskribus_recog_list_collections
    • First observedtranskribus_recog_list_dicts
    • First observedtranskribus_recog_list_models
    • First observedtranskribus_recog_remove_from_collection
    • First observedtranskribus_recog_run_atr
    • First observedtranskribus_recog_run_htr_citlab
    • First observedtranskribus_recog_run_ocr
    • First observedtranskribus_recog_run_trhtr
    • First observedtranskribus_recog_text2image
    • First observedtranskribus_recog_text2image_citlab
    • First observedtranskribus_recog_text2image_matching
    • First observedtranskribus_recog_train_htr_citlab
    • First observedtranskribus_recog_train_la_citlab
    • First observedtranskribus_recog_train_la2
    • First observedtranskribus_recog_train_table
    • First observedtranskribus_recog_update
    • First observedtranskribus_search_fulltext
    • First observedtranskribus_search_keyword
    • First observedtranskribus_search_replace
    • First observedtranskribus_search_replace_in_collection
    • First observedtranskribus_search_reset_index
    • First observedtranskribus_search_tags
    • First observedtranskribus_server_available_files
    • First observedtranskribus_server_bug_report
    • First observedtranskribus_server_client_version
    • First observedtranskribus_server_download_client_file
    • First observedtranskribus_server_download_client_file_new
    • First observedtranskribus_server_download_gui
    • First observedtranskribus_server_get_events
    • First observedtranskribus_server_version
    • First observedtranskribus_stat_get_coll
    • First observedtranskribus_stat_get_coll_stats
    • First observedtranskribus_stat_get_page_status
    • First observedtranskribus_stat_get_pages_filtered
    • First observedtranskribus_stat_get_storage_usage
    • First observedtranskribus_stat_update_page_status
    • First observedtranskribus_system_db_status
    • First observedtranskribus_system_fimagestore
    • First observedtranskribus_upload_bulk_update_doc_metadata
    • First observedtranskribus_upload_bulk_update_isad_metadata
    • First observedtranskribus_upload_create_from_mets
    • First observedtranskribus_upload_create_s3
    • First observedtranskribus_upload_create_structure
    • First observedtranskribus_upload_delete
    • First observedtranskribus_upload_get_bulk_doc_metadata
    • First observedtranskribus_upload_get_bulk_isad_metadata
    • First observedtranskribus_upload_get_status
    • First observedtranskribus_upload_page
    • First observedtranskribus_upload_update_metadata
    • First observedtranskribus_user_activity_recognition
    • First observedtranskribus_user_activity_saves
    • First observedtranskribus_user_count_my_docs
    • First observedtranskribus_user_delete
    • First observedtranskribus_user_find
    • First observedtranskribus_user_get
    • First observedtranskribus_user_get_job_acl
    • First observedtranskribus_user_get_stats
    • First observedtranskribus_user_get_storage
    • First observedtranskribus_user_init
    • First observedtranskribus_user_is_allowed_for_job
    • First observedtranskribus_user_list
    • First observedtranskribus_user_list_my_docs
    • First observedtranskribus_user_list_tag_defs
    • First observedtranskribus_user_update_tag_defs

TDQS

C2.4/5.0

Scored across 304 tools

Disambiguation1/5

Many tools have identical or near-identical purposes, e.g. transkribus_coll_remove_doc and transkribus_doc_remove_from_collection both say 'Remove a document from a collection without deleting it'; transkribus_coll_user_remove and transkribus_coll_remove_user duplicate user removal; and multiple metadata update endpoints exist (transkribus_doc_update_metadata vs transkribus_doc_update_metadata_v2). An agent cannot reliably select the correct tool without external knowledge.

Naming Consistency3/5

All names use snake_case with a consistent transkribus_ prefix, but action ordering and suffixing are inconsistent: transkribus_coll_list vs transkribus_coll_list_paged vs transkribus_coll_list_xml; transkribus_doc_get_metadata vs transkribus_doc_update_metadata_v2; and legacy/new variants coexist. The pattern is readable but not fully predictable.

Tool Count1/5

304 tools is an extreme mismatch for an agent-friendly MCP server. Even accounting for a large underlying API, this vastly exceeds the 50+ threshold where tool selection becomes impractical, and many tools are redundant rather than essential.

Completeness5/5

The surface covers collections, documents, pages, transcripts, models, recognition, training, search, jobs, users, admin, credits, crowdsourcing, e-learning, and uploads, with create/get/update/delete operations for most resources. It appears to wrap the entire Transkribus API exhaustively, leaving no obvious domain gaps.

Maintenance

ActivityMaintained
ResponsivenessSlow

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    A server implementation of the Model Context Protocol (MCP) that provides REST API endpoints for managing and interacting with MCP resources.
    -
  • A
    license
    B
    quality
    A
    maintenance
    An MCP (Model Context Protocol) server for interacting with a Paperless-NGX API server. This server provides tools for managing documents, tags, correspondents, and document types in your Paperless-NGX instance.
    44
    730 npm
    141
    TypeScript
    ISC
  • A
    license
    Not graded
    quality
    A
    maintenance
    This MCP server provides access to DEVONthink functionality via the Model Context Protocol (MCP). It enables listing, searching, creating, modifying, and managing records and databases in DEVONthink Pro on macOS.
    26 npm
    105
    GPL 3.0