Argo CD · Capability

Argo CD — RepositoryService

Argo CD — RepositoryService. 17 operations. Lead operation: Argo CD ListRepositories Gets a List of All Configured Repositories. Self-contained Naftiko capability covering one Argo Cd business surface.

Run with Naftiko Argo CdRepositoryService

What You Can Do

GET
Repositoryservicelistrepositories — Argo CD ListRepositories Gets a List of All Configured Repositories
/v1/api/v1/repositories
POST
Repositoryservicecreaterepository — Argo CD CreateRepository Creates a New Repository Configuration
/v1/api/v1/repositories
PUT
Repositoryserviceupdaterepository — Argo CD UpdateRepository Updates a Repository Configuration
/v1/api/v1/repositories/{repo-repo}
GET
Repositoryserviceget — Argo CD Get Returns a Repository or its Credentials
/v1/api/v1/repositories/{repo}
DELETE
Repositoryservicedeleterepository — Argo CD DeleteRepository Deletes a Repository from the Configuration
/v1/api/v1/repositories/{repo}
GET
Repositoryservicelistapps — Argo CD ListApps Returns List of Apps in the Repo
/v1/api/v1/repositories/{repo}/apps
GET
Repositoryservicegethelmcharts — Argo CD GetHelmCharts Returns List of Helm Charts in the Specified Repository
/v1/api/v1/repositories/{repo}/helmcharts
GET
Repositoryservicelistocitags — repositoryservicelistocitags
/v1/api/v1/repositories/{repo}/oci-tags
GET
Repositoryservicelistrefs — repositoryservicelistrefs
/v1/api/v1/repositories/{repo}/refs
POST
Repositoryservicevalidateaccess — Argo CD ValidateAccess Validates Access to a Repository with Given Parameters
/v1/api/v1/repositories/{repo}/validate
POST
Repositoryservicegetappdetails — Argo CD GetAppDetails Returns Application Details by Given Path
/v1/api/v1/repositories/{source-repourl}/appdetails
GET
Repositoryservicelistwriterepositories — Argo CD ListWriteRepositories Gets a List of All Configured Write Repositories
/v1/api/v1/write-repositories
POST
Repositoryservicecreatewriterepository — Argo CD CreateWriteRepository Creates a New Write Repository Configuration
/v1/api/v1/write-repositories
PUT
Repositoryserviceupdatewriterepository — Argo CD UpdateWriteRepository Updates a Write Repository Configuration
/v1/api/v1/write-repositories/{repo-repo}
GET
Repositoryservicegetwrite — Argo CD GetWrite Returns a Repository or its Write Credentials
/v1/api/v1/write-repositories/{repo}
DELETE
Repositoryservicedeletewriterepository — Argo CD DeleteWriteRepository Deletes a Write Repository from the Configuration
/v1/api/v1/write-repositories/{repo}
POST
Repositoryservicevalidatewriteaccess — Argo CD ValidateWriteAccess Validates Write Access to a Repository with Given Parameters
/v1/api/v1/write-repositories/{repo}/validate

MCP Tools

argo-cd-listrepositories-gets-list

Argo CD ListRepositories Gets a List of All Configured Repositories

read-only idempotent
argo-cd-createrepository-creates-new

Argo CD CreateRepository Creates a New Repository Configuration

argo-cd-updaterepository-updates-repository

Argo CD UpdateRepository Updates a Repository Configuration

idempotent
argo-cd-get-returns-repository

Argo CD Get Returns a Repository or its Credentials

read-only idempotent
argo-cd-deleterepository-deletes-repository

Argo CD DeleteRepository Deletes a Repository from the Configuration

idempotent
argo-cd-listapps-returns-list

Argo CD ListApps Returns List of Apps in the Repo

read-only idempotent
argo-cd-gethelmcharts-returns-list

Argo CD GetHelmCharts Returns List of Helm Charts in the Specified Repository

read-only idempotent
repositoryservicelistocitags

repositoryservicelistocitags

read-only idempotent
repositoryservicelistrefs

repositoryservicelistrefs

read-only idempotent
argo-cd-validateaccess-validates-access

