naftiko: 1.0.0-alpha2 info: label: New Relic — Channels description: 'New Relic — Channels. 5 operations. Lead operation: New Relic Get Alerts Channels. Self-contained Naftiko capability covering one New Relic business surface.' tags: - New Relic - Channels created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: NEW_RELIC_API_KEY: NEW_RELIC_API_KEY capability: consumes: - type: http namespace: new-relic-channels baseUri: https://api.newrelic.com/v2 description: New Relic — Channels business capability. Self-contained, no shared references. resources: - name: alerts_channels.json path: /alerts_channels.json operations: - name: getalertschannels method: GET description: New Relic Get Alerts Channels outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: page in: query type: integer description: Pagination index - name: postalertschannels method: POST description: New Relic Post Alerts Channels outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: policy_ids in: query type: array description: Policy IDs to associate with channel - name: body in: body type: object description: Request body (JSON). required: true - name: alerts_channels-channel_id}.json path: /alerts_channels/{channel_id}.json operations: - name: deletealertschannelschannelid method: DELETE description: New Relic Delete Alerts Channels Channel outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: channel_id in: path type: integer description: Channel ID required: true - name: alerts_policy_channels.json path: /alerts_policy_channels.json operations: - name: putalertspolicychannels method: PUT description: New Relic Put Alerts Policy Channels outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: policy_id in: query type: integer description: Policy ID required: true - name: channel_ids in: query type: array description: Channel IDs required: true - name: deletealertspolicychannels method: DELETE description: New Relic Delete Alerts Policy Channels outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: policy_id in: query type: integer description: Policy ID required: true - name: channel_id in: query type: integer description: Channel ID required: true authentication: type: apikey key: Api-Key value: '{{env.NEW_RELIC_API_KEY}}' placement: header exposes: - type: rest namespace: new-relic-channels-rest port: 8080 description: REST adapter for New Relic — Channels. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/alerts-channels-json name: alerts-channels-json description: REST surface for alerts_channels.json. operations: - method: GET name: getalertschannels description: New Relic Get Alerts Channels call: new-relic-channels.getalertschannels with: page: rest.page outputParameters: - type: object mapping: $. - method: POST name: postalertschannels description: New Relic Post Alerts Channels call: new-relic-channels.postalertschannels with: policy_ids: rest.policy_ids body: rest.body outputParameters: - type: object mapping: $. - path: /v1/alerts-channels/channel-id-json name: alerts-channels-channel-id-json description: REST surface for alerts_channels-channel_id}.json. operations: - method: DELETE name: deletealertschannelschannelid description: New Relic Delete Alerts Channels Channel call: new-relic-channels.deletealertschannelschannelid with: channel_id: rest.channel_id outputParameters: - type: object mapping: $. - path: /v1/alerts-policy-channels-json name: alerts-policy-channels-json description: REST surface for alerts_policy_channels.json. operations: - method: PUT name: putalertspolicychannels description: New Relic Put Alerts Policy Channels call: new-relic-channels.putalertspolicychannels with: policy_id: rest.policy_id channel_ids: rest.channel_ids outputParameters: - type: object mapping: $. - method: DELETE name: deletealertspolicychannels description: New Relic Delete Alerts Policy Channels call: new-relic-channels.deletealertspolicychannels with: policy_id: rest.policy_id channel_id: rest.channel_id outputParameters: - type: object mapping: $. - type: mcp namespace: new-relic-channels-mcp port: 9090 transport: http description: MCP adapter for New Relic — Channels. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: new-relic-get-alerts-channels description: New Relic Get Alerts Channels hints: readOnly: true destructive: false idempotent: true call: new-relic-channels.getalertschannels with: page: tools.page outputParameters: - type: object mapping: $. - name: new-relic-post-alerts-channels description: New Relic Post Alerts Channels hints: readOnly: false destructive: false idempotent: false call: new-relic-channels.postalertschannels with: policy_ids: tools.policy_ids body: tools.body outputParameters: - type: object mapping: $. - name: new-relic-delete-alerts-channels description: New Relic Delete Alerts Channels Channel hints: readOnly: false destructive: true idempotent: true call: new-relic-channels.deletealertschannelschannelid with: channel_id: tools.channel_id outputParameters: - type: object mapping: $. - name: new-relic-put-alerts-policy description: New Relic Put Alerts Policy Channels hints: readOnly: false destructive: false idempotent: true call: new-relic-channels.putalertspolicychannels with: policy_id: tools.policy_id channel_ids: tools.channel_ids outputParameters: - type: object mapping: $. - name: new-relic-delete-alerts-policy description: New Relic Delete Alerts Policy Channels hints: readOnly: false destructive: true idempotent: true call: new-relic-channels.deletealertspolicychannels with: policy_id: tools.policy_id channel_id: tools.channel_id outputParameters: - type: object mapping: $.