Words API · Capability

Words API — Categories

Words API Categories surface — 7 operations. Lead operation: Get Word In Category. Self-contained Naftiko capability covering one Words API business surface.

Run with Naftiko Words APICategories

What You Can Do

GET
Getincategory — Get Word In Category
/v1/words/{word}/in-category
GET
Gethascategories — Get Word Has Categories
/v1/words/{word}/has-categories
GET
Getusageof — Get Word Usage Of
/v1/words/{word}/usage-of
GET
Gethasusages — Get Word Has Usages
/v1/words/{word}/has-usages
GET
Getinregion — Get Word In Region
/v1/words/{word}/in-region
GET
Getregionof — Get Word Region Of
/v1/words/{word}/region-of
GET
Getpertainsto — Get Word Pertains To
/v1/words/{word}/pertains-to

MCP Tools

get-in-category

Get Word In Category

read-only idempotent
get-has-categories

Get Word Has Categories

read-only idempotent
get-usage-of

Get Word Usage Of

read-only idempotent
get-has-usages

Get Word Has Usages

read-only idempotent
get-in-region

Get Word In Region

read-only idempotent
get-region-of

Get Word Region Of

read-only idempotent
get-pertains-to

Get Word Pertains To

read-only idempotent

Capability Spec

words-categories.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Words API — Categories
  description: 'Words API Categories surface — 7 operations. Lead operation: Get Word In Category. Self-contained Naftiko capability covering one Words API business surface.'
  tags:
  - Words API
  - Categories
  created: '2026-05-30'
  modified: '2026-05-30'
binds:
- namespace: env
  keys:
    WORDS_API_KEY: WORDS_API_KEY
capability:
  consumes:
  - type: http
    namespace: words-categories
    baseUri: https://wordsapiv1.p.rapidapi.com
    description: Words API Categories business capability. Self-contained, no shared references.
    authentication:
      type: apikey
      key: X-RapidAPI-Key
      value: '{{env.WORDS_API_KEY}}'
      placement: header
    resources:
    - name: word-in-category
      path: /words/{word}/inCategory
      operations:
      - name: getInCategory
        method: GET
        description: Get Word In Category
        inputParameters:
        - name: word
          in: path
          type: string
          required: true
          description: The English word to look up.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: word-has-categories
      path: /words/{word}/hasCategories
      operations:
      - name: getHasCategories
        method: GET
        description: Get Word Has Categories
        inputParameters:
        - name: word
          in: path
          type: string
          required: true
          description: The English word to look up.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: word-usage-of
      path: /words/{word}/usageOf
      operations:
      - name: getUsageOf
        method: GET
        description: Get Word Usage Of
        inputParameters:
        - name: word
          in: path
          type: string
          required: true
          description: The English word to look up.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: word-has-usages
      path: /words/{word}/hasUsages
      operations:
      - name: getHasUsages
        method: GET
        description: Get Word Has Usages
        inputParameters:
        - name: word
          in: path
          type: string
          required: true
          description: The English word to look up.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: word-in-region
      path: /words/{word}/inRegion
      operations:
      - name: getInRegion
        method: GET
        description: Get Word In Region
        inputParameters:
        - name: word
          in: path
          type: string
          required: true
          description: The English word to look up.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: word-region-of
      path: /words/{word}/regionOf
      operations:
      - name: getRegionOf
        method: GET
        description: Get Word Region Of
        inputParameters:
        - name: word
          in: path
          type: string
          required: true
          description: The English word to look up.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: word-pertains-to
      path: /words/{word}/pertainsTo
      operations:
      - name: getPertainsTo
        method: GET
        description: Get Word Pertains To
        inputParameters:
        - name: word
          in: path
          type: string
          required: true
          description: The English word to look up.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    namespace: words-categories-rest
    port: 8080
    description: REST adapter for Words API — Categories. One Spectral-compliant resource per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/words/{word}/in-category
      name: word-in-category
      description: REST surface for /words/{word}/inCategory.
      operations:
      - method: GET
        name: getInCategory
        description: Get Word In Category
        call: words-categories.getInCategory
        with:
          word: rest.word
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/words/{word}/has-categories
      name: word-has-categories
      description: REST surface for /words/{word}/hasCategories.
      operations:
      - method: GET
        name: getHasCategories
        description: Get Word Has Categories
        call: words-categories.getHasCategories
        with:
          word: rest.word
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/words/{word}/usage-of
      name: word-usage-of
      description: REST surface for /words/{word}/usageOf.
      operations:
      - method: GET
        name: getUsageOf
        description: Get Word Usage Of
        call: words-categories.getUsageOf
        with:
          word: rest.word
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/words/{word}/has-usages
      name: word-has-usages
      description: REST surface for /words/{word}/hasUsages.
      operations:
      - method: GET
        name: getHasUsages
        description: Get Word Has Usages
        call: words-categories.getHasUsages
        with:
          word: rest.word
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/words/{word}/in-region
      name: word-in-region
      description: REST surface for /words/{word}/inRegion.
      operations:
      - method: GET
        name: getInRegion
        description: Get Word In Region
        call: words-categories.getInRegion
        with:
          word: rest.word
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/words/{word}/region-of
      name: word-region-of
      description: REST surface for /words/{word}/regionOf.
      operations:
      - method: GET
        name: getRegionOf
        description: Get Word Region Of
        call: words-categories.getRegionOf
        with:
          word: rest.word
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/words/{word}/pertains-to
      name: word-pertains-to
      description: REST surface for /words/{word}/pertainsTo.
      operations:
      - method: GET
        name: getPertainsTo
        description: Get Word Pertains To
        call: words-categories.getPertainsTo
        with:
          word: rest.word
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: words-categories-mcp
    port: 9090
    transport: http
    description: MCP adapter for Words API — Categories. One tool per consumed operation, routed inline through this capability's consumes block.
    tools:
    - name: get-in-category
      description: Get Word In Category
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: words-categories.getInCategory
      with:
        word: tools.word
      outputParameters:
      - type: object
        mapping: $.
    - name: get-has-categories
      description: Get Word Has Categories
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: words-categories.getHasCategories
      with:
        word: tools.word
      outputParameters:
      - type: object
        mapping: $.
    - name: get-usage-of
      description: Get Word Usage Of
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: words-categories.getUsageOf
      with:
        word: tools.word
      outputParameters:
      - type: object
        mapping: $.
    - name: get-has-usages
      description: Get Word Has Usages
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: words-categories.getHasUsages
      with:
        word: tools.word
      outputParameters:
      - type: object
        mapping: $.
    - name: get-in-region
      description: Get Word In Region
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: words-categories.getInRegion
      with:
        word: tools.word
      outputParameters:
      - type: object
        mapping: $.
    - name: get-region-of
      description: Get Word Region Of
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: words-categories.getRegionOf
      with:
        word: tools.word
      outputParameters:
      - type: object
        mapping: $.
    - name: get-pertains-to
      description: Get Word Pertains To
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: words-categories.getPertainsTo
      with:
        word: tools.word
      outputParameters:
      - type: object
        mapping: $.