Azure Repos · Capability
Azure Repos Git API — Pushes
Azure Repos Git API — Pushes. 3 operations. Lead operation: Azure Repos List pushes. Self-contained Naftiko capability covering one Microsoft Azure Repo business surface.
What You Can Do
GET
Pusheslist
— Azure Repos List pushes
/v1/git/repositories/{repositoryid}/pushes
POST
Pushescreate
— Azure Repos Create a push
/v1/git/repositories/{repositoryid}/pushes
GET
Pushesget
— Azure Repos Get a push
/v1/git/repositories/{repositoryid}/pushes/{pushid}
MCP Tools
azure-repos-list-pushes
Azure Repos List pushes
read-only
idempotent
azure-repos-create-push
Azure Repos Create a push
azure-repos-get-push
Azure Repos Get a push
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Azure Repos Git API — Pushes
description: 'Azure Repos Git API — Pushes. 3 operations. Lead operation: Azure Repos List pushes. Self-contained Naftiko
capability covering one Microsoft Azure Repo business surface.'
tags:
- Microsoft Azure Repo
- Pushes
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-pushes
baseUri: https://dev.azure.com/{organization}/{project}/_apis
description: Azure Repos Git API — Pushes business capability. Self-contained, no shared references.
resources:
- name: git-repositories-repositoryId-pushes
path: /git/repositories/{repositoryId}/pushes
operations:
- name: pusheslist
method: GET
description: Azure Repos List pushes
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: $top
in: query
type: integer
description: Number of pushes to return
- name: $skip
in: query
type: integer
description: Number of pushes to skip
- name: searchCriteria.fromDate
in: query
type: string
description: Start date for filtering pushes
- name: searchCriteria.toDate
in: query
type: string
description: End date for filtering pushes
- name: searchCriteria.pusherId
in: query
type: string
description: Filter by pusher identity ID
- name: searchCriteria.refName
in: query
type: string
description: Filter by branch name (e.g., refs/heads/main)
- name: searchCriteria.includeRefUpdates
in: query
type: boolean
description: Include ref update details in results
- name: pushescreate
method: POST
description: Azure Repos Create a push
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: git-repositories-repositoryId-pushes-pushId
path: /git/repositories/{repositoryId}/pushes/{pushId}
operations:
- name: pushesget
method: GET
description: Azure Repos Get a push
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: pushId
in: path
type: integer
description: ID of the push
required: true
- name: includeCommits
in: query
type: integer
description: Number of commits to include
- name: includeRefUpdates
in: query
type: boolean
description: Include ref update details
authentication:
type: bearer
token: '{{env.MICROSOFT_AZURE_REPO_API_KEY}}'
exposes:
- type: rest
namespace: azure-repo-git-pushes-rest
port: 8080
description: REST adapter for Azure Repos Git API — Pushes. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/git/repositories/{repositoryid}/pushes
name: git-repositories-repositoryid-pushes
description: REST surface for git-repositories-repositoryId-pushes.
operations:
- method: GET
name: pusheslist
description: Azure Repos List pushes
call: azure-repo-git-pushes.pusheslist
with:
$top: rest.$top
$skip: rest.$skip
searchCriteria.fromDate: rest.searchCriteria.fromDate
searchCriteria.toDate: rest.searchCriteria.toDate
searchCriteria.pusherId: rest.searchCriteria.pusherId
searchCriteria.refName: rest.searchCriteria.refName
searchCriteria.includeRefUpdates: rest.searchCriteria.includeRefUpdates
outputParameters:
- type: object
mapping: $.
- method: POST
name: pushescreate
description: Azure Repos Create a push
call: azure-repo-git-pushes.pushescreate
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/git/repositories/{repositoryid}/pushes/{pushid}
name: git-repositories-repositoryid-pushes-pushid
description: REST surface for git-repositories-repositoryId-pushes-pushId.
operations:
- method: GET
name: pushesget
description: Azure Repos Get a push
call: azure-repo-git-pushes.pushesget
with:
pushId: rest.pushId
includeCommits: rest.includeCommits
includeRefUpdates: rest.includeRefUpdates
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: azure-repo-git-pushes-mcp
port: 9090
transport: http
description: MCP adapter for Azure Repos Git API — Pushes. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: azure-repos-list-pushes
description: Azure Repos List pushes
hints:
readOnly: true
destructive: false
idempotent: true
call: azure-repo-git-pushes.pusheslist
with:
$top: tools.$top
$skip: tools.$skip
searchCriteria.fromDate: tools.searchCriteria.fromDate
searchCriteria.toDate: tools.searchCriteria.toDate
searchCriteria.pusherId: tools.searchCriteria.pusherId
searchCriteria.refName: tools.searchCriteria.refName
searchCriteria.includeRefUpdates: tools.searchCriteria.includeRefUpdates
outputParameters:
- type: object
mapping: $.
- name: azure-repos-create-push
description: Azure Repos Create a push
hints:
readOnly: false
destructive: false
idempotent: false
call: azure-repo-git-pushes.pushescreate
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: azure-repos-get-push
description: Azure Repos Get a push
hints:
readOnly: true
destructive: false
idempotent: true
call: azure-repo-git-pushes.pushesget
with:
pushId: tools.pushId
includeCommits: tools.includeCommits
includeRefUpdates: tools.includeRefUpdates
outputParameters:
- type: object
mapping: $.