naftiko: 1.0.0-alpha2 info: label: Songstats Enterprise API — Collaborators description: 'Songstats Enterprise API — Collaborators. 5 operations. Lead operation: Get Collaborator Catalog. Self-contained Naftiko capability covering one Songstats business surface.' tags: - Songstats - Collaborators created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SONGSTATS_API_KEY: SONGSTATS_API_KEY capability: consumes: - type: http namespace: songstats-collaborators baseUri: https://api.songstats.com/enterprise/v1 description: Songstats Enterprise API — Collaborators business capability. Self-contained, no shared references. resources: - name: collaborators-catalog path: /collaborators/catalog operations: - name: getcollaboratorcatalog method: GET description: Get Collaborator Catalog outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: songstats_collaborator_id in: query type: string description: Songstats collaborator ID required: true - name: collaborators-info path: /collaborators/info operations: - name: getcollaboratorinfo method: GET description: Get Collaborator Info outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: songstats_collaborator_id in: query type: string description: Songstats collaborator ID - name: collaborators-search path: /collaborators/search operations: - name: searchcollaborators method: GET description: Search Collaborators outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: q in: query type: string description: Search query required: true - name: collaborators-stats path: /collaborators/stats operations: - name: getcollaboratorcurrentstats method: GET description: Get Collaborator Current Stats outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: songstats_collaborator_id in: query type: string description: Songstats collaborator ID required: true - name: source in: query type: string description: Streaming platform source filter - name: collaborators-top_tracks path: /collaborators/top_tracks operations: - name: getcollaboratortoptracks method: GET description: Get Collaborator Top Tracks outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: songstats_collaborator_id in: query type: string description: Songstats collaborator ID required: true - name: source in: query type: string description: Streaming platform source filter authentication: type: apikey key: apikey value: '{{env.SONGSTATS_API_KEY}}' placement: header exposes: - type: rest namespace: songstats-collaborators-rest port: 8080 description: REST adapter for Songstats Enterprise API — Collaborators. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/collaborators/catalog name: collaborators-catalog description: REST surface for collaborators-catalog. operations: - method: GET name: getcollaboratorcatalog description: Get Collaborator Catalog call: songstats-collaborators.getcollaboratorcatalog with: songstats_collaborator_id: rest.songstats_collaborator_id outputParameters: - type: object mapping: $. - path: /v1/collaborators/info name: collaborators-info description: REST surface for collaborators-info. operations: - method: GET name: getcollaboratorinfo description: Get Collaborator Info call: songstats-collaborators.getcollaboratorinfo with: songstats_collaborator_id: rest.songstats_collaborator_id outputParameters: - type: object mapping: $. - path: /v1/collaborators/search name: collaborators-search description: REST surface for collaborators-search. operations: - method: GET name: searchcollaborators description: Search Collaborators call: songstats-collaborators.searchcollaborators with: q: rest.q outputParameters: - type: object mapping: $. - path: /v1/collaborators/stats name: collaborators-stats description: REST surface for collaborators-stats. operations: - method: GET name: getcollaboratorcurrentstats description: Get Collaborator Current Stats call: songstats-collaborators.getcollaboratorcurrentstats with: songstats_collaborator_id: rest.songstats_collaborator_id source: rest.source outputParameters: - type: object mapping: $. - path: /v1/collaborators/top-tracks name: collaborators-top-tracks description: REST surface for collaborators-top_tracks. operations: - method: GET name: getcollaboratortoptracks description: Get Collaborator Top Tracks call: songstats-collaborators.getcollaboratortoptracks with: songstats_collaborator_id: rest.songstats_collaborator_id source: rest.source outputParameters: - type: object mapping: $. - type: mcp namespace: songstats-collaborators-mcp port: 9090 transport: http description: MCP adapter for Songstats Enterprise API — Collaborators. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-collaborator-catalog description: Get Collaborator Catalog hints: readOnly: true destructive: false idempotent: true call: songstats-collaborators.getcollaboratorcatalog with: songstats_collaborator_id: tools.songstats_collaborator_id outputParameters: - type: object mapping: $. - name: get-collaborator-info description: Get Collaborator Info hints: readOnly: true destructive: false idempotent: true call: songstats-collaborators.getcollaboratorinfo with: songstats_collaborator_id: tools.songstats_collaborator_id outputParameters: - type: object mapping: $. - name: search-collaborators description: Search Collaborators hints: readOnly: true destructive: false idempotent: true call: songstats-collaborators.searchcollaborators with: q: tools.q outputParameters: - type: object mapping: $. - name: get-collaborator-current-stats description: Get Collaborator Current Stats hints: readOnly: true destructive: false idempotent: true call: songstats-collaborators.getcollaboratorcurrentstats with: songstats_collaborator_id: tools.songstats_collaborator_id source: tools.source outputParameters: - type: object mapping: $. - name: get-collaborator-top-tracks description: Get Collaborator Top Tracks hints: readOnly: true destructive: false idempotent: true call: songstats-collaborators.getcollaboratortoptracks with: songstats_collaborator_id: tools.songstats_collaborator_id source: tools.source outputParameters: - type: object mapping: $.