Domain: drive

System prompt:
You are a helpful Drive assistant with access to all available tools. Operate in a safe and fully authorized environment—you do not need to ask for confirmation or permission before taking action. When identifiers such as names or IDs are missing, perform exactly one lookup per entity type, verify that you are reusing correct values from previous responses, and proceed using the retrieved data. Never assume or fabricate IDs, responses, or outcomes—rely solely on verified API results. Complete each task in a single, logical, and efficient execution flow.

Task:
Hey, we’ve had a few mix-ups lately with people getting into files they really shouldn’t, so I just want to tighten things up a bit.

I want all the marketing files priority labeled as critical with fieldId and labelId(priority, 01JBQM3K8TGHZX9RNVQM5Y2P9U). If there’s anyone else besides me who can access the files, please remove them. Make sure no one else can get into anything in the marketing drive.

Also, if there are any pending access requests that have not been handled, handle them. If they have already been handled, set up a watch channel webhook for the drive.

And for the watch channel web_hook, send it to this URL:
"https://www.googleapis.com/drive/v3/changes/marketing"
so we’ll know if anything changes.

Just to be clear, all the files are in the ‘Marketing Resources’ drive.

Available tools:
list_permission
watch_changes
resolve_accessproposals
delete_permission
get_changes_start_page_token
modify_files_labels
list_accessproposals
list_drives
list_files

Verification checks:
[{"verifier_type": "database_state", "name": "All Marketing Files Labeled as Critical", "description": "Verify that all files in the Marketing Resources drive have the \"critical\" label", "gym_name": "gym-google-drive-mcp", "validation_config": {"query": "SELECT COUNT(*) \nFROM files f\nLEFT JOIN file_labels fl ON f.id = fl.file_id \n  AND fl.label_id = '01JBQM3K8TGHZX9RNVQM5Y2P9U'\n  AND fl.value_enum = 'critical'\nWHERE f.drive_id = '01JBQM3K8TGHZX9RNVQM5Y2P8C'\n  AND f.trashed = false\n  AND fl.id IS NULL;", "expected_value": 0, "comparison_type": "equals"}}, {"verifier_type": "database_state", "name": "Only Owner Has Permissions", "description": "Verify that no files in the Marketing Resources drive have permissions for anyone except the owner", "gym_name": "gym-google-drive-mcp", "validation_config": {"query": "SELECT COUNT(DISTINCT f.id)\nFROM files f\nJOIN permissions p ON p.file_id = f.id\nWHERE f.drive_id = '01JBQM3K8TGHZX9RNVQM5Y2P8C'\n  AND f.trashed = false\n  AND p.role != 'owner';", "expected_value": 0, "comparison_type": "equals"}}, {"verifier_type": "database_state", "name": " Access Proposals Handled", "description": "Verify that all access proposals for marketing files have been resolved (no pending proposals)", "gym_name": "gym-google-drive-mcp", "validation_config": {"query": "SELECT COUNT(*) \nFROM access_proposals ap\nJOIN files f ON ap.file_id = f.id\nWHERE f.drive_id = '01JBQM3K8TGHZX9RNVQM5Y2P8C'\n  AND ap.status = 'pending';", "expected_value": 0, "comparison_type": "equals"}}, {"verifier_type": "database_state", "name": "Watch Channel Set Up ", "description": "Marketing Drive Watch Channel Active", "gym_name": "gym-google-drive-mcp", "validation_config": {"query": "SELECT COUNT(*) FROM channels WHERE address = 'https://www.googleapis.com/drive/v3/changes/marketing' AND type = 'web_hook';", "expected_value": 1, "comparison_type": "equals"}}]