InfluxDB · Capability

Complete InfluxDB Cloud API — Telegrafs

Complete InfluxDB Cloud API — Telegrafs. 14 operations. Lead operation: List all Telegraf configurations. Self-contained Naftiko capability covering one Influxdb business surface.

Run with Naftiko InfluxdbTelegrafs

What You Can Do

GET
Gettelegrafs — List all Telegraf configurations
/v1/api/v2/telegrafs
POST
Posttelegrafs — Create a Telegraf configuration
/v1/api/v2/telegrafs
DELETE
Deletetelegrafsid — Delete a Telegraf configuration
/v1/api/v2/telegrafs/{telegrafid}
GET
Gettelegrafsid — Retrieve a Telegraf configuration
/v1/api/v2/telegrafs/{telegrafid}
PUT
Puttelegrafsid — Update a Telegraf configuration
/v1/api/v2/telegrafs/{telegrafid}
GET
Gettelegrafsidlabels — List all labels for a Telegraf config
/v1/api/v2/telegrafs/{telegrafid}/labels
POST
Posttelegrafsidlabels — Add a label to a Telegraf config
/v1/api/v2/telegrafs/{telegrafid}/labels
DELETE
Deletetelegrafsidlabelsid — Delete a label from a Telegraf config
/v1/api/v2/telegrafs/{telegrafid}/labels/{labelid}
GET
Gettelegrafsidmembers — List all users with member privileges for a Telegraf config
/v1/api/v2/telegrafs/{telegrafid}/members
POST
Posttelegrafsidmembers — Add a member to a Telegraf config
/v1/api/v2/telegrafs/{telegrafid}/members
DELETE
Deletetelegrafsidmembersid — Remove a member from a Telegraf config
/v1/api/v2/telegrafs/{telegrafid}/members/{userid}
GET
Gettelegrafsidowners — List all owners of a Telegraf configuration
/v1/api/v2/telegrafs/{telegrafid}/owners
POST
Posttelegrafsidowners — Add an owner to a Telegraf configuration
/v1/api/v2/telegrafs/{telegrafid}/owners
DELETE
Deletetelegrafsidownersid — Remove an owner from a Telegraf config
/v1/api/v2/telegrafs/{telegrafid}/owners/{userid}

MCP Tools

list-all-telegraf-configurations

List all Telegraf configurations

read-only idempotent
create-telegraf-configuration

Create a Telegraf configuration

delete-telegraf-configuration

Delete a Telegraf configuration

idempotent
retrieve-telegraf-configuration

Retrieve a Telegraf configuration

read-only idempotent
update-telegraf-configuration

Update a Telegraf configuration

idempotent
list-all-labels-telegraf-config

List all labels for a Telegraf config

read-only idempotent
add-label-telegraf-config

Add a label to a Telegraf config

delete-label-telegraf-config

Delete a label from a Telegraf config

idempotent
list-all-users-member-privileges

List all users with member privileges for a Telegraf config

read-only idempotent
add-member-telegraf-config

Add a member to a Telegraf config

remove-member-telegraf-config

Remove a member from a Telegraf config

idempotent
list-all-owners-telegraf-configuration

List all owners of a Telegraf configuration

read-only idempotent
add-owner-telegraf-configuration

Add an owner to a Telegraf configuration

remove-owner-telegraf-config

Remove an owner from a Telegraf config

idempotent

Capability Spec

