Inspiration

AI assistants are already good at understanding what people ask for. The harder problem begins after the conversation ends. Imagine saying:

“Alexa, get my AC serviced this week under ₹2,000, but not Thursday.”

Understanding the request is easy. But what happens if the chosen provider cancels after you approve it? What if the replacement is over budget? What if the task has to wait until tomorrow, the application restarts, or the original conversation is no longer available?

We built Relay to solve that problem. Relay turns a user’s request into a durable execution contract. It remembers the goal, budget, deadline, restrictions and who is allowed to approve important actions. The agent can adapt when the real world changes, but it cannot silently rewrite what the user originally asked for.

What it does

Relay is a self-hosted MCP server for Alexa+-style agent experiences. Instead of treating an AI request as a single conversation, Relay carries the task through its full lifecycle: understand → remember → act → ask for approval → recover from failure → wait → resume → explain

For example, in our HomeOps demo:

  1. A user asks Alexa to service an AC for under ₹2,000 and not on Thursday.
  2. Relay stores those conditions as a durable contract.
  3. A provider is selected and human approval is required before spending.
  4. If that provider later becomes unavailable, the old approval is invalidated.
  5. Relay checks replacement providers against the original budget, deadline and excluded day.
  6. Only valid alternatives can continue.
  7. If the task needs to wait, Relay persists the state and schedules a future wake-up.
  8. AWS Lambda restores the task later and Relay continues from the saved state.
  9. A decision receipt explains what happened and why.

The important idea is simple:

The user’s rules survive even when the world changes.

Relay Shield

We also built Relay Shield, a scam-payment protection flow. A suspicious message can be analyzed for scam signals and combined with payment context. Relay then applies a deterministic policy that can ALLOW, WARN, HOLD or BLOCK the payment. When a payment is placed on hold, Relay can ask a trusted family member for approval using a one-time, context-bound code. If nobody responds, the payment remains blocked. A model may help identify risk, but it cannot authorize a payment. High-risk decisions remain controlled by deterministic policy and explicit human approval. This is a hackathon simulation and does not connect to a real bank or move real money.

How we built it

Relay uses Model Context Protocol 2025-11-25 with Streamable HTTP and is publicly deployed on AWS.

The main infrastructure is:

  1. Amazon ECS Express for the public MCP backend and web experience
  2. Amazon ECR for container images
  3. Amazon DynamoDB for durable task, case and audit state
  4. Amazon EventBridge Scheduler for future wake-ups
  5. AWS Lambda for restoring and resuming persisted work
  6. AWS IAM for runtime permissions
  7. Python and boto3 for the backend
  8. React, Vite and Node.js for the simulated Alexa+ experience
  9. Pytest for unit, integration and end-to-end validation The original Relay workflow exposes 17 MCP tools, 2 resources and 1 prompt. Relay Shield adds another 9 tools, 1 resource and 1 prompt.

Challenges we faced

The hardest part was not making the agent perform an action. It was making sure the agent still respected the user’s original intent after something changed. One recovery bug allowed an invalid replacement option to reappear after a provider failure. We reproduced it, fixed the recovery logic and added regression tests. We also worked through deployment and integration issues involving MCP transport behavior, Docker images, AWS IAM, DynamoDB state, EventBridge scheduling, Lambda execution and cross-platform development. Those problems led us to document a detailed engineering friction log instead of hiding the rough edges.

What we learned

We learned that safe agentic systems need more than model reasoning. Long-running agents need explicit state, deterministic rules, approval boundaries and an audit trail. We also learned that consent should belong to a specific action. If the execution context changes, the old approval should not automatically carry over.

For us, the key lesson became:

Preserve intent. Preserve authority. Survive change. Resume safely.

What's next

Relay’s HomeOps demo focuses on household services, but the same execution model could support travel disruption recovery, procurement, appointments, event vendors, subscriptions, relocation and other long-running tasks. Future work includes stronger production authentication, real provider integrations, rate limiting, payment integrations and reusable durable-workflow primitives for MCP agents.

Built With

Share this project:

Updates

Submission history