naftiko: 1.0.0-alpha2 info: label: Looker Studio API description: The Looker Studio API enables developers to programmatically manage reports, data sources, and permissions. It provides methods for searching assets and managing asset permissions including getting, updating, adding, and removing members. The API is available to users that belong to an organization with Google Workspace or Cloud Identity. tags: - Looker - Studio - API created: '2026-05-06' modified: '2026-05-06' capability: consumes: - type: http namespace: looker-studio baseUri: https://datastudio.googleapis.com/v1 description: Looker Studio API HTTP API. authentication: type: bearer token: '{{LOOKER_STUDIO_TOKEN}}' resources: - name: assets-search path: /assets:search operations: - name: searchassets method: GET description: Search Looker Studio assets inputParameters: - name: assetTypes in: query type: array required: true description: The types of assets to search for. Valid values are REPORT and DATA_SOURCE. - name: title in: query type: string description: Filter assets by title (partial match). - name: includeTrash in: query type: boolean description: Whether to include trashed assets in the results. - name: orderBy in: query type: string description: Field to order results by, such as title, createTime, or updateTime. - name: pageSize in: query type: integer description: Maximum number of assets to return per page. - name: pageToken in: query type: string description: Token for retrieving the next page of results. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: assets-assetid-permissions path: /assets/{assetId}/permissions operations: - name: getassetpermissions method: GET description: Looker Studio Get asset permissions inputParameters: - name: assetId in: path type: string required: true description: The unique identifier of the Looker Studio asset. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateassetpermissions method: PATCH description: Looker Studio Update asset permissions inputParameters: - name: assetId in: path type: string required: true description: The unique identifier of the Looker Studio asset. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: assets-assetid-permissions-addmembers path: /assets/{assetId}/permissions:addMembers operations: - name: addassetmembers method: POST description: Looker Studio Add members to asset permissions inputParameters: - name: assetId in: path type: string required: true description: The unique identifier of the Looker Studio asset. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: assets-assetid-permissions-revokeallpermissions path: /assets/{assetId}/permissions:revokeAllPermissions operations: - name: revokeallassetpermissions method: POST description: Looker Studio Revoke all permissions for members inputParameters: - name: assetId in: path type: string required: true description: The unique identifier of the Looker Studio asset. outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8080 namespace: looker-studio-rest description: REST adapter for Looker Studio API. resources: - path: /assets:search name: searchassets operations: - method: GET name: searchassets description: Search Looker Studio assets call: looker-studio.searchassets outputParameters: - type: object mapping: $. - path: /assets/{assetId}/permissions name: getassetpermissions operations: - method: GET name: getassetpermissions description: Looker Studio Get asset permissions call: looker-studio.getassetpermissions with: assetId: rest.assetId outputParameters: - type: object mapping: $. - path: /assets/{assetId}/permissions name: updateassetpermissions operations: - method: PATCH name: updateassetpermissions description: Looker Studio Update asset permissions call: looker-studio.updateassetpermissions with: assetId: rest.assetId outputParameters: - type: object mapping: $. - path: /assets/{assetId}/permissions:addMembers name: addassetmembers operations: - method: POST name: addassetmembers description: Looker Studio Add members to asset permissions call: looker-studio.addassetmembers with: assetId: rest.assetId outputParameters: - type: object mapping: $. - path: /assets/{assetId}/permissions:revokeAllPermissions name: revokeallassetpermissions operations: - method: POST name: revokeallassetpermissions description: Looker Studio Revoke all permissions for members call: looker-studio.revokeallassetpermissions with: assetId: rest.assetId outputParameters: - type: object mapping: $. - type: mcp port: 9090 namespace: looker-studio-mcp transport: http description: MCP adapter for Looker Studio API for AI agent use. tools: - name: searchassets description: Search Looker Studio assets hints: readOnly: true destructive: false idempotent: true call: looker-studio.searchassets with: assetTypes: tools.assetTypes title: tools.title includeTrash: tools.includeTrash orderBy: tools.orderBy pageSize: tools.pageSize pageToken: tools.pageToken inputParameters: - name: assetTypes type: array description: The types of assets to search for. Valid values are REPORT and DATA_SOURCE. required: true - name: title type: string description: Filter assets by title (partial match). - name: includeTrash type: boolean description: Whether to include trashed assets in the results. - name: orderBy type: string description: Field to order results by, such as title, createTime, or updateTime. - name: pageSize type: integer description: Maximum number of assets to return per page. - name: pageToken type: string description: Token for retrieving the next page of results. outputParameters: - type: object mapping: $. - name: getassetpermissions description: Looker Studio Get asset permissions hints: readOnly: true destructive: false idempotent: true call: looker-studio.getassetpermissions with: assetId: tools.assetId inputParameters: - name: assetId type: string description: The unique identifier of the Looker Studio asset. required: true outputParameters: - type: object mapping: $. - name: updateassetpermissions description: Looker Studio Update asset permissions hints: readOnly: false destructive: false idempotent: false call: looker-studio.updateassetpermissions with: assetId: tools.assetId inputParameters: - name: assetId type: string description: The unique identifier of the Looker Studio asset. required: true outputParameters: - type: object mapping: $. - name: addassetmembers description: Looker Studio Add members to asset permissions hints: readOnly: false destructive: false idempotent: false call: looker-studio.addassetmembers with: assetId: tools.assetId inputParameters: - name: assetId type: string description: The unique identifier of the Looker Studio asset. required: true outputParameters: - type: object mapping: $. - name: revokeallassetpermissions description: Looker Studio Revoke all permissions for members hints: readOnly: false destructive: false idempotent: false call: looker-studio.revokeallassetpermissions with: assetId: tools.assetId inputParameters: - name: assetId type: string description: The unique identifier of the Looker Studio asset. required: true outputParameters: - type: object mapping: $. binds: - namespace: env keys: LOOKER_STUDIO_TOKEN: LOOKER_STUDIO_TOKEN