Inspiration
My inspiration for this app came from talking to my friends who work mostly in furniture construction, they explained their frustrations around managing stock manually, or on excel sheets, which included having to update stocks after each jobs, and all of this being centralized to just one or two people in charge of the stock as well made it even more complicated.
I wanted to make a tool that made all of this a lot easier, decentralized control, and also a clear audit trail of material use.
What it does
Invy is an AI-powered inventory and production assistant for small to medium teams of manufacturers. Users can add materials, record opening stock, set stock thresholds, and define product recipes that specify the materials needed for each finished product. When they create a production order, Invy reserves the required materials. When they confirm that production is complete, it records material consumption and adds the finished products to stock. Users can also inspect inventory movements and schedule recurring production records through natural-language requests, such as “Produce one wooden chair every Friday at 2 p.m.” Scheduled runs update inventory records and send a completion email linking back to the result. Manual changes pass through a review and confirmation step, giving users control over what gets saved.
How we built it
We built Invy with TypeScript across three main layers:
- Frontend: Next.js, React, and Tailwind CSS provide the conversational interface, including forms, review cards, and inventory tables.
- AI agent: Strands Agents connects to Amazon Bedrock to interpret requests and select the appropriate tools.
- Inventory backend: An MCP server exposes inventory and production operations, with PostgreSQL and Prisma storing the underlying records.
Clerk handles authentication and workspace access.
We also have a small cloud workflow that allows us to schedule events, this was built with AWS Eventbridge Scheduler, Lambda, and SES for emails, with our services deployed on Vercel, and AWS ECS
The agent proposes actions; the backend validates and executes them after confirmation. Forms, tables, and results come from structured backend responses and the frontend renders the relevant component, keeping the interface grounded in actual inventory data.
Challenges we ran into
One major challenge was having the agent properly pick up, interpret requests, call the right tools, and then format the data accordingly, I noticed that better documentation and also more powerful models improved this. however I was unable to get access to the best models on AWS bedrock for some reason, and only had access to the Nova model, which doesn't work as well as some of the other frontiers
Scheduling introduced additional complexity: mostly in terms of properly managing the infrastructure behind it. a lot of services depend on each other and all have to deployed and updated at the same time, we found that AWS cloud formation was very helpful for deploying our cloud resources
Accomplishments that we're proud of
Getting the production scheduler to work properly, we can have manufacturers automatically update thier ledger in the cloud while thier real orders are being made
What we learned
Learned a lot about orchestrating multiple AWS services, deploying multiple resources, and config via AWS Cloud Formation, as well as working with Agents and MCP servers, properly defining and structuring thier tools
What's next for Invy
Work with more manufcaturers, try to polish out the edge cases of the application, work on adding more automated workflows, from automated supllier outreach and discovery, to having multiple production checks, etc
Built With
- agents
- amazon-web-services
- cloudformation
- express.js
- lambda
- mcp
- neon
- next
- postgresql
- typescript
- vercel
Log in or sign up for Devpost to join the conversation.