July 4, 2025
Le Palais des Festivals et des Congrès de Cannes
ASI1 Trailblazer
$5000
Cash Prize
FetchFusion Award
$3000
Cash Prize
Best Multi-Agent System
$2000
Cash Prize
Fetch.ai is your gateway to the agentic economy. It provides a full ecosystem for building, deploying, and discovering AI Agents.
Pillars of the Fetch.ai Ecosystem
AI Agents are autonomous pieces of software that can understand goals, make decisions, and take actions on behalf of users.
Challenge statement
Bridge Intent and Action: Build AI Agents That Think, Plan, and Deliver
We live in an age of infinite possibilities—but finite execution. People dream of financial independence, seamless automation, better health, smarter learning, or just getting more done. Yet most tools today—digital assistants, automators, and even LLMs—fall short of turning complex, human intentions into coordinated action.
This hackathon challenges you to build autonomous agents that understand what users actually want to achieve—and orchestrate the full stack of actions needed to make it happen.
Using the uAgents framework or any other agentic framework of your choice, create agents that can understand open-ended, natural language goals and break them into multi-step execution plans. These agents should verify outcomes and adapt in real time to ensure successful intent fulfillment.
Once built, register your agents on Agentverse—Fetch.ai’s open marketplace where they agents can be discovered by other agents and users. Implement the Chat Protocol to to enable seamless natural language interaction via ASI:One, allowing users to talk directly to your agents.
From optimizing a user’s portfolio to automating workflows or building playful tools that anticipate needs, your agents should go beyond commands to deliver outcomes.
This is your chance to shape the future of AI—from passive tools to autonomous, intelligent, goal-driven agents.
👉 Check out the resources to learn how to build and deploy your own AI agents.
Examples to get you started:
Code
README.md
To achieve this, include the following badge in your agent’s
README.md

Video
Quick start example
This file can be run on any platform supporting Python, with the necessary install permissions. This example shows two agents communicating with each other using the uAgent python library.
Try it out on Agentverse ↗
from datetime import datetime
from uuid import uuid4
from uagents.setup import fund_agent_if_low
from uagents_core.contrib.protocols.chat import (
ChatAcknowledgement,
ChatMessage,
EndSessionContent,
StartSessionContent,
TextContent,
chat_protocol_spec,
)
agent = Agent()
# Initialize the chat protocol with the standard chat spec
chat_proto = Protocol(spec=chat_protocol_spec)
# Utility function to wrap plain text into a ChatMessage
def create_text_chat(text: str, end_session: bool = False) -> ChatMessage:
content = [TextContent(type="text", text=text)]
return ChatMessage(
timestamp=datetime.utcnow(),
msg_id=uuid4(),
content=content,
)
# Handle incoming chat messages
@chat_proto.on_message(ChatMessage)
async def handle_message(ctx: Context, sender: str, msg: ChatMessage):
ctx.logger.info(f"Received message from {sender}")
# Always send back an acknowledgement when a message is received
await ctx.send(sender, ChatAcknowledgement(timestamp=datetime.utcnow(), acknowledged_msg_id=msg.msg_id))
# Process each content item inside the chat message
for item in msg.content:
# Marks the start of a chat session
if isinstance(item, StartSessionContent):
ctx.logger.info(f"Session started with {sender}")
# Handles plain text messages (from another agent or ASI:One)
elif isinstance(item, TextContent):
ctx.logger.info(f"Text message from {sender}: {item.text}")
#Add your logic
# Example: respond with a message describing the result of a completed task
response_message = create_text_chat("Hello from Agent")
await ctx.send(sender, response_message)
# Marks the end of a chat session
elif isinstance(item, EndSessionContent):
ctx.logger.info(f"Session ended with {sender}")
# Catches anything unexpected
else:
ctx.logger.info(f"Received unexpected content type from {sender}")
# Handle acknowledgements for messages this agent has sent out
@chat_proto.on_message(ChatAcknowledgement)
async def handle_acknowledgement(ctx: Context, sender: str, msg: ChatAcknowledgement):
ctx.logger.info(f"Received acknowledgement from {sender} for message {msg.acknowledged_msg_id}")
# Include the chat protocol and publish the manifest to Agentverse
agent.include(chat_proto, publish_manifest=True)
if __name__ == "__main__":
agent.run()
Agentverse MCP Server
Learn how to deploy your first agent on Agentverse with Claude Desktop in Under 5 Minutes
Agentverse MCP (Full Server)
Client connection URL: https://mcp.agentverse.ai/sse
Agentverse MCP-Lite
Client connection URL: https://mcp-lite.agentverse.ai/mcp
Tool Stack
Judging Criteria
Functionality & Technical Implementation (25%)
Use of Fetch.ai Technology (20%)
Innovation & Creativity (20%)
Real-World Impact & Usefulness (20%)
User Experience & Presentation (15%)
Judges
Sana Wajid
Chief Development Officer
Attila Bagoly
Chief AI Officer
Mentors
Kshipra Dhame
Developer Advocate
Abhi Gangani
Developer Advocate
Nikolay Dimitrov
Community and Developer Advocate
13:00 GMT+2
Registrations Open
Le Palais des Festivals et des Congrès de Cannes
15:00 GMT+2
ASI Workshop
Le Palais des Festivals et des Congrès de Cannes
18:30 GMT+2
Dinner
Le Palais des Festivals et des Congrès de Cannes
20:00 GMT+2
Welcome and Opening Ceremonies
Le Palais des Festivals et des Congrès de Cannes
21:00 GMT+2
Hacking Begins
Le Palais des Festivals et des Congrès de Cannes
10:00 GMT+2
Brunch
Le Palais des Festivals et des Congrès de Cannes
15:00 GMT+2
Project Feedback Session
Le Palais des Festivals et des Congrès de Cannes
16:00 GMT+2
Fun Activity
Le Palais des Festivals et des Congrès de Cannes
18:00 GMT+2
Dinner
Le Palais des Festivals et des Congrès de Cannes
08:00 GMT+2
Breakfast
Le Palais des Festivals et des Congrès de Cannes
09:00 GMT+2
Project Submissions Due
Le Palais des Festivals et des Congrès de Cannes
09:30 GMT+2
Project Judging
Le Palais des Festivals et des Congrès de Cannes
15:30 GMT+2
Closing Ceremonies
Le Palais des Festivals et des Congrès de Cannes
15:00 GMT+2
Finalist Notified
Le Palais des Festivals et des Congrès de Cannes