Skip to main content
Glama
dnic-dev

bw-modeling-mcp

by dnic-dev

bw_update_structure

Modify reusable BW structures by adding, removing, or reconfiguring members, so all embedded queries update in one save.

Instructions

Change a reusable structure: add, remove or re-configure members. The change reaches every query that embeds the structure — which is the point, and the reason this goes at the structure itself rather than through one query that happens to use it. All operations are applied to one document and written in a single save.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
operationsYesMember operations, applied in order.
descriptionNoNew description of the structure itself.
component_nameYesTechnical name of the structure.
transport_requestNoTransport request to record the change in.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv1.7.1
    • changedInput schema / properties / operations / items / properties / action / description
      Previous value: -"add_member: insert a member showing component_name or key_figure. remove_member / set_member_properties: act on an existing member, matched by member_id, description or component_name."New value: +"add_member: insert a member showing component_name or key_figure. remove_member / set_member_properties: act on an existing member, matched by member_id, description or component_name. set_member_properties changes properties, moves the member (position / parent), or both — at least one of the three is required."
    • changedInput schema / properties / operations / items / properties / parent / description
      Previous value: -"Nest the new member under this one, by id or description."New value: +"Parent member, by id or description. add_member: nest the new member under it. set_member_properties: move the member under it; an empty string moves it to the top level; omitted, the member keeps its current parent."
    • changedInput schema / properties / operations / items / properties / position / description
      Previous value: -"Position among the siblings (0-based). Appends when omitted."New value: +"Position among the siblings (0-based). add_member: appends when omitted. set_member_properties: moves the member to this position among its (new) siblings; with only parent given, it goes last."
    • changedInput schema / properties / operations / items / properties / properties / description
      Previous value: -"Display and planning properties. Only the fields given are changed."New value: +"Display and planning properties. Only the fields given are changed. Optional on set_member_properties when position or parent is given."
  2. Addedv1.5.0

TDQS

A3.6/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 non-obvious traits: the change reaches every embedding query (blast radius) and all operations are applied to one document in a single save (atomicity/ordering). It says nothing about required authorizations, the transport_request requirement, reversibility, or what happens if a member match fails, so the behavioral picture is incomplete.

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-loaded with the core action, and the rationale sentence earns its place by explaining the structure-level scope. The phrasing ('which is the point, and the reason...') is slightly discursive for a tool definition but not wasteful.

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 covers purpose, scope, and atomicity but omits permissions, transport handling, failure behavior, and return value expectations. The rich input schema offsets much of this, but the definition is only adequate for a write operation of this 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?

Schema description coverage is 100%, and the per-parameter descriptions are detailed (action enum semantics, parent/position/member_id behavior), so the schema already does the heavy lifting. The description adds no parameter-level meaning beyond it, which is the expected 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 (change) plus resource (reusable structure) and enumerates the member-level actions (add, remove, re-configure). It also implicitly distinguishes itself from query-level siblings like bw_update_query_key_figures by framing the change as happening at the structure, though it never names an alternative tool directly.

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?

Gives a clear usage rationale: use this when the change must propagate to every query embedding the structure, rather than editing one query that happens to use it. It stops short of explicit when-not-to-use conditions or naming the alternative tools an agent could pick instead.

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