Amazon Neptune · Capability

Amazon Neptune Neptune Loader API — Loader

Amazon Neptune Neptune Loader API — Loader. 4 operations. Lead operation: Amazon Neptune Start a Bulk Data Load Job from S3. Self-contained Naftiko capability covering one Amazon Neptune business surface.

Run with Naftiko Amazon NeptuneLoader

What You Can Do

POST
Startbulkloadjob — Amazon Neptune Start a Bulk Data Load Job from S3
/v1/loader
GET
Listbulkloadjobs — Amazon Neptune List Bulk Load Job IDs
/v1/loader
GET
Getbulkloadjobstatus — Amazon Neptune Get the Status of a Bulk Load Job
/v1/loader/{loadid}
DELETE
Cancelbulkloadjob — Amazon Neptune Cancel an In-progress Bulk Load Job
/v1/loader/{loadid}

MCP Tools

amazon-neptune-start-bulk-data

Amazon Neptune Start a Bulk Data Load Job from S3

amazon-neptune-list-bulk-load

Amazon Neptune List Bulk Load Job IDs

read-only idempotent
amazon-neptune-get-status-bulk

Amazon Neptune Get the Status of a Bulk Load Job

read-only idempotent
amazon-neptune-cancel-progress-bulk

Amazon Neptune Cancel an In-progress Bulk Load Job

idempotent

Capability Spec

loader-loader.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Amazon Neptune Neptune Loader API — Loader
  description: 'Amazon Neptune Neptune Loader API — Loader. 4 operations. Lead operation: Amazon Neptune Start a Bulk Data
    Load Job from S3. Self-contained Naftiko capability covering one Amazon Neptune business surface.'
  tags:
  - Amazon Neptune
  - Loader
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    AMAZON_NEPTUNE_API_KEY: AMAZON_NEPTUNE_API_KEY
capability:
  consumes:
  - type: http
    namespace: loader-loader
    baseUri: https://{cluster-endpoint}:8182
    description: Amazon Neptune Neptune Loader API — Loader business capability. Self-contained, no shared references.
    resources:
    - name: loader
      path: /loader
      operations:
      - name: startbulkloadjob
        method: POST
        description: Amazon Neptune Start a Bulk Data Load Job from S3
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: listbulkloadjobs
        method: GET
        description: Amazon Neptune List Bulk Load Job IDs
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: limit
          in: query
          type: integer
          description: The maximum number of load IDs to return.
        - name: includeQueuedLoads
          in: query
          type: boolean
          description: Whether to include queued load jobs in the response.
    - name: loader-loadId
      path: /loader/{loadId}
      operations:
      - name: getbulkloadjobstatus
        method: GET
        description: Amazon Neptune Get the Status of a Bulk Load Job
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: loadId
          in: path
          type: string
          description: The unique identifier of the bulk load job.
          required: true
        - name: details
          in: query
          type: boolean
          description: Whether to include detailed feed-level status information.
        - name: errors
          in: query
          type: boolean
          description: Whether to include error details in the response.
        - name: page
          in: query
          type: integer
          description: The error page number to retrieve (when errors=true).
        - name: errorsPerPage
          in: query
          type: integer
          description: The number of errors per page (when errors=true).
      - name: cancelbulkloadjob
        method: DELETE
        description: Amazon Neptune Cancel an In-progress Bulk Load Job
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: loadId
          in: path
          type: string
          description: The unique identifier of the load job to cancel.
          required: true
    authentication:
      type: apikey
      key: Authorization
      value: '{{env.AMAZON_NEPTUNE_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: loader-loader-rest
    port: 8080
    description: REST adapter for Amazon Neptune Neptune Loader API — Loader. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/loader
      name: loader
      description: REST surface for loader.
      operations:
      - method: POST
        name: startbulkloadjob
        description: Amazon Neptune Start a Bulk Data Load Job from S3
        call: loader-loader.startbulkloadjob
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: listbulkloadjobs
        description: Amazon Neptune List Bulk Load Job IDs
        call: loader-loader.listbulkloadjobs
        with:
          limit: rest.limit
          includeQueuedLoads: rest.includeQueuedLoads
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/loader/{loadid}
      name: loader-loadid
      description: REST surface for loader-loadId.
      operations:
      - method: GET
        name: getbulkloadjobstatus
        description: Amazon Neptune Get the Status of a Bulk Load Job
        call: loader-loader.getbulkloadjobstatus
        with:
          loadId: rest.loadId
          details: rest.details
          errors: rest.errors
          page: rest.page
          errorsPerPage: rest.errorsPerPage
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: cancelbulkloadjob
        description: Amazon Neptune Cancel an In-progress Bulk Load Job
        call: loader-loader.cancelbulkloadjob
        with:
          loadId: rest.loadId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: loader-loader-mcp
    port: 9090
    transport: http
    description: MCP adapter for Amazon Neptune Neptune Loader API — Loader. One tool per consumed operation, routed inline
      through this capability's consumes block.
    tools:
    - name: amazon-neptune-start-bulk-data
      description: Amazon Neptune Start a Bulk Data Load Job from S3
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: loader-loader.startbulkloadjob
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: amazon-neptune-list-bulk-load
      description: Amazon Neptune List Bulk Load Job IDs
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: loader-loader.listbulkloadjobs
      with:
        limit: tools.limit
        includeQueuedLoads: tools.includeQueuedLoads
      outputParameters:
      - type: object
        mapping: $.
    - name: amazon-neptune-get-status-bulk
      description: Amazon Neptune Get the Status of a Bulk Load Job
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: loader-loader.getbulkloadjobstatus
      with:
        loadId: tools.loadId
        details: tools.details
        errors: tools.errors
        page: tools.page
        errorsPerPage: tools.errorsPerPage
      outputParameters:
      - type: object
        mapping: $.
    - name: amazon-neptune-cancel-progress-bulk
      description: Amazon Neptune Cancel an In-progress Bulk Load Job
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: loader-loader.cancelbulkloadjob
      with:
        loadId: tools.loadId
      outputParameters:
      - type: object
        mapping: $.