JFrog · Capability

JFrog Artifactory REST API — Artifacts & Storage

JFrog Artifactory REST API — Artifacts & Storage. 8 operations. Lead operation: JFrog Copy Artifact. Self-contained Naftiko capability covering one Jfrog business surface.

Run with Naftiko JfrogArtifacts & Storage

What You Can Do

POST
Copyartifact — JFrog Copy Artifact
/v1/api/copy/{srcrepokey}/{srcitempath}
POST
Moveartifact — JFrog Move Artifact
/v1/api/move/{srcrepokey}/{srcitempath}
GET
Getrepositorystorageinfo — JFrog Get Repository Storage Summary
/v1/api/storage/{repokey}
GET
Getstorageinfo — JFrog Get File or Folder Info
/v1/api/storage/{repokey}/{itempath}
GET
Getstoragesummaryinfo — JFrog Get Storage Summary
/v1/api/storageinfo
GET
Retrieveartifact — JFrog Retrieve Artifact
/v1/{repokey}/{itempath}
PUT
Deployartifact — JFrog Deploy Artifact
/v1/{repokey}/{itempath}
DELETE
Deleteartifact — JFrog Delete Artifact
/v1/{repokey}/{itempath}

MCP Tools

jfrog-copy-artifact

JFrog Copy Artifact

jfrog-move-artifact

JFrog Move Artifact

jfrog-get-repository-storage-summary

JFrog Get Repository Storage Summary

read-only idempotent
jfrog-get-file-folder-info

JFrog Get File or Folder Info

read-only idempotent
jfrog-get-storage-summary

JFrog Get Storage Summary

read-only idempotent
jfrog-retrieve-artifact

JFrog Retrieve Artifact

read-only idempotent
jfrog-deploy-artifact

JFrog Deploy Artifact

idempotent
jfrog-delete-artifact

JFrog Delete Artifact

idempotent

Capability Spec

