Unleash · Capability

Unleash Admin API — Projects

Unleash Admin API — Projects. 27 operations. Lead operation: Get a List of All Projects.. Self-contained Naftiko capability covering one Unleash business surface.

Run with Naftiko UnleashProjects

What You Can Do

GET
Getprojects — Get a List of All Projects.
/v1/api/admin/projects
POST
Createproject — Create Project
/v1/api/admin/projects
GET
Getroleprojectaccess — Get Project-role Mappings
/v1/api/admin/projects/roles/{roleid}/access
POST
Validateproject — Validate Project ID
/v1/api/admin/projects/validate
PUT
Updateproject — Update Project
/v1/api/admin/projects/{projectid}
DELETE
Deleteproject — Delete Project
/v1/api/admin/projects/{projectid}
GET
Getprojectaccess — Get Users and Groups in Project
/v1/api/admin/projects/{projectid}/access
PUT
Setprojectaccess — Set Users and Groups to Roles in the Current Project
/v1/api/admin/projects/{projectid}/access
POST
Addaccesstoproject — Configure Project Access
/v1/api/admin/projects/{projectid}/access
GET
Getprojectapitokens — Get API Tokens for Project.
/v1/api/admin/projects/{projectid}/api-tokens
POST
Createprojectapitoken — Create a Project API Token.
/v1/api/admin/projects/{projectid}/api-tokens
DELETE
Deleteprojectapitoken — Delete a Project API Token.
/v1/api/admin/projects/{projectid}/api-tokens/{token}
GET
Getprojectapplications — Get a List of All Applications for a Project.
/v1/api/admin/projects/{projectid}/applications
GET
Getprojectdora — Get an Overview Project Dora Metrics.
/v1/api/admin/projects/{projectid}/dora
POST
Addenvironmenttoproject — Add an Environment to a Project.
/v1/api/admin/projects/{projectid}/environments
DELETE
Removeenvironmentfromproject — Remove an Environment From a Project.
/v1/api/admin/projects/{projectid}/environments/{environment}
POST
Adddefaultstrategytoprojectenvironment — Set Environment-default Strategy
/v1/api/admin/projects/{projectid}/environments/{environment}/default-strategy
GET
Getprojectflagcreators — Get a List of All Flag Creators for a Project.
/v1/api/admin/projects/{projectid}/flag-creators
PUT
Setrolesforgroup — Sets Roles for Group
/v1/api/admin/projects/{projectid}/groups/{groupid}/roles
DELETE
Removegroupaccess — Remove Project Access for a Group
/v1/api/admin/projects/{projectid}/groups/{groupid}/roles
GET
Getprojecthealthreport — Get a Health Report for a Project.
/v1/api/admin/projects/{projectid}/health-report
GET
Getprojectinsights — Get an Overview of a Project Insights.
/v1/api/admin/projects/{projectid}/insights
GET
Getprojectoverview — Get an Overview of a Project.
/v1/api/admin/projects/{projectid}/overview
GET
Getoutdatedprojectsdks — Get Outdated Project Sdks
/v1/api/admin/projects/{projectid}/sdks/outdated
PUT
Updateprojectenterprisesettings — Update Project Enterprise Settings
/v1/api/admin/projects/{projectid}/settings
PUT
Setrolesforuser — Sets Roles for User
/v1/api/admin/projects/{projectid}/users/{userid}/roles
DELETE
Removeuseraccess — Remove Project Access for a User
/v1/api/admin/projects/{projectid}/users/{userid}/roles

MCP Tools

get-list-all-projects

Get a List of All Projects.

read-only idempotent
create-project

Create Project

get-project-role-mappings

Get Project-role Mappings

read-only idempotent
validate-project-id

Validate Project ID

read-only
update-project

Update Project

idempotent
delete-project

Delete Project

idempotent
get-users-and-groups-project

Get Users and Groups in Project

read-only idempotent
set-users-and-groups-roles

Set Users and Groups to Roles in the Current Project

idempotent
configure-project-access

Configure Project Access

get-api-tokens-project

Get API Tokens for Project.

read-only idempotent
create-project-api-token

Create a Project API Token.

delete-project-api-token

Delete a Project API Token.

idempotent
get-list-all-applications-project

Get a List of All Applications for a Project.

read-only idempotent
get-overview-project-dora-metrics

Get an Overview Project Dora Metrics.

read-only idempotent
add-environment-project

Add an Environment to a Project.

