Skip to main content
Glama
bw-modeling-mcp

bw-modeling-mcp

by dnic-dev

bw_write_infoobject

Create or update SAP BW/4HANA InfoObjects and manage characteristics, key figures, and hierarchies: build, change, activate, or delete hierarchy structures.

Instructions

Create or change an InfoObject and its hierarchies. The operation enum lists every operation with what it requires; bw_describe(tool: "bw_write_infoobject", operation: "…") gives the complete parameter definition of one.

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": {
      "operation": "<operation>"
    },
    "name": "bw_write_infoobject"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameNoDefined per operation — bw_describe(tool: "bw_write_infoobject", operation: "…") gives each definition. [create, update]
nodesNoDefined per operation — bw_describe(tool: "bw_write_infoobject", operation: "…") gives each definition. [create_hierarchy, update_hierarchy]
lengthNoCHA only. [create]
packageNoDevelopment package. [create]
versionNoA = the hierarchy (default), M = only its revised version. [delete_hierarchy]
activateNoDefined per operation — bw_describe(tool: "bw_write_infoobject", operation: "…") gives each definition. [create_hierarchy, update_hierarchy]
data_typeNoCHA only. [create]
info_areaNoInfoArea to assign the InfoObject to (e.g. [create]
long_textNoCHA only. [update]
operationYesOperation — one of: create: Create a new InfoObject — Characteristic (CHA) or Key Figure (KYF) — inactive. Requires name, info_area, description. | update: Update a Characteristic InfoObject: description, the lower case flag, master data, text and hierarchy properties, and/or the attribute list. Requires name. | create_hierarchy: Create a hierarchy for a characteristic and activate it. Requires characteristic, hierarchy_name, description, nodes. | update_hierarchy: Change a hierarchy: its description and/or its tree, then activate it. Requires characteristic, hierarchy_name. | delete_hierarchy: Delete a hierarchy of a characteristic. Requires characteristic, hierarchy_name.
transportNoDefined per operation — bw_describe(tool: "bw_write_infoobject", operation: "…") gives each definition. [create, update]
attributesNoNew attribute list, replacing all existing ones. [update]
fixed_unitNoDefined per operation — bw_describe(tool: "bw_write_infoobject", operation: "…") gives each definition. [create, update]
lower_caseNoDefined per operation — bw_describe(tool: "bw_write_infoobject", operation: "…") gives each definition. [create, update]
short_textNoCHA only. [update]
with_textsNoDefined per operation — bw_describe(tool: "bw_write_infoobject", operation: "…") gives each definition. [create, update]
descriptionNoDefined per operation — bw_describe(tool: "bw_write_infoobject", operation: "…") gives each definition. [4 of 5 operations]
medium_textNoCHA only. [update]
characteristicNoDefined per operation — bw_describe(tool: "bw_write_infoobject", operation: "…") gives each definition. [create_hierarchy, update_hierarchy, delete_hierarchy]
fixed_currencyNoDefined per operation — bw_describe(tool: "bw_write_infoobject", operation: "…") gives each definition. [create, update]
hierarchy_nameNoDefined per operation — bw_describe(tool: "bw_write_infoobject", operation: "…") gives each definition. [create_hierarchy, update_hierarchy, delete_hierarchy]
extra_long_textNoCHA only. [update]
infoobject_typeNoInfoObject type: CHA (Characteristic) or KYF (Key Figure). [create]
aggregation_typeNoKYF only. [create]
with_hierarchiesNoCHA only. [update]
with_master_dataNoDefined per operation — bw_describe(tool: "bw_write_infoobject", operation: "…") gives each definition. [create, update]
conversion_routineNoCHA only. [create]
hierarchy_intervalsNoCHA only. [update]
compound_infoobjectsNoTechnical names of the compound parent InfoObjects, in order. [create]
texts_time_dependentNoCHA only. [update]
referenced_infoobjectNoCHA only. [create]
hierarchy_reverse_signNoCHA only. [update]
texts_language_dependentNoCHA only. [update]
unit_currency_infoobjectNoDefined per operation — bw_describe(tool: "bw_write_infoobject", operation: "…") gives each definition. [create, update]
hierarchy_time_dependencyNoCHA only. [update]
object_specific_data_typeNoKYF only. [create]
hierarchy_version_dependentNoCHA only. [update]

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.0.0

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are supplied, so the description carries the full burden of behavioral disclosure. It says 'create or change' but never states that delete_hierarchy deletes a hierarchy, that create leaves an InfoObject inactive, or that hierarchy operations activate the result; those traits appear only in the schema's operation enum, not in the description.

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, then a pointer to the operation enum and bw_describe. There is no redundant wording, and each sentence 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 37-parameter mutation tool with no annotations and no output schema, the description is thin. It relies on the rich operation enum and bw_describe for operational and parameter detail, but it omits key behavioral information about deletion, inactive creation, and activation that an agent should know before invoking it.

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

Parameters3/5

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

Schema description coverage is 100% with 37 documented parameters, so the schema already provides parameter meaning. The description adds only meta-guidance about the operation enum and bw_describe, not additional semantics beyond what the schema supplies.

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: create or change an InfoObject and its hierarchies. 'InfoObject' and 'hierarchies' distinguish it from sibling bw_write_* tools for ADSO, DataSource, and other BW object types, and the operation-enum sentence makes the tool's scope concrete.

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 establishes clear context for creating or changing InfoObjects rather than other BW objects, and it routes the agent to the operation enum for per-operation requirements and to bw_describe for full parameter details. It does not explicitly state when not to use it or name alternatives, so it stops short of full routing guidance.

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