Inspiration

Land records and economic data in India have never been connected. We wanted to let anyone ask a question about both in plain language and get a real answer.

What it does

Ask in English, Hindi, or Gujarati about crops, inflation, wages, or land records. The agent searches BigQuery for village-level land data, pulls live govt stats from MoSPI via MCP, and if it needs more info it rewrites the query and tries again. Gemini 2.5 Flash turns all of it into a readable answer.

How we built it

Python orchestrator on FastAPI, deployed on Cloud Run. BigQuery VECTOR_SEARCH for land records. MCP protocol for MoSPI data. Google-genai SDK calling Gemini 2.5 Flash for synthesis. Translate API for multilingual support. React Native and HTML frontends. Terraform for infra, Cloud Build for CI/CD.

Challenges we ran into

Gemini 2.5 Flash wasn't available in our region so we had to call it cross-region. The MCP server went down during development so we added cached fallbacks. Figuring out the right IAM permissions and the correct model name took several debug cycles.

Accomplishments that we are proud of

A live, self-correcting agent that bridges village land data with national economics. Working multilingual support with Hindi and Gujarati. Deployed and serving on Cloud Run.

What we learned

Government APIs will break. Fallbacks are essential. Model naming across Vertex AI and Gemini API is inconsistent. Prompt engineering matters as much as the retrieval pipeline. Terraform alone is not enough to keep IaC complete.

What's next

Vertex AI RAG Engine, deploy the mobile app, add India Data Portal as a third source, and build a demo that intentionally shows the self-correction loop.

Built With

  • artifact-registry
  • bigquery
  • bigquery-ml
  • cloud-build
  • cloud-run
  • cloud-storage
  • cloud-vision
  • e-sankhyiki-mcp
  • fastapi
  • gemini-2.5-flash
  • google-translate-v2
  • html/css/js
  • httpx
  • python-3.12
  • react-native
  • terraform
  • vertex-ai
Share this project:

Updates