R · Capability

METACRAN CranDB API — Packages

METACRAN CranDB API — Packages. 5 operations. Lead operation: List All Package Vignettes. Self-contained Naftiko capability covering one R business surface.

Run with Naftiko RPackages

What You Can Do

GET
Listpackagevignettes — List All Package Vignettes
/v1//allvign
GET
Listpackagedescriptions — List Package Descriptions
/v1//desc
GET
Listallpackages — List All CRAN Packages
/v1//pkgs
GET
Getpackage — Get Package Metadata
/v1/{package}
GET
Getpackageversion — Get Package Version Metadata
/v1/{package}/{version}

MCP Tools

list-all-package-vignettes

List All Package Vignettes

read-only idempotent
list-package-descriptions

List Package Descriptions

read-only idempotent
list-all-cran-packages

List All CRAN Packages

read-only idempotent
get-package-metadata

Get Package Metadata

read-only idempotent
get-package-version-metadata

Get Package Version Metadata

read-only idempotent

Capability Spec

metacran-crandb-packages.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: METACRAN CranDB API — Packages
  description: 'METACRAN CranDB API — Packages. 5 operations. Lead operation: List All Package Vignettes. Self-contained Naftiko
    capability covering one R business surface.'
  tags:
  - R
  - Packages
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    R_API_KEY: R_API_KEY
capability:
  consumes:
  - type: http
    namespace: metacran-crandb-packages
    baseUri: https://crandb.r-pkg.org
    description: METACRAN CranDB API — Packages business capability. Self-contained, no shared references.
    resources:
    - name: --allvign
      path: /-/allvign
      operations:
      - name: listpackagevignettes
        method: GET
        description: List All Package Vignettes
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: --desc
      path: /-/desc
      operations:
      - name: listpackagedescriptions
        method: GET
        description: List Package Descriptions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: limit
          in: query
          type: integer
          description: Maximum number of records to return
        - name: skip
          in: query
          type: integer
          description: Number of records to skip for pagination
    - name: --pkgs
      path: /-/pkgs
      operations:
      - name: listallpackages
        method: GET
        description: List All CRAN Packages
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: package
      path: /{package}
      operations:
      - name: getpackage
        method: GET
        description: Get Package Metadata
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: package
          in: path
          type: string
          description: CRAN package name (case-sensitive)
          required: true
    - name: package-version
      path: /{package}/{version}
      operations:
      - name: getpackageversion
        method: GET
        description: Get Package Version Metadata
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: package
          in: path
          type: string
          description: CRAN package name
          required: true
        - name: version
          in: path
          type: string
          description: Package version string, or "all" for all versions
          required: true
  exposes:
  - type: rest
    namespace: metacran-crandb-packages-rest
    port: 8080
    description: REST adapter for METACRAN CranDB API — Packages. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1//allvign
      name: allvign
      description: REST surface for --allvign.
      operations:
      - method: GET
        name: listpackagevignettes
        description: List All Package Vignettes
        call: metacran-crandb-packages.listpackagevignettes
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1//desc
      name: desc
      description: REST surface for --desc.
      operations:
      - method: GET
        name: listpackagedescriptions
        description: List Package Descriptions
        call: metacran-crandb-packages.listpackagedescriptions
        with:
          limit: rest.limit
          skip: rest.skip
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1//pkgs
      name: pkgs
      description: REST surface for --pkgs.
      operations:
      - method: GET
        name: listallpackages
        description: List All CRAN Packages
        call: metacran-crandb-packages.listallpackages
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/{package}
      name: package
      description: REST surface for package.
      operations:
      - method: GET
        name: getpackage
        description: Get Package Metadata
        call: metacran-crandb-packages.getpackage
        with:
          package: rest.package
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/{package}/{version}
      name: package-version
      description: REST surface for package-version.
      operations:
      - method: GET
        name: getpackageversion
        description: Get Package Version Metadata
        call: metacran-crandb-packages.getpackageversion
        with:
          package: rest.package
          version: rest.version
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: metacran-crandb-packages-mcp
    port: 9090
    transport: http
    description: MCP adapter for METACRAN CranDB API — Packages. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: list-all-package-vignettes
      description: List All Package Vignettes
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: metacran-crandb-packages.listpackagevignettes
      outputParameters:
      - type: object
        mapping: $.
    - name: list-package-descriptions
      description: List Package Descriptions
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: metacran-crandb-packages.listpackagedescriptions
      with:
        limit: tools.limit
        skip: tools.skip
      outputParameters:
      - type: object
        mapping: $.
    - name: list-all-cran-packages
      description: List All CRAN Packages
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: metacran-crandb-packages.listallpackages
      outputParameters:
      - type: object
        mapping: $.
    - name: get-package-metadata
      description: Get Package Metadata
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: metacran-crandb-packages.getpackage
      with:
        package: tools.package
      outputParameters:
      - type: object
        mapping: $.
    - name: get-package-version-metadata
      description: Get Package Version Metadata
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: metacran-crandb-packages.getpackageversion
      with:
        package: tools.package
        version: tools.version
      outputParameters:
      - type: object
        mapping: $.