JFrog · Capability

JFrog Platform REST API — Projects

JFrog Platform REST API — Projects. 7 operations. Lead operation: JFrog List Projects. Self-contained Naftiko capability covering one Jfrog business surface.

Run with Naftiko JfrogProjects

What You Can Do

GET
Listprojects — JFrog List Projects
/v1/access/api/v1/projects
POST
Createproject — JFrog Create Project
/v1/access/api/v1/projects
GET
Getproject — JFrog Get Project
/v1/access/api/v1/projects/{projectkey}
PUT
Updateproject — JFrog Update Project
/v1/access/api/v1/projects/{projectkey}
DELETE
Deleteproject — JFrog Delete Project
/v1/access/api/v1/projects/{projectkey}
PUT
Addusertoproject — JFrog Add User to Project
/v1/access/api/v1/projects/{projectkey}/users/{username}
DELETE
Removeuserfromproject — JFrog Remove User from Project
/v1/access/api/v1/projects/{projectkey}/users/{username}

MCP Tools

jfrog-list-projects

JFrog List Projects

read-only idempotent
jfrog-create-project

JFrog Create Project

jfrog-get-project

JFrog Get Project

read-only idempotent
jfrog-update-project

JFrog Update Project

idempotent
jfrog-delete-project

JFrog Delete Project

idempotent
jfrog-add-user-project

JFrog Add User to Project

idempotent
jfrog-remove-user-project

JFrog Remove User from Project

idempotent

Capability Spec

platform-projects.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: JFrog Platform REST API — Projects
  description: 'JFrog Platform REST API — Projects. 7 operations. Lead operation: JFrog List Projects. Self-contained Naftiko
    capability covering one Jfrog business surface.'
  tags:
  - Jfrog
  - Projects
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    JFROG_API_KEY: JFROG_API_KEY
capability:
  consumes:
  - type: http
    namespace: platform-projects
    baseUri: https://{server}.jfrog.io
    description: JFrog Platform REST API — Projects business capability. Self-contained, no shared references.
    resources:
    - name: access-api-v1-projects
      path: /access/api/v1/projects
      operations:
      - name: listprojects
        method: GET
        description: JFrog List Projects
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createproject
        method: POST
        description: JFrog Create Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: access-api-v1-projects-projectKey
      path: /access/api/v1/projects/{projectKey}
      operations:
      - name: getproject
        method: GET
        description: JFrog Get Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectKey
          in: path
          type: string
          description: Project key
          required: true
      - name: updateproject
        method: PUT
        description: JFrog Update Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectKey
          in: path
          type: string
          description: Project key
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deleteproject
        method: DELETE
        description: JFrog Delete Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectKey
          in: path
          type: string
          description: Project key
          required: true
    - name: access-api-v1-projects-projectKey-users-username
      path: /access/api/v1/projects/{projectKey}/users/{username}
      operations:
      - name: addusertoproject
        method: PUT
        description: JFrog Add User to Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectKey
          in: path
          type: string
          description: Project key
          required: true
        - name: username
          in: path
          type: string
          description: Username
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: removeuserfromproject
        method: DELETE
        description: JFrog Remove User from Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectKey
          in: path
          type: string
          description: Project key
          required: true
        - name: username
          in: path
          type: string
          description: Username
          required: true
    authentication:
      type: bearer
      token: '{{env.JFROG_API_KEY}}'
  exposes:
  - type: rest
    namespace: platform-projects-rest
    port: 8080
    description: REST adapter for JFrog Platform REST API — Projects. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/access/api/v1/projects
      name: access-api-v1-projects
      description: REST surface for access-api-v1-projects.
      operations:
      - method: GET
        name: listprojects
        description: JFrog List Projects
        call: platform-projects.listprojects
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createproject
        description: JFrog Create Project
        call: platform-projects.createproject
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/access/api/v1/projects/{projectkey}
      name: access-api-v1-projects-projectkey
      description: REST surface for access-api-v1-projects-projectKey.
      operations:
      - method: GET
        name: getproject
        description: JFrog Get Project
        call: platform-projects.getproject
        with:
          projectKey: rest.projectKey
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updateproject
        description: JFrog Update Project
        call: platform-projects.updateproject
        with:
          projectKey: rest.projectKey
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteproject
        description: JFrog Delete Project
        call: platform-projects.deleteproject
        with:
          projectKey: rest.projectKey
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/access/api/v1/projects/{projectkey}/users/{username}
      name: access-api-v1-projects-projectkey-users-username
      description: REST surface for access-api-v1-projects-projectKey-users-username.
      operations:
      - method: PUT
        name: addusertoproject
        description: JFrog Add User to Project
        call: platform-projects.addusertoproject
        with:
          projectKey: rest.projectKey
          username: rest.username
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: removeuserfromproject
        description: JFrog Remove User from Project
        call: platform-projects.removeuserfromproject
        with:
          projectKey: rest.projectKey
          username: rest.username
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: platform-projects-mcp
    port: 9090
    transport: http
    description: MCP adapter for JFrog Platform REST API — Projects. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: jfrog-list-projects
      description: JFrog List Projects
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-projects.listprojects
      outputParameters:
      - type: object
        mapping: $.
    - name: jfrog-create-project
      description: JFrog Create Project
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: platform-projects.createproject
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: jfrog-get-project
      description: JFrog Get Project
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-projects.getproject
      with:
        projectKey: tools.projectKey
      outputParameters:
      - type: object
        mapping: $.
    - name: jfrog-update-project
      description: JFrog Update Project
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: platform-projects.updateproject
      with:
        projectKey: tools.projectKey
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: jfrog-delete-project
      description: JFrog Delete Project
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: platform-projects.deleteproject
      with:
        projectKey: tools.projectKey
      outputParameters:
      - type: object
        mapping: $.
    - name: jfrog-add-user-project
      description: JFrog Add User to Project
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: platform-projects.addusertoproject
      with:
        projectKey: tools.projectKey
        username: tools.username
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: jfrog-remove-user-project
      description: JFrog Remove User from Project
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: platform-projects.removeuserfromproject
      with:
        projectKey: tools.projectKey
        username: tools.username
      outputParameters:
      - type: object
        mapping: $.