Inspiration
Finance and operations teams often lose time during urgent workflows because the work is scattered across spreadsheets, ERP exports, payment reports, approval threads, and engineering tickets. I wanted to build an agent that does more than answer questions. MissionOps Agent turns an ambiguous finance operations goal into accountable execution: owners, due dates, controls, GitLab issues, milestones, labels, and reports.
What it does
MissionOps Agent helps teams coordinate high-pressure finance workflows such as quarter-end close, fraud response, and vendor risk remediation.
The user enters a mission goal, context, urgency, data sources, and operating constraints. The agent then generates:
- an executive brief
- a staged timeline
- GitLab issue drafts with owners, due dates, and labels
- color-coded GitLab label plans
- Day 1 / Day 2 milestone mapping
- a control matrix for approval and audit readiness
- report pack drafts for executives, operations, and audit reviewers
- an MCP execution log that waits for explicit human approval before syncing
The core safety idea is simple: the agent can plan, but it cannot execute state-changing GitLab actions until the operator clicks Approve & sync.
How I built it
The frontend is a React and TypeScript app built with Vite. The backend uses Express locally and Netlify Functions in production. Mission planning supports Gemini through a Google AI provider path, with a deterministic fallback so judges can still try the full experience without private credentials.
The GitLab integration is implemented through the Model Context Protocol. The adapter discovers available GitLab MCP tools, shapes arguments from tool schemas, and prepares issue, label, and milestone creation actions. In demo mode, the app records the exact action trail without writing to an external repository. In live mode, the same approval-gated path can create real GitLab labels, milestones, and issues.
I also added backend tests for approval enforcement, grounding-data anomalies, deterministic risk scoring, MCP error handling, token-limit style truncation, and hosted UI execution.
Challenges I faced
The hardest part was making the project feel like a real operations tool instead of a chatbot wrapper. I had to design around accountability: who owns each task, what evidence is needed, what approval is required, and what happens if the data is messy.
Another challenge was safe execution. Since this is a finance/compliance-style workflow, the backend needed to block direct execution attempts unless the request included a valid human approval object. I also had to make error paths judge-friendly, so invalid MCP credentials or API failures return readable UI messages instead of raw stack traces.
A final challenge was demo reliability. The public version runs in demo mode so anyone can test it, while the code still includes the live GitLab MCP path for sponsor evaluation.
What I learned
I learned how to structure an agentic workflow around a system of action instead of only a system of conversation. The most important design choice was separating planning from execution. That made it possible to show useful autonomy while preserving human control.
I also learned how valuable clear audit trails are. For this kind of workflow, the agent’s output is not just text. It needs to become traceable work: tickets, labels, milestones, reports, approvals, and logs.
What's next
Next I would connect MissionOps to a live sandbox GitLab repository for the final sponsor demo path, add richer file upload support for ledger and ERP exports, and expand the reporting layer into downloadable audit packs.
Log in or sign up for Devpost to join the conversation.