Metronome · Capability

Metronome — Settings

Metronome — Settings. 11 operations. Lead operation: Create Stripe billing settings. Self-contained Naftiko capability covering one Metronome business surface.

Run with Naftiko MetronomeSettings

What You Can Do

POST
Createstripebillingsettingsv1 — Create Stripe billing settings
/v1/v1/client/billing-config/stripe
PATCH
Updatestripebillingsettingsv1 — Update Stripe billing settings
/v1/v1/client/billing-config/stripe
DELETE
Deletestripebillingsettingsv1 — Delete Stripe billing settings
/v1/v1/client/billing-config/stripe
POST
Setbillingproviderapikeyv1 — Set the billing provider API key
/v1/v1/client/billing-config/{billing-provider-type}/apikey
POST
Setclientwebhooksecretv1 — Set the client webhook secret
/v1/v1/client/config/webhook-secret
GET
Listcredittypesv1 — List pricing units
/v1/v1/credit-types/list
POST
Listconfiguredbillingprovidersv1 — List account-level billing providers
/v1/v1/listconfiguredbillingproviders
POST
Rotatedeltastreamsecretv1 — Rotate the HMAC secret used to sign delta stream messages
/v1/v1/rotatedeltastreamsecret
POST
Setupbillingproviderv1 — Set up account-level billing provider
/v1/v1/setupbillingprovider
POST
Upsertanrokapitokenv1 — Upsert Anrok API token
/v1/v1/upsertanrokapitoken
POST
Upsertavalaracredentialsv1 — Upsert Avalara credentials
/v1/v1/upsertavalaracredentials

MCP Tools

create-stripe-billing-settings

Create Stripe billing settings

update-stripe-billing-settings

Update Stripe billing settings

idempotent
delete-stripe-billing-settings

Delete Stripe billing settings

idempotent
set-billing-provider-api-key

Set the billing provider API key

set-client-webhook-secret

Set the client webhook secret

list-pricing-units

List pricing units

read-only idempotent
list-account-level-billing-providers

List account-level billing providers

read-only
rotate-hmac-secret-used-sign

Rotate the HMAC secret used to sign delta stream messages

set-up-account-level-billing

Set up account-level billing provider

upsert-anrok-api-token

Upsert Anrok API token

upsert-avalara-credentials

Upsert Avalara credentials

Capability Spec

