Unlock One Month Free access to ASI:One Pro and Agentverse Premium
October 18, 2025
Shack 15 (1 Ferry Building Suite 201 San Francisco, CA 94111)
Best Use of Fetch.ai
Helicopter Tour of San Francisco
Experience
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
π― Goal Build the Next Breakthrough AI Agent: Best Gemini-Powered Agent on Agentverse.
π€ The Challenge Create an innovative AI agent powered by Google Gemini and deploy it to the Fetch.ai Agentverse marketplace where it becomes discoverable on ASI One LLM. Supercharge your agent by integrating MCPs (Model Context Protocol) to enable real-world actions - read/write files, execute code, call APIs, and more. Turn your agent from a responder into a doer.
π Why this matters?
π What Makes a Winning Agentic Workflow on Agentverse:
Solves a Real Problem
Leverages Gemini's Strengths
Takes Action with MCPs (Bonus Points!)
Discoverable on ASI:One LLM
π Resources Check out the resources to learn how to build and deploy your own AI agents.
Important links
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
Agent Quality & Utility (35%)
Gemini Integration (25%)
Marketplace & Workflow Readiness (25%)
Innovation & Actions (15%)
Judges
Sana Wajid
Chief Development Officer - Fetch.ai
Senior Vice President - Innovation Lab
Attila Bagoly
Chief AI Officer
Mentors
Abhi Gangani
Developer Advocate
Kshipra Dhame
Developer Advocate
Rajashekar Vennavelli
AI Engineer
Chayan Shah
Junior Software Engineer
Davel Radindra
Ambassador
Mike Chrabaszcz
Developer Advocate
09:00 PDT
Hacker Check-In
SHACK15
11:00 PDT
Welcome Kick-Off + Technical Workshops
SHACK15
13:00 PDT
Lunch
SHACK15
19:00 PDT
Dinner
SHACK15
22:00 PDT
Doors close (hackers stay overnight, but no re-entry is allowed)
SHACK15
09:00 PDT
Doors Reopen & Breakfast
SHACK15
12:00 PDT
Hacking Stops & Submission Due
SHACK15
12:15 PDT
First Round Judging
SHACK15
13:00 PDT
Lunch
SHACK15
14:00 PDT
Finalists Announced & Demos
SHACK15
15:15 PDT
Winners Announced & Closing Keynote
SHACK15
17:00 PDT
Doors close
SHACK15