naftiko: "1.0.0-alpha2" info: label: "GIPHY API — Categories" description: >- GIPHY — Categories. 1 operation. Lead operation: Return the list of GIF categories. Self-contained Naftiko capability covering one GIPHY business surface. tags: - GIPHY - Categories created: "2026-05-30" modified: "2026-05-30" binds: - namespace: env keys: GIPHY_API_KEY: GIPHY_API_KEY capability: consumes: - type: http namespace: "giphy-categories" baseUri: "https://api.giphy.com" description: "GIPHY API — Categories business capability." authentication: type: apikey key: api_key value: "{{env.GIPHY_API_KEY}}" placement: query resources: - name: "gif-categories" path: "/v1/gifs/categories" operations: - name: "listGifCategories" method: GET description: "Return the list of GIF categories." inputParameters: - { name: limit, in: query, type: integer, required: false, description: "Results per page." } - { name: offset, in: query, type: integer, required: false, description: "Pagination offset." } outputRawFormat: json outputParameters: - { name: result, type: object, value: "$." } exposes: - type: rest namespace: "giphy-categories-rest" port: 8080 description: "REST adapter for GIPHY API — Categories." resources: - path: "/v1/gif-categories" name: "gif-categories" description: "REST surface for GIF categories." operations: - method: GET name: "listGifCategories" description: "List GIF categories." call: "giphy-categories.listGifCategories" with: { limit: "rest.limit", offset: "rest.offset" } outputParameters: - { type: object, mapping: "$." } - type: mcp namespace: "giphy-categories-mcp" port: 9090 transport: http description: "MCP adapter for GIPHY API — Categories." tools: - name: "list-gif-categories" description: "List GIPHY GIF categories." hints: { readOnly: true, destructive: false, idempotent: true } call: "giphy-categories.listGifCategories" with: { limit: "tools.limit", offset: "tools.offset" } outputParameters: - { type: object, mapping: "$." }