naftiko: 1.0.0-alpha2 info: label: Spaceflight News API — Blogs description: 'Spaceflight News API — Blogs. 2 operations. Lead operation: List Blogs. Self-contained Naftiko capability covering one Spaceflight News Api business surface.' tags: - Spaceflight News Api - Blogs created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SPACEFLIGHT_NEWS_API_API_KEY: SPACEFLIGHT_NEWS_API_API_KEY capability: consumes: - type: http namespace: spaceflight-news-blogs baseUri: https://api.spaceflightnewsapi.net/v4 description: Spaceflight News API — Blogs business capability. Self-contained, no shared references. resources: - name: blogs path: /blogs/ operations: - name: listblogs method: GET description: List Blogs outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: limit in: query type: integer description: Number of results to return per page (default 10, max 100) - name: offset in: query type: integer description: The initial index from which to return the results - name: search in: query type: string description: Filter blogs by title or summary keywords - name: news_site in: query type: string description: Filter blogs by news site name - name: ordering in: query type: string description: Sort field. Prefix with - for descending order - name: blogs-id path: /blogs/{id}/ operations: - name: getblog method: GET description: Get Blog outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: integer description: Unique identifier of the blog post required: true exposes: - type: rest namespace: spaceflight-news-blogs-rest port: 8080 description: REST adapter for Spaceflight News API — Blogs. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/blogs name: blogs description: REST surface for blogs. operations: - method: GET name: listblogs description: List Blogs call: spaceflight-news-blogs.listblogs with: limit: rest.limit offset: rest.offset search: rest.search news_site: rest.news_site ordering: rest.ordering outputParameters: - type: object mapping: $. - path: /v1/blogs/{id} name: blogs-id description: REST surface for blogs-id. operations: - method: GET name: getblog description: Get Blog call: spaceflight-news-blogs.getblog with: id: rest.id outputParameters: - type: object mapping: $. - type: mcp namespace: spaceflight-news-blogs-mcp port: 9090 transport: http description: MCP adapter for Spaceflight News API — Blogs. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-blogs description: List Blogs hints: readOnly: true destructive: false idempotent: true call: spaceflight-news-blogs.listblogs with: limit: tools.limit offset: tools.offset search: tools.search news_site: tools.news_site ordering: tools.ordering outputParameters: - type: object mapping: $. - name: get-blog description: Get Blog hints: readOnly: true destructive: false idempotent: true call: spaceflight-news-blogs.getblog with: id: tools.id outputParameters: - type: object mapping: $.