Argo CD ValidateAccess Validates Access to a Repository with Given Parameters

read-only
argo-cd-getappdetails-returns-application

Argo CD GetAppDetails Returns Application Details by Given Path

argo-cd-listwriterepositories-gets-list

Argo CD ListWriteRepositories Gets a List of All Configured Write Repositories

read-only idempotent
argo-cd-createwriterepository-creates-new

Argo CD CreateWriteRepository Creates a New Write Repository Configuration

argo-cd-updatewriterepository-updates-write

Argo CD UpdateWriteRepository Updates a Write Repository Configuration

idempotent
argo-cd-getwrite-returns-repository

Argo CD GetWrite Returns a Repository or its Write Credentials

read-only idempotent
argo-cd-deletewriterepository-deletes-write

Argo CD DeleteWriteRepository Deletes a Write Repository from the Configuration

idempotent
argo-cd-validatewriteaccess-validates-write

Argo CD ValidateWriteAccess Validates Write Access to a Repository with Given Parameters

read-only

Capability Spec

argo-cd-repositoryservice.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Argo CD — RepositoryService
  description: 'Argo CD — RepositoryService. 17 operations. Lead operation: Argo CD ListRepositories Gets a List of All Configured
    Repositories. Self-contained Naftiko capability covering one Argo Cd business surface.'
  tags:
  - Argo Cd
  - RepositoryService
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    ARGO_CD_API_KEY: ARGO_CD_API_KEY
capability:
  consumes:
  - type: http
    namespace: argo-cd-repositoryservice
    baseUri: ''
    description: Argo CD — RepositoryService business capability. Self-contained, no shared references.
    resources:
    - name: api-v1-repositories
      path: /api/v1/repositories
      operations:
      - name: repositoryservicelistrepositories
        method: GET
        description: Argo CD ListRepositories Gets a List of All Configured Repositories
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repo
          in: query
          type: string
          description: Repo URL for query.
        - name: forceRefresh
          in: query
          type: boolean
          description: Whether to force a cache refresh on repo's connection state.
        - name: appProject
          in: query
          type: string
          description: App project for query.
      - name: repositoryservicecreaterepository
        method: POST
        description: Argo CD CreateRepository Creates a New Repository Configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          description: Repository definition
          required: true
        - name: upsert
          in: query
          type: boolean
          description: Whether to create in upsert mode.
        - name: credsOnly
          in: query
          type: boolean
          description: Whether to operate on credential set instead of repository.
    - name: api-v1-repositories-repo.repo
      path: /api/v1/repositories/{repo.repo}
      operations:
      - name: repositoryserviceupdaterepository
        method: PUT
        description: Argo CD UpdateRepository Updates a Repository Configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repo.repo
          in: path
          type: string
          description: Repo contains the URL to the remote repository
          required: true
        - name: body
          in: body
          type: string
          required: true
    - name: api-v1-repositories-repo
      path: /api/v1/repositories/{repo}
      operations:
      - name: repositoryserviceget
        method: GET
        description: Argo CD Get Returns a Repository or its Credentials
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repo
          in: path
          type: string
          description: Repo URL for query
          required: true
        - name: forceRefresh
          in: query
          type: boolean
          description: Whether to force a cache refresh on repo's connection state.
        - name: appProject
          in: query
          type: string
          description: App project for query.
      - name: repositoryservicedeleterepository
        method: DELETE
        description: Argo CD DeleteRepository Deletes a Repository from the Configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repo
          in: path
          type: string
          description: Repo URL for query
          required: true
        - name: forceRefresh
          in: query
          type: boolean
          description: Whether to force a cache refresh on repo's connection state.
        - name: appProject
          in: query
          type: string
          description: App project for query.
    - name: api-v1-repositories-repo-apps
      path: /api/v1/repositories/{repo}/apps
      operations:
      - name: repositoryservicelistapps
        method: GET
        description: Argo CD ListApps Returns List of Apps in the Repo
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repo
          in: path
          type: string
          required: true
        - name: revision
          in: query
          type: string
        - name: appName
          in: query
          type: string
        - name: appProject
          in: query
          type: string
    - name: api-v1-repositories-repo-helmcharts
      path: /api/v1/repositories/{repo}/helmcharts
      operations:
      - name: repositoryservicegethelmcharts
        method: GET
        description: Argo CD GetHelmCharts Returns List of Helm Charts in the Specified Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repo
          in: path
          type: string
          description: Repo URL for query
          required: true
        - name: forceRefresh
          in: query
          type: boolean
          description: Whether to force a cache refresh on repo's connection state.
        - name: appProject
          in: query
          type: string
          description: App project for query.
    - name: api-v1-repositories-repo-oci-tags
      path: /api/v1/repositories/{repo}/oci-tags
      operations:
      - name: repositoryservicelistocitags
        method: GET
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repo
          in: path
          type: string
          description: Repo URL for query
          required: true
        - name: forceRefresh
          in: query
          type: boolean
          description: Whether to force a cache refresh on repo's connection state.
        - name: appProject
          in: query
          type: string
          description: App project for query.
    - name: api-v1-repositories-repo-refs
      path: /api/v1/repositories/{repo}/refs
      operations:
      - name: repositoryservicelistrefs
        method: GET
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repo
          in: path
          type: string
          description: Repo URL for query
          required: true
        - name: forceRefresh
          in: query
          type: boolean
          description: Whether to force a cache refresh on repo's connection state.
        - name: appProject
          in: query
          type: string
          description: App project for query.
    - name: api-v1-repositories-repo-validate
      path: /api/v1/repositories/{repo}/validate
      operations:
      - name: repositoryservicevalidateaccess
        method: POST
        description: Argo CD ValidateAccess Validates Access to a Repository with Given Parameters
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repo
          in: path
          type: string
          description: The URL to the repo
          required: true
        - name: body
          in: body
          type: string
          description: The URL to the repo
          required: true
        - name: username
          in: query
          type: string
          description: Username for accessing repo.
        - name: password
          in: query
          type: string
          description: Password for accessing repo.
        - name: sshPrivateKey
          in: query
          type: string
          description: Private key data for accessing SSH repository.
        - name: insecure
          in: query
          type: boolean
          description: Whether to skip certificate or host key validation.
        - name: tlsClientCertData
          in: query
          type: string
          description: TLS client cert data for accessing HTTPS repository.
        - name: tlsClientCertKey
          in: query
          type: string
          description: TLS client cert key for accessing HTTPS repository.
        - name: type
          in: query
          type: string
          description: The type of the repo.
        - name: name
          in: query
          type: string
          description: The name of the repo.
        - name: enableOci
          in: query
          type: boolean
          description: Whether helm-oci support should be enabled for this repo.
        - name: githubAppPrivateKey
          in: query
          type: string
          description: Github App Private Key PEM data.
        - name: githubAppID
          in: query
          type: string
          description: Github App ID of the app used to access the repo.
        - name: githubAppInstallationID
          in: query
          type: string
          description: Github App Installation ID of the installed GitHub App.
        - name: githubAppEnterpriseBaseUrl
          in: query
          type: string
          description: Github App Enterprise base url if empty will default to https://api.github.com.
        - name: proxy
          in: query
          type: string
          description: HTTP/HTTPS proxy to access the repository.
        - name: project
          in: query
          type: string
          description: Reference between project and repository that allow you automatically to be added as item inside SourceRepos
            project entity.
        - name: gcpServiceAccountKey
          in: query
          type: string
          description: Google Cloud Platform service account key.
        - name: forceHttpBasicAuth
          in: query
          type: boolean
          description: Whether to force HTTP basic auth.
        - name: useAzureWorkloadIdentity
          in: query
          type: boolean
          description: Whether to use azure workload identity for authentication.
        - name: bearerToken
          in: query
          type: string
          description: BearerToken contains the bearer token used for Git auth at the repo server.
        - name: insecureOciForceHttp
          in: query
          type: boolean
          description: Whether https should be disabled for an OCI repo.
        - name: azureServicePrincipalClientId
          in: query
          type: string
          description: Azure Service Principal Client ID.
        - name: azureServicePrincipalClientSecret
          in: query
          type: string
          description: Azure Service Principal Client Secret.
        - name: azureServicePrincipalTenantId
          in: query
          type: string
          description: Azure Service Principal Tenant ID.
        - name: azureActiveDirectoryEndpoint
          in: query
          type: string
          description: Azure Active Directory Endpoint.
    - name: api-v1-repositories-source.repoURL-appdetails
      path: /api/v1/repositories/{source.repoURL}/appdetails
      operations:
      - name: repositoryservicegetappdetails
        method: POST
        description: Argo CD GetAppDetails Returns Application Details by Given Path
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: source.repoURL
          in: path
          type: string
          description: RepoURL is the URL to the repository (Git or Helm) that contains the application manifests
          required: true
        - name: body
          in: body
          type: string
          required: true
    - name: api-v1-write-repositories
      path: /api/v1/write-repositories
      operations:
      - name: repositoryservicelistwriterepositories
        method: GET
        description: Argo CD ListWriteRepositories Gets a List of All Configured Write Repositories
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repo
          in: query
          type: string
          description: Repo URL for query.
        - name: forceRefresh
          in: query
          type: boolean
          description: Whether to force a cache refresh on repo's connection state.
        - name: appProject
          in: query
          type: string
          description: App project for query.
      - name: repositoryservicecreatewriterepository
        method: POST
        description: Argo CD CreateWriteRepository Creates a New Write Repository Configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: string
          description: Repository definition
          required: true
        - name: upsert
          in: query
          type: boolean
          description: Whether to create in upsert mode.
        - name: credsOnly
          in: query
          type: boolean
          description: Whether to operate on credential set instead of repository.
    - name: api-v1-write-repositories-repo.repo
      path: /api/v1/write-repositories/{repo.repo}
      operations:
      - name: repositoryserviceupdatewriterepository
        method: PUT
        description: Argo CD UpdateWriteRepository Updates a Write Repository Configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repo.repo
          in: path
          type: string
          description: Repo contains the URL to the remote repository
          required: true
        - name: body
          in: body
          type: string
          required: true
    - name: api-v1-write-repositories-repo
      path: /api/v1/write-repositories/{repo}
      operations:
      - name: repositoryservicegetwrite
        method: GET
        description: Argo CD GetWrite Returns a Repository or its Write Credentials
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repo
          in: path
          type: string
          description: Repo URL for query
          required: true
        - name: forceRefresh
          in: query
          type: boolean
          description: Whether to force a cache refresh on repo's connection state.
        - name: appProject
          in: query
          type: string
          description: App project for query.
      - name: repositoryservicedeletewriterepository
        method: DELETE
        description: Argo CD DeleteWriteRepository Deletes a Write Repository from the Configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repo
          in: path
          type: string
          description: Repo URL for query
          required: true
        - name: forceRefresh
          in: query
          type: boolean
          description: Whether to force a cache refresh on repo's connection state.
        - name: appProject
          in: query
          type: string
          description: App project for query.
    - name: api-v1-write-repositories-repo-validate
      path: /api/v1/write-repositories/{repo}/validate
      operations:
      - name: repositoryservicevalidatewriteaccess
        method: POST
        description: Argo CD ValidateWriteAccess Validates Write Access to a Repository with Given Parameters
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: repo
          in: path
          type: string
          description: The URL to the repo
          required: true
        - name: body
          in: body
          type: string
          description: The URL to the repo
          required: true
        - name: username
          in: query
          type: string
          description: Username for accessing repo.
        - name: password
          in: query
          type: string
          description: Password for accessing repo.
        - name: sshPrivateKey
          in: query
          type: string
          description: Private key data for accessing SSH repository.
        - name: insecure
          in: query
          type: boolean
          description: Whether to skip certificate or host key validation.
        - name: tlsClientCertData
          in: query
          type: string
          description: TLS client cert data for accessing HTTPS repository.
        - name: tlsClientCertKey
          in: query
          type: string
          description: TLS client cert key for accessing HTTPS repository.
        - name: type
          in: query
          type: string
          description: The type of the repo.
        - name: name
          in: query
          type: string
          description: The name of the repo.
        - name: enableOci
          in: query
          type: boolean
          description: Whether helm-oci support should be enabled for this repo.
        - name: githubAppPrivateKey
          in: query
          type: string
          description: Github App Private Key PEM data.
        - name: githubAppID
          in: query
          type: string
          description: Github App ID of the app used to access the repo.
        - name: githubAppInstallationID
          in: query
          type: string
          description: Github App Installation ID of the installed GitHub App.
        - name: githubAppEnterpriseBaseUrl
          in: query
          type: string
          description: Github App Enterprise base url if empty will default to https://api.github.com.
        - name: proxy
          in: query
          type: string
          description: HTTP/HTTPS proxy to access the repository.
        - name: project
          in: query
          type: string
          description: Reference between project and repository that allow you automatically to be added as item inside SourceRepos
            project entity.
        - name: gcpServiceAccountKey
          in: query
          type: string
          description: Google Cloud Platform service account key.
        - name: forceHttpBasicAuth
          in: query
          type: boolean
          description: Whether to force HTTP basic auth.
        - name: useAzureWorkloadIdentity
          in: query
          type: boolean
          description: Whether to use azure workload identity for authentication.
        - name: bearerToken
          in: query
          type: string
          description: BearerToken contains the bearer token used for Git auth at the repo server.
        - name: insecureOciForceHttp
          in: query
          type: boolean
          description: Whether https should be disabled for an OCI repo.
        - name: azureServicePrincipalClientId
          in: query
          type: string
          description: Azure Service Principal Client ID.
        - name: azureServicePrincipalClientSecret
          in: query
          type: string
          description: Azure Service Principal Client Secret.
        - name: azureServicePrincipalTenantId
          in: query
          type: string
          description: Azure Service Principal Tenant ID.
        - name: azureActiveDirectoryEndpoint
          in: query
          type: string
          description: Azure Active Directory Endpoint.
  exposes:
  - type: rest
    namespace: argo-cd-repositoryservice-rest
    port: 8080
    description: REST adapter for Argo CD — RepositoryService. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/api/v1/repositories
      name: api-v1-repositories
      description: REST surface for api-v1-repositories.
      operations:
      - method: GET
        name: repositoryservicelistrepositories
        description: Argo CD ListRepositories Gets a List of All Configured Repositories
        call: argo-cd-repositoryservice.repositoryservicelistrepositories
        with:
          repo: rest.repo
          forceRefresh: rest.forceRefresh
          appProject: rest.appProject
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: repositoryservicecreaterepository
        description: Argo CD CreateRepository Creates a New Repository Configuration
        call: argo-cd-repositoryservice.repositoryservicecreaterepository
        with:
          body: rest.body
          upsert: rest.upsert
          credsOnly: rest.credsOnly
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/repositories/{repo-repo}
      name: api-v1-repositories-repo-repo
      description: REST surface for api-v1-repositories-repo.repo.
      operations:
      - method: PUT
        name: repositoryserviceupdaterepository
        description: Argo CD UpdateRepository Updates a Repository Configuration
        call: argo-cd-repositoryservice.repositoryserviceupdaterepository
        with:
          repo.repo: rest.repo.repo
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/repositories/{repo}
      name: api-v1-repositories-repo
      description: REST surface for api-v1-repositories-repo.
      operations:
      - method: GET
        name: repositoryserviceget
        description: Argo CD Get Returns a Repository or its Credentials
        call: argo-cd-repositoryservice.repositoryserviceget
        with:
          repo: rest.repo
          forceRefresh: rest.forceRefresh
          appProject: rest.appProject
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: repositoryservicedeleterepository
        description: Argo CD DeleteRepository Deletes a Repository from the Configuration
        call: argo-cd-repositoryservice.repositoryservicedeleterepository
        with:
          repo: rest.repo
          forceRefresh: rest.forceRefresh
          appProject: rest.appProject
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/repositories/{repo}/apps
      name: api-v1-repositories-repo-apps
      description: REST surface for api-v1-repositories-repo-apps.
      operations:
      - method: GET
        name: repositoryservicelistapps
        description: Argo CD ListApps Returns List of Apps in the Repo
        call: argo-cd-repositoryservice.repositoryservicelistapps
        with:
          repo: rest.repo
          revision: rest.revision
          appName: rest.appName
          appProject: rest.appProject
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/repositories/{repo}/helmcharts
      name: api-v1-repositories-repo-helmcharts
      description: REST surface for api-v1-repositories-repo-helmcharts.
      operations:
      - method: GET
        name: repositoryservicegethelmcharts
        description: Argo CD GetHelmCharts Returns List of Helm Charts in the Specified Repository
        call: argo-cd-repositoryservice.repositoryservicegethelmcharts
        with:
          repo: rest.repo
          forceRefresh: rest.forceRefresh
          appProject: rest.appProject
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/repositories/{repo}/oci-tags
      name: api-v1-repositories-repo-oci-tags
      description: REST surface for api-v1-repositories-repo-oci-tags.
      operations:
      - method: GET
        name: repositoryservicelistocitags
        description: repositoryservicelistocitags
        call: argo-cd-repositoryservice.repositoryservicelistocitags
        with:
          repo: rest.repo
          forceRefresh: rest.forceRefresh
          appProject: rest.appProject
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/repositories/{repo}/refs
      name: api-v1-repositories-repo-refs
      description: REST surface for api-v1-repositories-repo-refs.
      operations:
      - method: GET
        name: repositoryservicelistrefs
        description: repositoryservicelistrefs
        call: argo-cd-repositoryservice.repositoryservicelistrefs
        with:
          repo: rest.repo
          forceRefresh: rest.forceRefresh
          appProject: rest.appProject
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/repositories/{repo}/validate
      name: api-v1-repositories-repo-validate
      description: REST surface for api-v1-repositories-repo-validate.
      operations:
      - method: POST
        name: repositoryservicevalidateaccess
        description: Argo CD ValidateAccess Validates Access to a Repository with Given Parameters
        call: argo-cd-repositoryservice.repositoryservicevalidateaccess
        with:
          repo: rest.repo
          body: rest.body
          username: rest.username
          password: rest.password
          sshPrivateKey: rest.sshPrivateKey
          insecure: rest.insecure
          tlsClientCertData: rest.tlsClientCertData
          tlsClientCertKey: rest.tlsClientCertKey
          type: rest.type
          name: rest.name
          enableOci: rest.enableOci
          githubAppPrivateKey: rest.githubAppPrivateKey
          githubAppID: rest.githubAppID
          githubAppInstallationID: rest.githubAppInstallationID
          githubAppEnterpriseBaseUrl: rest.githubAppEnterpriseBaseUrl
          proxy: rest.proxy
          project: rest.project
          gcpServiceAccountKey: rest.gcpServiceAccountKey
          forceHttpBasicAuth: rest.forceHttpBasicAuth
          useAzureWorkloadIdentity: rest.useAzureWorkloadIdentity
          bearerToken: rest.bearerToken
          insecureOciForceHttp: rest.insecureOciForceHttp
          azureServicePrincipalClientId: rest.azureServicePrincipalClientId
          azureServicePrincipalClientSecret: rest.azureServicePrincipalClientSecret
          azureServicePrincipalTenantId: rest.azureServicePrincipalTenantId
          azureActiveDirectoryEndpoint: rest.azureActiveDirectoryEndpoint
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/repositories/{source-repourl}/appdetails
      name: api-v1-repositories-source-repourl-appdetails
      description: REST surface for api-v1-repositories-source.repoURL-appdetails.
      operations:
      - method: POST
        name: repositoryservicegetappdetails
        description: Argo CD GetAppDetails Returns Application Details by Given Path
        call: argo-cd-repositoryservice.repositoryservicegetappdetails
        with:
          source.repoURL: rest.source.repoURL
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/write-repositories
      name: api-v1-write-repositories
      description: REST surface for api-v1-write-repositories.
      operations:
      - method: GET
        name: repositoryservicelistwriterepositories
        description: Argo CD ListWriteRepositories Gets a List of All Configured Write Repositories
        call: argo-cd-repositoryservice.repositoryservicelistwriterepositories
        with:
          repo: rest.repo
          forceRefresh: rest.forceRefresh
          appProject: rest.appProject
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: repositoryservicecreatewriterepository
        description: Argo CD CreateWriteRepository Creates a New Write Repository Configuration
        call: argo-cd-repositoryservice.repositoryservicecreatewriterepository
        with:
          body: rest.body
          upsert: rest.upsert
          credsOnly: rest.credsOnly
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/write-repositories/{repo-repo}
      name: api-v1-write-repositories-repo-repo
      description: REST surface for api-v1-write-repositories-repo.repo.
      operations:
      - method: PUT
        name: repositoryserviceupdatewriterepository
        description: Argo CD UpdateWriteRepository Updates a Write Repository Configuration
        call: argo-cd-repositoryservice.repositoryserviceupdatewriterepository
        with:
          repo.repo: rest.repo.repo
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/write-repositories/{repo}
      name: api-v1-write-repositories-repo
      description: REST surface for api-v1-write-repositories-repo.
      operations:
      - method: GET
        name: repositoryservicegetwrite
        description: Argo CD GetWrite Returns a Repository or its Write Credentials
        call: argo-cd-repositoryservice.repositoryservicegetwrite
        with:
          repo: rest.repo
          forceRefresh: rest.forceRefresh
          appProject: rest.appProject
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: repositoryservicedeletewriterepository
        description: Argo CD DeleteWriteRepository Deletes a Write Repository from the Configuration
        call: argo-cd-repositoryservice.repositoryservicedeletewriterepository
        with:
          repo: rest.repo
          forceRefresh: rest.forceRefresh
          appProject: rest.appProject
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/write-repositories/{repo}/validate
      name: api-v1-write-repositories-repo-validate
      description: REST surface for api-v1-write-repositories-repo-validate.
      operations:
      - method: POST
        name: repositoryservicevalidatewriteaccess
        description: Argo CD ValidateWriteAccess Validates Write Access to a Repository with Given Parameters
        call: argo-cd-repositoryservice.repositoryservicevalidatewriteaccess
        with:
          repo: rest.repo
          body: rest.body
          username: rest.username
          password: rest.password
          sshPrivateKey: rest.sshPrivateKey
          insecure: rest.insecure
          tlsClientCertData: rest.tlsClientCertData
          tlsClientCertKey: rest.tlsClientCertKey
          type: rest.type
          name: rest.name
          enableOci: rest.enableOci
          githubAppPrivateKey: rest.githubAppPrivateKey
          githubAppID: rest.githubAppID
          githubAppInstallationID: rest.githubAppInstallationID
          githubAppEnterpriseBaseUrl: rest.githubAppEnterpriseBaseUrl
          proxy: rest.proxy
          project: rest.project
          gcpServiceAccountKey: rest.gcpServiceAccountKey
          forceHttpBasicAuth: rest.forceHttpBasicAuth
          useAzureWorkloadIdentity: rest.useAzureWorkloadIdentity
          bearerToken: rest.bearerToken
          insecureOciForceHttp: rest.insecureOciForceHttp
          azureServicePrincipalClientId: rest.azureServicePrincipalClientId
          azureServicePrincipalClientSecret: rest.azureServicePrincipalClientSecret
          azureServicePrincipalTenantId: rest.azureServicePrincipalTenantId
          azureActiveDirectoryEndpoint: rest.azureActiveDirectoryEndpoint
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: argo-cd-repositoryservice-mcp
    port: 9090
    transport: http
    description: MCP adapter for Argo CD — RepositoryService. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: argo-cd-listrepositories-gets-list
      description: Argo CD ListRepositories Gets a List of All Configured Repositories
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: argo-cd-repositoryservice.repositoryservicelistrepositories
      with:
        repo: tools.repo
        forceRefresh: tools.forceRefresh
        appPr

# --- truncated at 32 KB (41 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/argo-cd/refs/heads/main/capabilities/argo-cd-repositoryservice.yaml