Case study
Internal Operations Agent
An agent that reads project state from MCP, Jira, and GitHub — and writes the daily standup.
sanitized project coverSummary
Built a company agent bound to projects, slugs, and lenses. It retrieves project context, finds blockers, and generates daily group updates without a human in the loop.
Problem
Daily standups eat engineering time and produce updates that are out of date by the time they're spoken. The information already exists — in Jira, in GitHub, in the project's own MCP surface — but no human wants to assemble it by hand every morning. The naive fix ("ask GPT to summarize") fails because free-form prompts hallucinate blockers that aren't there and miss the ones that are.
Approach
I scoped the agent narrowly: it is bound to project slugs and lenses, not free-form prompts. Each project exposes an MCP surface; the agent walks Jira and GitHub through typed tool calls, pulls in time-tracking data, and assembles the daily update against a fixed lens — what shipped, what's stuck, what's at risk. The synthesis step happens last and only against the structured evidence the agent has already gathered. That keeps the output grounded. Blockers are surfaced because a ticket actually stalled, not because the model guessed. The deploy is unceremonious: the agent runs on a schedule, posts the group update where the team reads it, and stays out of the way. No interactive chat surface; the right amount of agent for the job.
Architecture
Result
The agent writes daily group updates for engineering with no human in the loop. It freed roughly half a dev-day per week across the team and removed standup as a ritual. Shipped, indexed against the right tools, and finding its first real users.
Highlights
- Bound to project slugs and lenses, not free-form prompts
- Reads timestamp/work-tracking data and synthesizes updates
- Saved real engineering time daily — no more standup ritual
Have something similar?