"""Prompts for the passenger MCP server.""" from mcp_servers.passenger.server import mcp TONE_INSTRUCTIONS = { "empathetic": ( "Write a passenger notification about this flight disruption. " "Be empathetic and human. Explain WHY the delay/cancellation happened " "using the weather, maintenance, or operational data provided. " "Tell the passenger what's happening next: new boarding time, gate, " "rebooking options. End with reassurance. No jargon." ), "factual": ( "Write a brief, factual notification. Include: flight number, " "route, status, delay duration, cause (one phrase), new departure time, " "gate. No editorial. No reassurance. Just facts." ), "brief_sms": ( "Write an SMS-length notification (under 160 characters). " "Format: UA{flight} {route}: {status}. {cause}. New dep: {time}. Gate {gate}." ), } @mcp.prompt() def passenger_notification(tone: str = "empathetic") -> str: """Template for generating passenger delay/cancellation notifications. tone: empathetic (default) | factual | brief_sms """ instruction = TONE_INSTRUCTIONS.get(tone, TONE_INSTRUCTIONS["empathetic"]) return ( f"{instruction}\n\n" "Use the operational data provided below. Do not invent details. " "If data is missing for a section, omit that section." )