remove-environment-project

Remove an Environment From a Project.

idempotent
set-environment-default-strategy

Set Environment-default Strategy

get-list-all-flag-creators

Get a List of All Flag Creators for a Project.

read-only idempotent
sets-roles-group

Sets Roles for Group

idempotent
remove-project-access-group

Remove Project Access for a Group

idempotent
get-health-report-project

Get a Health Report for a Project.

read-only idempotent
get-overview-project-insights

Get an Overview of a Project Insights.

read-only idempotent
get-overview-project

Get an Overview of a Project.

read-only idempotent
get-outdated-project-sdks

Get Outdated Project Sdks

read-only idempotent
update-project-enterprise-settings

Update Project Enterprise Settings

idempotent
sets-roles-user

Sets Roles for User

idempotent
remove-project-access-user

Remove Project Access for a User

idempotent

Capability Spec

admin-projects.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Unleash Admin API — Projects
  description: 'Unleash Admin API — Projects. 27 operations. Lead operation: Get a List of All Projects.. Self-contained Naftiko
    capability covering one Unleash business surface.'
  tags:
  - Unleash
  - Projects
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    UNLEASH_API_KEY: UNLEASH_API_KEY
capability:
  consumes:
  - type: http
    namespace: admin-projects
    baseUri: https://app.unleash-instance.example.com
    description: Unleash Admin API — Projects business capability. Self-contained, no shared references.
    resources:
    - name: api-admin-projects
      path: /api/admin/projects
      operations:
      - name: getprojects
        method: GET
        description: Get a List of All Projects.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: archived
          in: query
          type: boolean
      - name: createproject
        method: POST
        description: Create Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-admin-projects-roles-roleId-access
      path: /api/admin/projects/roles/{roleId}/access
      operations:
      - name: getroleprojectaccess
        method: GET
        description: Get Project-role Mappings
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: roleId
          in: path
          type: string
          required: true
    - name: api-admin-projects-validate
      path: /api/admin/projects/validate
      operations:
      - name: validateproject
        method: POST
        description: Validate Project ID
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-admin-projects-projectId
      path: /api/admin/projects/{projectId}
      operations:
      - name: updateproject
        method: PUT
        description: Update Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deleteproject
        method: DELETE
        description: Delete Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
    - name: api-admin-projects-projectId-access
      path: /api/admin/projects/{projectId}/access
      operations:
      - name: getprojectaccess
        method: GET
        description: Get Users and Groups in Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
      - name: setprojectaccess
        method: PUT
        description: Set Users and Groups to Roles in the Current Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: addaccesstoproject
        method: POST
        description: Configure Project Access
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-admin-projects-projectId-api-tokens
      path: /api/admin/projects/{projectId}/api-tokens
      operations:
      - name: getprojectapitokens
        method: GET
        description: Get API Tokens for Project.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
      - name: createprojectapitoken
        method: POST
        description: Create a Project API Token.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-admin-projects-projectId-api-tokens-token
      path: /api/admin/projects/{projectId}/api-tokens/{token}
      operations:
      - name: deleteprojectapitoken
        method: DELETE
        description: Delete a Project API Token.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
        - name: token
          in: path
          type: string
          required: true
    - name: api-admin-projects-projectId-applications
      path: /api/admin/projects/{projectId}/applications
      operations:
      - name: getprojectapplications
        method: GET
        description: Get a List of All Applications for a Project.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
        - name: query
          in: query
          type: string
          description: The search query for the application name, sdk, environment
        - name: offset
          in: query
          type: string
          description: The number of applications to skip when returning a page. By default it is set to 0.
        - name: limit
          in: query
          type: string
          description: The number of applications to return in a page. By default it is set to 50.
        - name: sortBy
          in: query
          type: string
          description: The field to sort the results by. By default it is set to "appName".
        - name: sortOrder
          in: query
          type: string
          description: The sort order for the sortBy. By default it is det to "asc".
    - name: api-admin-projects-projectId-dora
      path: /api/admin/projects/{projectId}/dora
      operations:
      - name: getprojectdora
        method: GET
        description: Get an Overview Project Dora Metrics.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
    - name: api-admin-projects-projectId-environments
      path: /api/admin/projects/{projectId}/environments
      operations:
      - name: addenvironmenttoproject
        method: POST
        description: Add an Environment to a Project.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-admin-projects-projectId-environments-environment
      path: /api/admin/projects/{projectId}/environments/{environment}
      operations:
      - name: removeenvironmentfromproject
        method: DELETE
        description: Remove an Environment From a Project.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
        - name: environment
          in: path
          type: string
          required: true
    - name: api-admin-projects-projectId-environments-environment-default-strategy
      path: /api/admin/projects/{projectId}/environments/{environment}/default-strategy
      operations:
      - name: adddefaultstrategytoprojectenvironment
        method: POST
        description: Set Environment-default Strategy
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
        - name: environment
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-admin-projects-projectId-flag-creators
      path: /api/admin/projects/{projectId}/flag-creators
      operations:
      - name: getprojectflagcreators
        method: GET
        description: Get a List of All Flag Creators for a Project.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
    - name: api-admin-projects-projectId-groups-groupId-roles
      path: /api/admin/projects/{projectId}/groups/{groupId}/roles
      operations:
      - name: setrolesforgroup
        method: PUT
        description: Sets Roles for Group
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
        - name: groupId
          in: path
          type: string
          required: true
      - name: removegroupaccess
        method: DELETE
        description: Remove Project Access for a Group
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
        - name: groupId
          in: path
          type: string
          required: true
    - name: api-admin-projects-projectId-health-report
      path: /api/admin/projects/{projectId}/health-report
      operations:
      - name: getprojecthealthreport
        method: GET
        description: Get a Health Report for a Project.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
    - name: api-admin-projects-projectId-insights
      path: /api/admin/projects/{projectId}/insights
      operations:
      - name: getprojectinsights
        method: GET
        description: Get an Overview of a Project Insights.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
    - name: api-admin-projects-projectId-overview
      path: /api/admin/projects/{projectId}/overview
      operations:
      - name: getprojectoverview
        method: GET
        description: Get an Overview of a Project.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
    - name: api-admin-projects-projectId-sdks-outdated
      path: /api/admin/projects/{projectId}/sdks/outdated
      operations:
      - name: getoutdatedprojectsdks
        method: GET
        description: Get Outdated Project Sdks
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
    - name: api-admin-projects-projectId-settings
      path: /api/admin/projects/{projectId}/settings
      operations:
      - name: updateprojectenterprisesettings
        method: PUT
        description: Update Project Enterprise Settings
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-admin-projects-projectId-users-userId-roles
      path: /api/admin/projects/{projectId}/users/{userId}/roles
      operations:
      - name: setrolesforuser
        method: PUT
        description: Sets Roles for User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
        - name: userId
          in: path
          type: string
          required: true
      - name: removeuseraccess
        method: DELETE
        description: Remove Project Access for a User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          required: true
        - name: userId
          in: path
          type: string
          required: true
    authentication:
      type: bearer
      token: '{{env.UNLEASH_API_KEY}}'
  exposes:
  - type: rest
    namespace: admin-projects-rest
    port: 8080
    description: REST adapter for Unleash Admin API — Projects. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/api/admin/projects
      name: api-admin-projects
      description: REST surface for api-admin-projects.
      operations:
      - method: GET
        name: getprojects
        description: Get a List of All Projects.
        call: admin-projects.getprojects
        with:
          archived: rest.archived
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createproject
        description: Create Project
        call: admin-projects.createproject
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/roles/{roleid}/access
      name: api-admin-projects-roles-roleid-access
      description: REST surface for api-admin-projects-roles-roleId-access.
      operations:
      - method: GET
        name: getroleprojectaccess
        description: Get Project-role Mappings
        call: admin-projects.getroleprojectaccess
        with:
          roleId: rest.roleId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/validate
      name: api-admin-projects-validate
      description: REST surface for api-admin-projects-validate.
      operations:
      - method: POST
        name: validateproject
        description: Validate Project ID
        call: admin-projects.validateproject
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}
      name: api-admin-projects-projectid
      description: REST surface for api-admin-projects-projectId.
      operations:
      - method: PUT
        name: updateproject
        description: Update Project
        call: admin-projects.updateproject
        with:
          projectId: rest.projectId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteproject
        description: Delete Project
        call: admin-projects.deleteproject
        with:
          projectId: rest.projectId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}/access
      name: api-admin-projects-projectid-access
      description: REST surface for api-admin-projects-projectId-access.
      operations:
      - method: GET
        name: getprojectaccess
        description: Get Users and Groups in Project
        call: admin-projects.getprojectaccess
        with:
          projectId: rest.projectId
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: setprojectaccess
        description: Set Users and Groups to Roles in the Current Project
        call: admin-projects.setprojectaccess
        with:
          projectId: rest.projectId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: addaccesstoproject
        description: Configure Project Access
        call: admin-projects.addaccesstoproject
        with:
          projectId: rest.projectId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}/api-tokens
      name: api-admin-projects-projectid-api-tokens
      description: REST surface for api-admin-projects-projectId-api-tokens.
      operations:
      - method: GET
        name: getprojectapitokens
        description: Get API Tokens for Project.
        call: admin-projects.getprojectapitokens
        with:
          projectId: rest.projectId
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createprojectapitoken
        description: Create a Project API Token.
        call: admin-projects.createprojectapitoken
        with:
          projectId: rest.projectId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}/api-tokens/{token}
      name: api-admin-projects-projectid-api-tokens-token
      description: REST surface for api-admin-projects-projectId-api-tokens-token.
      operations:
      - method: DELETE
        name: deleteprojectapitoken
        description: Delete a Project API Token.
        call: admin-projects.deleteprojectapitoken
        with:
          projectId: rest.projectId
          token: rest.token
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}/applications
      name: api-admin-projects-projectid-applications
      description: REST surface for api-admin-projects-projectId-applications.
      operations:
      - method: GET
        name: getprojectapplications
        description: Get a List of All Applications for a Project.
        call: admin-projects.getprojectapplications
        with:
          projectId: rest.projectId
          query: rest.query
          offset: rest.offset
          limit: rest.limit
          sortBy: rest.sortBy
          sortOrder: rest.sortOrder
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}/dora
      name: api-admin-projects-projectid-dora
      description: REST surface for api-admin-projects-projectId-dora.
      operations:
      - method: GET
        name: getprojectdora
        description: Get an Overview Project Dora Metrics.
        call: admin-projects.getprojectdora
        with:
          projectId: rest.projectId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}/environments
      name: api-admin-projects-projectid-environments
      description: REST surface for api-admin-projects-projectId-environments.
      operations:
      - method: POST
        name: addenvironmenttoproject
        description: Add an Environment to a Project.
        call: admin-projects.addenvironmenttoproject
        with:
          projectId: rest.projectId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}/environments/{environment}
      name: api-admin-projects-projectid-environments-environment
      description: REST surface for api-admin-projects-projectId-environments-environment.
      operations:
      - method: DELETE
        name: removeenvironmentfromproject
        description: Remove an Environment From a Project.
        call: admin-projects.removeenvironmentfromproject
        with:
          projectId: rest.projectId
          environment: rest.environment
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}/environments/{environment}/default-strategy
      name: api-admin-projects-projectid-environments-environment-default-strategy
      description: REST surface for api-admin-projects-projectId-environments-environment-default-strategy.
      operations:
      - method: POST
        name: adddefaultstrategytoprojectenvironment
        description: Set Environment-default Strategy
        call: admin-projects.adddefaultstrategytoprojectenvironment
        with:
          projectId: rest.projectId
          environment: rest.environment
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}/flag-creators
      name: api-admin-projects-projectid-flag-creators
      description: REST surface for api-admin-projects-projectId-flag-creators.
      operations:
      - method: GET
        name: getprojectflagcreators
        description: Get a List of All Flag Creators for a Project.
        call: admin-projects.getprojectflagcreators
        with:
          projectId: rest.projectId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}/groups/{groupid}/roles
      name: api-admin-projects-projectid-groups-groupid-roles
      description: REST surface for api-admin-projects-projectId-groups-groupId-roles.
      operations:
      - method: PUT
        name: setrolesforgroup
        description: Sets Roles for Group
        call: admin-projects.setrolesforgroup
        with:
          projectId: rest.projectId
          groupId: rest.groupId
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: removegroupaccess
        description: Remove Project Access for a Group
        call: admin-projects.removegroupaccess
        with:
          projectId: rest.projectId
          groupId: rest.groupId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}/health-report
      name: api-admin-projects-projectid-health-report
      description: REST surface for api-admin-projects-projectId-health-report.
      operations:
      - method: GET
        name: getprojecthealthreport
        description: Get a Health Report for a Project.
        call: admin-projects.getprojecthealthreport
        with:
          projectId: rest.projectId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}/insights
      name: api-admin-projects-projectid-insights
      description: REST surface for api-admin-projects-projectId-insights.
      operations:
      - method: GET
        name: getprojectinsights
        description: Get an Overview of a Project Insights.
        call: admin-projects.getprojectinsights
        with:
          projectId: rest.projectId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}/overview
      name: api-admin-projects-projectid-overview
      description: REST surface for api-admin-projects-projectId-overview.
      operations:
      - method: GET
        name: getprojectoverview
        description: Get an Overview of a Project.
        call: admin-projects.getprojectoverview
        with:
          projectId: rest.projectId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}/sdks/outdated
      name: api-admin-projects-projectid-sdks-outdated
      description: REST surface for api-admin-projects-projectId-sdks-outdated.
      operations:
      - method: GET
        name: getoutdatedprojectsdks
        description: Get Outdated Project Sdks
        call: admin-projects.getoutdatedprojectsdks
        with:
          projectId: rest.projectId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}/settings
      name: api-admin-projects-projectid-settings
      description: REST surface for api-admin-projects-projectId-settings.
      operations:
      - method: PUT
        name: updateprojectenterprisesettings
        description: Update Project Enterprise Settings
        call: admin-projects.updateprojectenterprisesettings
        with:
          projectId: rest.projectId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/admin/projects/{projectid}/users/{userid}/roles
      name: api-admin-projects-projectid-users-userid-roles
      description: REST surface for api-admin-projects-projectId-users-userId-roles.
      operations:
      - method: PUT
        name: setrolesforuser
        description: Sets Roles for User
        call: admin-projects.setrolesforuser
        with:
          projectId: rest.projectId
          userId: rest.userId
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: removeuseraccess
        description: Remove Project Access for a User
        call: admin-projects.removeuseraccess
        with:
          projectId: rest.projectId
          userId: rest.userId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: admin-projects-mcp
    port: 9090
    transport: http
    description: MCP adapter for Unleash Admin API — Projects. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: get-list-all-projects
      description: Get a List of All Projects.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: admin-projects.getprojects
      with:
        archived: tools.archived
      outputParameters:
      - type: object
        mapping: $.
    - name: create-project
      description: Create Project
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: admin-projects.createproject
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-project-role-mappings
      description: Get Project-role Mappings
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: admin-projects.getroleprojectaccess
      with:
        roleId: tools.roleId
      outputParameters:
      - type: object
        mapping: $.
    - name: validate-project-id
      description: Validate Project ID
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: admin-projects.validateproject
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: update-project
      description: Update Project
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: admin-projects.updateproject
      with:
        projectId: tools.projectId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-project
      description: Delete Project
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: admin-projects.deleteproject
      with:
        projectId: tools.projectId
      outputParameters:
      - type: object
        mapping: $.
    - name: get-users-and-groups-project
      description: Get Users and Groups in Project
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: admin-projects.getprojectaccess
      with:
        projectId: tools.projectId
      outputParameters:
      - type: object
        mapping: $.
    - name: set-users-and-groups-roles
      description: Set Users and Groups to Roles in the Current Project
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: admin-projects.setprojectaccess
      with:
        projectId: tools.projectId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: configure-project-access
      description: Configure Project Access
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: admin-projects.addaccesstoproject
      with:
        projectId: tools.projectId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-api-tokens-project
      description: Get API Tokens for Project.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: admin-projects.getprojectapitokens
      with:
        projectId: tools.projectId
      outputParameters:
      - type: object
        mapping: $.
    - name: create-project-api-token
      description: Create a Project API Token.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: admin-projects.createprojectapitoken
      with:
        projectId: tools.projectId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-project-api-token
      description: Delete a Project API Token.
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: admin-projects.deleteprojectapitoken
      with:
        projectId: tools.projectId
        token: tools.token
      outputParameters:
      - type: object
        mapping: $.
    - name: get-list-all-applications-project
      description: Get a List of All Applications for a Project.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: admin-projects.getprojectapplications
      with:
        projectId: tools.projectId
        query: tools.query
        offset: tools.offset
        limit: tools.limit
        sortBy: tools.sortBy
        sortOrder: tools.sortOrder
      outputParameters:
      - type: object
        mapping: $.
    - name: get-overview-project-dora-metrics
      description: Get an Overview Project Dora Metrics.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: admin-projects.getprojectdora
      with:
        projectId: tools.projectId
      outputParameters:
      - type: object
        mapping: $.
    - name: add-environment-project
      description: Add an Environment to a Project.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: admin-projects.addenviron

# --- truncated at 32 KB (36 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/unleash/refs/heads/main/capabilities/admin-projects.yaml