The admin dashboard your vibe-coded app forgot.
Users, analytics, roles, broadcasts, AI tools and integrations, connected to your existing app in minutes.
Built for apps created with Cursor, Lovable, Bolt, Replit, Claude Code and traditional frameworks.
| Hana | free | Active | 6 h ago |
| Wen | pro | Active | 6 h ago |
| Nina | pro | Active | 8 h ago |
| Tara | pro | Active | 11 h ago |
| Yara | free | Active | 11 h ago |
Three ways it is different from an admin builder
Retool, Appsmith and AdminJS help you build an admin. VibeAdmin is the admin, and it is made for AI tools to install and to use.
AI-installable
Cursor, Claude Code or Codex can integrate it from a single generated prompt, tailored to your stack.
AI-operable
Look up users, read stats and draft emails in natural language through MCP, with guarded writes.
Agent-accessible
Every project has an API, an SDK and an MCP endpoint from the first minute.
Connect what you already use
Supabase connects natively. Everything else connects through the REST API, SDK or webhooks; native Firebase and Clerk connectors are planned.
Everything your app needs after launch
Users
A searchable table and a detail page for every person, with safe actions.
Analytics
Signups, active users, revenue and top features from the events you send.
Roles & audit
Owner, Admin, Support and Analyst roles, with an append-only log of every change.
Broadcast email
AI-written product updates with unsubscribe and bounce handling built in.
AI & MCP
Let Claude Code or Cursor look things up and prepare actions, within scoped keys.
API & SDK
Everything in the UI is in the API. Push users and events with a few lines.
Every user, one search away
Search by name, email, ID or metadata. Filter by plan, verification, activity and your own fields. Open a person to see what they did and act on it.
- Configurable columns, including your custom fields
- Activity timeline, usage, emails and notes per user
- Edit, change role, suspend, verify, reset password, delete
- Confirmations on risky actions; every action audited
Write the update in one sentence
Describe what shipped, pick a tone, and get a subject, preview text and body to edit. Test it, check the audience, send it through your own Resend account.
Compliance built in
Unsubscribe link, suppression list, bounce and complaint handling, and a preference center.
Privacy-first AI
The model writes from your description only. It never sees your users' data.
Per-broadcast stats
Sent, delivered, opened, clicked, bounced and unsubscribed, with rates.
Know how your app is doing without a data team
Total users, new signups, active users, verified rate, paid users and revenue, plus growth, registrations, DAU/WAU/MAU and top features. It fills itself in as you send events.
Ask in plain language, through your AI tool
Connect Claude Code or Cursor to your project's MCP server and ask who signed up this week, which users are on the pro plan, or to draft an announcement.
A chat assistant inside the dashboard is planned. Today, ask through any MCP-capable tool.
Give agents safe, scoped access
14 tools for users, stats and email. A key only sees the tools its scopes allow, sending email needs explicit confirmation, and every write lands in the audit log.
claude mcp add --transport http vibeadmin https://www.easy-admin.solutions/mcp \ --header "Authorization: Bearer $VIBEADMIN_API_KEY"
Whatever you built it with
Two ways in, both under five minutes
Let your coding agent do it, or write two calls yourself.
Paste into Cursor, Claude Code or Codex
Integrate VibeAdmin into this app.
1. Read VIBEADMIN_API_KEY from a server-side environment variable. Never expose it to the browser.
2. When a user signs up or changes, POST https://www.easy-admin.solutions/v1/users with { id, email, name }.
3. For important actions, POST https://www.easy-admin.solutions/v1/events with { name, userId }.
4. Wrap calls in try/catch with a short timeout so the app keeps working if VibeAdmin is down.Or use the SDK
import { AdminClient } from "@vibeadmin/sdk";
const admin = new AdminClient({ apiKey: process.env.VIBEADMIN_API_KEY! });
await admin.users.upsert({ id: "user_123", email: "ada@example.com", plan: "pro" });
admin.track("workflow.created", { userId: "user_123" });The SDK is not on npm yet; the REST API takes the same two calls. See the docs.
Built to be trusted with your users
Least privilege
Integrations are read-only by default. Write access is opt-in per connection, and the permission screen lists exactly what VibeAdmin can do.
Encrypted credentials
Service-role keys and provider tokens are encrypted with AES-256-GCM using a key derived per project. They are never returned by the API after saving.
Isolated environments
Development, preview and production data are separate. A test key cannot read production and a live key cannot read development.
Scoped, hashed API keys
Keys carry explicit scopes, are stored as hashes, shown once, and can be rotated or revoked. Last-used times are tracked.
Priced by managed users, not by seats
Development and preview data is free. No per-seat charges, ever.
Free
For side projects and launches.
- 1 project
- User management
- Basic analytics
- Basic broadcasts
Starter
For apps with real users.
- AI email writing
- Segments
- Webhooks
- MCP server
- 3 projects
Pro
For growing products and teams.
- Multiple admins
- Advanced analytics
- Feature flags
- Integrations
- 10 projects
Business
For larger deployments.
- SSO
- Audit retention
- Priority support
- Custom limits
- Unlimited projects
Questions people ask
What is VibeAdmin?
VibeAdmin is an admin dashboard and control plane for SaaS and vibe-coded apps. You connect your existing app and get a user table, user detail pages, roles, analytics, AI-written email broadcasts, an audit log, a REST API, a JavaScript SDK and an MCP server, without building an admin panel yourself.
What does VibeAdmin do?
It shows and manages the people using your app: search and filter users, edit or suspend them, see signups, active users and revenue, email segments of users with AI-drafted messages, and let AI tools such as Claude Code or Cursor operate all of this through MCP. Every action is permission-checked and written to an audit log.
What platforms and stacks does VibeAdmin support?
Anything that can call an HTTP API: Next.js, React backends, Node, Python and others, through the REST API or the JavaScript SDK. Supabase has a native connector today. Firebase and Clerk work through the API or webhooks now; native connectors are planned. It is used with apps built in Cursor, Lovable, Bolt, Replit and Claude Code as well as traditional frameworks.
How is VibeAdmin integrated into an app?
Three ways, pick one: connect a Supabase project with its URL and a service-role key; point VibeAdmin at an existing REST endpoint that lists your users and map the fields; or push users and events from your backend with the API, the SDK or webhooks. Your app stays the source of truth; VibeAdmin keeps a synced copy. The Get started page can also generate a prompt for your coding agent that does the integration for you.
Do I have to migrate my users or replace my auth provider?
No. VibeAdmin does not replace Supabase, Clerk, Firebase or your own login. It reads users from your system, and where you allow it, writes changes back through that system. Write access is opt-in and read-only is the default.
How much does VibeAdmin cost?
Free covers 1 project and 500 managed users. Starter is $29 per month for 5,000 users and adds AI email, segments, webhooks and MCP. Pro is $79 per month for 25,000 users and adds multiple admins, advanced analytics, feature flags and integrations. Business starts at 100,000 users with SSO, audit retention, priority support and custom limits. Pricing is based on managed users in production, with no per-seat charge, and development and preview data is free.
How is authentication handled?
Operators sign in with email and password and get a short-lived session. Programs authenticate with API keys that belong to one environment and carry scopes, for example users.read or broadcast.send. Keys are stored hashed, shown once, and can be rotated or revoked. Roles (Owner, Admin, Support, Analyst) decide what each team member may do.
Does VibeAdmin support Supabase?
Yes. The Supabase connector uses your project URL and a service-role key to read auth.users and, if you allow-list them, tables such as profiles. It is read-only by default; suspend, restore, edit and delete are opt-in. The key is encrypted per project and never shown again.
Give your app the admin it forgot
Free for up to 500 users. Connect Supabase, push users with the API, or paste one prompt into your coding agent.