naftiko: 1.0.0-alpha2 info: label: New Relic — External description: 'New Relic — External. 4 operations. Lead operation: New Relic Get Alerts External Service Conditions. Self-contained Naftiko capability covering one New Relic business surface.' tags: - New Relic - External 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-external baseUri: https://api.newrelic.com/v2 description: New Relic — External business capability. Self-contained, no shared references. resources: - name: alerts_external_service_conditions.json path: /alerts_external_service_conditions.json operations: - name: getalertsexternalserviceconditions method: GET description: New Relic Get Alerts External Service Conditions outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: policy_id in: query type: integer description: Alerts policy ID required: true - name: page in: query type: integer description: Pagination index - name: alerts_external_service_conditions-policies-policy_id}.json path: /alerts_external_service_conditions/policies/{policy_id}.json operations: - name: postalertsexternalserviceconditionspoliciespolicyid method: POST description: New Relic Post Alerts External Service Conditions Policies outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: policy_id in: path type: integer description: Alerts policy ID required: true - name: body in: body type: object description: Request body (JSON). required: true - name: alerts_external_service_conditions-condition_id}.json path: /alerts_external_service_conditions/{condition_id}.json operations: - name: putalertsexternalserviceconditionsconditionid method: PUT description: New Relic Put Alerts External Service Conditions outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: condition_id in: path type: integer description: Alerts condition to update required: true - name: body in: body type: object description: Request body (JSON). required: true - name: deletealertsexternalserviceconditionsconditionid method: DELETE description: New Relic Delete Alerts External Service Conditions outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: condition_id in: path type: integer description: Alerts condition ID required: true authentication: type: apikey key: Api-Key value: '{{env.NEW_RELIC_API_KEY}}' placement: header exposes: - type: rest namespace: new-relic-external-rest port: 8080 description: REST adapter for New Relic — External. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/alerts-external-service-conditions-json name: alerts-external-service-conditions-json description: REST surface for alerts_external_service_conditions.json. operations: - method: GET name: getalertsexternalserviceconditions description: New Relic Get Alerts External Service Conditions call: new-relic-external.getalertsexternalserviceconditions with: policy_id: rest.policy_id page: rest.page outputParameters: - type: object mapping: $. - path: /v1/alerts-external-service-conditions/policies/policy-id-json name: alerts-external-service-conditions-policies-policy-id-json description: REST surface for alerts_external_service_conditions-policies-policy_id}.json. operations: - method: POST name: postalertsexternalserviceconditionspoliciespolicyid description: New Relic Post Alerts External Service Conditions Policies call: new-relic-external.postalertsexternalserviceconditionspoliciespolicyid with: policy_id: rest.policy_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/alerts-external-service-conditions/condition-id-json name: alerts-external-service-conditions-condition-id-json description: REST surface for alerts_external_service_conditions-condition_id}.json. operations: - method: PUT name: putalertsexternalserviceconditionsconditionid description: New Relic Put Alerts External Service Conditions call: new-relic-external.putalertsexternalserviceconditionsconditionid with: condition_id: rest.condition_id body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletealertsexternalserviceconditionsconditionid description: New Relic Delete Alerts External Service Conditions call: new-relic-external.deletealertsexternalserviceconditionsconditionid with: condition_id: rest.condition_id outputParameters: - type: object mapping: $. - type: mcp namespace: new-relic-external-mcp port: 9090 transport: http description: MCP adapter for New Relic — External. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: new-relic-get-alerts-external description: New Relic Get Alerts External Service Conditions hints: readOnly: true destructive: false idempotent: true call: new-relic-external.getalertsexternalserviceconditions with: policy_id: tools.policy_id page: tools.page outputParameters: - type: object mapping: $. - name: new-relic-post-alerts-external description: New Relic Post Alerts External Service Conditions Policies hints: readOnly: false destructive: false idempotent: false call: new-relic-external.postalertsexternalserviceconditionspoliciespolicyid with: policy_id: tools.policy_id body: tools.body outputParameters: - type: object mapping: $. - name: new-relic-put-alerts-external description: New Relic Put Alerts External Service Conditions hints: readOnly: false destructive: false idempotent: true call: new-relic-external.putalertsexternalserviceconditionsconditionid with: condition_id: tools.condition_id body: tools.body outputParameters: - type: object mapping: $. - name: new-relic-delete-alerts-external description: New Relic Delete Alerts External Service Conditions hints: readOnly: false destructive: true idempotent: true call: new-relic-external.deletealertsexternalserviceconditionsconditionid with: condition_id: tools.condition_id outputParameters: - type: object mapping: $.