naftiko: 1.0.0-alpha2 info: label: McAfee ePO API — Policies description: 'McAfee ePO API — Policies. 3 operations. Lead operation: McAfee Assign a policy to a group. Self-contained Naftiko capability covering one Mcafee business surface.' tags: - Mcafee - Policies created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: MCAFEE_API_KEY: MCAFEE_API_KEY capability: consumes: - type: http namespace: epo-policies baseUri: https://{epo-server}:8443/remote description: McAfee ePO API — Policies business capability. Self-contained, no shared references. resources: - name: policy.assignToGroup path: /policy.assignToGroup operations: - name: policyassigntogroup method: POST description: McAfee Assign a policy to a group outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: groupId in: query type: integer description: Target group ID required: true - name: productId in: query type: string description: Product ID for the policy required: true - name: typeId in: query type: string description: Policy type ID required: true - name: objectId in: query type: integer description: Policy object ID required: true - name: policy.assignToSystem path: /policy.assignToSystem operations: - name: policyassigntosystem method: POST description: McAfee Assign a policy to a system outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: names in: query type: string description: Comma-separated list of system names required: true - name: productId in: query type: string description: Product ID for the policy required: true - name: typeId in: query type: string description: Policy type ID required: true - name: objectId in: query type: integer description: Policy object ID required: true - name: policy.find path: /policy.find operations: - name: policyfind method: GET description: McAfee Search for policies outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: searchText in: query type: string description: Search string to match against policy names authentication: type: basic username: '{{env.MCAFEE_USER}}' password: '{{env.MCAFEE_PASS}}' exposes: - type: rest namespace: epo-policies-rest port: 8080 description: REST adapter for McAfee ePO API — Policies. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/policy-assigntogroup name: policy-assigntogroup description: REST surface for policy.assignToGroup. operations: - method: POST name: policyassigntogroup description: McAfee Assign a policy to a group call: epo-policies.policyassigntogroup with: groupId: rest.groupId productId: rest.productId typeId: rest.typeId objectId: rest.objectId outputParameters: - type: object mapping: $. - path: /v1/policy-assigntosystem name: policy-assigntosystem description: REST surface for policy.assignToSystem. operations: - method: POST name: policyassigntosystem description: McAfee Assign a policy to a system call: epo-policies.policyassigntosystem with: names: rest.names productId: rest.productId typeId: rest.typeId objectId: rest.objectId outputParameters: - type: object mapping: $. - path: /v1/policy-find name: policy-find description: REST surface for policy.find. operations: - method: GET name: policyfind description: McAfee Search for policies call: epo-policies.policyfind with: searchText: rest.searchText outputParameters: - type: object mapping: $. - type: mcp namespace: epo-policies-mcp port: 9090 transport: http description: MCP adapter for McAfee ePO API — Policies. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: mcafee-assign-policy-group description: McAfee Assign a policy to a group hints: readOnly: false destructive: false idempotent: false call: epo-policies.policyassigntogroup with: groupId: tools.groupId productId: tools.productId typeId: tools.typeId objectId: tools.objectId outputParameters: - type: object mapping: $. - name: mcafee-assign-policy-system description: McAfee Assign a policy to a system hints: readOnly: false destructive: false idempotent: false call: epo-policies.policyassigntosystem with: names: tools.names productId: tools.productId typeId: tools.typeId objectId: tools.objectId outputParameters: - type: object mapping: $. - name: mcafee-search-policies description: McAfee Search for policies hints: readOnly: true destructive: false idempotent: true call: epo-policies.policyfind with: searchText: tools.searchText outputParameters: - type: object mapping: $.