Microsoft Azure · Capability

Microsoft Azure Custom voice API — Consent

Microsoft Azure Custom voice API — Consent. 5 operations. Lead operation: Microsoft Azure Get Consents. Self-contained Naftiko capability covering one Microsoft Azure business surface.

Run with Naftiko Microsoft AzureConsent

What You Can Do

GET
Microsoftazureconsentslist — Microsoft Azure Get Consents
/v1/consents
GET
Microsoftazureconsentsget — Microsoft Azure Get Consents Id
/v1/consents/{id}
DELETE
Microsoftazureconsentsdelete — Microsoft Azure Delete Consents Id
/v1/consents/{id}
PUT
Microsoftazureconsentscreate — Microsoft Azure Put Consents Id
/v1/consents/{id}
POST
Microsoftazureconsentspost — Microsoft Azure Post Consents Id
/v1/consents/{id}

MCP Tools

microsoft-azure-get-consents

Microsoft Azure Get Consents

read-only idempotent
microsoft-azure-get-consents-id

Microsoft Azure Get Consents Id

read-only idempotent
microsoft-azure-delete-consents-id

Microsoft Azure Delete Consents Id

idempotent
microsoft-azure-put-consents-id

Microsoft Azure Put Consents Id

idempotent
microsoft-azure-post-consents-id

Microsoft Azure Post Consents Id

Capability Spec

custom-voice-consent.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Microsoft Azure Custom voice API — Consent
  description: 'Microsoft Azure Custom voice API — Consent. 5 operations. Lead operation: Microsoft Azure Get Consents. Self-contained
    Naftiko capability covering one Microsoft Azure business surface.'
  tags:
  - Microsoft Azure
  - Consent
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    MICROSOFT_AZURE_API_KEY: MICROSOFT_AZURE_API_KEY
capability:
  consumes:
  - type: http
    namespace: custom-voice-consent
    baseUri: ''
    description: Microsoft Azure Custom voice API — Consent business capability. Self-contained, no shared references.
    resources:
    - name: consents
      path: /consents
      operations:
      - name: microsoftazureconsentslist
        method: GET
        description: Microsoft Azure Get Consents
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: consents-id
      path: /consents/{id}
      operations:
      - name: microsoftazureconsentsget
        method: GET
        description: Microsoft Azure Get Consents Id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: microsoftazureconsentsdelete
        method: DELETE
        description: Microsoft Azure Delete Consents Id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: microsoftazureconsentscreate
        method: PUT
        description: Microsoft Azure Put Consents Id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: consent
          in: body
          type: string
          description: consent definition
          required: true
      - name: microsoftazureconsentspost
        method: POST
        description: Microsoft Azure Post Consents Id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: formData
          type: string
          description: The project ID.
          required: true
        - name: displayName
          in: formData
          type: string
          description: The display name of this consent.
        - name: description
          in: formData
          type: string
          description: Optional description of this consent.
        - name: voiceTalentName
          in: formData
          type: string
          description: The name of voice talent.
          required: true
        - name: companyName
          in: formData
          type: string
          description: The name of company.
          required: true
        - name: audiodata
          in: formData
          type: file
          description: An audio file containing the audio data.
          required: true
        - name: locale
          in: formData
          type: string
          description: The locale of this consent. Locale code follows BCP-47. You can find the text to speech locale list
            here https://learn.microsoft.com/azure/ai-services/speech-se
          required: true
        - name: properties
          in: formData
          type: string
          description: properties.
  exposes:
  - type: rest
    namespace: custom-voice-consent-rest
    port: 8080
    description: REST adapter for Microsoft Azure Custom voice API — Consent. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/consents
      name: consents
      description: REST surface for consents.
      operations:
      - method: GET
        name: microsoftazureconsentslist
        description: Microsoft Azure Get Consents
        call: custom-voice-consent.microsoftazureconsentslist
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/consents/{id}
      name: consents-id
      description: REST surface for consents-id.
      operations:
      - method: GET
        name: microsoftazureconsentsget
        description: Microsoft Azure Get Consents Id
        call: custom-voice-consent.microsoftazureconsentsget
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: microsoftazureconsentsdelete
        description: Microsoft Azure Delete Consents Id
        call: custom-voice-consent.microsoftazureconsentsdelete
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: microsoftazureconsentscreate
        description: Microsoft Azure Put Consents Id
        call: custom-voice-consent.microsoftazureconsentscreate
        with:
          consent: rest.consent
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: microsoftazureconsentspost
        description: Microsoft Azure Post Consents Id
        call: custom-voice-consent.microsoftazureconsentspost
        with:
          projectId: rest.projectId
          displayName: rest.displayName
          description: rest.description
          voiceTalentName: rest.voiceTalentName
          companyName: rest.companyName
          audiodata: rest.audiodata
          locale: rest.locale
          properties: rest.properties
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: custom-voice-consent-mcp
    port: 9090
    transport: http
    description: MCP adapter for Microsoft Azure Custom voice API — Consent. One tool per consumed operation, routed inline
      through this capability's consumes block.
    tools:
    - name: microsoft-azure-get-consents
      description: Microsoft Azure Get Consents
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: custom-voice-consent.microsoftazureconsentslist
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-get-consents-id
      description: Microsoft Azure Get Consents Id
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: custom-voice-consent.microsoftazureconsentsget
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-delete-consents-id
      description: Microsoft Azure Delete Consents Id
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: custom-voice-consent.microsoftazureconsentsdelete
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-put-consents-id
      description: Microsoft Azure Put Consents Id
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: custom-voice-consent.microsoftazureconsentscreate
      with:
        consent: tools.consent
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-azure-post-consents-id
      description: Microsoft Azure Post Consents Id
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: custom-voice-consent.microsoftazureconsentspost
      with:
        projectId: tools.projectId
        displayName: tools.displayName
        description: tools.description
        voiceTalentName: tools.voiceTalentName
        companyName: tools.companyName
        audiodata: tools.audiodata
        locale: tools.locale
        properties: tools.properties
      outputParameters:
      - type: object
        mapping: $.