Skip to main content
Glama

vpp_add_sequence_diagrams

Adds complete sequence diagrams to a copy of a Visual Paradigm project and can replace existing diagrams by name.

Instructions

Dodaje diagramy sekwencji do kopii projektu. Dodaje całe diagramy sekwencji (każdy jako osobny diagram). Każdy diagram: {"name":"SD13 Reklamacja", "participants":[{"actor":"Klient"}, {"name":"klient","class":"Klient"}, {"name":"zamowienie","class":"Zamowienie"}, {"name":"","class":"Klient"} /* ':Klient' = wywołanie statyczne /, {"name":"platnosc","class":"Platnosc","created":true} / tworzony w trakcie /], "items":[ {"type":"call","from":"Klient","to":"klient","operation":"anulujZamowienie(zamowienie)"}, {"type":"self","on":"zamowienie","operation":"czyMoznaAnulowac()"}, {"type":"create","from":"zamowienie","to":"platnosc","constructor":"Platnosc(...)" / opcjonalnie /}, {"type":"return","from":"zamowienie","to":"klient","label":"true"}, {"type":"found","to":"dyspozytor","operation":"przydzielKuriera(dostawa)"}, {"type":"signal","from":"bramka","to":"System płatności","label":"żądanie autoryzacji"}, {"type":"loop","guard":"dla każdej pozycji","items":[...]}, {"type":"opt","guard":"status == W_DOSTAWIE","items":[...]}, {"type":"alt","operands":[{"guard":"można anulować","items":[...]},{"guard":"else","items":[...]}]}, {"type":"ref","diagram":"SD04 Opłać zamówienie","covers":["Klient","zamowienie"]} / tylko wewnątrz loop/opt/alt */ ]} Uczestników wskazuje się nazwą aktora albo nazwą obiektu (':Klasa' gdy name puste). Operacja: nazwa(arg1, arg2) — argumenty to tylko etykiety, liczy się nazwa i liczba argumentów; metoda musi istnieć w klasie odbiorcy lub jej nadklasie/interfejsie. Zwroty (return) muszą wracać do obiektu, który jest aktywny (wywołał). replace_existing=true najpierw usuwa diagramy o tych nazwach.

Input Schema

NameRequiredDescriptionDefault
diagramsYes
output_pathYes
source_pathYes
overwrite_outputNo
replace_existingNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/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. It usefully discloses invariants — the operation's method must exist on the receiver class/superclass/interface, return messages must target an active object, and replace_existing deletes same-named diagrams first. However, it never explains the copy semantics (does source_path get copied to output_path?), what overwrite_output does, or what happens on validation failure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded, and the JSON example earns its space given the complex nested structure. But the opening is redundant ('Dodaje diagramy sekwencji... Dodaje całe diagramy sekwencji'), and the dense inline comments inside the example require careful parsing rather than being stated as separate rules.

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

Completeness4/5

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

For a high-complexity batch-mutation tool, the description covers the hardest part (the diagram data model) thoroughly, and an output schema exists so return values needn't be explained. The remaining gap is the unexplained file-path parameters and overwrite_output, which keeps it from a 5.

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 coverage is 0%, so the description must compensate. It does an excellent job documenting the inner structure of the 'diagrams' parameter (participants, item types call/self/create/return/found/signal/loop/opt/alt/ref), but source_path, output_path, and overwrite_output receive no explanation at all. Partial compensation for a low-coverage schema.

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?

The description opens with a specific verb and resource ('Dodaje diagramy sekwencji do kopii projektu'), which distinguishes it from the delete/get sequence-diagram siblings by name. It doesn't explicitly state the distinction from vpp_edit_class_model or vpp_export_plantuml, but the operation is unambiguous.

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

Usage Guidelines3/5

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

Usage is only implied: add diagrams to a project copy. There is no explicit 'use this when...' guidance, no mention of what to do instead for modifying existing diagrams, and no statement of prerequisites for source_path/output_path. The only conditional guidance is the replace_existing=true behavior.

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