Smart City Assist

Inspiration

In every city, residents face recurring issues like potholes, broken streetlights, sanitation complaints, or emergency disruptions—but the process of reporting and resolving these problems is often slow, fragmented, and frustrating. We wanted to create a seamless, AI-powered system where citizens can quickly raise issues and city officials can efficiently respond, all through a simple, intelligent interface.


What it does

Smart City Assist is an AI-powered support system that connects citizens and city officials using intelligent agents.

Key Features:

  • Citizens can report civic issues like public works, sanitation, or disaster alerts.
  • City Officers receive real-time notifications and manage support tickets.
  • In case of natural disasters, the system can proactively reassign technician visits to safer days.
  • Citizens can check the status of their reports using a unique Ticket ID.

It uses multi-agent communication (via Google ADK’s A2A protocol) to simulate a responsive city governance model.


How we built it

We used the following technologies:

  • Google Agent Development Kit (ADK) – for building AI agents with contextual workflows
  • A2A Protocol – for agent-to-agent communication over HTTP
  • Gradio – for the citizen-facing web interface
  • FastAPI + Uvicorn – for backend services (City Officer Agent)
  • SQLite – for storing tickets and tracking status
  • Google Cloud Run – to deploy the agents and make them publicly accessible

Challenges we ran into

  • Designing robust agent communication with the A2A protocol.
  • Handling concurrent services for Gradio + Starlette-based APIs.
  • Implementing logic to dynamically update workflows based on external triggers like disasters.
  • Debugging deployment issues with Cloud Run and public networking.

Accomplishments that we're proud of

  • Built a full-stack multi-agent system for smart city operations.
  • Created a realistic use case for AI agents in civic services.
  • Developed a dynamic, modular disaster management workflow.
  • Delivered an intuitive ticket tracking UI with real-time feedback.

What we learned

  • Deepened our understanding of Google ADK and multi-agent orchestration.
  • Learned to integrate multiple async systems like Gradio + FastAPI.
  • Gained hands-on experience with LLM-driven task routing.
  • Improved our skills in building event-driven city-scale apps.

What's next for Smart City Assist

  • Integrate LLM summaries for officers to prioritize tickets intelligently.
  • Add voice/chat interfaces via Twilio or WhatsApp.
  • Expand the ticketing system to cover licensing, elections, and more departments.
  • Build a live analytics dashboard for city authorities.
  • Launch a public API for third-party civic apps and platforms.

Built With

  • a2a-protocol
  • asyncio
  • fastapi
  • gcp
  • google-agent-development-kit-(adk)
  • google-cloud-run
  • gradio
  • httpx
  • python
  • sqlite
  • uvicorn
Share this project:

Updates