Multi-Agent Ad Fraud Detection
This challenge tasks you with building a robust multi-agent system capable of proactively detecting, analyzing, and preventing fraudulent ad placements and scam campaigns within a simulated digital advertising platform. Leveraging cutting-edge models like Gemini 3 Pro for multimodal content analysis and Mistral Large 2 for complex policy interpretation, your system will employ a graph-based workflow for intricate decision-making and agent coordination. The solution will integrate deeply with a simulated ad platform using MCP (Model Context Protocol) for secure and efficient tool access, allowing agents to query ad creatives, target demographics, and historical performance data. Agents will communicate via A2A Protocol to collaborate on investigations, cross-referencing findings from various sources and dynamically adapting their reasoning budgets based on the severity and complexity of potential fraud cases. This setup will enable hybrid instant/deep reasoning, where simple cases are flagged quickly, while complex, evolving scam patterns trigger deeper, more resource-intensive investigations.
What you are building
The core problem, expected build, and operating context for this challenge.
Build a graph-based multi-agent system using LangGraph with Gemini 3 Pro and MCP-enabled tools for autonomous ad fraud detection.
How work is evaluated
The solution will be evaluated on its ability to accurately identify various types of ad fraud, its adherence to policy, the robustness of its multi-agent communication, and the efficiency of its reasoning process. A simulated ad dataset with known fraudulent patterns will be used for testing.
Challenge datasets
Public datasets, plus the private datasets you have access to.
What you should walk away with
Implement adaptive thinking budgets for hybrid reasoning in agent workflows.
Design and implement a graph-based multi-agent workflow for fraud detection.
Integrate multimodal LLMs like Gemini 2.5 Pro for creative analysis.
Utilize MCP for secure and efficient tool integration with simulated ad platforms.
Establish A2A Protocol for agent collaboration and information sharing.
Reference links and supporting material
Sample data for 2 tasks
Challenge setup
The solution will be evaluated on its ability to accurately identify various types of ad fraud, its adherence to policy, the robustness of its multi-agent communication, and the efficiency of its reasoning process. A...
Challenge input
{'ad_campaigns': [{'id': 'str', 'creative_url': 'str', 'text_content': 'str', 'target_demographics': 'list'}]}
Agent execution
No agent tool is listed for this challenge.
Evaluated output
{'fraud_reports': [{'campaign_id': 'str', 'reason': 'str', 'severity': 'str', 'actions_recommended': 'list', 'investigating_agents': 'list'}]}
- At least 90% of critical known fraudulent ads are correctly flagged.
- Agent logs demonstrate clear communication and handoffs using A2A Protocol for complex cases.
- Fraud Detection F1 Score target: 0.85
- Python execution harness
Summary shows the first task, up to three tools, and up to three evidence items. Open the technical recipe to view all configured items.
View technical recipe
Configured tools
No tool records are attached.
Evaluation contract
- At least 90% of critical known fraudulent ads are correctly flagged.
- Agent logs demonstrate clear communication and handoffs using A2A Protocol for complex cases.
Metrics
- Fraud Detection F1 Score · Target 0.85
- Policy Violation Recall · Target 0.9
Workflow tasks
- Task 1
Input: {'ad_campaigns': [{'id': 'str', 'creative_url': 'str', 'text_content': 'str', 'target_demographics': 'list'}]}
Output: {'fraud_reports': [{'campaign_id': 'str', 'reason': 'str', 'severity': 'str', 'actions_recommended': 'list', 'investigating_agents': 'list'}]}
Execution harness: Python
- Task 2
Input: {'ad_campaign': {'id': 'str', 'text_content': 'str', 'creative_url': 'str'}, 'policies': 'list_of_policy_strings'}
Output: {'compliance_status': 'str', 'violations': 'list', 'policy_agent_reasoning': 'str'}
Execution harness: Python
Recipe freeze marker
No recipe freeze time is recorded.