Google Cloud Platform · Capability

Google Cloud Platform Google Cloud Resource Manager API — Projects

Google Cloud Platform Google Cloud Resource Manager API — Projects. 9 operations. Lead operation: Google Cloud Platform List Projects. Self-contained Naftiko capability covering one Google Cloud Platform business surface.

Run with Naftiko Google Cloud PlatformProjects

What You Can Do

GET
Cloudresourcemanagerprojectslist — Google Cloud Platform List Projects
/v1/v3/projects
POST
Cloudresourcemanagerprojectscreate — Google Cloud Platform Create a Project
/v1/v3/projects
GET
Cloudresourcemanagerprojectsget — Google Cloud Platform Get a Project
/v1/v3/projects/{projectid}
PATCH
Cloudresourcemanagerprojectspatch — Google Cloud Platform Update a Project
/v1/v3/projects/{projectid}
DELETE
Cloudresourcemanagerprojectsdelete — Google Cloud Platform Delete a Project
/v1/v3/projects/{projectid}
POST
Cloudresourcemanagerprojectsundelete — Google Cloud Platform Undelete a Project
/v1/v3/projects/projectid-undelete
POST
Cloudresourcemanagerprojectsgetiampolicy — Google Cloud Platform Get Project Iam Policy
/v1/v3/projects/resource-getiampolicy
POST
Cloudresourcemanagerprojectssetiampolicy — Google Cloud Platform Set Project Iam Policy
/v1/v3/projects/resource-setiampolicy
GET
Cloudresourcemanagerprojectssearch — Google Cloud Platform Search Projects
/v1/v3/projects-search

MCP Tools

google-cloud-platform-list-projects

Google Cloud Platform List Projects

read-only idempotent
google-cloud-platform-create-project

Google Cloud Platform Create a Project

google-cloud-platform-get-project

Google Cloud Platform Get a Project

read-only idempotent
google-cloud-platform-update-project

Google Cloud Platform Update a Project

idempotent
google-cloud-platform-delete-project

Google Cloud Platform Delete a Project

idempotent
google-cloud-platform-undelete-project

Google Cloud Platform Undelete a Project

google-cloud-platform-get-project-2

Google Cloud Platform Get Project Iam Policy

read-only
google-cloud-platform-set-project

Google Cloud Platform Set Project Iam Policy

google-cloud-platform-search-projects

Google Cloud Platform Search Projects

read-only idempotent

Capability Spec

