Skip to main content
Glama

CreateBehaviorDefinition

Creates a new ABAP Behavior Definition (BDEF) in an SAP system in its initial state, outside batch mode, ready for activation and use with a root CDS entity.

Instructions

Create a new ABAP Behavior Definition (BDEF) in SAP system. Creates the behavior definition object in initial state. Runs outside batch mode.

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": {
      "name": "<name>",
      "package_name": "<package_name>",
      "root_entity": "<root_entity>",
      "implementation_type": "<implementation_type>"
    },
    "name": "CreateBehaviorDefinition"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameYesBehavior Definition name (usually same as Root Entity name)
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
activateNoActivate after creation. Default: true
descriptionNoDescription
root_entityYesRoot Entity name (CDS View name)
package_nameYesPackage 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
implementation_typeYesImplementation type: 'Managed', 'Unmanaged', 'Abstract', 'Projection'

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 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 / transport_request / description
      Previous value: -"Transport request number"New value: +"Transport request number, not a task"
  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. First observed

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, and it does disclose two useful traits: the object is created in an empty/initial state (so content must be added afterwards) and the call cannot be made inside batch mode. It omits permission/authorization needs, whether a transport request is mandatory for non-local packages, and what happens when activate defaults to 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?

Three short sentences, front-loaded with the verb and resource, then the resulting object state, then the execution constraint. No filler and every sentence contributes a distinct fact.

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

Completeness3/5

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

For a mutation tool with no annotations and no output schema, the description says nothing about what is returned (e.g. activation status, errors) or about the create-then-update-then-activate workflow. It is adequate to attempt the call correctly but leaves the agent guessing about the result and follow-up steps.

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

Parameters3/5

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

Schema description coverage is 100%, including enums for detail and implementation_type, so the schema already explains all 9 parameters. The description adds no syntax, format, or constraint detail beyond the schema, which is the expected baseline when the schema does the heavy lifting.

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

Purpose4/5

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

States a specific verb and resource: creates an ABAP Behavior Definition (BDEF) object in an SAP system, and clarifies it is created in initial state. This is clearly distinguishable from UpdateBehaviorDefinition and CreateBehaviorImplementation, though the description never names those siblings explicitly.

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

Usage Guidelines2/5

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

There is no explicit statement of when to choose this tool over UpdateBehaviorDefinition, CreateBehaviorImplementation, or the Activate* siblings. 'Runs outside batch mode' is a constraint rather than usage guidance, and prerequisites (package, transport) are not discussed at all.

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