VeUP
← All case studies
Sofvie industrial-safety SaaS platform
Sofvie wordmark
Amazon BedrockNova 2 LiteNova Pro (fallback)Bedrock GuardrailsECS Fargate
Generative AI Applications · Industrial Safety SaaS

Sofvie Inc.

Production MCP-tool-orchestrated natural-language chatbot on Amazon Bedrock Nova 2 Lite — wrapping 800+ Django REST endpoints as agent tools for the Sofvie multi-tenant SaaS platform.

The customer

Sofvie Inc. is a North-America-headquartered SaaS provider focused on industrial and mining safety analytics, serving industrial-safety customers across multiple geographies. Their multi-tenant SaaS platform consolidates safety, incident, and operational data with a database-per-tenant isolation model on MariaDB.

The challenge

End-users across Sofvie's customer base were repeatedly bottlenecked by a single pattern — needing structured analytical answers from their operational data but lacking SQL expertise. Support escalations grew with the customer base; time-to-insight stayed slow. Sofvie engaged VeUP under AWS Partner Funding to govern and accelerate the production build of a natural-language chatbot embedded directly in the SaaS product.

The solution

VeUP architected and shipped a production chatbot anchored on Amazon Bedrock with Amazon Nova 2 Lite as the production primary foundation model and Amazon Nova Pro as the fallback, with Anthropic Claude on Bedrock evaluated as the tool-call-accuracy alternate. The load-bearing engineering decision: pivot away from raw NL→SQL synthesis toward MCP-tool-wrapping over Sofvie's 800+ existing Django REST endpoints. The foundation model selects the correct pre-built MCP tool for the user's intent; the tool encapsulates query construction internally; the model never writes SQL.

Production cutover landed 2026-05-13 — 28 days ahead of the contracted SOW close — with a deterministic per-question call signature, code-committed token budgets, and full per-tenant isolation via JWT-driven MariaDB routing.

Sofvie production architecture: Amazon Bedrock (Nova 2 Lite primary + Nova Pro fallback) via VPC Interface Endpoint, Amazon ECS hosting Django API + MCP server, ALB + ACM TLS, multi-AZ VPC, AWS IAM / Secrets Manager / KMS, CloudWatch + GuardDuty + Config + Security Hub, per-tenant MariaDB, CodePipeline / GitHub Actions with OIDC.
Sofvie production architecture — VeUP-rendered.

Production outcomes — customer-business KPIs

KPIResult
Time-to-market for Sofvie's new NL SaaS featureProduction cutover 2026-05-13 — 28 days ahead of contracted SOW close (2026-06-10), delivered inside Phase 4 budget.
Per-question cost predictability (SaaS unit economics)Deterministic per-question call signature: 2 Amazon Bedrock LLM invocations + ~42 MCP server tool calls per user question. Converts inference cost from an unbounded prompt-size variable to a bounded per-call constant.
Per-tenant infrastructure cost ceiling (in code)Four code-committed agent-runner controls: MCP client singleton, system prompt trimmed to 219 characters, output cap of 512 tokens/turn, ReAct recursion bound at 8 steps.
Multi-tenant scalability100% schema-from-prompt elimination: 0 schema tokens injected into LLM prompts vs the ~5,000–10,000 tokens/question PoC baseline. Schema lives in the MCP tool surface (800+ Django REST endpoints wrapped as MCP tools).
Multi-tenant isolationZero cross-tenant data-access incidents at production go-live; JWT-driven per-tenant DB routing — isolation by construction.

Customer voice

On the 2026-05-06 Model Selection Deep Dive customer review meeting, Sofvie engineering leadership confirmed the production architectural decision — the MCP-tool-wrapping design over the 800+ Django REST endpoint surface.
— Rana Hussain & Gowtham, Sofvie engineering, 2026-05-06 customer review
AWS services in production

Amazon Bedrock (Nova 2 Lite primary global.amazon.nova-2-lite-v1:0, Nova Pro fallback amazon.nova-pro-v1:0) · Bedrock Guardrails · Amazon ECS Fargate · Application Load Balancer · AWS Certificate Manager · Amazon VPC (multi-AZ) · VPC Interface Endpoints (Bedrock, Secrets Manager, KMS, ECR, CloudWatch Logs) · AWS IAM · AWS Secrets Manager · AWS KMS · Amazon CloudWatch · Amazon GuardDuty · AWS Config · AWS Security Hub · AWS CodePipeline / GitHub Actions (OIDC) · Amazon RDS for MariaDB (per-tenant).

Architecture

Well-Architected view of the Sofvie build: the pre-production PoC on the left (regex-only SQL checks, a single shared database, no PII redaction), the hardened production target on the right — MCP tool-orchestrated agent on Amazon Bedrock with per-tenant RDS for MariaDB isolation — and the six Well-Architected pillars assessed against the delivered controls.

Well-Architected diagram for Sofvie's production NL-to-data agent: previous-state pre-production PoC (regex-only SQL checks, shared database, no PII redaction, no per-tenant cost ceiling) vs. target-state AWS Cloud in us-east-1 — VPC with public subnet (AWS WAF, ALB with ACM TLS), private application-tier subnet (Amazon ECS on Fargate running Django + Daphne + Channels, a LangGraph ReAct agent, a LiteLLM proxy, an MCP server wrapping 800+ REST endpoints, an AST-based tool-call validator, and PII redaction), a private data-tier subnet (per-tenant Amazon RDS for MariaDB), Amazon Bedrock foundation models (Nova 2 Lite primary, Nova Pro fallback, Anthropic Claude evaluated as an alternate) with Bedrock Guardrails, a security and governance rail (AWS IAM, Secrets Manager, KMS, GuardDuty, Config, Security Hub, AWS Budgets and Cost Anomaly Detection), and an observability and CI/CD rail (Amazon CloudWatch with correlation-ID tracing, AWS X-Ray, CodePipeline and GitHub Actions OIDC) — with a six-pillar AWS Well-Architected Framework assessment.
Sofvie production architecture — previous state vs. target state, AWS Well-Architected Framework assessment.