Skip to main content
Glama

Run ATC Check

sap_atc_run
Read-only

Run ABAP Test Cockpit (ATC) checks on individual ABAP objects before transport release, returning prioritized findings with check details and source lines.

Instructions

Run an ATC (ABAP Test Cockpit) check on an ABAP object and return the findings (priority, check, message, line). Use before releasing a transport.

Supply either:

  • object_uri: the full ADT URI (from sap_search_objects), OR

  • object_type + object_name (and function_group if needed).

Args:

  • object_uri / object_type + object_name.

  • check_variant (string): ATC variant; omit for the system default.

  • max_results (number): 1-1000 (default 100).

  • response_format.

Returns (json): { objectUri, checkVariant, worklistId, timestamp?, stats: {prio1, prio2, prio3}, findingCount, objects: [{uri, type, name, packageName?, findings: [{uri, location?, line?, priority, checkId?, checkTitle?, messageId?, messageTitle}]}] }. Priority 1 = error, 2 = warning, 3 = information.

Examples:

  • "ATC-check ZCL_FOO before I release the transport" -> object_type='class', object_name='ZCL_FOO'.

  • "Run the Z_STRICT variant on ZFI_POST" -> object_type='program', object_name='ZFI_POST', check_variant='Z_STRICT'. Notes:

  • Each run records a server-side ATC worklist (visible in ATC administration). It is harmless and reused per check variant.

  • Large objects can exceed SAP_TIMEOUT_MS — check one object at a time.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
object_uriNoADT URI of the object to check (e.g. '/sap/bc/adt/oo/classes/zcl_foo'). Get this from sap_search_objects results. Takes precedence over object_type+object_name.
max_resultsNoMaximum findings to return (1-1000, default 100).
object_nameNoObject name — used with object_type when object_uri is not given.
object_typeNoObject type — used to derive URI when object_uri is not given.
check_variantNoATC check variant. Omit to use the system default (read from ATC customizing).
function_groupNoRequired when object_type='function'.
response_formatNoOutput format: 'markdown' (human-readable, default) or 'json' (structured).markdown
Install Server

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the readOnlyHint/openWorldHint annotations, the description discloses a non-obvious server-side side effect: each run records an ATC worklist that is harmless and reused per check variant. It also warns that large objects can exceed SAP_TIMEOUT_MS and recommends checking one object at a time, which is valuable behavioral context not available from 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 front-loaded with the purpose, then organized into input options, return format, examples, and notes. It is long but justified by seven parameters and no output schema; however, a few 'Args' lines repeat schema information, preventing a perfect conciseness score.

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?

With no output schema present, the description fully documents the JSON return shape, priority semantics, worklist side effect, timeout behavior, response_format options, and example parameter mappings. An agent has everything needed to select inputs and interpret results 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 the baseline is 3. The description adds helpful examples and the either/or grouping of object_uri vs object_type+object_name, but it largely restates the schema's existing parameter descriptions, defaults, and preconditions rather than contributing substantial new parameter-level 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 opens with a specific verb and resource: 'Run an ATC (ABAP Test Cockpit) check on an ABAP object and return the findings...' and ties it to the workflow trigger 'before releasing a transport.' This clearly distinguishes it from sibling tools like sap_syntax_check, sap_run_unit_tests, and sap_release_transport.

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 explicit context for when to use the tool: before releasing a transport, and it explains the two input modes (object_uri vs object_type + object_name) with examples. It does not explicitly name when not to use it or point to a specific alternative tool, so it stops short of full exclusion guidance.

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

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/appmaster3000/sap-abap-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server