Assistant Dashboard
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Assistant Dashboardadd a task to call the dentist tomorrow at 3pm"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Personal Command Center
A private dashboard that your AI assistant writes to. Your assistant adds tasks, notes, reminders, calendar items, and messages. You open the dashboard on your phone or computer and see everything in one place.
Only you can log in. Your AI tools connect with a secret token that you create and can cancel at any time.
Prefer an AI coding agent? Open Claude Code or Codex and say: Set up this dashboard for me by following AGENT-SETUP.md. The full prompt:
Set up my Personal Command Center dashboard from https://github.com/thebpandey/command-center-starter. Clone it into a new folder, then follow AGENT-SETUP.md in the repo step by step. Ask before each step that changes my accounts, stop whenever I need to log in or paste a key, and never show my keys or tokens in the chat.Screenshot: add a screenshot of the Today page here
Pages: Today, Tasks, Calendar, Documents (your Library), Messages, Activity, Triage rules, and Settings.
Tasks with due dates also show on the Calendar, and a task can be linked to a calendar event.
Built with: Next.js (the website), Supabase (the database and login), and MCP (the "plug" that lets AI tools read and write your data).
What you need
All three accounts are free.
A GitHub account
A Supabase account
A Vercel account (sign up with your GitHub account, it is easiest)
Plan for about 15 minutes.
Related MCP server: LifeOS MCP Server
Words you will see
Environment variable: a setting the app reads when it starts, like a password stored outside the code.
Token: a long secret string that lets an AI tool use your dashboard. Treat it like a password.
MCP server: the address an AI tool connects to so it can use your dashboard.
Deploy
Step 1: Set up Supabase
Go to the Supabase dashboard and click New project.
Pick a name (for example
command-center), set a database password (save it somewhere safe), pick the region closest to you, and click Create new project. Wait a minute or two until it finishes.In the left menu, click SQL Editor.
Open the file
supabase/setup.sqlin this repository, click the copy button, and paste everything into the SQL Editor.Click Run. You should see "Success. No rows returned."
Collect three values and keep them in a note for Step 2:
Project URL: click Connect at the top of your project page. It looks like
https://abcdefgh.supabase.co.Publishable key: go to Project Settings > API Keys. Copy the key that starts with
sb_publishable_.Secret key: on the same page, copy (or create) the key that starts with
sb_secret_. This one is private. Never share it or paste it into a chat.
You will come back to Supabase in Step 3.
Step 2: Deploy to Vercel
Click this button:
Vercel asks to create a copy of this code in your GitHub account. Keep the name and choose Private if asked.
Fill in the four settings:
Name
What to paste
NEXT_PUBLIC_SUPABASE_URLYour Project URL from Step 1
NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEYYour
sb_publishable_...keySUPABASE_SECRET_KEYYour
sb_secret_...keyOWNER_EMAILThe email address you will log in with. Only this address can log in.
Click Deploy and wait about two minutes.
When it finishes, copy your app address. It looks like
https://command-center-abc123.vercel.app. In this guide we call ithttps://<your-app>.vercel.app.
Optional: the app shows dates in US Central time by default. To change it, in Vercel go to Project > Settings > Environment Variables, add OWNER_TIMEZONE with a value like America/New_York or Europe/London, then redeploy.
Step 3: Tell Supabase your app address
The login email contains a link. Supabase only sends people to addresses you approve.
In Supabase, go to Authentication > URL Configuration.
Set Site URL to
https://<your-app>.vercel.appUnder Redirect URLs, click Add URL and add
https://<your-app>.vercel.app/auth/callbackClick Save.
Step 4: Log in
Open
https://<your-app>.vercel.app.Type your
OWNER_EMAILaddress and click Email me a sign-in link.Open the email from Supabase and click the link. You are now logged in.
Any other email address gets the same "check your email" message, but no email is ever sent to it.
Step 5: Create a token
In the dashboard, open Settings.
Type a name (for example
Main assistant) and pick a scope:Full: can read and write. Use this for your main assistant.
Read-only: can only read. Use this for helper bots that only need to look things up.
Click Create token and copy it right away. It starts with
acc_and is shown only once.
Step 6: Connect an AI tool
Your MCP server lives at https://<your-app>.vercel.app/api/mcp.
Grok Bot (or any tool that only accepts a URL): paste this into the Bot's chat, with your app address and token filled in:
Connect this MCP server as "Assistant Dashboard": https://<your-app>.vercel.app/api/mcp/t/<token>The token is inside this URL, so the URL itself is a password. Do not post it anywhere. If it leaks, revoke the token in Settings and create a new one.
Claude Code (sends the token in a header, which is safer): run this in a terminal:
claude mcp add --transport http assistant-dashboard https://<your-app>.vercel.app/api/mcp --header "Authorization: Bearer <token>"Other tools: use the URL https://<your-app>.vercel.app/api/mcp and the header Authorization: Bearer <token>. If the tool has no place for a header, use the /api/mcp/t/<token> address from the Grok example.
To test it, ask your assistant: "Add a task called Test my dashboard." Then check the Tasks page.
Troubleshooting
Problem | Fix |
The deploy failed with "Missing required env var" | One of the four settings is empty or misspelled. In Vercel, open Project > Settings > Environment Variables, fix it, then go to Deployments and click Redeploy. |
No login email arrives, or "Could not send the link" | Check spam. Make sure you typed exactly the |
The email link opens | Redo Step 3. The Site URL and Redirect URL must match your Vercel address exactly, with |
"That sign-in link is invalid or expired" | Links expire after one hour and work only once. Request a new one. Open it in the same browser where you asked for it. |
The SQL Editor shows "already exists" errors |
|
Pages show a database or permission error | Make sure you ran all of |
The AI tool says "unauthorized" or 401 | The token is wrong, revoked, or cut off when copying. Create a new token and try again. |
The AI tool can read but cannot add anything | You used a Read-only token. Create a Full token. |
I changed my email | Update |
Security notes
Row Level Security (RLS) is on for every table. Even though the publishable key is visible in the browser, the database only returns rows that belong to the logged-in owner. Visitors who are not logged in see nothing.
The secret key (
SUPABASE_SECRET_KEY) is used only on the server. Never put it in code, a chat, or a screenshot.Tokens are stored only as a scrambled fingerprint (a hash), so even the database does not hold the real token. Revoke any token you no longer use in Settings.
Never commit
.envfiles. This repository's.gitignorealready blocks them. Use.env.exampleas the template.This is a personal, single-user app. It is not built for sharing with a team.
Run it on your computer (optional)
You need Node.js 20 or newer and pnpm.
cp .env.example .env.local # then fill in your real values
pnpm install
pnpm devOpen http://localhost:3000. Add http://localhost:3000/auth/callback to Supabase Redirect URLs so the login link works locally.
Checks: pnpm lint, pnpm typecheck, pnpm test:unit. The full pnpm test also runs database tests against the Supabase project in .env.local. They create and delete test rows, so only run them against a test project.
License
MIT. See LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Task management for people and AI agents, with scoped OAuth access to issues, projects, and docs.
Task management for people and AI agents, with scoped OAuth access to issues, projects, and docs.
Governed memory and workspace for any AI: tasks, calendar, mail and pages, with per-action consent.
Kanban tasks and project notes for AI clients, with OAuth and per-project read or write grants.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to read and update a user's personal manifest (portable context) through a secure, token-based connector.MIT
- AlicenseNot gradedqualityBmaintenanceEnables an AI agent to manage personal tasks, calendar events, and projects through 12 tools covering CRUD operations, cross-entity search, daily analysis, and multi-step action planning. Supports natural-language requests that are orchestrated into real actions with real-time streaming updates.11 npmMIT

The Marginofficial
FlicenseNot gradedqualityCmaintenanceEnables MCP-compatible assistants to connect to a user's workspace, read across boards, notes, checklists, habits, money, meals, chores, and chat, and make scoped additions, changes, or removals with attribution.-- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to read and edit projects, tasks, client requests, comments, and settings over the Model Context Protocol, deployed with the app and authenticated via read-only or read-write bearer tokens scoped to the creating user.42 npmMIT