Sonatype Nexus · Capability

Sonatype Nexus Repository Manager — Search

Sonatype Nexus Repository Manager — Search. 3 operations. Lead operation: Search components. Self-contained Naftiko capability covering one Sonatype Nexus business surface.

Run with Naftiko Sonatype NexusSearch

What You Can Do

GET
Search — Search components
/v1/v1/search
GET
Searchassets — Search assets
/v1/v1/search/assets
GET
Searchanddownloadassets — Search and download asset
/v1/v1/search/assets/download

MCP Tools

search-components

Search components

read-only idempotent
search-assets

Search assets

read-only idempotent
search-and-download-asset

Search and download asset

read-only idempotent

Capability Spec

repository-search.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Sonatype Nexus Repository Manager — Search
  description: 'Sonatype Nexus Repository Manager — Search. 3 operations. Lead operation: Search components. Self-contained
    Naftiko capability covering one Sonatype Nexus business surface.'
  tags:
  - Sonatype Nexus
  - Search
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    SONATYPE_NEXUS_API_KEY: SONATYPE_NEXUS_API_KEY
capability:
  consumes:
  - type: http
    namespace: repository-search
    baseUri: ''
    description: Sonatype Nexus Repository Manager — Search business capability. Self-contained, no shared references.
    resources:
    - name: v1-search
      path: /v1/search
      operations:
      - name: search
        method: GET
        description: Search components
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: continuationToken
          in: query
          type: string
          description: A token returned by a prior request. If present, the next page of results are returned
        - name: sort
          in: query
          type: string
          description: The field to sort the results against, if left empty, a sort based on match weight will be used.
        - name: direction
          in: query
          type: string
          description: The direction to sort records in, defaults to ascending ('asc') for all sort fields, except version,
            which defaults to descending ('desc')
        - name: timeout
          in: query
          type: integer
          description: How long to wait for search results in seconds. If this value is not provided, the system default timeout
            will be used.
        - name: q
          in: query
          type: string
          description: Query by keyword
        - name: repository
          in: query
          type: string
          description: Repository name
        - name: format
          in: query
          type: string
          description: Query by format
        - name: group
          in: query
          type: string
          description: Component group
        - name: name
          in: query
          type: string
          description: Component name
        - name: version
          in: query
          type: string
          description: Component version
        - name: prerelease
          in: query
          type: string
          description: Prerelease version flag
        - name: last_updated
          in: query
          type: string
          description: Asset last modified time
        - name: lastBlobUpdated
          in: query
          type: string
          description: Asset last modified time (UI)
        - name: md5
          in: query
          type: string
          description: Specific MD5 hash of component's asset
        - name: sha1
          in: query
          type: string
          description: Specific SHA-1 hash of component's asset
        - name: sha256
          in: query
          type: string
          description: Specific SHA-256 hash of component's asset
        - name: sha512
          in: query
          type: string
          description: Specific SHA-512 hash of component's asset
        - name: composer.vendor
          in: query
          type: string
          description: Vendor
        - name: composer.package
          in: query
          type: string
          description: Package
        - name: composer.version
          in: query
          type: string
          description: Version
        - name: conan.baseVersion
          in: query
          type: string
          description: Conan base version
        - name: conan.channel
          in: query
          type: string
          description: Conan channel
        - name: conan.revision
          in: query
          type: string
          description: Conan recipe revision
        - name: conan.packageId
          in: query
          type: string
          description: Conan package id
        - name: conan.packageRevision
          in: query
          type: string
          description: Conan package revision
        - name: conan.baseVersion.strict
          in: query
          type: string
          description: Conan base version strict
        - name: conan.revision.latest
          in: query
          type: string
          description: Return latest revision
        - name: conan.settings.arch
          in: query
          type: string
          description: Conan arch
        - name: conan.settings.os
          in: query
          type: string
          description: Conan os
        - name: conan.settings.compiler
          in: query
          type: string
          description: Conan compiler
        - name: conan.settings.compiler.version
          in: query
          type: string
          description: Conan compiler version
        - name: conan.settings.compiler.runtime
          in: query
          type: string
          description: Conan compiler runtime
        - name: docker.imageName
          in: query
          type: string
          description: Docker image name
        - name: docker.imageTag
          in: query
          type: string
          description: Docker image tag
        - name: docker.layerId
          in: query
          type: string
          description: Docker layer ID
        - name: docker.contentDigest
          in: query
          type: string
          description: Docker content digest
        - name: maven.groupId
          in: query
          type: string
          description: Maven groupId
        - name: maven.artifactId
          in: query
          type: string
          description: Maven artifactId
        - name: maven.baseVersion
          in: query
          type: string
          description: Maven base version
        - name: maven.extension
          in: query
          type: string
          description: Maven extension of component's asset
        - name: maven.classifier
          in: query
          type: string
          description: Maven classifier of component's asset
        - name: gavec
          in: query
          type: string
          description: Group asset version extension classifier
        - name: npm.scope
          in: query
          type: string
          description: npm scope
        - name: npm.author
          in: query
          type: string
          description: npm author
        - name: npm.description
          in: query
          type: string
          description: npm description
        - name: npm.keywords
          in: query
          type: string
          description: npm keywords
        - name: npm.license
          in: query
          type: string
          description: npm license
        - name: npm.tagged_is
          in: query
          type: string
          description: npm tagged is
        - name: npm.tagged_not
          in: query
          type: string
          description: npm tagged not
        - name: nuget.id
          in: query
          type: string
          description: NuGet id
        - name: nuget.tags
          in: query
          type: string
          description: NuGet tags
        - name: nuget.title
          in: query
          type: string
          description: NuGet title
        - name: nuget.authors
          in: query
          type: string
          description: NuGet authors
        - name: nuget.description
          in: query
          type: string
          description: NuGet description
        - name: nuget.summary
          in: query
          type: string
          description: NuGet summary
        - name: nuget.is_prerelease
          in: query
          type: string
          description: NuGet prerelease
        - name: p2.pluginName
          in: query
          type: string
          description: p2 plugin name
        - name: pypi.classifiers
          in: query
          type: string
          description: PyPI classifiers
        - name: pypi.description
          in: query
          type: string
          description: PyPI description
        - name: pypi.keywords
          in: query
          type: string
          description: PyPI keywords
        - name: pypi.summary
          in: query
          type: string
          description: PyPI summary
        - name: rubygems.description
          in: query
          type: string
          description: RubyGems description
        - name: rubygems.platform
          in: query
          type: string
          description: RubyGems platform
        - name: rubygems.summary
          in: query
          type: string
          description: RubyGems summary
        - name: swift.scope
          in: query
          type: string
          description: swift scope
        - name: swift.asset_kind
          in: query
          type: string
          description: swift asset kind
        - name: tag
          in: query
          type: string
          description: Component tag
        - name: terraform.provider
          in: query
          type: string
          description: terraform provider
        - name: terraform.namespace
          in: query
          type: string
          description: terraform namespace
        - name: terraform.name
          in: query
          type: string
          description: terraform name
        - name: yum.architecture
          in: query
          type: string
          description: Yum architecture
        - name: yum.name
          in: query
          type: string
          description: Yum package name
    - name: v1-search-assets
      path: /v1/search/assets
      operations:
      - name: searchassets
        method: GET
        description: Search assets
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: continuationToken
          in: query
          type: string
          description: A token returned by a prior request. If present, the next page of results are returned
        - name: sort
          in: query
          type: string
          description: The field to sort the results against, if left empty, a sort based on match weight will be used.
        - name: direction
          in: query
          type: string
          description: The direction to sort records in, defaults to ascending ('asc') for all sort fields, except version,
            which defaults to descending ('desc')
        - name: timeout
          in: query
          type: integer
          description: How long to wait for search results in seconds. If this value is not provided, the system default timeout
            will be used.
        - name: q
          in: query
          type: string
          description: Query by keyword
        - name: repository
          in: query
          type: string
          description: Repository name
        - name: format
          in: query
          type: string
          description: Query by format
        - name: group
          in: query
          type: string
          description: Component group
        - name: name
          in: query
          type: string
          description: Component name
        - name: version
          in: query
          type: string
          description: Component version
        - name: prerelease
          in: query
          type: string
          description: Prerelease version flag
        - name: last_updated
          in: query
          type: string
          description: Asset last modified time
        - name: lastBlobUpdated
          in: query
          type: string
          description: Asset last modified time (UI)
        - name: md5
          in: query
          type: string
          description: Specific MD5 hash of component's asset
        - name: sha1
          in: query
          type: string
          description: Specific SHA-1 hash of component's asset
        - name: sha256
          in: query
          type: string
          description: Specific SHA-256 hash of component's asset
        - name: sha512
          in: query
          type: string
          description: Specific SHA-512 hash of component's asset
        - name: composer.vendor
          in: query
          type: string
          description: Vendor
        - name: composer.package
          in: query
          type: string
          description: Package
        - name: composer.version
          in: query
          type: string
          description: Version
        - name: conan.baseVersion
          in: query
          type: string
          description: Conan base version
        - name: conan.channel
          in: query
          type: string
          description: Conan channel
        - name: conan.revision
          in: query
          type: string
          description: Conan recipe revision
        - name: conan.packageId
          in: query
          type: string
          description: Conan package id
        - name: conan.packageRevision
          in: query
          type: string
          description: Conan package revision
        - name: conan.baseVersion.strict
          in: query
          type: string
          description: Conan base version strict
        - name: conan.revision.latest
          in: query
          type: string
          description: Return latest revision
        - name: conan.settings.arch
          in: query
          type: string
          description: Conan arch
        - name: conan.settings.os
          in: query
          type: string
          description: Conan os
        - name: conan.settings.compiler
          in: query
          type: string
          description: Conan compiler
        - name: conan.settings.compiler.version
          in: query
          type: string
          description: Conan compiler version
        - name: conan.settings.compiler.runtime
          in: query
          type: string
          description: Conan compiler runtime
        - name: docker.imageName
          in: query
          type: string
          description: Docker image name
        - name: docker.imageTag
          in: query
          type: string
          description: Docker image tag
        - name: docker.layerId
          in: query
          type: string
          description: Docker layer ID
        - name: docker.contentDigest
          in: query
          type: string
          description: Docker content digest
        - name: maven.groupId
          in: query
          type: string
          description: Maven groupId
        - name: maven.artifactId
          in: query
          type: string
          description: Maven artifactId
        - name: maven.baseVersion
          in: query
          type: string
          description: Maven base version
        - name: maven.extension
          in: query
          type: string
          description: Maven extension of component's asset
        - name: maven.classifier
          in: query
          type: string
          description: Maven classifier of component's asset
        - name: gavec
          in: query
          type: string
          description: Group asset version extension classifier
        - name: npm.scope
          in: query
          type: string
          description: npm scope
        - name: npm.author
          in: query
          type: string
          description: npm author
        - name: npm.description
          in: query
          type: string
          description: npm description
        - name: npm.keywords
          in: query
          type: string
          description: npm keywords
        - name: npm.license
          in: query
          type: string
          description: npm license
        - name: npm.tagged_is
          in: query
          type: string
          description: npm tagged is
        - name: npm.tagged_not
          in: query
          type: string
          description: npm tagged not
        - name: nuget.id
          in: query
          type: string
          description: NuGet id
        - name: nuget.tags
          in: query
          type: string
          description: NuGet tags
        - name: nuget.title
          in: query
          type: string
          description: NuGet title
        - name: nuget.authors
          in: query
          type: string
          description: NuGet authors
        - name: nuget.description
          in: query
          type: string
          description: NuGet description
        - name: nuget.summary
          in: query
          type: string
          description: NuGet summary
        - name: nuget.is_prerelease
          in: query
          type: string
          description: NuGet prerelease
        - name: p2.pluginName
          in: query
          type: string
          description: p2 plugin name
        - name: pypi.classifiers
          in: query
          type: string
          description: PyPI classifiers
        - name: pypi.description
          in: query
          type: string
          description: PyPI description
        - name: pypi.keywords
          in: query
          type: string
          description: PyPI keywords
        - name: pypi.summary
          in: query
          type: string
          description: PyPI summary
        - name: rubygems.description
          in: query
          type: string
          description: RubyGems description
        - name: rubygems.platform
          in: query
          type: string
          description: RubyGems platform
        - name: rubygems.summary
          in: query
          type: string
          description: RubyGems summary
        - name: swift.scope
          in: query
          type: string
          description: swift scope
        - name: swift.asset_kind
          in: query
          type: string
          description: swift asset kind
        - name: tag
          in: query
          type: string
          description: Component tag
        - name: terraform.provider
          in: query
          type: string
          description: terraform provider
        - name: terraform.namespace
          in: query
          type: string
          description: terraform namespace
        - name: terraform.name
          in: query
          type: string
          description: terraform name
        - name: yum.architecture
          in: query
          type: string
          description: Yum architecture
        - name: yum.name
          in: query
          type: string
          description: Yum package name
    - name: v1-search-assets-download
      path: /v1/search/assets/download
      operations:
      - name: searchanddownloadassets
        method: GET
        description: Search and download asset
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: sort
          in: query
          type: string
          description: The field to sort the results against, if left empty and more than 1 result is returned, the request
            will fail.
        - name: direction
          in: query
          type: string
          description: The direction to sort records in, defaults to ascending ('asc') for all sort fields, except version,
            which defaults to descending ('desc')
        - name: timeout
          in: query
          type: integer
          description: How long to wait for search results in seconds. If this value is not provided, the system default timeout
            will be used.
        - name: q
          in: query
          type: string
          description: Query by keyword
        - name: repository
          in: query
          type: string
          description: Repository name
        - name: format
          in: query
          type: string
          description: Query by format
        - name: group
          in: query
          type: string
          description: Component group
        - name: name
          in: query
          type: string
          description: Component name
        - name: version
          in: query
          type: string
          description: Component version
        - name: prerelease
          in: query
          type: string
          description: Prerelease version flag
        - name: last_updated
          in: query
          type: string
          description: Asset last modified time
        - name: lastBlobUpdated
          in: query
          type: string
          description: Asset last modified time (UI)
        - name: md5
          in: query
          type: string
          description: Specific MD5 hash of component's asset
        - name: sha1
          in: query
          type: string
          description: Specific SHA-1 hash of component's asset
        - name: sha256
          in: query
          type: string
          description: Specific SHA-256 hash of component's asset
        - name: sha512
          in: query
          type: string
          description: Specific SHA-512 hash of component's asset
        - name: composer.vendor
          in: query
          type: string
          description: Vendor
        - name: composer.package
          in: query
          type: string
          description: Package
        - name: composer.version
          in: query
          type: string
          description: Version
        - name: conan.baseVersion
          in: query
          type: string
          description: Conan base version
        - name: conan.channel
          in: query
          type: string
          description: Conan channel
        - name: conan.revision
          in: query
          type: string
          description: Conan recipe revision
        - name: conan.packageId
          in: query
          type: string
          description: Conan package id
        - name: conan.packageRevision
          in: query
          type: string
          description: Conan package revision
        - name: conan.baseVersion.strict
          in: query
          type: string
          description: Conan base version strict
        - name: conan.revision.latest
          in: query
          type: string
          description: Return latest revision
        - name: conan.settings.arch
          in: query
          type: string
          description: Conan arch
        - name: conan.settings.os
          in: query
          type: string
          description: Conan os
        - name: conan.settings.compiler
          in: query
          type: string
          description: Conan compiler
        - name: conan.settings.compiler.version
          in: query
          type: string
          description: Conan compiler version
        - name: conan.settings.compiler.runtime
          in: query
          type: string
          description: Conan compiler runtime
        - name: docker.imageName
          in: query
          type: string
          description: Docker image name
        - name: docker.imageTag
          in: query
          type: string
          description: Docker image tag
        - name: docker.layerId
          in: query
          type: string
          description: Docker layer ID
        - name: docker.contentDigest
          in: query
          type: string
          description: Docker content digest
        - name: maven.groupId
          in: query
          type: string
          description: Maven groupId
        - name: maven.artifactId
          in: query
          type: string
          description: Maven artifactId
        - name: maven.baseVersion
          in: query
          type: string
          description: Maven base version
        - name: maven.extension
          in: query
          type: string
          description: Maven extension of component's asset
        - name: maven.classifier
          in: query
          type: string
          description: Maven classifier of component's asset
        - name: gavec
          in: query
          type: string
          description: Group asset version extension classifier
        - name: npm.scope
          in: query
          type: string
          description: npm scope
        - name: npm.author
          in: query
          type: string
          description: npm author
        - name: npm.description
          in: query
          type: string
          description: npm description
        - name: npm.keywords
          in: query
          type: string
          description: npm keywords
        - name: npm.license
          in: query
          type: string
          description: npm license
        - name: npm.tagged_is
          in: query
          type: string
          description: npm tagged is
        - name: npm.tagged_not
          in: query
          type: string
          description: npm tagged not
        - name: nuget.id
          in: query
          type: string
          description: NuGet id
        - name: nuget.tags
          in: query
          type: string
          description: NuGet tags
        - name: nuget.title
          in: query
          type: string
          description: NuGet title
        - name: nuget.authors
          in: query
          type: string
          description: NuGet authors
        - name: nuget.description
          in: query
          type: string
          description: NuGet description
        - name: nuget.summary
          in: query
          type: string
          description: NuGet summary
        - name: nuget.is_prerelease
          in: query
          type: string
          description: NuGet prerelease
        - name: p2.pluginName
          in: query
          type: string
          description: p2 plugin name
        - name: pypi.classifiers
          in: query
          type: string
          description: PyPI classifiers
        - name: pypi.description
          in: query
          type: string
          description: PyPI description
        - name: pypi.keywords
          in: query
          type: string
          description: PyPI keywords
        - name: pypi.summary
          in: query
          type: string
          description: PyPI summary
        - name: rubygems.description
          in: query
          type: string
          description: RubyGems description
        - name: rubygems.platform
          in: query
          type: string
          description: RubyGems platform
        - name: rubygems.summary
          in: query
          type: string
          description: RubyGems summary
        - name: swift.scope
          in: query
          type: string
          description: swift scope
        - name: swift.asset_kind
          in: query
          type: string
          description: swift asset kind
        - name: tag
          in: query
          type: string
          description: Component tag
        - name: terraform.provider
          in: query
          type: string
          description: terraform provider
        - name: terraform.namespace
          in: query
          type: string
          description: terraform namespace
        - name: terraform.name
          in: query
          type: string
          description: terraform name
        - name: yum.architecture
          in: query
          type: string
          description: Yum architecture
        - name: yum.name
          in: query
          type: string
          description: Yum package name
    authentication:
      type: basic
      username: '{{env.SONATYPE_NEXUS_USER}}'
      password: '{{env.SONATYPE_NEXUS_PASS}}'
  exposes:
  - type: rest
    namespace: repository-search-rest
    port: 8080
    description: REST adapter for Sonatype Nexus Repository Manager — Search. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/v1/search
      name: v1-search
      description: REST surface for v1-search.
      operations:
      - method: GET
        name: search
        description: Search components
        call: repository-search.search
        with:
          continuationToken: rest.continuationToken
          sort: rest.sort
          direction: rest.direction
          timeout: rest.timeout
          q: rest.q
          repository: rest.repository
          format: rest.format
          group: rest.group
          name: rest.name
          version: rest.version
          prerelease: rest.prerelease
          last_updated: rest.last_updated
          lastBlobUpdated: rest.lastBlobUpdated
          md5: rest.md5
          sha1: rest.sha1
          sha256: rest.sha256
          sha512: rest.sha512
          composer.vendor: rest.composer.vendor
          composer.package: rest.composer.package
          composer.version: rest.composer.version
          conan.baseVersion: rest.conan.baseVersion
          conan.channel: rest.conan.channel
          conan.revision: rest.conan.revision
          conan.packageId: rest.conan.packageId
          conan.packageRevision: rest.conan.packageRevision
          conan.baseVersion.strict: rest.conan.baseVersion.strict
          conan.revision.latest: rest.conan.revision.latest
          conan.settings.arch: rest.conan.settings.arch
          conan.settings.os: rest.conan.settings.os
          conan.settings.compiler: rest.conan.settings.compiler
          conan.settings.compiler.version: rest.conan.settings.compiler.version
          conan.settings.compiler.runtime: rest.conan.settings.compiler.runtime
          docker.imageName: rest.docker.imageName
          docker.imageTag: rest.docker.imageTag
          docker.layerId: rest.docker.layerId
          docker.contentDigest: rest.docker.contentDigest
          maven.groupId: rest.maven.groupId
          maven.artifactId: rest.maven.artifactId
          maven.baseVersion: rest.maven.baseVersion
          maven.extension: rest.maven.extension
          maven.classifier: rest.maven.classifier
          gavec: rest.gavec
          npm.scope: rest.npm.scope
          npm.author: rest.npm.author
          npm.description: rest.npm.description
          npm.keywords: rest.npm.keywords
          npm.license: rest.npm.license
          npm.tagged_is: rest.npm.tagged_is
          npm.tagged_not: rest.npm.tagged_not
          nuget.id: rest.nuget.id
          nuget.tags: rest.nuget.tags
          nuget.title: rest.nuget.title
          nuget.authors: rest.nuget.authors
          nuget.description: rest.nuget.description
          nuget.summary: rest.nuget.summary
          nuget.is_prerelease: rest.nuget.is_prerelease
          p2.pluginName: rest.p2.pluginName
          pypi.classifiers: rest.pypi.classifiers
          pypi.description: rest.pypi.description
          pypi.keywords: rest.pypi.keywords
          pypi.summary: rest.pypi.summary
          rubygems.description: rest.rubygems.description
          rubygems.platform: rest.rubygems.platform
          rubygems.summary: rest.rubygems.summary
          swift.scope: rest.swift.scope
          swift.asset_kind: rest.swift.asset_kind
          tag: rest.tag
          terraform.provider: rest.terraform.provider
          terraform.namespace: rest.terraform.namespace
          terraform.name: rest.terraform.name
          yum.architecture: rest.yum.architecture
          yum.name: rest.yum.name
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/search/assets
      name: v1-search-assets
      description: REST surface for v1-search-assets.
      operations:
      - method: GET
        name: searchassets
        description: Search assets
        call: repository-search.searchassets
        with:
          continuationToken: rest.continuationToken
          sort: rest.sort
          direction: rest.direction
          timeout: rest.timeout
          q: rest.q
          repository: rest.repository
          format: rest.format
          group: rest.group
          name: rest.name
          version: rest.version
          prerelease: rest.prerelease
          last_updated: rest.last_updated
          lastBlobUpdated: rest.lastBlobUpdated
          md5: rest.md5
          sha1: rest.sha1
          sha256: rest.sha256
          sha512: rest.sha512
          composer.vendor: rest.composer.vendor
          composer.package: rest.composer.package
          composer.version: rest.composer.version
          conan.baseVersion: rest.conan.baseVersion
          conan.channel: rest.conan.channel
          conan.revision: rest.conan.revision
          conan.packageId: rest.conan.packageId
          conan.packageRevision: rest.conan.packageRevision
          conan.baseVersion.strict: rest.conan.baseVersion.strict
    

# --- truncated at 32 KB (48 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/sonatype-nexus/refs/heads/main/capabilities/repository-search.yaml