cloud-resource-manager-projects.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Google Cloud Platform Google Cloud Resource Manager API — Projects
  description: 'Google Cloud Platform Google Cloud Resource Manager API — Projects. 9 operations. Lead operation: Google Cloud
    Platform List Projects. Self-contained Naftiko capability covering one Google Cloud Platform business surface.'
  tags:
  - Google Cloud Platform
  - Projects
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    GOOGLE_CLOUD_PLATFORM_API_KEY: GOOGLE_CLOUD_PLATFORM_API_KEY
capability:
  consumes:
  - type: http
    namespace: cloud-resource-manager-projects
    baseUri: https://cloudresourcemanager.googleapis.com
    description: Google Cloud Platform Google Cloud Resource Manager API — Projects business capability. Self-contained, no
      shared references.
    resources:
    - name: v3-projects
      path: /v3/projects
      operations:
      - name: cloudresourcemanagerprojectslist
        method: GET
        description: Google Cloud Platform List Projects
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: parent
          in: query
          type: string
          description: The name of the parent resource whose projects are to be listed. Must be of the form folders/{folder_id}
            or organizations/{org_id}.
          required: true
        - name: pageSize
          in: query
          type: integer
          description: Maximum number of projects to return in the response. The server can return fewer results. If unspecified,
            the server picks an appropriate default value.
        - name: pageToken
          in: query
          type: string
          description: A pagination token returned from a previous call to ListProjects that indicates where this listing
            should continue from.
        - name: showDeleted
          in: query
          type: boolean
          description: Indicate that projects in the DELETE_REQUESTED state should also be returned.
      - name: cloudresourcemanagerprojectscreate
        method: POST
        description: Google Cloud Platform Create a Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v3-projects-projectId
      path: /v3/projects/{projectId}
      operations:
      - name: cloudresourcemanagerprojectsget
        method: GET
        description: Google Cloud Platform Get a Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          description: The name of the project to retrieve, such as projects/123 or projects/my-project-id. The project ID
            or number is required.
          required: true
      - name: cloudresourcemanagerprojectspatch
        method: PATCH
        description: Google Cloud Platform Update a Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          description: The name of the project to update.
          required: true
        - name: updateMask
          in: query
          type: string
          description: A comma-separated list of fields to update. Only display_name and labels fields can be updated. An
            empty update mask is not permitted.
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: cloudresourcemanagerprojectsdelete
        method: DELETE
        description: Google Cloud Platform Delete a Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          description: The name of the project to delete.
          required: true
    - name: v3-projects-projectId}:undelete
      path: /v3/projects/{projectId}:undelete
      operations:
      - name: cloudresourcemanagerprojectsundelete
        method: POST
        description: Google Cloud Platform Undelete a Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: projectId
          in: path
          type: string
          description: The name of the project to undelete.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v3-projects-resource}:getIamPolicy
      path: /v3/projects/{resource}:getIamPolicy
      operations:
      - name: cloudresourcemanagerprojectsgetiampolicy
        method: POST
        description: Google Cloud Platform Get Project Iam Policy
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: resource
          in: path
          type: string
          description: The name of the project whose policy is being requested, such as projects/12345.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v3-projects-resource}:setIamPolicy
      path: /v3/projects/{resource}:setIamPolicy
      operations:
      - name: cloudresourcemanagerprojectssetiampolicy
        method: POST
        description: Google Cloud Platform Set Project Iam Policy
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: resource
          in: path
          type: string
          description: The name of the project whose policy is being set, such as projects/12345.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v3-projects:search
      path: /v3/projects:search
      operations:
      - name: cloudresourcemanagerprojectssearch
        method: GET
        description: Google Cloud Platform Search Projects
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: query
          in: query
          type: string
          description: 'A query string for searching projects. The query supports filtering by displayName, parent.type, parent.id,
            projectId, state, and labels. Example: parent.type:f'
        - name: pageSize
          in: query
          type: integer
          description: Maximum number of projects to return.
        - name: pageToken
          in: query
          type: string
          description: Pagination token from a previous search call.
    authentication:
      type: bearer
      token: '{{env.GOOGLE_CLOUD_PLATFORM_API_KEY}}'
  exposes:
  - type: rest
    namespace: cloud-resource-manager-projects-rest
    port: 8080
    description: REST adapter for Google Cloud Platform Google Cloud Resource Manager API — Projects. One Spectral-compliant
      resource per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/v3/projects
      name: v3-projects
      description: REST surface for v3-projects.
      operations:
      - method: GET
        name: cloudresourcemanagerprojectslist
        description: Google Cloud Platform List Projects
        call: cloud-resource-manager-projects.cloudresourcemanagerprojectslist
        with:
          parent: rest.parent
          pageSize: rest.pageSize
          pageToken: rest.pageToken
          showDeleted: rest.showDeleted
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: cloudresourcemanagerprojectscreate
        description: Google Cloud Platform Create a Project
        call: cloud-resource-manager-projects.cloudresourcemanagerprojectscreate
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v3/projects/{projectid}
      name: v3-projects-projectid
      description: REST surface for v3-projects-projectId.
      operations:
      - method: GET
        name: cloudresourcemanagerprojectsget
        description: Google Cloud Platform Get a Project
        call: cloud-resource-manager-projects.cloudresourcemanagerprojectsget
        with:
          projectId: rest.projectId
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: cloudresourcemanagerprojectspatch
        description: Google Cloud Platform Update a Project
        call: cloud-resource-manager-projects.cloudresourcemanagerprojectspatch
        with:
          projectId: rest.projectId
          updateMask: rest.updateMask
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: cloudresourcemanagerprojectsdelete
        description: Google Cloud Platform Delete a Project
        call: cloud-resource-manager-projects.cloudresourcemanagerprojectsdelete
        with:
          projectId: rest.projectId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v3/projects/projectid-undelete
      name: v3-projects-projectid-undelete
      description: REST surface for v3-projects-projectId}:undelete.
      operations:
      - method: POST
        name: cloudresourcemanagerprojectsundelete
        description: Google Cloud Platform Undelete a Project
        call: cloud-resource-manager-projects.cloudresourcemanagerprojectsundelete
        with:
          projectId: rest.projectId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v3/projects/resource-getiampolicy
      name: v3-projects-resource-getiampolicy
      description: REST surface for v3-projects-resource}:getIamPolicy.
      operations:
      - method: POST
        name: cloudresourcemanagerprojectsgetiampolicy
        description: Google Cloud Platform Get Project Iam Policy
        call: cloud-resource-manager-projects.cloudresourcemanagerprojectsgetiampolicy
        with:
          resource: rest.resource
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v3/projects/resource-setiampolicy
      name: v3-projects-resource-setiampolicy
      description: REST surface for v3-projects-resource}:setIamPolicy.
      operations:
      - method: POST
        name: cloudresourcemanagerprojectssetiampolicy
        description: Google Cloud Platform Set Project Iam Policy
        call: cloud-resource-manager-projects.cloudresourcemanagerprojectssetiampolicy
        with:
          resource: rest.resource
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v3/projects-search
      name: v3-projects-search
      description: REST surface for v3-projects:search.
      operations:
      - method: GET
        name: cloudresourcemanagerprojectssearch
        description: Google Cloud Platform Search Projects
        call: cloud-resource-manager-projects.cloudresourcemanagerprojectssearch
        with:
          query: rest.query
          pageSize: rest.pageSize
          pageToken: rest.pageToken
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: cloud-resource-manager-projects-mcp
    port: 9090
    transport: http
    description: MCP adapter for Google Cloud Platform Google Cloud Resource Manager API — Projects. One tool per consumed
      operation, routed inline through this capability's consumes block.
    tools:
    - name: google-cloud-platform-list-projects
      description: Google Cloud Platform List Projects
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: cloud-resource-manager-projects.cloudresourcemanagerprojectslist
      with:
        parent: tools.parent
        pageSize: tools.pageSize
        pageToken: tools.pageToken
        showDeleted: tools.showDeleted
      outputParameters:
      - type: object
        mapping: $.
    - name: google-cloud-platform-create-project
      description: Google Cloud Platform Create a Project
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: cloud-resource-manager-projects.cloudresourcemanagerprojectscreate
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: google-cloud-platform-get-project
      description: Google Cloud Platform Get a Project
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: cloud-resource-manager-projects.cloudresourcemanagerprojectsget
      with:
        projectId: tools.projectId
      outputParameters:
      - type: object
        mapping: $.
    - name: google-cloud-platform-update-project
      description: Google Cloud Platform Update a Project
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: cloud-resource-manager-projects.cloudresourcemanagerprojectspatch
      with:
        projectId: tools.projectId
        updateMask: tools.updateMask
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: google-cloud-platform-delete-project
      description: Google Cloud Platform Delete a Project
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: cloud-resource-manager-projects.cloudresourcemanagerprojectsdelete
      with:
        projectId: tools.projectId
      outputParameters:
      - type: object
        mapping: $.
    - name: google-cloud-platform-undelete-project
      description: Google Cloud Platform Undelete a Project
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: cloud-resource-manager-projects.cloudresourcemanagerprojectsundelete
      with:
        projectId: tools.projectId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: google-cloud-platform-get-project-2
      description: Google Cloud Platform Get Project Iam Policy
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: cloud-resource-manager-projects.cloudresourcemanagerprojectsgetiampolicy
      with:
        resource: tools.resource
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: google-cloud-platform-set-project
      description: Google Cloud Platform Set Project Iam Policy
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: cloud-resource-manager-projects.cloudresourcemanagerprojectssetiampolicy
      with:
        resource: tools.resource
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: google-cloud-platform-search-projects
      description: Google Cloud Platform Search Projects
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: cloud-resource-manager-projects.cloudresourcemanagerprojectssearch
      with:
        query: tools.query
        pageSize: tools.pageSize
        pageToken: tools.pageToken
      outputParameters:
      - type: object
        mapping: $.