Inspiration
Tradespeople lose hours every week to “back office” work: calls/texts, finding leads, checking whether a job is even feasible, and tracking supplies. We wanted to build something that makes a solo contractor feel like they have an office manager so they can spend their time on the work they’re actually paid (and proud) to do.
What it does
Crewly is an AI-powered operations layer for blue-collar pros. Our framework:
Poke/Message
- onboard tradesperson
- orchestrates everything
Voice Agent
- handles incoming calls from potential clients
- schedules appointments
- gives quotes based on materials and situation
Inventory Agent
- keeps track of current inventory with cost
- looks at cheapest prices using BrightData
- reorders low inventory using BrowserBase Stagehand
Outreach Agent
- looks on sites like Nextdoor and Craigslist to get leads on potential clients using BrowserBase Stagehand
Marketing Agent
- using OpenAI API to generate business cards and brochures
Logging Agent
- keeps track of client correspondence and customer satisfaction
Mapping Agent
- feasibility and ordering of tasks
- tracking scope of outreach
Website Agent
- uses Vercel and OpenAI API to spawn and deploy company websites
Document Agent
- generates and signs documents
How we built it
We built Crewly as a tool-driven agent system: a chat interface orchestrates an MCP tool server that exposes business actions like feasibility checks, pricing floor calculation, and inventory logic. We used structured tool inputs/outputs so the agent can reliably chain steps: collect job details → validate feasibility → estimate a minimum viable price → propose next actions. We also added Modal configuration within our MCP to allow for our agents to deploy secure and concurrent sandboxes to run code in.
Challenges we ran into
Tool wiring and reliability: making sure the agent passes the right units/types (miles vs meters, hours vs minutes). Environment + auth issues: handling missing API keys and avoiding circular imports in a multi-module tools package. Especially in handling environment with fragile dependencies, it was easy to run into issues when one part of the workflow was not properly set up. Keeping outputs safe and consistent: ensuring tools return predictable outputs.
Accomplishments that we're proud of
A working end-to-end flow from a single message to actionable ops steps.
Modular tools that are easy to extend (distance validation, concurrent sandbox runs, inventory hooks).
Clean tool semantics + documentation so the agent behaves more like a real assistant and less like a demo.
What we learned
Tool design matters as much as the model: clear names, tight schemas, and good docstrings dramatically improve correctness. “Ops” is a chain, not a single feature—small automations compound into real time saved. Debuggability is everything: structured outputs and health checks make iteration fast.
What's next for Crewly
Generalize beyond trades into any contractor's staff team to lead intake, quoting, scheduling, follow-ups, lightweight CRM, and parts/procurement plus tighter integrations (maps, calendars, messaging) so the AI can run more of the workflow autonomously.
Built With
- claude
- claude-agent-sdk
- fastapi
- google-maps
- modal
- openai
- poke
- python
- vercel



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