V1 — MCP-channel · Live

Your talents speak. Dr.Social listens.

Multi-tenant AI orchestration for the agencies behind today's voices. Persona, content, inbox, and moderation agents propose every post — and nothing publishes until the talent clicks approve.

Owner-approved publishing Postgres RLS tenant isolation Direct-MCP first
A control surface showing draft posts across LinkedIn, X, Instagram and YouTube converging on a central Approve gate
Live · drsocial-production.up.railway.app
Who it's for

Three audiences. One workflow.

Dr.Social separates each role's surface so nobody touches what they shouldn't — and nothing publishes without the talent's click.

For agencies

Run a tenant. Sign on as many talents as you can serve. The dashboard surfaces queues, inboxes, accounts, and growth — across every talent under your roof — without leaking data between them.

For talents

One personal portal. See every draft, approve per-platform, request specific posts by email or form, watch your own growth. Your account doesn't move without your hand on the steering wheel.

For ops

One FastAPI service on Railway: api + worker + ticker in one process. Schema in plain SQL migrations. Every action is an auditable MCP tool call. No ceremony, no black box.

How it works

From sign-up to your first approved post — in one afternoon.

Four steps. The AI does the drafting; the talent does the approving; the platform does the publishing.

1

Onboard the talent

Profile, voice, pillars, do-not-say list. Or paste their public socials and let the agents pull a starting kit automatically.

2

Connect accounts

One OAuth click per platform — LinkedIn, X, YouTube, Facebook, Reddit, Instagram-read. Tokens vaulted, channel locked.

3

AI proposes posts

The persona agent picks a pillar; the content agent writes platform-native copy; the moderation agent filters before the talent sees it.

4

Talent approves, we publish

Drafts land in a per-platform approval queue at /talent/<slug>. One click → live on the wire. Anything not approved stays a draft.

Approval queue

Nothing publishes unless the talent says so.

Drafts arrive at /talent/<slug> with the platform, the copy, and the media side by side. Approve per-platform — what reads well on LinkedIn shouldn't always go out on X.

  • Per-platform approve / skip — single click, no confirm dialog
  • Reject with a one-line reason; the persona agent learns
  • Request posts by email — catch-all forward → talent slug → queue
  • Owner-only DM replies — drafts wait until you sign off
dr-social.app / me # queue
LinkedIn · Awaiting approval · 2m ago
Five lessons I learned shipping our first multi-tenant SaaS — owner-approval gates aren't friction, they're trust infrastructure…
Approve Skip
X · Awaiting approval · 7m ago
If your AI agent ships a post without your say-so, that's not an "assistant." That's a hostile takeover.
Approve Skip
Instagram · Awaiting approval · 12m ago
Behind the scenes from this morning's shoot. New characters loading…
Approve Skip
Architecture pillars

Designed for trust and scale — from day one.

Four decisions that aren't on the demo, but show up every day in production.

Channel isolation

Every account is bound to one execution channel forever — DB trigger enforces it. No accidental cross-pollination, no token reuse.

Direct MCP first

Vendors with their own MCP server plug in directly. Composio is the fallback for platforms without one — config, not code.

Postgres RLS

Tenant isolation is enforced at the database, not the application. Composite foreign keys make cross-tenant attachment impossible by design.

One process, two jobs

API + worker + ticker in one FastAPI service. Single Dockerfile, single Railway deploy, single set of logs. Splits cleanly if you ever need it.

Mini-render of the operator dashboard overview with stat cards and a 30-day growth chart
Operator dashboard — Overview · Talents · Accounts · Queue · Inbox · Settings
A phone showing the talent approval queue with three platform drafts
/talent/<slug> — owner approval gate
Six platform tiles (LinkedIn, X, YouTube, Facebook, Reddit, Instagram) connected to a central Dr.Social hub
Six platforms · One queue
Live now

Open the dashboard. Open the talent portal. Read the architecture.

The first ship is here. Walk every page; the design intent is the same as the production behavior.