naftiko: 1.0.0-alpha2 info: label: Freepik / Magnific API — Image Generation description: 'Freepik / Magnific API — Image Generation. 8 operations. Lead operation: Generate image with Flux 2 Pro. Self-contained Naftiko capability covering one Freepik business surface.' tags: - Freepik - Image Generation created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: FREEPIK_API_KEY: FREEPIK_API_KEY capability: consumes: - type: http namespace: freepik-image-generation baseUri: https://api.magnific.com description: Freepik / Magnific API — Image Generation business capability. Self-contained, no shared references. resources: - name: v1-ai-flux-2-pro path: /v1/ai/flux-2-pro operations: - name: generateflux2pro method: POST description: Generate image with Flux 2 Pro outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-ai-flux-2-turbo path: /v1/ai/flux-2-turbo operations: - name: generateflux2turbo method: POST description: Generate image with Flux 2 Turbo outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-ai-flux-dev path: /v1/ai/flux-dev operations: - name: generatefluxdev method: POST description: Generate image with Flux Dev outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-ai-flux-pro-v1-1 path: /v1/ai/flux-pro-v1-1 operations: - name: generatefluxprov11 method: POST description: Generate image with Flux Pro v1.1 outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-ai-hyperflux path: /v1/ai/hyperflux operations: - name: generatehyperflux method: POST description: Generate image with HyperFlux outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-ai-mystic path: /v1/ai/mystic operations: - name: generatemystic method: POST description: Generate image with Mystic outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-ai-runway path: /v1/ai/runway operations: - name: generaterunway method: POST description: Generate image with Runway outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-ai-seedream-v4-5 path: /v1/ai/seedream-v4-5 operations: - name: generateseedream method: POST description: Generate image with Seedream v4.5 outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false authentication: type: apikey key: x-magnific-api-key value: '{{env.FREEPIK_API_KEY}}' placement: header exposes: - type: rest namespace: freepik-image-generation-rest port: 8080 description: REST adapter for Freepik / Magnific API — Image Generation. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/v1/ai/flux-2-pro name: v1-ai-flux-2-pro description: REST surface for v1-ai-flux-2-pro. operations: - method: POST name: generateflux2pro description: Generate image with Flux 2 Pro call: freepik-image-generation.generateflux2pro with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/ai/flux-2-turbo name: v1-ai-flux-2-turbo description: REST surface for v1-ai-flux-2-turbo. operations: - method: POST name: generateflux2turbo description: Generate image with Flux 2 Turbo call: freepik-image-generation.generateflux2turbo with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/ai/flux-dev name: v1-ai-flux-dev description: REST surface for v1-ai-flux-dev. operations: - method: POST name: generatefluxdev description: Generate image with Flux Dev call: freepik-image-generation.generatefluxdev with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/ai/flux-pro-v1-1 name: v1-ai-flux-pro-v1-1 description: REST surface for v1-ai-flux-pro-v1-1. operations: - method: POST name: generatefluxprov11 description: Generate image with Flux Pro v1.1 call: freepik-image-generation.generatefluxprov11 with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/ai/hyperflux name: v1-ai-hyperflux description: REST surface for v1-ai-hyperflux. operations: - method: POST name: generatehyperflux description: Generate image with HyperFlux call: freepik-image-generation.generatehyperflux with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/ai/mystic name: v1-ai-mystic description: REST surface for v1-ai-mystic. operations: - method: POST name: generatemystic description: Generate image with Mystic call: freepik-image-generation.generatemystic with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/ai/runway name: v1-ai-runway description: REST surface for v1-ai-runway. operations: - method: POST name: generaterunway description: Generate image with Runway call: freepik-image-generation.generaterunway with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/ai/seedream-v4-5 name: v1-ai-seedream-v4-5 description: REST surface for v1-ai-seedream-v4-5. operations: - method: POST name: generateseedream description: Generate image with Seedream v4.5 call: freepik-image-generation.generateseedream with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: freepik-image-generation-mcp port: 9090 transport: http description: MCP adapter for Freepik / Magnific API — Image Generation. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: generate-image-flux-2-pro description: Generate image with Flux 2 Pro hints: readOnly: false destructive: false idempotent: false call: freepik-image-generation.generateflux2pro with: body: tools.body outputParameters: - type: object mapping: $. - name: generate-image-flux-2-turbo description: Generate image with Flux 2 Turbo hints: readOnly: false destructive: false idempotent: false call: freepik-image-generation.generateflux2turbo with: body: tools.body outputParameters: - type: object mapping: $. - name: generate-image-flux-dev description: Generate image with Flux Dev hints: readOnly: false destructive: false idempotent: false call: freepik-image-generation.generatefluxdev with: body: tools.body outputParameters: - type: object mapping: $. - name: generate-image-flux-pro-v1-1 description: Generate image with Flux Pro v1.1 hints: readOnly: false destructive: false idempotent: false call: freepik-image-generation.generatefluxprov11 with: body: tools.body outputParameters: - type: object mapping: $. - name: generate-image-hyperflux description: Generate image with HyperFlux hints: readOnly: false destructive: false idempotent: false call: freepik-image-generation.generatehyperflux with: body: tools.body outputParameters: - type: object mapping: $. - name: generate-image-mystic description: Generate image with Mystic hints: readOnly: false destructive: false idempotent: false call: freepik-image-generation.generatemystic with: body: tools.body outputParameters: - type: object mapping: $. - name: generate-image-runway description: Generate image with Runway hints: readOnly: false destructive: false idempotent: false call: freepik-image-generation.generaterunway with: body: tools.body outputParameters: - type: object mapping: $. - name: generate-image-seedream-v4-5 description: Generate image with Seedream v4.5 hints: readOnly: false destructive: false idempotent: false call: freepik-image-generation.generateseedream with: body: tools.body outputParameters: - type: object mapping: $.