naftiko: 1.0.0-alpha2 info: label: Particle Health API — Patients description: 'Particle Health API — Patient registration, lookup, search, and deletion. Self-contained Naftiko capability covering Particle''s Patients business surface.' tags: - Particle Health - Patients created: '2026-05-24' modified: '2026-05-24' binds: - namespace: env keys: PARTICLE_HEALTH_API_TOKEN: PARTICLE_HEALTH_API_TOKEN capability: consumes: - type: http namespace: patients baseUri: https://api.particlehealth.com description: Particle Health Patients business capability. Self-contained, no shared references. resources: - name: Patients path: /api/v2/patients operations: - name: listpatients method: GET description: List Patients outputRawFormat: json outputParameters: - name: result type: object value: $. - name: submitpatient method: POST description: Submit Patient outputRawFormat: json outputParameters: - name: result type: object value: $. - name: Patient path: /api/v2/patients/{id} operations: - name: getpatient method: GET description: Get Patient outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deletepatient method: DELETE description: Delete Patient outputRawFormat: json outputParameters: - name: result type: object value: $. - name: PatientSearch path: /api/v2/patients/search operations: - name: searchpatient method: POST description: Search Patient outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.PARTICLE_HEALTH_API_TOKEN}}' exposes: - type: rest namespace: patients-rest port: 8080 description: REST adapter for Particle Health Patients. resources: - path: /v1/patients name: patients description: REST surface for Patients. operations: - method: GET name: listpatients description: List Patients call: patients.listpatients outputParameters: - type: object mapping: $. - method: POST name: submitpatient description: Submit Patient call: patients.submitpatient outputParameters: - type: object mapping: $. - path: /v1/patients/{id} name: patient description: REST surface for individual Patient. operations: - method: GET name: getpatient description: Get Patient call: patients.getpatient outputParameters: - type: object mapping: $. - method: DELETE name: deletepatient description: Delete Patient call: patients.deletepatient outputParameters: - type: object mapping: $. - path: /v1/patients/search name: patient-search description: REST surface for Patient search. operations: - method: POST name: searchpatient description: Search Patient call: patients.searchpatient outputParameters: - type: object mapping: $. - type: mcp namespace: patients-mcp port: 9090 transport: http description: MCP adapter for Particle Health Patients. tools: - name: list-patients description: List Patients hints: readOnly: true destructive: false idempotent: true call: patients.listpatients outputParameters: - type: object mapping: $. - name: submit-patient description: Submit Patient hints: readOnly: false destructive: false idempotent: false call: patients.submitpatient outputParameters: - type: object mapping: $. - name: get-patient description: Get Patient hints: readOnly: true destructive: false idempotent: true call: patients.getpatient outputParameters: - type: object mapping: $. - name: delete-patient description: Delete Patient hints: readOnly: false destructive: true idempotent: true call: patients.deletepatient outputParameters: - type: object mapping: $. - name: search-patient description: Search Patient hints: readOnly: true destructive: false idempotent: true call: patients.searchpatient outputParameters: - type: object mapping: $.