Class DomainTools

java.lang.Object
ch.so.agi.mcp.tools.DomainTools

@Component public class DomainTools extends Object
  • Constructor Details

    • DomainTools

      public DomainTools()
  • Method Details

    • createEnumDomain

      public Map<String,Object> createEnumDomain(@McpToolParam(description="Domain-Name",required=true) String name, @McpToolParam(description="Enum-Items in Reihenfolge (einfache Variante ohne Item-Metaattribute)",required=false) @Nullable List<String> items, @McpToolParam(description="Annotierte Enum-Items in Reihenfolge mit optional iliDoc und metaAttributes",required=false) @Nullable List<EnumValueItem> itemSpecs, @McpToolParam(description="IliDoc-Blockkommentar direkt vor der DOMAIN",required=false) @Nullable String iliDoc, @McpToolParam(description="INTERLIS-Metaattribute direkt vor der DOMAIN",required=false) @Nullable List<MetaAttributeSpec> metaAttributes)
    • createNumericDomain

      public Map<String,Object> createNumericDomain(@McpToolParam(description="Domain-Name",required=true) String name, @McpToolParam(description="Minimum",required=true) String min, @McpToolParam(description="Maximum",required=true) String max, @McpToolParam(description="Einheits-FQN, z. B. \'INTERLIS.m\'",required=false) @Nullable String unitFqn, @McpToolParam(description="IliDoc-Blockkommentar direkt vor der DOMAIN",required=false) @Nullable String iliDoc, @McpToolParam(description="INTERLIS-Metaattribute direkt vor der DOMAIN",required=false) @Nullable List<MetaAttributeSpec> metaAttributes)
    • createUnit

      public Map<String,Object> createUnit(@McpToolParam(description="Einheiten-Name",required=true) String name, @McpToolParam(description="Positiver Faktor zur Basis-Einheit, z. B. 1000 f\u00fcr Kilometer",required=true) BigDecimal factor, @McpToolParam(description="Basis-Unit, z. B. \'INTERLIS.m\'",required=true) String base, @McpToolParam(description="IliDoc-Blockkommentar direkt vor der UNIT",required=false) @Nullable String iliDoc, @McpToolParam(description="INTERLIS-Metaattribute direkt vor der UNIT",required=false) @Nullable List<MetaAttributeSpec> metaAttributes)
    • createCoordDomainSnippet

      public Map<String,Object> createCoordDomainSnippet(@McpToolParam(description="Domain-Name",required=true) String name, @McpToolParam(description="Zwei oder drei Achsen mit min, max und unitFqn",required=true) List<DomainTools.CoordinateAxis> axes, @McpToolParam(description="Optionale erste ROTATION-Achse (1-basiert; nur zusammen mit rotationTo)",required=false) @Nullable Integer rotationFrom, @McpToolParam(description="Optionale zweite ROTATION-Achse (1-basiert; nur zusammen mit rotationFrom)",required=false) @Nullable Integer rotationTo, @McpToolParam(description="IliDoc-Blockkommentar direkt vor der DOMAIN",required=false) @Nullable String iliDoc, @McpToolParam(description="INTERLIS-Metaattribute direkt vor der DOMAIN",required=false) @Nullable List<MetaAttributeSpec> metaAttributes)
    • createEnumTreeDomainSnippet

      public Map<String,Object> createEnumTreeDomainSnippet(@McpToolParam(description="Domain-Name",required=true) String name, @McpToolParam(description="Rekursiver Enum-Baum. Jedes Element ist ein Objekt mit name (required) und optional iliDoc, metaAttributes und children mit derselben Struktur.",required=true) List<?> items, @McpToolParam(description="IliDoc-Blockkommentar direkt vor der DOMAIN",required=false) @Nullable String iliDoc, @McpToolParam(description="INTERLIS-Metaattribute direkt vor der DOMAIN",required=false) @Nullable List<MetaAttributeSpec> metaAttributes)