naftiko: 1.0.0-alpha2 info: label: Azure DevOps Artifacts API description: REST API for managing packages, feeds, and artifact dependencies in Azure Artifacts. Supports NuGet, npm, Maven, Python, and Universal package formats in private or public feeds. Enables programmatic management of package feeds, discovery of packages and their versions, and lifecycle operations such as deprecating or deleting package versions. tags: - Microsoft - Azure - Devops - API created: '2026-05-06' modified: '2026-05-06' capability: consumes: - type: http namespace: microsoft-azure-devops baseUri: https://feeds.dev.azure.com/myorganization/myproject/_apis description: Azure DevOps Artifacts API HTTP API. authentication: type: bearer token: '{{MICROSOFT_AZURE_DEVOPS_TOKEN}}' resources: - name: packaging-feeds path: /packaging/feeds operations: - name: feeds-list method: GET description: Azure DevOps List feeds inputParameters: - name: feedRole in: query type: string description: Filter feeds by the current user's role - name: includeDeletedUpstreams in: query type: boolean description: Whether to include feeds with deleted upstream sources - name: includeUrls in: query type: boolean description: Whether to include package manager endpoint URLs outputRawFormat: json outputParameters: - name: result type: object value: $. - name: feeds-create method: POST description: Azure DevOps Create a feed outputRawFormat: json outputParameters: - name: result type: object value: $. - name: packaging-feeds-feedid path: /packaging/feeds/{feedId} operations: - name: feeds-get method: GET description: Azure DevOps Get a feed inputParameters: - name: includeDeletedUpstreams in: query type: boolean description: Whether to include deleted upstream sources in the response outputRawFormat: json outputParameters: - name: result type: object value: $. - name: feeds-update method: PATCH description: Azure DevOps Update a feed outputRawFormat: json outputParameters: - name: result type: object value: $. - name: feeds-delete method: DELETE description: Azure DevOps Delete a feed outputRawFormat: json outputParameters: - name: result type: object value: $. - name: packaging-feeds-feedid-packages path: /packaging/feeds/{feedId}/packages operations: - name: packages-list method: GET description: Azure DevOps List packages in a feed inputParameters: - name: protocolType in: query type: string description: Filter packages by protocol type - name: packageNameQuery in: query type: string description: Filter packages whose names contain this string - name: normalizedPackageName in: query type: string description: Exact package name match (normalized form) - name: includeUrls in: query type: boolean description: Whether to include package manager URLs in the response - name: includeAllVersions in: query type: boolean description: Whether to include all versions or only the latest - name: isListed in: query type: boolean description: Filter by listed status (true=published, false=unlisted) - name: getTopPackageVersions in: query type: boolean description: Whether to include the top versions for each package - name: isDeleted in: query type: boolean description: Whether to include deleted packages - name: $top in: query type: integer description: Maximum number of packages to return - name: $skip in: query type: integer description: Number of packages to skip (for pagination) - name: continuationToken in: query type: string description: Continuation token for paginated results outputRawFormat: json outputParameters: - name: result type: object value: $. - name: packaging-feeds-feedid-packages-packageid path: /packaging/feeds/{feedId}/packages/{packageId} operations: - name: packages-get method: GET description: Azure DevOps Get package details inputParameters: - name: packageId in: path type: string required: true description: GUID identifier of the package - name: includeAllVersions in: query type: boolean description: Whether to include all versions or only the latest - name: includeUrls in: query type: boolean description: Whether to include package manager URLs - name: isListed in: query type: boolean description: Filter versions by listed status - name: isDeleted in: query type: boolean description: Whether to include deleted versions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: packaging-feeds-feedid-packages-packageid-versio path: /packaging/feeds/{feedId}/packages/{packageId}/versions/{packageVersionId} operations: - name: packageversions-delete method: DELETE description: Azure DevOps Delete a package version inputParameters: - name: packageId in: path type: string required: true description: GUID identifier of the package - name: packageVersionId in: path type: string required: true description: GUID identifier of the package version outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8080 namespace: microsoft-azure-devops-rest description: REST adapter for Azure DevOps Artifacts API. resources: - path: /packaging/feeds name: feeds-list operations: - method: GET name: feeds-list description: Azure DevOps List feeds call: microsoft-azure-devops.feeds-list outputParameters: - type: object mapping: $. - path: /packaging/feeds name: feeds-create operations: - method: POST name: feeds-create description: Azure DevOps Create a feed call: microsoft-azure-devops.feeds-create outputParameters: - type: object mapping: $. - path: /packaging/feeds/{feedId} name: feeds-get operations: - method: GET name: feeds-get description: Azure DevOps Get a feed call: microsoft-azure-devops.feeds-get outputParameters: - type: object mapping: $. - path: /packaging/feeds/{feedId} name: feeds-update operations: - method: PATCH name: feeds-update description: Azure DevOps Update a feed call: microsoft-azure-devops.feeds-update outputParameters: - type: object mapping: $. - path: /packaging/feeds/{feedId} name: feeds-delete operations: - method: DELETE name: feeds-delete description: Azure DevOps Delete a feed call: microsoft-azure-devops.feeds-delete outputParameters: - type: object mapping: $. - path: /packaging/feeds/{feedId}/packages name: packages-list operations: - method: GET name: packages-list description: Azure DevOps List packages in a feed call: microsoft-azure-devops.packages-list outputParameters: - type: object mapping: $. - path: /packaging/feeds/{feedId}/packages/{packageId} name: packages-get operations: - method: GET name: packages-get description: Azure DevOps Get package details call: microsoft-azure-devops.packages-get with: packageId: rest.packageId outputParameters: - type: object mapping: $. - path: /packaging/feeds/{feedId}/packages/{packageId}/versions/{packageVersionId} name: packageversions-delete operations: - method: DELETE name: packageversions-delete description: Azure DevOps Delete a package version call: microsoft-azure-devops.packageversions-delete with: packageId: rest.packageId packageVersionId: rest.packageVersionId outputParameters: - type: object mapping: $. - type: mcp port: 9090 namespace: microsoft-azure-devops-mcp transport: http description: MCP adapter for Azure DevOps Artifacts API for AI agent use. tools: - name: feeds-list description: Azure DevOps List feeds hints: readOnly: true destructive: false idempotent: true call: microsoft-azure-devops.feeds-list with: feedRole: tools.feedRole includeDeletedUpstreams: tools.includeDeletedUpstreams includeUrls: tools.includeUrls inputParameters: - name: feedRole type: string description: Filter feeds by the current user's role - name: includeDeletedUpstreams type: boolean description: Whether to include feeds with deleted upstream sources - name: includeUrls type: boolean description: Whether to include package manager endpoint URLs outputParameters: - type: object mapping: $. - name: feeds-create description: Azure DevOps Create a feed hints: readOnly: false destructive: false idempotent: false call: microsoft-azure-devops.feeds-create outputParameters: - type: object mapping: $. - name: feeds-get description: Azure DevOps Get a feed hints: readOnly: true destructive: false idempotent: true call: microsoft-azure-devops.feeds-get with: includeDeletedUpstreams: tools.includeDeletedUpstreams inputParameters: - name: includeDeletedUpstreams type: boolean description: Whether to include deleted upstream sources in the response outputParameters: - type: object mapping: $. - name: feeds-update description: Azure DevOps Update a feed hints: readOnly: false destructive: false idempotent: false call: microsoft-azure-devops.feeds-update outputParameters: - type: object mapping: $. - name: feeds-delete description: Azure DevOps Delete a feed hints: readOnly: false destructive: true idempotent: true call: microsoft-azure-devops.feeds-delete outputParameters: - type: object mapping: $. - name: packages-list description: Azure DevOps List packages in a feed hints: readOnly: true destructive: false idempotent: true call: microsoft-azure-devops.packages-list with: protocolType: tools.protocolType packageNameQuery: tools.packageNameQuery normalizedPackageName: tools.normalizedPackageName includeUrls: tools.includeUrls includeAllVersions: tools.includeAllVersions isListed: tools.isListed getTopPackageVersions: tools.getTopPackageVersions isDeleted: tools.isDeleted $top: tools.$top $skip: tools.$skip continuationToken: tools.continuationToken inputParameters: - name: protocolType type: string description: Filter packages by protocol type - name: packageNameQuery type: string description: Filter packages whose names contain this string - name: normalizedPackageName type: string description: Exact package name match (normalized form) - name: includeUrls type: boolean description: Whether to include package manager URLs in the response - name: includeAllVersions type: boolean description: Whether to include all versions or only the latest - name: isListed type: boolean description: Filter by listed status (true=published, false=unlisted) - name: getTopPackageVersions type: boolean description: Whether to include the top versions for each package - name: isDeleted type: boolean description: Whether to include deleted packages - name: $top type: integer description: Maximum number of packages to return - name: $skip type: integer description: Number of packages to skip (for pagination) - name: continuationToken type: string description: Continuation token for paginated results outputParameters: - type: object mapping: $. - name: packages-get description: Azure DevOps Get package details hints: readOnly: true destructive: false idempotent: true call: microsoft-azure-devops.packages-get with: packageId: tools.packageId includeAllVersions: tools.includeAllVersions includeUrls: tools.includeUrls isListed: tools.isListed isDeleted: tools.isDeleted inputParameters: - name: packageId type: string description: GUID identifier of the package required: true - name: includeAllVersions type: boolean description: Whether to include all versions or only the latest - name: includeUrls type: boolean description: Whether to include package manager URLs - name: isListed type: boolean description: Filter versions by listed status - name: isDeleted type: boolean description: Whether to include deleted versions outputParameters: - type: object mapping: $. - name: packageversions-delete description: Azure DevOps Delete a package version hints: readOnly: false destructive: true idempotent: true call: microsoft-azure-devops.packageversions-delete with: packageId: tools.packageId packageVersionId: tools.packageVersionId inputParameters: - name: packageId type: string description: GUID identifier of the package required: true - name: packageVersionId type: string description: GUID identifier of the package version required: true outputParameters: - type: object mapping: $. binds: - namespace: env keys: MICROSOFT_AZURE_DEVOPS_TOKEN: MICROSOFT_AZURE_DEVOPS_TOKEN