Centauri CRM - AI-Powered Business Operations Assistant
Inspiration
We worked directly with the team at Centauri to understand how they run their marketing agency day to day.
They manage clients, shoots, editors, and billing across multiple tools. Simple questions like “which clients are at risk?” required checking the CRM, scanning Slack, and reviewing production status manually.
The problem was not lack of data. The problem was fragmentation.
We set out to build a system where one AI assistant could read the entire business context and act on it in real time.
What it does
Centauri CRM connects Claude directly to your business operations through MCP (Model Context Protocol). With a single natural language command, Claude can:
Run automated workflows: Run weekly review triggers a full business analysis that fetches CRM data, generates risk insights, sends a summary to Slack, and creates a detailed Notion report
Query live business data: Which clients are at risk? analyzes happiness scores, overdue videos, and billing status to surface problems before they escalate
Take cross-platform actions: Claude can send Slack messages, create Notion pages, and search Google Drive assets - all from one conversation
Generate actionable insights: AI-powered risk scoring identifies at-risk clients, production bottlenecks, stale leads, and billing issues
The magic is in the orchestration - one command like run weekly review triggers 5+ tool calls, aggregates data from multiple sources, and outputs to multiple destinations.
How we built it
Architecture:
***MCP* Server** (Python): Exposes 12+ tools to Claude via the Model Context Protocol
Supabase: PostgreSQL database storing clients, videos, shoots, leads, contracts, billing
Integrations: Slack (Block Kit messages), Notion (structured pages), Google Drive (asset management)
Workflow Engine: Orchestrates multi-step operations with graceful error handling
Key components:
Data Layer: Tools like get_clients, get_videos, get_billing_records fetch and normalize CRM data
Insight Engine: Analyzes data to generate risk scores and recommendations
Formatters: Transform data into Slack Block Kit and Notion block formats
Workflow System: Chains tools together - fetch data, generate insights, send Slack, create Notion
Tech stack: Python, FastAPI, MCP SDK, Slack SDK, Notion API, Google Drive API, Supabase
Challenges we ran into
***MCP* server spawning**: Claude Desktop couldn't find Python - solved by using the full venv path instead of just python
Notion **API validation**: The arrow emoji → isn't in Notion's allowed emoji set - had to replace with valid emojis
Notion **100 block limit**: Weekly reports exceeded the limit - condensed formatting by combining items with | separators
Slack permissions: Bot tokens need specific scopes (chat:write) and bots must be invited to channels
Error handling: Notion's APIResponseError doesn't have a .message attribute - required using getattr() for safe access
Accomplishments that we're proud of
One-command automation: Run weekly review does in 3 seconds what used to take 30 minutes of manual work
Graceful degradation: If Slack fails, the workflow continues and still creates the Notion report
Real production data: This isn't a demo with fake data - it's connected to a real agency's CRM
Clean **MCP integration**: Claude Desktop sees our tools natively and can reason about when to use them
What we learned
MCP is incredibly powerful for giving AI assistants real-world capabilities
Error handling is critical when chaining multiple external APIs
Formatting matters - Slack Block Kit and Notion blocks have specific requirements
The last mile problems (permissions, paths, emojis) take longer than the core logic
What's next for Centauri CRM
This is going to production. Next steps:
Scheduled workflows: Cron-triggered daily reports and weekly reviews
Two-way sync: Update CRM records through Claude, not just read them
More integrations: Calendar scheduling, email automation, invoicing
Custom workflows: Let users define their own multi-step automations
Mobile alerts: Push notifications for high-severity insights
Built With
- fastapi
- mcp
- python
- slackapi
- supabase
Log in or sign up for Devpost to join the conversation.