naftiko: 1.0.0-alpha2 info: label: Spring Initializr API — Project Generation description: 'Spring Initializr API — Project Generation. 2 operations. Lead operation: Generate Project TGZ. Self-contained Naftiko capability covering one Spring business surface.' tags: - Spring - Project Generation created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SPRING_API_KEY: SPRING_API_KEY capability: consumes: - type: http namespace: initializr-project-generation baseUri: https://start.spring.io description: Spring Initializr API — Project Generation business capability. Self-contained, no shared references. resources: - name: starter.tgz path: /starter.tgz operations: - name: generateprojecttgz method: GET description: Generate Project TGZ outputRawFormat: json outputParameters: - name: result type: object value: $. - name: starter.zip path: /starter.zip operations: - name: generateprojectzip method: GET description: Generate Project ZIP outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: initializr-project-generation-rest port: 8080 description: REST adapter for Spring Initializr API — Project Generation. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/starter-tgz name: starter-tgz description: REST surface for starter.tgz. operations: - method: GET name: generateprojecttgz description: Generate Project TGZ call: initializr-project-generation.generateprojecttgz outputParameters: - type: object mapping: $. - path: /v1/starter-zip name: starter-zip description: REST surface for starter.zip. operations: - method: GET name: generateprojectzip description: Generate Project ZIP call: initializr-project-generation.generateprojectzip outputParameters: - type: object mapping: $. - type: mcp namespace: initializr-project-generation-mcp port: 9090 transport: http description: MCP adapter for Spring Initializr API — Project Generation. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: generate-project-tgz description: Generate Project TGZ hints: readOnly: true destructive: false idempotent: true call: initializr-project-generation.generateprojecttgz outputParameters: - type: object mapping: $. - name: generate-project-zip description: Generate Project ZIP hints: readOnly: true destructive: false idempotent: true call: initializr-project-generation.generateprojectzip outputParameters: - type: object mapping: $.