Adafruit IO · Capability

Adafruit IO REST API — Tokens

Adafruit IO Tokens — manage scoped, revocable personal access tokens that grant API access without exposing the main account API key. Self-contained Naftiko capability.

Adafruit IO REST API — Tokens is a Naftiko capability published by Adafruit IO, one of 9 capabilities the APIs.io network indexes for this provider. It bundles 4 operations.

The capability includes 2 read-only operations and 2 state-changing operations. Lead operation: List All Tokens. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Adafruit IO, Tokens, Security, and IoT.

Run with Naftiko Adafruit IOTokensSecurityIoT

MCP Tools

adafruit-io-list-tokens

List All Tokens

read-only idempotent
adafruit-io-create-token

Create a New Token

adafruit-io-get-token

Get a Token by ID

read-only idempotent
adafruit-io-delete-token

Revoke a Token

idempotent

Capability Spec

tokens.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Adafruit IO REST API — Tokens
  description: 'Adafruit IO Tokens — manage scoped, revocable personal access tokens that grant API access without
    exposing the main account API key. Self-contained Naftiko capability.'
  tags:
  - Adafruit IO
  - Tokens
  - Security
  - IoT
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
- namespace: env
  keys:
    ADAFRUIT_IO_USERNAME: ADAFRUIT_IO_USERNAME
    ADAFRUIT_IO_KEY: ADAFRUIT_IO_KEY
capability:
  consumes:
  - type: http
    namespace: adafruit-io-tokens
    baseUri: https://io.adafruit.com/api/v2
    description: Adafruit IO Tokens REST surface.
    resources:
    - name: tokens
      path: /{username}/tokens
      operations:
      - name: listtokens
        method: GET
        description: List All Tokens
        outputRawFormat: json
        outputParameters:
        - name: result
          type: array
          value: $.
      - name: createtoken
        method: POST
        description: Create a New Token
        outputRawFormat: json
        inputParameters:
        - name: body
          in: body
          type: object
          required: true
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: tokens-id
      path: /{username}/tokens/{id}
      operations:
      - name: gettoken
        method: GET
        description: Get a Token by ID
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updatetoken
        method: PUT
        description: Replace a Token (PUT)
        outputRawFormat: json
        inputParameters:
        - name: body
          in: body
          type: object
          required: true
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deletetoken
        method: DELETE
        description: Delete (Revoke) a Token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    authentication:
      type: apikey
      key: X-AIO-Key
      value: '{{env.ADAFRUIT_IO_KEY}}'
      placement: header
  exposes:
  - type: mcp
    namespace: adafruit-io-tokens-mcp
    port: 9090
    transport: http
    description: MCP adapter for Adafruit IO Tokens.
    tools:
    - name: adafruit-io-list-tokens
      description: List All Tokens
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: adafruit-io-tokens.listtokens
      outputParameters:
      - type: array
        mapping: $.
    - name: adafruit-io-create-token
      description: Create a New Token
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: adafruit-io-tokens.createtoken
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: adafruit-io-get-token
      description: Get a Token by ID
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: adafruit-io-tokens.gettoken
      outputParameters:
      - type: object
        mapping: $.
    - name: adafruit-io-delete-token
      description: Revoke a Token
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: adafruit-io-tokens.deletetoken
      outputParameters:
      - type: object
        mapping: $.