-
-
Architecture: Slack → SahayShield (Render) → MCP + Gemini AI → fraud detection → Block Kit response.
-
Instant fraud risk scoring with key findings and duplicate-pattern detection
-
Screenshot scanning: uploaded scam image analyzed via OCR + Gemini AI, same fraud detection pipeline
-
Caption: Live App Home dashboard showing workspace-wide fraud stats
Inspiration
Growing up in Daspalla, Nayagarh, Odisha, I've seen how rural communities are frequently targeted by financial scams — fake KYC update messages, OTP fraud, fake lottery wins, and fraudulent loan apps. Many victims lack the digital literacy to identify these threats before it's too late. I wanted to build something that could instantly help people (and the community workers/NGO staff who assist them) verify suspicious messages in a tool they already use every day: Slack.
What it does
SahayShield is a Slack agent that lets anyone paste a suspicious message and instantly get:
- An AI-powered risk score (low/medium/high)
- Specific red flags explained in plain language
- The similar known scam pattern it resembles
- A check against the workspace's recent message history to flag repeated scam attempts
- An interactive "Report Scam" button for quick action
- A live App Home dashboard showing total scans and high-risk detections
- Multilingual support (English, Hindi, Odia) so non-English speakers can understand results in their own language
- Screenshot scanning — upload an image of a suspicious SMS/WhatsApp message and mention the bot to get it analyzed via OCR + AI
## How we built it
Slack Bolt (Node.js) powers the slash command (
/scamcheck), event handling, and Block Kit UI - Google Gemini API performs the fraud-risk reasoning, returning structured JSON (risk level, reasons, similar pattern)
- MCP (Model Context Protocol) server exposes the fraud-check logic as a callable tool (
check_fraud_risk), satisfying the hackathon's MCP integration requirement and making the logic reusable by any MCP-compatible client - Slack's conversation history API is used to detect duplicate scam patterns being shared repeatedly in a workspace
- Deployed on Render for a permanent, always-on endpoint ## Challenges we ran into As a solo developer with limited time, I hit several real infrastructure challenges: setting up local tunnels (ngrok/localtunnel) for testing, debugging MCP SDK schema requirements, and — most significantly — repeatedly running into Gemini API quota restrictions on newly created Google Cloud projects, which required trying multiple models and accounts before finding a stable configuration. I also had to learn Slack's Event Subscriptions, Interactivity settings, and App Home tab configuration from scratch. ## Accomplishments that we're proud of Getting a fully working, deployed, multi-feature Slack agent live — end to end — as a solo builder within a tight hackathon deadline, while also making it genuinely useful for a real problem I care about.
What we learned
Hands-on experience with the Model Context Protocol (MCP), Slack's Bolt framework and Block Kit UI system, prompt engineering for structured JSON outputs, and the practical realities of API quota management and deployment.
What's next for SahayShield
- Training on a real, labeled dataset of Indian scam messages for higher accuracy
- Piloting with actual rural bank branches, microfinance institutions, or NGOs
- Voice-based scam reporting for users with limited literacy
- Expanding language support to more Indian regional languages
Built With
- block-kit
- gemini
- google-ai
- javascript
- mcp
- model-context-protocol
- node.js
- render
- slack
- slack-bolt


Log in or sign up for Devpost to join the conversation.