naftiko: 1.0.0-alpha2 info: label: Azure Repos Git API — Refs description: 'Azure Repos Git API — Refs. 2 operations. Lead operation: Azure Repos List refs (branches and tags). Self-contained Naftiko capability covering one Microsoft Azure Repo business surface.' tags: - Microsoft Azure Repo - Refs created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: MICROSOFT_AZURE_REPO_API_KEY: MICROSOFT_AZURE_REPO_API_KEY capability: consumes: - type: http namespace: azure-repo-git-refs baseUri: https://dev.azure.com/{organization}/{project}/_apis description: Azure Repos Git API — Refs business capability. Self-contained, no shared references. resources: - name: git-repositories-repositoryId-refs path: /git/repositories/{repositoryId}/refs operations: - name: refslist method: GET description: Azure Repos List refs (branches and tags) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: filter in: query type: string description: Filter refs by name prefix (e.g., heads/main, tags/v1) - name: includeLinks in: query type: boolean description: Include reference links in the response - name: includeStatuses in: query type: boolean description: Include status information for each ref - name: includeMyBranches in: query type: boolean description: Include only branches owned by the authenticated user - name: peelTags in: query type: boolean description: Annotated tags will populate the PeeledObjectId property - name: $top in: query type: integer description: Maximum number of refs to return - name: continuationToken in: query type: string description: Continuation token for paging through results - name: refsupdate method: POST description: Azure Repos Create, update, or delete refs outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true authentication: type: bearer token: '{{env.MICROSOFT_AZURE_REPO_API_KEY}}' exposes: - type: rest namespace: azure-repo-git-refs-rest port: 8080 description: REST adapter for Azure Repos Git API — Refs. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/git/repositories/{repositoryid}/refs name: git-repositories-repositoryid-refs description: REST surface for git-repositories-repositoryId-refs. operations: - method: GET name: refslist description: Azure Repos List refs (branches and tags) call: azure-repo-git-refs.refslist with: filter: rest.filter includeLinks: rest.includeLinks includeStatuses: rest.includeStatuses includeMyBranches: rest.includeMyBranches peelTags: rest.peelTags $top: rest.$top continuationToken: rest.continuationToken outputParameters: - type: object mapping: $. - method: POST name: refsupdate description: Azure Repos Create, update, or delete refs call: azure-repo-git-refs.refsupdate with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: azure-repo-git-refs-mcp port: 9090 transport: http description: MCP adapter for Azure Repos Git API — Refs. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: azure-repos-list-refs-branches description: Azure Repos List refs (branches and tags) hints: readOnly: true destructive: false idempotent: true call: azure-repo-git-refs.refslist with: filter: tools.filter includeLinks: tools.includeLinks includeStatuses: tools.includeStatuses includeMyBranches: tools.includeMyBranches peelTags: tools.peelTags $top: tools.$top continuationToken: tools.continuationToken outputParameters: - type: object mapping: $. - name: azure-repos-create-update-delete description: Azure Repos Create, update, or delete refs hints: readOnly: false destructive: false idempotent: false call: azure-repo-git-refs.refsupdate with: body: tools.body outputParameters: - type: object mapping: $.