Skip to main content
Glama

CreateInterface

Creates a new ABAP interface in an SAP system from an interface name and package, with optional description, master language, and transport request. Use it to initialize the object before development.

Instructions

Create a new ABAP interface in SAP system. Creates the interface object in initial state. Recordable: in batch mode a call is recorded under the next number and answers with empty content; its answer is read by number after the batch ends.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "interface_name": "<interface_name>",
      "package_name": "<package_name>"
    },
    "name": "CreateInterface"
  }
}

Input Schema

NameRequiredDescriptionDefault
detailNoHow much of the answer to return: "terse" (default, the fields you need to act), "full" (the whole parse), "raw" (the document as ADT sent it).terse
descriptionNoInterface description. If not provided, interface_name will be used.
package_nameYesPackage name
interface_nameYesInterface name.
master_languageNoOptional master/original language for the created object (e.g. "EN", "DE", "ZH"). Defaults to the session language (SAP_LANGUAGE) or EN.
transport_requestNoTransport request number, not a task. Required for transportable packages.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv16.0.0
    • addedInput schema / properties / detail
      Added value: +{
      +  "default": "terse",
      +  "description": "How much of the answer to return: \"terse\" (default, the fields you need to act), \"full\" (the whole parse), \"raw\" (the document as ADT sent it).",
      +  "enum": [
      +    "terse",
      +    "full",
      +    "raw"
      +  ],
      +  "type": "string"
      +}
    • changedInput schema / properties / interface_name / description
      Previous value: -"Interface name (e.g., ZIF_TEST_INTERFACE_001). Must follow SAP naming conventions (start with Z or Y)."New value: +"Interface name."
    • changedInput schema / properties / package_name / description
      Previous value: -"Package name (e.g., ZOK_LAB, $TMP for local objects)"New value: +"Package name"
    • changedInput schema / properties / transport_request / description
      Previous value: -"Transport request number (e.g., E19K905635). Required for transportable packages."New value: +"Transport request number, not a task. Required for transportable packages."
  2. Changed1 schema field changedv8.1.0
    • addedInput schema / properties / master_language
      Added value: +{
      +  "description": "Optional master/original language for the created object (e.g. \"EN\", \"DE\", \"ZH\"). Defaults to the session language (SAP_LANGUAGE) or EN.",
      +  "type": "string"
      +}
  3. Changed2 schema fields changed
    • removedInput schema / properties / activate
      Removed value: -{
      -  "description": "Activate interface after creation. Default: true. Set to false for batch operations (activate multiple objects later).",
      -  "type": "boolean"
      -}
    • removedInput schema / properties / source_code
      Removed value: -{
      -  "description": "Complete ABAP interface source code with INTERFACE...ENDINTERFACE section. If not provided, generates minimal template.",
      -  "type": "string"
      -}
  4. First observed

TDQS

B3.4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does useful work: it discloses that the object is created in "initial state" and thoroughly explains the batch-mode recording semantics (recorded under next number, empty answer, read back later). It omits permission/error behavior and does not spell out that the object likely needs ActivateInterface afterwards to be 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?

Front-loads the core action in the first sentence and reserves the second for batch semantics. The batch sentence is dense but each clause carries information; no filler.

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

Completeness3/5

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

Covers creation and the unusual batch behavior, but for a 6-parameter mutation with no annotations and no output schema it leaves gaps: the operational meaning of "initial state" (activation requirement), failure/error expectations, and any post-create steps are absent.

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

Parameters3/5

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

Schema description coverage is 100%, so every parameter (including transport_request and master_language) is already documented in the schema. The description adds no syntax, format, or constraint details beyond that 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?

States a specific verb and resource ("Create a new ABAP interface") and adds the resulting state ("initial state"). It implicitly distinguishes itself from GetInterface/UpdateInterface/DeleteInterface siblings via the create verb, but 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 vs alternatives, no prerequisites, and no mention that an existing interface should be updated instead. The batch/recordable note is behavioral, not situational guidance.

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

Deploy Server

Other Tools