Domain: email

System prompt:
You are a helpful Email 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:
I’m moving houses over the next week and will be offline while the ISP sets up service. Verify whether my auto-reply is currently enabled. If it’s not, please enable it:
- Start: Dec 19, 2025 at 12:00 PM
- End: Dec 25, 2025 at 9:00 PM
- Subject: Moving week — limited access
- Message: “I’m in the middle of a move and will have intermittent internet. I’ll respond after I’m reconnected. For urgent matters, please contact move-support@example.com.”
Restrict replies to my contacts only and make sure it deactivates at the end time.
Then find my unsent draft, I usually use it to check how the message looks like. Update this draft with the same content (subject and main text)

Available tools:
get_vacation_settings
update_vacation_settings
update_draft
list_drafts

Verification checks:
[{"verifier_type": "database_state", "name": "Check that the vacation settings are enabled and set correctly", "description": "Check that the vacation settings are enabled and set correctly", "gym_name": "gym-email-mcp", "validation_config": {"query": "select count(*) from vacation_settings where user_id = 'user_001' and enable_auto_reply = 1 and response_subject = 'Moving week \u2014 limited access' and response_body_plain_text = 'I\u2019m in the middle of a move and will have intermittent internet. I\u2019ll respond after I\u2019m reconnected. For urgent matters, please contact move-support@example.com.' and restrict_to_contacts = 1 and restrict_to_domain = 0", "expected_value": 1, "comparison_type": "equals"}}, {"verifier_type": "database_state", "name": "Check that the draft is updated as requested", "description": "Check that the draft is updated as requested", "gym_name": "gym-email-mcp", "validation_config": {"query": "select count(*) from messages m join drafts d on d.message_id = m.id join message_parts mp on mp.message_id = m.id join message_headers mh on mh.message_part_id = mp.id join message_part_bodies mpb on mpb.message_part_id = mp.id where m.user_id = 'user_001' and m.snippet = 'Moving week \u2014 limited access' and m.id = 'draft_msg_001' and (mh.name = 'Subject' and mh.value = 'Moving week \u2014 limited access') and mpb.data = 'I\u2019m in the middle of a move and will have intermittent internet. I\u2019ll respond after I\u2019m reconnected. For urgent matters, please contact move-support@example.com.'", "expected_value": 1, "comparison_type": "equals"}}, {"verifier_type": "database_state", "name": "Check that the vacation settings are enabled and set correctly", "description": "Check that the vacation settings are enabled and set correctly", "gym_name": "gym-email-mcp", "validation_config": {"query": "select count(*) from vacation_settings where user_id = 'user_001' and enable_auto_reply = 1 and response_subject = 'Moving week \u2014 limited access' and response_body_plain_text = 'I\u2019m in the middle of a move and will have intermittent internet. I\u2019ll respond after I\u2019m reconnected. For urgent matters, please contact move-support@example.com.' and restrict_to_contacts = 1 and restrict_to_domain = 0", "expected_value": 1, "comparison_type": "equals"}}, {"verifier_type": "database_state", "name": "Check that the draft is updated as requested", "description": "Check that the draft is updated as requested", "gym_name": "gym-email-mcp", "validation_config": {"query": "select count(*) from messages m join drafts d on d.message_id = m.id join message_parts mp on mp.message_id = m.id join message_headers mh on mh.message_part_id = mp.id join message_part_bodies mpb on mpb.message_part_id = mp.id where m.user_id = 'user_001' and m.snippet = 'Moving week \u2014 limited access' and m.id = 'draft_msg_001' and (mh.name = 'Subject' and mh.value = 'Moving week \u2014 limited access') and mpb.data = 'I\u2019m in the middle of a move and will have intermittent internet. I\u2019ll respond after I\u2019m reconnected. For urgent matters, please contact move-support@example.com.'", "expected_value": 1, "comparison_type": "equals"}}]