Gender API · Capability

Gender API

Gender API. 3 operations. Lead operation: Get gender for a name. Self-contained Naftiko capability covering one Gender Api business surface.

Run with Naftiko Gender ApiGender API

What You Can Do

GET
Getgender — Get gender for a name
/v1/get
GET
Getcountryoforigin — Get likely country of origin for a name
/v1/get-country-of-origin
GET
Getstats — Get account statistics
/v1/get-stats

MCP Tools

get-gender-name

Get gender for a name

read-only idempotent
get-likely-country-origin-name

Get likely country of origin for a name

read-only idempotent
get-account-statistics

Get account statistics

read-only idempotent

Capability Spec

gender.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Gender API
  description: 'Gender API. 3 operations. Lead operation: Get gender for a name. Self-contained Naftiko capability covering
    one Gender Api business surface.'
  tags:
  - Gender Api
  - Gender API
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    GENDER_API_API_KEY: GENDER_API_API_KEY
capability:
  consumes:
  - type: http
    namespace: gender
    baseUri: https://gender-api.com
    description: Gender API business capability. Self-contained, no shared references.
    resources:
    - name: get
      path: /get
      operations:
      - name: getgender
        method: GET
        description: Get gender for a name
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: query
          type: string
          description: First name (or full name with split=true) to look up. Supports semicolon-separated lists when multi=true.
        - name: email
          in: query
          type: string
          description: Email address from which to extract the name.
        - name: country
          in: query
          type: string
          description: ISO 3166-1 alpha-2 country code to localize the lookup.
        - name: ip
          in: query
          type: string
          description: Client IP address used to localize the lookup.
        - name: locale
          in: query
          type: string
          description: Browser locale (e.g. en_US, de_DE) used to localize the lookup.
        - name: split
          in: query
          type: boolean
          description: When true, splits a full name and resolves the first name automatically.
        - name: multi
          in: query
          type: boolean
          description: When true, accepts a semicolon-separated list of names (max 100 per request).
        - name: key
          in: query
          type: string
          description: Gender-API key (alternatively send via apiKey query or Authorization header per account configuration).
          required: true
    - name: get-country-of-origin
      path: /get-country-of-origin
      operations:
      - name: getcountryoforigin
        method: GET
        description: Get likely country of origin for a name
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: query
          type: string
          required: true
        - name: key
          in: query
          type: string
          required: true
    - name: get-stats
      path: /get-stats
      operations:
      - name: getstats
        method: GET
        description: Get account statistics
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: key
          in: query
          type: string
          required: true
    authentication:
      type: apikey
      key: key
      value: '{{env.GENDER_API_API_KEY}}'
      placement: query
  exposes:
  - type: rest
    namespace: gender-rest
    port: 8080
    description: REST adapter for Gender API. One Spectral-compliant resource per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/get
      name: get
      description: REST surface for get.
      operations:
      - method: GET
        name: getgender
        description: Get gender for a name
        call: gender.getgender
        with:
          name: rest.name
          email: rest.email
          country: rest.country
          ip: rest.ip
          locale: rest.locale
          split: rest.split
          multi: rest.multi
          key: rest.key
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/get-country-of-origin
      name: get-country-of-origin
      description: REST surface for get-country-of-origin.
      operations:
      - method: GET
        name: getcountryoforigin
        description: Get likely country of origin for a name
        call: gender.getcountryoforigin
        with:
          name: rest.name
          key: rest.key
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/get-stats
      name: get-stats
      description: REST surface for get-stats.
      operations:
      - method: GET
        name: getstats
        description: Get account statistics
        call: gender.getstats
        with:
          key: rest.key
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: gender-mcp
    port: 9090
    transport: http
    description: MCP adapter for Gender API. One tool per consumed operation, routed inline through this capability's consumes
      block.
    tools:
    - name: get-gender-name
      description: Get gender for a name
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: gender.getgender
      with:
        name: tools.name
        email: tools.email
        country: tools.country
        ip: tools.ip
        locale: tools.locale
        split: tools.split
        multi: tools.multi
        key: tools.key
      outputParameters:
      - type: object
        mapping: $.
    - name: get-likely-country-origin-name
      description: Get likely country of origin for a name
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: gender.getcountryoforigin
      with:
        name: tools.name
        key: tools.key
      outputParameters:
      - type: object
        mapping: $.
    - name: get-account-statistics
      description: Get account statistics
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: gender.getstats
      with:
        key: tools.key
      outputParameters:
      - type: object
        mapping: $.