API keys on laptops.
Tokens for dozens of client ad accounts sit on people's machines. When someone leaves, nobody is sure what they still have.
Nautilus is the data and runtime your agency's marketing runs on: ad, store and email data for every client in one clean warehouse, a creative library you can search, and agents your team operates through Claude Code. We install it on your own server, under your own keys.
For performance agencies running Meta and Google for many clients.
Your best operators already get real work out of AI agents. Then the same setup has to run for every client, every day, without them sitting at the keyboard.
Tokens for dozens of client ad accounts sit on people's machines. When someone leaves, nobody is sure what they still have.
The morning report, the spend check and the rule that should fire at 6 a.m. all wait for someone to open a terminal.
Meta, Google, GA4 and the store each report their own revenue. Your team rebuilds the real figure in spreadsheets, one client at a time.
Years of ads and raw footage sit in Drive and Dropbox folders named by date. Finding last spring's winning hook means scrolling.
Pipelines into a clean warehouse, the same data behind a CLI, an MCP server and SQL, and a runtime that keeps working when everyone has logged off.
Meta, Google, TikTok, GA4, Shopify or WooCommerce, Klaviyo, your CRM and the creative folders, pulled on a schedule.
One definition of revenue, CPA and ROAS for each client, tested every time new data lands.
A Postgres warehouse with its own workspace for every client: separate schema, roles and keys.
Three doors to the same data: a CLI for Claude Code and scheduled jobs, an MCP server for teammates in chat, SQL for analysts.
Jobs and agents run on the server around the clock, every run logged. Nobody keeps keys on a laptop.
Agents write to ad platforms through one approved path only, and every new ad lands paused.
Every image and video your clients have run gets described by AI and linked to how it performed. Search it in plain English and see which visual traits show up in the winning ads, client by client.
"Find every clip where the product is on a kitchen counter and someone is smiling."
Spend, orders, refunds and returns joined for each client, by day, campaign and channel. Net CPA and contribution come from one place, with an alert when a number drifts.
Performance in, winners and losers out, new variants made inside the brand rules, visual QA, then uploaded as paused ads. Your operator approves the batch and launches. Stop rules follow the thresholds you set per client.
Postgres with vector search, layered from raw to clean to reporting tables, with metrics defined once and tested on every load.
Code-first connectors in your git repo, incremental and repeatable, with freshness checks so a stale number gets flagged.
A CLI for Claude Code and cron, a small MCP server for teammates who live in chat, and read-only SQL for analysts, all over one API.
Scheduled jobs, agents and private dashboards on the same server, behind single sign-on, every run logged with its cost.
Open-source components wherever we can. Everything lives in a git repo in your account; after setup you keep the code under a perpetual licence.
We don't host your clients' data and we don't run their campaigns. Your operators do the marketing work with Claude Code. We keep the stack alive, update it, repair it and train the team that uses it.
The more client accounts you run, the more often the same report, the same check and the same creative cycle repeat. That repetition is what the stack takes over.
That's where the stack pays for itself fastest. Running fewer? Tell us on the call and we'll say straight whether it's worth it for you.
Recorded training modules, a live Q&A session and a hands-on certification exercise for the people who run it.
White-label by default. After the full setup, each of your clients can get their own login to their creative library.
Not a fit if you want someone else to run your clients' campaigns. We build and maintain the system; your team does the marketing.
Before you roll anything out, we build the stack on five client workspaces with their real data, and your own operators run it.
A 45-minute kickoff and a private checklist of the accesses we need, checked automatically. We audit tracking first; small fixes are included.
Thirteen months of history from every source, the creative library indexed, Revenue Truth live and the Meta creative loop running up to paused ads. You get a written update every day and a 30-minute call every week.
Two people from your team search the library, check Revenue Truth and run one loop to paused ads on their own. The sprint is accepted when at least one of them passes that exercise and the figures match each platform's own reports.
The sprint is scoped and quoted in writing after a short call, and credited in full if you sign the full setup within 30 days of the sprint ending.
Every connection reads. The single write path creates paused objects, inside limits, with a log of who changed what.
No ad goes live without a person on your team approving it.
API apps are created in your own Business Manager and MCC. Tokens live in a secrets manager on your box, never on laptops.
Separate schema, roles and keys for each client. Files and figures never mix between clients; what the system learns across them stays anonymous.
Pseudonymised on the way in by default: hashed email and phone, no names or addresses. Full data only with a signed DPA.
One named SSH key with a log, which you can revoke with a single command.
Going through a security review? We send a standard pack: one-pager, DPA, subprocessors, architecture and our answers to the security questions agencies usually ask.
No. Your team does the marketing. The stack does the heavy lifting and the agents prepare the work up to paused ads. We keep the system running, update it, fix it and train your people.
On a server in your own cloud account. We don't host it. When an AI model describes an asset or generates a variant, that request goes to the model provider set up for your account.
Admin access to the client accounts in scope, a cloud account (about 15 minutes with our guide), two operators for the sprint and Claude licences for them, which you hold directly.
Yes. You can white-label it and price it your way. Your clients don't see us.
You either roll it out across your client base and we keep it running every month, or you stop. If you stop, the data stays yours, we remove our code and our access is revoked.
We read the active ads of a few of your clients in the public Meta Ad Library, tag the ones that have run longest with AI and send you the visual patterns behind them. No account access needed.
Tell us which clients to look at. We read their active ads in the public Meta Ad Library, tag the long-running ones with AI and send you the patterns behind them. No account access needed.
Get a free teardown of your clients' active adsPrefer email? hello@cassien.ai