naftiko: 1.0.0-alpha2 info: label: Mashable via News API — Headlines description: 'Mashable via News API — Headlines. 1 operations. Lead operation: Top headlines for Mashable. Self-contained Naftiko capability covering one Mashable business surface.' tags: - Mashable - Headlines created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: MASHABLE_API_KEY: MASHABLE_API_KEY capability: consumes: - type: http namespace: mashable-headlines baseUri: https://newsapi.org/v2 description: Mashable via News API — Headlines business capability. Self-contained, no shared references. resources: - name: top-headlines path: /top-headlines operations: - name: getmashabletopheadlines method: GET description: Top headlines for Mashable outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sources in: query type: string description: Pass "mashable" to limit headlines to Mashable. - name: q in: query type: string description: Keywords or phrase to search within Mashable headlines. - name: pageSize in: query type: integer - name: page in: query type: integer authentication: type: apikey key: X-Api-Key value: '{{env.MASHABLE_API_KEY}}' placement: header exposes: - type: rest namespace: mashable-headlines-rest port: 8080 description: REST adapter for Mashable via News API — Headlines. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/top-headlines name: top-headlines description: REST surface for top-headlines. operations: - method: GET name: getmashabletopheadlines description: Top headlines for Mashable call: mashable-headlines.getmashabletopheadlines with: sources: rest.sources q: rest.q pageSize: rest.pageSize page: rest.page outputParameters: - type: object mapping: $. - type: mcp namespace: mashable-headlines-mcp port: 9090 transport: http description: MCP adapter for Mashable via News API — Headlines. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: top-headlines-mashable description: Top headlines for Mashable hints: readOnly: true destructive: false idempotent: true call: mashable-headlines.getmashabletopheadlines with: sources: tools.sources q: tools.q pageSize: tools.pageSize page: tools.page outputParameters: - type: object mapping: $.