Live demo
How Dr. MJ works
Dr. MJ is the AI consultant agent on this site. It is named after founder Majid Memari, PhD, who goes by MJ, and it will tell you it is an AI if you ask. This page is the teardown: the loop it runs, the tools it can call, where you stay in charge, what each reply costs, and how we picked the model behind it. It is also a worked example of how Nexus builds agents for clients.
It consults before it sells
Understand
It opens by asking what your team does, what you are trying to build or fix, and where you are stuck. One question at a time, and it reacts to what you said before it asks the next one.
Consult
It gives specific guidance: what it would do first, the trade-offs, and a realistic sense of effort. That includes the honest answer when you probably do not need AI for the job.
Recommend
It matches the need to consulting, an NVIDIA DLI workshop, custom training, a Forward Deployed Engineer, or a mix, and calls a tool to ground any training pick in the real catalog.
Brief and snapshot
When there is enough to work with, it drafts a structured consulting brief and a readiness snapshot. Both render as cards you can read, question, and take with you.
Hand off
When you want to move forward, it asks your approval to send Majid Memari, PhD a structured summary. Nothing leaves the chat without that click.
Every tool call shows up in the conversation as a step, with what went in and what came back, so you can watch the agent work instead of taking its word for it.
The tools it can call
Six tools, all running on the server. Three of them send email, and those wait for your approval every time.
recommendWorkshop- Picks the best-fit NVIDIA DLI training from the same catalog that renders the Training page, so it cannot invent a course title. Returns the pick, why it fits, and alternatives.
assessReadiness- Scores where you stand today from what you have said and renders a short readiness snapshot. A starting point for the conversation, not a verdict.
draftConsultingBrief- Writes a structured brief: your situation in your own terms, where AI fits, the risks, what to keep with people, the recommended first step, and the questions to answer before you commit budget.
handOffToMajidNeeds your approval- Sends Majid a structured summary with your name, email, topic, and the brief if one was drafted.
emailBriefToVisitorNeeds your approval- Emails you the brief as a fixed template, with Majid copied.
emailWorkshopInfoNeeds your approval- Emails you the NVIDIA DLI workshop one-pager, with Majid copied.
You approve anything that leaves the chat
Before an email tool runs, the chat shows an approval card with exactly what will be sent and to whom, then waits. Approve, and it goes out on that request. Decline, and the agent drops it and does not ask again unless you bring it up.
Delivery is reported honestly. Sent means the mail provider accepted the message. If it did not, Dr. MJ says so, your request stays in the chat, and the card points you to the contact form.
Emails to visitors are fixed templates. The model can fill named fields, never write the message, and links, addresses, and phone numbers are stripped from those fields before anything is sent. Sends are capped per visitor and for the site as a whole.
Pick the model, see the bill
The default is Claude Opus 5, which won the bake-off below. You can switch to any of these from the toolbar in the chat. Prices are public Vercel AI Gateway list prices in dollars per one million tokens, as of 2026-09-12.
| Model | Input | Output | Role |
|---|---|---|---|
| Claude Opus 5anthropic/claude-opus-5 | $5.00 | $25.00 | Default |
| Claude Sonnet 5anthropic/claude-sonnet-5 | $2.00 | $10.00 | Budget fallback |
| GPT-5.6 Solopenai/gpt-5.6-sol | $2.00 | $10.00 | |
| Gemini 3.8 Flashgoogle/gemini-3.8-flash | $0.75 | $3.75 |
Every reply carries a stats row: model, time to first token, total time, tokens in and out, and cost. Tap it for the full breakdown, including cached tokens. The system prompt is cached on the Anthropic models, so a follow-up turn reads most of it at a fraction of the input price.
Guardrails
- Every request is checked against a schema before a model sees it. Only visitor and assistant turns are accepted, and a conversation that grows too long gets a polite ask to start a new chat.
- Each visitor has a per-minute request limit and a daily usage allowance. The site has a soft daily budget that switches replies to Claude Sonnet 5 once crossed, and a hard budget that pauses the chat and points to the contact form.
- Facts come from the same data files that render this site: the team, the NVIDIA catalog, the delivery model, pricing. The prompt also lists what the agent may not claim, including anything that would imply NVIDIA endorses Nexus.
- Tool schemas stay plain so all four models can call them, and a smoke test forces every model through the brief and readiness tools before a change ships.
- Nothing secret reaches the browser. Model calls go through Vercel AI Gateway from the server, and each request writes one usage line so cost can be charted per conversation.
How we chose the model
On 2026-09-12 we ran the same two-turn prospect conversation, a 40-person logistics company asking whether to build retrieval over its SOPs or fine-tune a model, through the real system prompt on each candidate, and scored the replies on five points: consults before it sells, specific and honest, sounds like a person, grounded, and moves the conversation forward.
| Model | Cost per conversation | Read |
|---|---|---|
| Claude Opus 5 | about $0.08 | Most human, most specific consulting answer. Now the default |
| Claude Sonnet 5 | about $0.03 | Fastest, 1.3 s to first token, and nearly as good |
| GPT-5.6 Sol | about $0.02 | Correct but terse |
| gpt-oss-20b | Generic. The previous production model |
Gemini 3.8 Flash is in the picker as the low-price option and has not been scored on this rubric yet. The bake-off is a script in the repo, so the decision can be rerun whenever a model changes. That is the point: a model choice should be a measurement, not a preference.
Built the same way for clients
This is the pattern Nexus uses on client work: a grounded prompt, a few well-scoped tools, an approval gate on anything with side effects, budgets that keep the bill boring, and an eval you can rerun. The stack here is Next.js, the Vercel AI SDK, and Vercel AI Gateway, but the pattern is what matters. If you want an agent like this for your business, start with a conversation. Dr. MJ will take it from there.