influxdb-telegrafs.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Complete InfluxDB Cloud API — Telegrafs
  description: 'Complete InfluxDB Cloud API — Telegrafs. 14 operations. Lead operation: List all Telegraf configurations.
    Self-contained Naftiko capability covering one Influxdb business surface.'
  tags:
  - Influxdb
  - Telegrafs
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    INFLUXDB_API_KEY: INFLUXDB_API_KEY
capability:
  consumes:
  - type: http
    namespace: influxdb-telegrafs
    baseUri: ''
    description: Complete InfluxDB Cloud API — Telegrafs business capability. Self-contained, no shared references.
    resources:
    - name: api-v2-telegrafs
      path: /api/v2/telegrafs
      operations:
      - name: gettelegrafs
        method: GET
        description: List all Telegraf configurations
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: orgID
          in: query
          type: string
          description: The organization ID the Telegraf config belongs to.
      - name: posttelegrafs
        method: POST
        description: Create a Telegraf configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-v2-telegrafs-telegrafID
      path: /api/v2/telegrafs/{telegrafID}
      operations:
      - name: deletetelegrafsid
        method: DELETE
        description: Delete a Telegraf configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: telegrafID
          in: path
          type: string
          description: The Telegraf configuration ID.
          required: true
      - name: gettelegrafsid
        method: GET
        description: Retrieve a Telegraf configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: telegrafID
          in: path
          type: string
          description: The Telegraf configuration ID.
          required: true
        - name: Accept
          in: header
          type: string
      - name: puttelegrafsid
        method: PUT
        description: Update a Telegraf configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: telegrafID
          in: path
          type: string
          description: The Telegraf config ID.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-v2-telegrafs-telegrafID-labels
      path: /api/v2/telegrafs/{telegrafID}/labels
      operations:
      - name: gettelegrafsidlabels
        method: GET
        description: List all labels for a Telegraf config
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: telegrafID
          in: path
          type: string
          description: The Telegraf config ID.
          required: true
      - name: posttelegrafsidlabels
        method: POST
        description: Add a label to a Telegraf config
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: telegrafID
          in: path
          type: string
          description: The Telegraf config ID.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-v2-telegrafs-telegrafID-labels-labelID
      path: /api/v2/telegrafs/{telegrafID}/labels/{labelID}
      operations:
      - name: deletetelegrafsidlabelsid
        method: DELETE
        description: Delete a label from a Telegraf config
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: telegrafID
          in: path
          type: string
          description: The Telegraf config ID.
          required: true
        - name: labelID
          in: path
          type: string
          description: The label ID.
          required: true
    - name: api-v2-telegrafs-telegrafID-members
      path: /api/v2/telegrafs/{telegrafID}/members
      operations:
      - name: gettelegrafsidmembers
        method: GET
        description: List all users with member privileges for a Telegraf config
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: telegrafID
          in: path
          type: string
          description: The Telegraf config ID.
          required: true
      - name: posttelegrafsidmembers
        method: POST
        description: Add a member to a Telegraf config
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: telegrafID
          in: path
          type: string
          description: The Telegraf config ID.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-v2-telegrafs-telegrafID-members-userID
      path: /api/v2/telegrafs/{telegrafID}/members/{userID}
      operations:
      - name: deletetelegrafsidmembersid
        method: DELETE
        description: Remove a member from a Telegraf config
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: userID
          in: path
          type: string
          description: The ID of the member to remove.
          required: true
        - name: telegrafID
          in: path
          type: string
          description: The Telegraf config ID.
          required: true
    - name: api-v2-telegrafs-telegrafID-owners
      path: /api/v2/telegrafs/{telegrafID}/owners
      operations:
      - name: gettelegrafsidowners
        method: GET
        description: List all owners of a Telegraf configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: telegrafID
          in: path
          type: string
          description: The Telegraf configuration ID.
          required: true
      - name: posttelegrafsidowners
        method: POST
        description: Add an owner to a Telegraf configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: telegrafID
          in: path
          type: string
          description: The Telegraf configuration ID.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-v2-telegrafs-telegrafID-owners-userID
      path: /api/v2/telegrafs/{telegrafID}/owners/{userID}
      operations:
      - name: deletetelegrafsidownersid
        method: DELETE
        description: Remove an owner from a Telegraf config
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: userID
          in: path
          type: string
          description: The ID of the owner to remove.
          required: true
        - name: telegrafID
          in: path
          type: string
          description: The Telegraf config ID.
          required: true
    authentication:
      type: apikey
      key: Authorization
      value: '{{env.INFLUXDB_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: influxdb-telegrafs-rest
    port: 8080
    description: REST adapter for Complete InfluxDB Cloud API — Telegrafs. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/api/v2/telegrafs
      name: api-v2-telegrafs
      description: REST surface for api-v2-telegrafs.
      operations:
      - method: GET
        name: gettelegrafs
        description: List all Telegraf configurations
        call: influxdb-telegrafs.gettelegrafs
        with:
          orgID: rest.orgID
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: posttelegrafs
        description: Create a Telegraf configuration
        call: influxdb-telegrafs.posttelegrafs
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/telegrafs/{telegrafid}
      name: api-v2-telegrafs-telegrafid
      description: REST surface for api-v2-telegrafs-telegrafID.
      operations:
      - method: DELETE
        name: deletetelegrafsid
        description: Delete a Telegraf configuration
        call: influxdb-telegrafs.deletetelegrafsid
        with:
          telegrafID: rest.telegrafID
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: gettelegrafsid
        description: Retrieve a Telegraf configuration
        call: influxdb-telegrafs.gettelegrafsid
        with:
          telegrafID: rest.telegrafID
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: puttelegrafsid
        description: Update a Telegraf configuration
        call: influxdb-telegrafs.puttelegrafsid
        with:
          telegrafID: rest.telegrafID
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/telegrafs/{telegrafid}/labels
      name: api-v2-telegrafs-telegrafid-labels
      description: REST surface for api-v2-telegrafs-telegrafID-labels.
      operations:
      - method: GET
        name: gettelegrafsidlabels
        description: List all labels for a Telegraf config
        call: influxdb-telegrafs.gettelegrafsidlabels
        with:
          telegrafID: rest.telegrafID
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: posttelegrafsidlabels
        description: Add a label to a Telegraf config
        call: influxdb-telegrafs.posttelegrafsidlabels
        with:
          telegrafID: rest.telegrafID
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/telegrafs/{telegrafid}/labels/{labelid}
      name: api-v2-telegrafs-telegrafid-labels-labelid
      description: REST surface for api-v2-telegrafs-telegrafID-labels-labelID.
      operations:
      - method: DELETE
        name: deletetelegrafsidlabelsid
        description: Delete a label from a Telegraf config
        call: influxdb-telegrafs.deletetelegrafsidlabelsid
        with:
          telegrafID: rest.telegrafID
          labelID: rest.labelID
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/telegrafs/{telegrafid}/members
      name: api-v2-telegrafs-telegrafid-members
      description: REST surface for api-v2-telegrafs-telegrafID-members.
      operations:
      - method: GET
        name: gettelegrafsidmembers
        description: List all users with member privileges for a Telegraf config
        call: influxdb-telegrafs.gettelegrafsidmembers
        with:
          telegrafID: rest.telegrafID
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: posttelegrafsidmembers
        description: Add a member to a Telegraf config
        call: influxdb-telegrafs.posttelegrafsidmembers
        with:
          telegrafID: rest.telegrafID
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/telegrafs/{telegrafid}/members/{userid}
      name: api-v2-telegrafs-telegrafid-members-userid
      description: REST surface for api-v2-telegrafs-telegrafID-members-userID.
      operations:
      - method: DELETE
        name: deletetelegrafsidmembersid
        description: Remove a member from a Telegraf config
        call: influxdb-telegrafs.deletetelegrafsidmembersid
        with:
          userID: rest.userID
          telegrafID: rest.telegrafID
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/telegrafs/{telegrafid}/owners
      name: api-v2-telegrafs-telegrafid-owners
      description: REST surface for api-v2-telegrafs-telegrafID-owners.
      operations:
      - method: GET
        name: gettelegrafsidowners
        description: List all owners of a Telegraf configuration
        call: influxdb-telegrafs.gettelegrafsidowners
        with:
          telegrafID: rest.telegrafID
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: posttelegrafsidowners
        description: Add an owner to a Telegraf configuration
        call: influxdb-telegrafs.posttelegrafsidowners
        with:
          telegrafID: rest.telegrafID
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/telegrafs/{telegrafid}/owners/{userid}
      name: api-v2-telegrafs-telegrafid-owners-userid
      description: REST surface for api-v2-telegrafs-telegrafID-owners-userID.
      operations:
      - method: DELETE
        name: deletetelegrafsidownersid
        description: Remove an owner from a Telegraf config
        call: influxdb-telegrafs.deletetelegrafsidownersid
        with:
          userID: rest.userID
          telegrafID: rest.telegrafID
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: influxdb-telegrafs-mcp
    port: 9090
    transport: http
    description: MCP adapter for Complete InfluxDB Cloud API — Telegrafs. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: list-all-telegraf-configurations
      description: List all Telegraf configurations
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: influxdb-telegrafs.gettelegrafs
      with:
        orgID: tools.orgID
      outputParameters:
      - type: object
        mapping: $.
    - name: create-telegraf-configuration
      description: Create a Telegraf configuration
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: influxdb-telegrafs.posttelegrafs
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-telegraf-configuration
      description: Delete a Telegraf configuration
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: influxdb-telegrafs.deletetelegrafsid
      with:
        telegrafID: tools.telegrafID
      outputParameters:
      - type: object
        mapping: $.
    - name: retrieve-telegraf-configuration
      description: Retrieve a Telegraf configuration
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: influxdb-telegrafs.gettelegrafsid
      with:
        telegrafID: tools.telegrafID
        Accept: tools.Accept
      outputParameters:
      - type: object
        mapping: $.
    - name: update-telegraf-configuration
      description: Update a Telegraf configuration
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: influxdb-telegrafs.puttelegrafsid
      with:
        telegrafID: tools.telegrafID
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: list-all-labels-telegraf-config
      description: List all labels for a Telegraf config
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: influxdb-telegrafs.gettelegrafsidlabels
      with:
        telegrafID: tools.telegrafID
      outputParameters:
      - type: object
        mapping: $.
    - name: add-label-telegraf-config
      description: Add a label to a Telegraf config
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: influxdb-telegrafs.posttelegrafsidlabels
      with:
        telegrafID: tools.telegrafID
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-label-telegraf-config
      description: Delete a label from a Telegraf config
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: influxdb-telegrafs.deletetelegrafsidlabelsid
      with:
        telegrafID: tools.telegrafID
        labelID: tools.labelID
      outputParameters:
      - type: object
        mapping: $.
    - name: list-all-users-member-privileges
      description: List all users with member privileges for a Telegraf config
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: influxdb-telegrafs.gettelegrafsidmembers
      with:
        telegrafID: tools.telegrafID
      outputParameters:
      - type: object
        mapping: $.
    - name: add-member-telegraf-config
      description: Add a member to a Telegraf config
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: influxdb-telegrafs.posttelegrafsidmembers
      with:
        telegrafID: tools.telegrafID
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: remove-member-telegraf-config
      description: Remove a member from a Telegraf config
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: influxdb-telegrafs.deletetelegrafsidmembersid
      with:
        userID: tools.userID
        telegrafID: tools.telegrafID
      outputParameters:
      - type: object
        mapping: $.
    - name: list-all-owners-telegraf-configuration
      description: List all owners of a Telegraf configuration
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: influxdb-telegrafs.gettelegrafsidowners
      with:
        telegrafID: tools.telegrafID
      outputParameters:
      - type: object
        mapping: $.
    - name: add-owner-telegraf-configuration
      description: Add an owner to a Telegraf configuration
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: influxdb-telegrafs.posttelegrafsidowners
      with:
        telegrafID: tools.telegrafID
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: remove-owner-telegraf-config
      description: Remove an owner from a Telegraf config
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: influxdb-telegrafs.deletetelegrafsidownersid
      with:
        userID: tools.userID
        telegrafID: tools.telegrafID
      outputParameters:
      - type: object
        mapping: $.