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: $.