metronome-settings.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Metronome — Settings
  description: 'Metronome — Settings. 11 operations. Lead operation: Create Stripe billing settings. Self-contained Naftiko
    capability covering one Metronome business surface.'
  tags:
  - Metronome
  - Settings
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    METRONOME_API_KEY: METRONOME_API_KEY
capability:
  consumes:
  - type: http
    namespace: metronome-settings
    baseUri: https://api.metronome.com
    description: Metronome — Settings business capability. Self-contained, no shared references.
    resources:
    - name: v1-client-billing-config-stripe
      path: /v1/client/billing-config/stripe
      operations:
      - name: createstripebillingsettingsv1
        method: POST
        description: Create Stripe billing settings
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: updatestripebillingsettingsv1
        method: PATCH
        description: Update Stripe billing settings
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: deletestripebillingsettingsv1
        method: DELETE
        description: Delete Stripe billing settings
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-client-billing-config-billing_provider_type-apiKey
      path: /v1/client/billing-config/{billing_provider_type}/apiKey
      operations:
      - name: setbillingproviderapikeyv1
        method: POST
        description: Set the billing provider API key
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: v1-client-config-webhook_secret
      path: /v1/client/config/webhook_secret
      operations:
      - name: setclientwebhooksecretv1
        method: POST
        description: Set the client webhook secret
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: v1-credit-types-list
      path: /v1/credit-types/list
      operations:
      - name: listcredittypesv1
        method: GET
        description: List pricing units
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-listConfiguredBillingProviders
      path: /v1/listConfiguredBillingProviders
      operations:
      - name: listconfiguredbillingprovidersv1
        method: POST
        description: List account-level billing providers
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: v1-rotateDeltaStreamSecret
      path: /v1/rotateDeltaStreamSecret
      operations:
      - name: rotatedeltastreamsecretv1
        method: POST
        description: Rotate the HMAC secret used to sign delta stream messages
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: v1-setUpBillingProvider
      path: /v1/setUpBillingProvider
      operations:
      - name: setupbillingproviderv1
        method: POST
        description: Set up account-level billing provider
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: v1-upsertAnrokApiToken
      path: /v1/upsertAnrokApiToken
      operations:
      - name: upsertanrokapitokenv1
        method: POST
        description: Upsert Anrok API token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: v1-upsertAvalaraCredentials
      path: /v1/upsertAvalaraCredentials
      operations:
      - name: upsertavalaracredentialsv1
        method: POST
        description: Upsert Avalara credentials
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    authentication:
      type: bearer
      token: '{{env.METRONOME_API_KEY}}'
  exposes:
  - type: rest
    namespace: metronome-settings-rest
    port: 8080
    description: REST adapter for Metronome — Settings. One Spectral-compliant resource per consumed operation, prefixed with
      /v1.
    resources:
    - path: /v1/v1/client/billing-config/stripe
      name: v1-client-billing-config-stripe
      description: REST surface for v1-client-billing-config-stripe.
      operations:
      - method: POST
        name: createstripebillingsettingsv1
        description: Create Stripe billing settings
        call: metronome-settings.createstripebillingsettingsv1
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updatestripebillingsettingsv1
        description: Update Stripe billing settings
        call: metronome-settings.updatestripebillingsettingsv1
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletestripebillingsettingsv1
        description: Delete Stripe billing settings
        call: metronome-settings.deletestripebillingsettingsv1
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/client/billing-config/{billing-provider-type}/apikey
      name: v1-client-billing-config-billing-provider-type-apikey
      description: REST surface for v1-client-billing-config-billing_provider_type-apiKey.
      operations:
      - method: POST
        name: setbillingproviderapikeyv1
        description: Set the billing provider API key
        call: metronome-settings.setbillingproviderapikeyv1
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/client/config/webhook-secret
      name: v1-client-config-webhook-secret
      description: REST surface for v1-client-config-webhook_secret.
      operations:
      - method: POST
        name: setclientwebhooksecretv1
        description: Set the client webhook secret
        call: metronome-settings.setclientwebhooksecretv1
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/credit-types/list
      name: v1-credit-types-list
      description: REST surface for v1-credit-types-list.
      operations:
      - method: GET
        name: listcredittypesv1
        description: List pricing units
        call: metronome-settings.listcredittypesv1
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/listconfiguredbillingproviders
      name: v1-listconfiguredbillingproviders
      description: REST surface for v1-listConfiguredBillingProviders.
      operations:
      - method: POST
        name: listconfiguredbillingprovidersv1
        description: List account-level billing providers
        call: metronome-settings.listconfiguredbillingprovidersv1
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/rotatedeltastreamsecret
      name: v1-rotatedeltastreamsecret
      description: REST surface for v1-rotateDeltaStreamSecret.
      operations:
      - method: POST
        name: rotatedeltastreamsecretv1
        description: Rotate the HMAC secret used to sign delta stream messages
        call: metronome-settings.rotatedeltastreamsecretv1
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/setupbillingprovider
      name: v1-setupbillingprovider
      description: REST surface for v1-setUpBillingProvider.
      operations:
      - method: POST
        name: setupbillingproviderv1
        description: Set up account-level billing provider
        call: metronome-settings.setupbillingproviderv1
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/upsertanrokapitoken
      name: v1-upsertanrokapitoken
      description: REST surface for v1-upsertAnrokApiToken.
      operations:
      - method: POST
        name: upsertanrokapitokenv1
        description: Upsert Anrok API token
        call: metronome-settings.upsertanrokapitokenv1
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/upsertavalaracredentials
      name: v1-upsertavalaracredentials
      description: REST surface for v1-upsertAvalaraCredentials.
      operations:
      - method: POST
        name: upsertavalaracredentialsv1
        description: Upsert Avalara credentials
        call: metronome-settings.upsertavalaracredentialsv1
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: metronome-settings-mcp
    port: 9090
    transport: http
    description: MCP adapter for Metronome — Settings. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: create-stripe-billing-settings
      description: Create Stripe billing settings
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: metronome-settings.createstripebillingsettingsv1
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: update-stripe-billing-settings
      description: Update Stripe billing settings
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: metronome-settings.updatestripebillingsettingsv1
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-stripe-billing-settings
      description: Delete Stripe billing settings
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: metronome-settings.deletestripebillingsettingsv1
      outputParameters:
      - type: object
        mapping: $.
    - name: set-billing-provider-api-key
      description: Set the billing provider API key
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: metronome-settings.setbillingproviderapikeyv1
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: set-client-webhook-secret
      description: Set the client webhook secret
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: metronome-settings.setclientwebhooksecretv1
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: list-pricing-units
      description: List pricing units
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: metronome-settings.listcredittypesv1
      outputParameters:
      - type: object
        mapping: $.
    - name: list-account-level-billing-providers
      description: List account-level billing providers
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: metronome-settings.listconfiguredbillingprovidersv1
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: rotate-hmac-secret-used-sign
      description: Rotate the HMAC secret used to sign delta stream messages
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: metronome-settings.rotatedeltastreamsecretv1
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: set-up-account-level-billing
      description: Set up account-level billing provider
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: metronome-settings.setupbillingproviderv1
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: upsert-anrok-api-token
      description: Upsert Anrok API token
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: metronome-settings.upsertanrokapitokenv1
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: upsert-avalara-credentials
      description: Upsert Avalara credentials
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: metronome-settings.upsertavalaracredentialsv1
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.