Shovels · Capability

Shovels API — Addresses

Shovels API — Addresses. 4 operations. Lead operation: Search Addresses. Self-contained Naftiko capability covering one Shovels business surface.

Run with Naftiko ShovelsAddresses

What You Can Do

GET
Searchaddresses — Search Addresses
/v1/addresses/search
GET
Getaddressmetricscurrent — Get Address Metrics Current
/v1/addresses/{geo-id}/metrics/current
GET
Getaddressmetricsmonthly — Get Address Metrics Monthly
/v1/addresses/{geo-id}/metrics/monthly
GET
Getaddressresidents — Get Address Residents
/v1/addresses/{geo-id}/residents

MCP Tools

search-addresses

Search Addresses

read-only idempotent
get-address-metrics-current

Get Address Metrics Current

read-only idempotent
get-address-metrics-monthly

Get Address Metrics Monthly

read-only idempotent
get-address-residents

Get Address Residents

read-only idempotent

Capability Spec

shovels-addresses.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Shovels API — Addresses
  description: 'Shovels API — Addresses. 4 operations. Lead operation: Search Addresses. Self-contained Naftiko capability
    covering one Shovels business surface.'
  tags:
  - Shovels
  - Addresses
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    SHOVELS_API_KEY: SHOVELS_API_KEY
capability:
  consumes:
  - type: http
    namespace: shovels-addresses
    baseUri: https://api.shovels.ai/v2
    description: Shovels API — Addresses business capability. Self-contained, no shared references.
    resources:
    - name: addresses-search
      path: /addresses/search
      operations:
      - name: searchaddresses
        method: GET
        description: Search Addresses
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: q
          in: query
          type: string
          description: The text to search for in address fields
          required: true
        - name: cursor
          in: query
          type: string
          description: Pagination cursor
        - name: size
          in: query
          type: integer
          description: Number of results per page (1-100, default 50)
    - name: addresses-geo_id-metrics-current
      path: /addresses/{geo_id}/metrics/current
      operations:
      - name: getaddressmetricscurrent
        method: GET
        description: Get Address Metrics Current
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: geo_id
          in: path
          type: string
          description: Address geo_id
          required: true
    - name: addresses-geo_id-metrics-monthly
      path: /addresses/{geo_id}/metrics/monthly
      operations:
      - name: getaddressmetricsmonthly
        method: GET
        description: Get Address Metrics Monthly
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: geo_id
          in: path
          type: string
          description: Address geo_id
          required: true
    - name: addresses-geo_id-residents
      path: /addresses/{geo_id}/residents
      operations:
      - name: getaddressresidents
        method: GET
        description: Get Address Residents
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: geo_id
          in: path
          type: string
          description: Address geo_id
          required: true
        - name: cursor
          in: query
          type: string
          description: Pagination cursor
        - name: size
          in: query
          type: integer
          description: Number of results per page
    authentication:
      type: apikey
      key: X-API-Key
      value: '{{env.SHOVELS_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: shovels-addresses-rest
    port: 8080
    description: REST adapter for Shovels API — Addresses. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/addresses/search
      name: addresses-search
      description: REST surface for addresses-search.
      operations:
      - method: GET
        name: searchaddresses
        description: Search Addresses
        call: shovels-addresses.searchaddresses
        with:
          q: rest.q
          cursor: rest.cursor
          size: rest.size
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/addresses/{geo-id}/metrics/current
      name: addresses-geo-id-metrics-current
      description: REST surface for addresses-geo_id-metrics-current.
      operations:
      - method: GET
        name: getaddressmetricscurrent
        description: Get Address Metrics Current
        call: shovels-addresses.getaddressmetricscurrent
        with:
          geo_id: rest.geo_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/addresses/{geo-id}/metrics/monthly
      name: addresses-geo-id-metrics-monthly
      description: REST surface for addresses-geo_id-metrics-monthly.
      operations:
      - method: GET
        name: getaddressmetricsmonthly
        description: Get Address Metrics Monthly
        call: shovels-addresses.getaddressmetricsmonthly
        with:
          geo_id: rest.geo_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/addresses/{geo-id}/residents
      name: addresses-geo-id-residents
      description: REST surface for addresses-geo_id-residents.
      operations:
      - method: GET
        name: getaddressresidents
        description: Get Address Residents
        call: shovels-addresses.getaddressresidents
        with:
          geo_id: rest.geo_id
          cursor: rest.cursor
          size: rest.size
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: shovels-addresses-mcp
    port: 9090
    transport: http
    description: MCP adapter for Shovels API — Addresses. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: search-addresses
      description: Search Addresses
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: shovels-addresses.searchaddresses
      with:
        q: tools.q
        cursor: tools.cursor
        size: tools.size
      outputParameters:
      - type: object
        mapping: $.
    - name: get-address-metrics-current
      description: Get Address Metrics Current
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: shovels-addresses.getaddressmetricscurrent
      with:
        geo_id: tools.geo_id
      outputParameters:
      - type: object
        mapping: $.
    - name: get-address-metrics-monthly
      description: Get Address Metrics Monthly
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: shovels-addresses.getaddressmetricsmonthly
      with:
        geo_id: tools.geo_id
      outputParameters:
      - type: object
        mapping: $.
    - name: get-address-residents
      description: Get Address Residents
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: shovels-addresses.getaddressresidents
      with:
        geo_id: tools.geo_id
        cursor: tools.cursor
        size: tools.size
      outputParameters:
      - type: object
        mapping: $.