-
-
Resolved alert status: The guardian reviews flagged moment and confirms action, updating DynamoDB and clearing the active open review queue.
-
Guardian dashboard oversight: Real-time inbox for Grandma Parvathi displaying flagged extortion attempt with live Approve or Block controls.
-
Reproducible evaluation: 100% precision with zero false positives across 50 labeled scam cases via our deterministic fallback scoring model.
-
Safe Handoff & Claim Verification: Calm guidance via official 1930 cyber helpline and AI-backed health or financial claim verification tool.
-
Guardian Shield active: Automated alert logged and sent to trusted contact Priya, advising vulnerable user not to send funds on active call.
-
Unified trust layer: Real-time situation screening, signal tags, AI claim verification tools, and one-click guardian escalation via AWS SNS.
-
Safeword companion dashboard: Real-time Alexa+ voice monitoring for pressure, urgency, and identity manipulation with active family shields.
-
Live threat screening: Immediate detection of extortion patterns, providing calm guidance and a pause recommendation before any money moves.
-
-
Full build verification: Typecheck and monorepo compilation pass cleanly, followed by automated fraud detection evaluations in the terminal.
-
Evaluation & local launch: Benchmarking 50 cases before starting the Streamable HTTP MCP server on port 3000 and the Alexa+ UI on port 5173.
-
Evaluation & local launch: Benchmarking 50 cases before starting the Streamable HTTP MCP server on port 3000 and the Alexa+ UI on port 5173.
Inspiration
Every year, millions of elderly and vulnerable people lose their savings, health, and trust to scams. The call comes in — "This is Amazon support, your account has been compromised" — and in a moment of panic, a lifetime of savings can vanish.
Scams targeting seniors and vulnerable adults have surged in recent years. They exploit trust, urgency, and confusion. Existing tools either block everything or allow everything — there's no calm middle ground.
We asked: What if Alexa+ could be a calm, trustworthy co-pilot in that exact moment of doubt?
Not a passive assistant that just answers questions — but an active trust layer that says "Wait. Let me help you verify this first."
That idea became Safeword.
What It Does
Safeword is an open-source MCP trust layer that makes Alexa+ a calmer, safer co-pilot for vulnerable people in high-stakes moments.
"When someone asks 'Alexa, is this real?' — Safeword creates a pause before an irreversible action."
We built a self-hosted Streamable HTTP MCP server (protocol version 2025-11-25) that exposes 5 composable safety tools to Alexa+:
Tool What It Does screen_situation Analyzes a suspicious call, text, email, or encounter. Returns a risk score (0–100), a risk level (LOW / MEDIUM / HIGH / CRITICAL), and human-readable signal tags explaining why it's suspicious challenge_identity Retrieves a private challenge question set by the user's family. The user asks the caller this question — if the caller can't answer, it confirms they are not who they claim to be guardian_alert Logs a structured alert to DynamoDB and (optionally) sends an SMS to a trusted family guardian via SNS. The guardian can then approve or block the action from a dashboard verify_claim Takes a health, financial, or legal claim and returns an AI-assessed confidence score with caveats — so users don't act on false information safe_handoff When a user is distressed or overwhelmed, this tool stops the normal flow entirely and returns calm, direct contact details for official help — such as India's cybercrime helpline 1930
The simulated Alexa+ React web app calls the real MCP endpoint — meaning every interaction in the demo exercises the same server that a real Alexa+ integration would use. No fake mocks. No hardcoded responses.
AWS integrations powering Safeword:
Amazon Bedrock — AI-powered scam analysis and health/financial claim verification, with optional Bedrock Guardrails to screen prompts before they reach the model Amazon DynamoDB — stores guardian contact records, family-set challenge questions, first-character hints, and full alert history Amazon SNS — sends real-time SMS notifications to family guardians when a high-risk alert is triggered
Scam Detection Performance (50 labeled test cases — no AWS credentials needed):
Precision : 100.0% Recall : 88.0% F1 Score : 93.6% True Positives : 22 True Negatives : 25 False Positives : 0 False Negatives : 3
Zero false positives — Safeword never flags a legitimate call as a scam. We deliberately optimize for this because a false alarm erodes user trust in the tool itself.
Anyone can reproduce this result by cloning the repo and running npm run evaluate.
How We Built It
Architecture overview:
User voice/text | v Simulated Alexa+ (React + Vite) --> POST /mcp --> MCP Server (Node.js + TypeScript) | | | +-- screen_situation | +-- challenge_identity | +-- guardian_alert | +-- verify_claim | +-- safe_handoff | | | +-- Amazon Bedrock (AI analysis) | +-- Amazon DynamoDB (data store) | +-- Amazon SNS (guardian alerts) | +-- REST: /setup, /alerts/:userId, PATCH /alert/:alertId (guardian dashboard)
Backend — MCP Server:
Built with TypeScript and @modelcontextprotocol/sdk Uses McpServer, Zod for type-safe tool schemas, and StreamableHTTPServerTransport Each tool returns structured JSON in content[0].text — clean and predictable for Alexa+ to process Protocol version: 2025-11-25 Endpoints: POST /mcp, GET /mcp, DELETE /mcp
Frontend — Simulated Alexa+:
Built with React and Vite Simulates a voice assistant conversation in the browser Guardian dashboard shows live alerts with approve/block controls Setup panel lets users configure their safe-word question and guardian contact
Safe-by-Default Design:
Every AWS call is wrapped in a graceful fallback If Bedrock, DynamoDB, or SNS is unavailable, the server uses deterministic in-memory heuristics The demo never crashes or returns an unsafe response due to a missing cloud config This makes the demo fully reproducible without any AWS account
Evaluation Pipeline:
50-case labeled dataset with scam, legitimate, and suspicious samples Run npm run evaluate to get precision, recall, F1, and confusion matrix Baseline uses the same deterministic classifier as the no-AWS fallback — fully auditable Challenges We Ran Into
MCP Streamable HTTP and CORS in the browser The MCP 2025-11-25 protocol required StreamableHTTPServerTransport with explicit CORS handling and response-header exposure. This is not covered in official examples and took significant debugging. We documented the solution in our friction log so future developers can avoid the same issue.
Making the demo work without live AWS credentials A real safety tool cannot have a single point of failure. We built deterministic fallbacks for every AWS adapter — Bedrock, DynamoDB, and SNS. The demo produces consistent, meaningful output whether or not the cloud is connected. A missing API key is never a safety failure.
Data minimization without breaking the user experience We never store a full safe-word answer — only a first-character hint for local verification. Guardian alerts contain concise summaries, never audio recordings or conversation transcripts. Designing around this constraint while keeping the UX useful required careful thought at every step.
Designing calm UX for panicked users When a person is being scammed, they are often scared, confused, and in a hurry. A cluttered or alarming interface makes things worse. Every Safeword response is written to be brief, calm, and action-oriented — reducing anxiety rather than amplifying it.
Accomplishments That We're Proud Of Zero false positives across 50 test cases — we never incorrectly flag a legitimate interaction as a scam A fully working Streamable HTTP MCP server with 5 composable safety tools on the latest 2025-11-25 protocol A live guardian dashboard with real approve/block controls backed by DynamoDB Privacy-first architecture — no audio recording, no full safe-word storage, no surveillance transcripts A fully reproducible evaluation pipeline — anyone can clone the repo and verify our precision/recall numbers in minutes 100% open source under MIT license, ready for community contributions What We Learned MCP tools can be designed as composable safety primitives — each tool does one thing, does it well, and chains cleanly with the others "Safe by default" is an engineering value, not just a design slogan — it has to be built into every layer, from fallbacks to data storage Friction is a feature when building for vulnerable users — the deliberate pause before action is what makes Safeword valuable, not an obstacle Alexa+ has vast untapped potential as a trust layer — it is already present in millions of homes and already trusted by the people who need this most Building for the most vulnerable users produces better design decisions for everyone What's Next for Safeword Real Alexa+ integration — When developer preview access opens, we will connect Safeword directly to Alexa+ using the official MCP integration Multi-language support — Scam patterns, challenge questions, and safe handoff resources in Hindi, Tamil, Telugu, and other regional languages Community scam pattern dataset — An open, community-contributed dataset of fraud patterns that powers the screen_situation classifier Guardian mobile app — A dedicated iOS/Android app so family members can receive alerts and approve/block actions instantly from their phone Verified caller registry — Integration with telecom APIs to cross-check caller IDs against known fraud numbers in real time
Built With
- amazon-alexa
- amazon-bedrock
- amazon-dynamodb
- amazon-sns
- node.js
- react
- typescript
- vite
Log in or sign up for Devpost to join the conversation.