artifactory-artifacts-storage.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: JFrog Artifactory REST API — Artifacts & Storage
  description: 'JFrog Artifactory REST API — Artifacts & Storage. 8 operations. Lead operation: JFrog Copy Artifact. Self-contained
    Naftiko capability covering one Jfrog business surface.'
  tags:
  - Jfrog
  - Artifacts & Storage
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    JFROG_API_KEY: JFROG_API_KEY
capability:
  consumes:
  - type: http
    namespace: artifactory-artifacts-storage
    baseUri: https://{server}.jfrog.io/artifactory
    description: JFrog Artifactory REST API — Artifacts & Storage business capability. Self-contained, no shared references.
    resources:
    - name: api-copy-srcRepoKey-srcItemPath
      path: /api/copy/{srcRepoKey}/{srcItemPath}
      operations:
      - name: copyartifact
        method: POST
        description: JFrog Copy Artifact
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: srcRepoKey
          in: path
          type: string
          description: Source repository key
          required: true
        - name: srcItemPath
          in: path
          type: string
          description: Source item path
          required: true
        - name: to
          in: query
          type: string
          description: Target path in the format repoKey/path
          required: true
        - name: dry
          in: query
          type: integer
          description: Dry run mode (1=dry run, 0=execute)
        - name: suppressLayouts
          in: query
          type: integer
          description: Suppress cross-layout translations
        - name: failFast
          in: query
          type: integer
          description: Fail on first error
    - name: api-move-srcRepoKey-srcItemPath
      path: /api/move/{srcRepoKey}/{srcItemPath}
      operations:
      - name: moveartifact
        method: POST
        description: JFrog Move Artifact
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: srcRepoKey
          in: path
          type: string
          description: Source repository key
          required: true
        - name: srcItemPath
          in: path
          type: string
          description: Source item path
          required: true
        - name: to
          in: query
          type: string
          description: Target path in the format repoKey/path
          required: true
        - name: dry
          in: query
          type: integer
          description: Dry run mode
        - name: suppressLayouts
          in: query
          type: integer
          description: Suppress cross-layout translations
        - name: failFast
          in: query
          type: integer
          description: Fail on first error
    - name: api-storage-repoKey
      path: /api/storage/{repoKey}
      operations:
      - name: getrepositorystorageinfo
        method: GET
        description: JFrog Get Repository Storage Summary
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repoKey
          in: path
          type: string
          description: Repository key
          required: true
    - name: api-storage-repoKey-itemPath
      path: /api/storage/{repoKey}/{itemPath}
      operations:
      - name: getstorageinfo
        method: GET
        description: JFrog Get File or Folder Info
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repoKey
          in: path
          type: string
          description: Repository key
          required: true
        - name: itemPath
          in: path
          type: string
          description: Path to the item within the repository
          required: true
    - name: api-storageinfo
      path: /api/storageinfo
      operations:
      - name: getstoragesummaryinfo
        method: GET
        description: JFrog Get Storage Summary
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: repoKey-itemPath
      path: /{repoKey}/{itemPath}
      operations:
      - name: retrieveartifact
        method: GET
        description: JFrog Retrieve Artifact
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repoKey
          in: path
          type: string
          description: Repository key
          required: true
        - name: itemPath
          in: path
          type: string
          description: Path to the artifact
          required: true
      - name: deployartifact
        method: PUT
        description: JFrog Deploy Artifact
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repoKey
          in: path
          type: string
          description: Repository key
          required: true
        - name: itemPath
          in: path
          type: string
          description: Path for the artifact
          required: true
        - name: X-Checksum-Sha1
          in: header
          type: string
          description: SHA1 checksum of the artifact
        - name: X-Checksum-Sha256
          in: header
          type: string
          description: SHA256 checksum of the artifact
        - name: X-Checksum-Md5
          in: header
          type: string
          description: MD5 checksum of the artifact
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deleteartifact
        method: DELETE
        description: JFrog Delete Artifact
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repoKey
          in: path
          type: string
          description: Repository key
          required: true
        - name: itemPath
          in: path
          type: string
          description: Path to the artifact
          required: true
    authentication:
      type: bearer
      token: '{{env.JFROG_API_KEY}}'
  exposes:
  - type: rest
    namespace: artifactory-artifacts-storage-rest
    port: 8080
    description: REST adapter for JFrog Artifactory REST API — Artifacts & Storage. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/api/copy/{srcrepokey}/{srcitempath}
      name: api-copy-srcrepokey-srcitempath
      description: REST surface for api-copy-srcRepoKey-srcItemPath.
      operations:
      - method: POST
        name: copyartifact
        description: JFrog Copy Artifact
        call: artifactory-artifacts-storage.copyartifact
        with:
          srcRepoKey: rest.srcRepoKey
          srcItemPath: rest.srcItemPath
          to: rest.to
          dry: rest.dry
          suppressLayouts: rest.suppressLayouts
          failFast: rest.failFast
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/move/{srcrepokey}/{srcitempath}
      name: api-move-srcrepokey-srcitempath
      description: REST surface for api-move-srcRepoKey-srcItemPath.
      operations:
      - method: POST
        name: moveartifact
        description: JFrog Move Artifact
        call: artifactory-artifacts-storage.moveartifact
        with:
          srcRepoKey: rest.srcRepoKey
          srcItemPath: rest.srcItemPath
          to: rest.to
          dry: rest.dry
          suppressLayouts: rest.suppressLayouts
          failFast: rest.failFast
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/storage/{repokey}
      name: api-storage-repokey
      description: REST surface for api-storage-repoKey.
      operations:
      - method: GET
        name: getrepositorystorageinfo
        description: JFrog Get Repository Storage Summary
        call: artifactory-artifacts-storage.getrepositorystorageinfo
        with:
          repoKey: rest.repoKey
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/storage/{repokey}/{itempath}
      name: api-storage-repokey-itempath
      description: REST surface for api-storage-repoKey-itemPath.
      operations:
      - method: GET
        name: getstorageinfo
        description: JFrog Get File or Folder Info
        call: artifactory-artifacts-storage.getstorageinfo
        with:
          repoKey: rest.repoKey
          itemPath: rest.itemPath
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/storageinfo
      name: api-storageinfo
      description: REST surface for api-storageinfo.
      operations:
      - method: GET
        name: getstoragesummaryinfo
        description: JFrog Get Storage Summary
        call: artifactory-artifacts-storage.getstoragesummaryinfo
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/{repokey}/{itempath}
      name: repokey-itempath
      description: REST surface for repoKey-itemPath.
      operations:
      - method: GET
        name: retrieveartifact
        description: JFrog Retrieve Artifact
        call: artifactory-artifacts-storage.retrieveartifact
        with:
          repoKey: rest.repoKey
          itemPath: rest.itemPath
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: deployartifact
        description: JFrog Deploy Artifact
        call: artifactory-artifacts-storage.deployartifact
        with:
          repoKey: rest.repoKey
          itemPath: rest.itemPath
          X-Checksum-Sha1: rest.X-Checksum-Sha1
          X-Checksum-Sha256: rest.X-Checksum-Sha256
          X-Checksum-Md5: rest.X-Checksum-Md5
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteartifact
        description: JFrog Delete Artifact
        call: artifactory-artifacts-storage.deleteartifact
        with:
          repoKey: rest.repoKey
          itemPath: rest.itemPath
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: artifactory-artifacts-storage-mcp
    port: 9090
    transport: http
    description: MCP adapter for JFrog Artifactory REST API — Artifacts & Storage. One tool per consumed operation, routed
      inline through this capability's consumes block.
    tools:
    - name: jfrog-copy-artifact
      description: JFrog Copy Artifact
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: artifactory-artifacts-storage.copyartifact
      with:
        srcRepoKey: tools.srcRepoKey
        srcItemPath: tools.srcItemPath
        to: tools.to
        dry: tools.dry
        suppressLayouts: tools.suppressLayouts
        failFast: tools.failFast
      outputParameters:
      - type: object
        mapping: $.
    - name: jfrog-move-artifact
      description: JFrog Move Artifact
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: artifactory-artifacts-storage.moveartifact
      with:
        srcRepoKey: tools.srcRepoKey
        srcItemPath: tools.srcItemPath
        to: tools.to
        dry: tools.dry
        suppressLayouts: tools.suppressLayouts
        failFast: tools.failFast
      outputParameters:
      - type: object
        mapping: $.
    - name: jfrog-get-repository-storage-summary
      description: JFrog Get Repository Storage Summary
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: artifactory-artifacts-storage.getrepositorystorageinfo
      with:
        repoKey: tools.repoKey
      outputParameters:
      - type: object
        mapping: $.
    - name: jfrog-get-file-folder-info
      description: JFrog Get File or Folder Info
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: artifactory-artifacts-storage.getstorageinfo
      with:
        repoKey: tools.repoKey
        itemPath: tools.itemPath
      outputParameters:
      - type: object
        mapping: $.
    - name: jfrog-get-storage-summary
      description: JFrog Get Storage Summary
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: artifactory-artifacts-storage.getstoragesummaryinfo
      outputParameters:
      - type: object
        mapping: $.
    - name: jfrog-retrieve-artifact
      description: JFrog Retrieve Artifact
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: artifactory-artifacts-storage.retrieveartifact
      with:
        repoKey: tools.repoKey
        itemPath: tools.itemPath
      outputParameters:
      - type: object
        mapping: $.
    - name: jfrog-deploy-artifact
      description: JFrog Deploy Artifact
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: artifactory-artifacts-storage.deployartifact
      with:
        repoKey: tools.repoKey
        itemPath: tools.itemPath
        X-Checksum-Sha1: tools.X-Checksum-Sha1
        X-Checksum-Sha256: tools.X-Checksum-Sha256
        X-Checksum-Md5: tools.X-Checksum-Md5
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: jfrog-delete-artifact
      description: JFrog Delete Artifact
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: artifactory-artifacts-storage.deleteartifact
      with:
        repoKey: tools.repoKey
        itemPath: tools.itemPath
      outputParameters:
      - type: object
        mapping: $.