CRM assistant over MCP
Integration is most of the job. This project connects an agent to a system a business already runs, with the right permissions.
The brief
A sales team loses deals because follow-ups slip. They want an assistant that looks at accounts with no recent contact and drafts the next email, without anyone sharing a single all-powerful login.
What you will build
- An MCP server that exposes accounts and activities from a CRM or a mock of one
- An agent that finds stale accounts and drafts follow-ups
- Specialist handoff for billing questions
- Per-user access, so reps only see their own accounts
Requirements
| Requirement | Done when |
|---|---|
| MCP | The CRM is reached only through your MCP server |
| Permissions | A rep never sees another rep's accounts |
| Drafts | Emails are drafted, never sent, without approval |
| Failure | An expired token produces a clear message, not a crash |
What to learn it from
- OpenAI Agents SDK: handoffs and agents as tools
- MCP: build the server, with approval on risky tools
- Claude Code: MCP, skills and subagents
- Topic: SSO, OAuth and RBAC
Milestones
- Draw the integration map: systems, owners, auth
- Build the MCP server against a mock CRM
- Build the agent that finds stale accounts
- Add per-user access
- Add the billing specialist
- Break the token on purpose and handle it
How it is judged
Present the integration map and show two reps getting different results for the same question.
Stretch goals
- Connect a real CRM sandbox
- Log every tool call per user
- Schedule a weekly stale-account report
Before you call it done
Worth remembering
- Access follows the user
- Nothing is sent without approval
- The map matches what you built
Every expert started right here.