naftiko: 1.0.0-alpha2 info: label: NuGet Catalog API description: The NuGet Catalog API is an append-only resource that records the full history of all package events on nuget.org, including packages being added, modified, listed, unlisted, deleted, deprecated, and having vulnerability status updated. It provides a chronologically ordered log of every change to the package source, enabling consumers to build and maintain their own local copy of the entire set of packages available on nuget.org. The catalog is indexed by time and uses a hierarchical structure of index, pages, and leaves. Not all package sources implement the catalog resource. tags: - Nuget - API created: '2026-05-06' modified: '2026-05-06' capability: consumes: - type: http namespace: nuget baseUri: https://api.nuget.org/v3/catalog0 description: NuGet Catalog API HTTP API. resources: - name: index-json path: /index.json operations: - name: getcatalogindex method: GET description: Get the catalog index outputRawFormat: json outputParameters: - name: result type: object value: $. - name: pagename-json path: /{pageName}.json operations: - name: getcatalogpage method: GET description: Get a catalog page inputParameters: - name: pageName in: path type: string required: true description: The page identifier, discovered from the catalog index. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: data-timestamp-packageid-version-json path: /data/{timestamp}/{packageId}.{version}.json operations: - name: getcatalogleaf method: GET description: Get a catalog leaf inputParameters: - name: timestamp in: path type: string required: true description: The timestamp path segment, discovered from the catalog page. - name: packageId in: path type: string required: true description: The lowercased package ID. - name: version in: path type: string required: true description: The lowercased package version. outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8080 namespace: nuget-rest description: REST adapter for NuGet Catalog API. resources: - path: /index.json name: getcatalogindex operations: - method: GET name: getcatalogindex description: Get the catalog index call: nuget.getcatalogindex outputParameters: - type: object mapping: $. - path: /{pageName}.json name: getcatalogpage operations: - method: GET name: getcatalogpage description: Get a catalog page call: nuget.getcatalogpage with: pageName: rest.pageName outputParameters: - type: object mapping: $. - path: /data/{timestamp}/{packageId}.{version}.json name: getcatalogleaf operations: - method: GET name: getcatalogleaf description: Get a catalog leaf call: nuget.getcatalogleaf with: timestamp: rest.timestamp packageId: rest.packageId version: rest.version outputParameters: - type: object mapping: $. - type: mcp port: 9090 namespace: nuget-mcp transport: http description: MCP adapter for NuGet Catalog API for AI agent use. tools: - name: getcatalogindex description: Get the catalog index hints: readOnly: true destructive: false idempotent: true call: nuget.getcatalogindex outputParameters: - type: object mapping: $. - name: getcatalogpage description: Get a catalog page hints: readOnly: true destructive: false idempotent: true call: nuget.getcatalogpage with: pageName: tools.pageName inputParameters: - name: pageName type: string description: The page identifier, discovered from the catalog index. required: true outputParameters: - type: object mapping: $. - name: getcatalogleaf description: Get a catalog leaf hints: readOnly: true destructive: false idempotent: true call: nuget.getcatalogleaf with: timestamp: tools.timestamp packageId: tools.packageId version: tools.version inputParameters: - name: timestamp type: string description: The timestamp path segment, discovered from the catalog page. required: true - name: packageId type: string description: The lowercased package ID. required: true - name: version type: string description: The lowercased package version. required: true outputParameters: - type: object mapping: $.