RD Station, from pipeline to close.
RD Station CRM is now a first-class citizen inside Marketing.Chat. Ask about your pipeline in plain language and get real data back — right number, right name, on the first try.
RD Station CRM in chat
Connect the CRM and chat with your pipeline in plain language — "open deals by stage", "won this week", "today's tasks", "stuck for over 14 days". The AI fetches the real data and replies with analysis.
55 tools available automatically
Every tool exposed by RD's server shows up in chat without us shipping an update. When RD adds a new capability, you get it on your next conversation.
Smart dispatcher: thinks before fetching
Every question goes through a "dispatcher" that understands the scope before calling tools, builds an executable briefing and the executor just executes. Result: fewer wrong calls, fewer retries, faster answers.
Catalog that learns your pipeline
Marketing.Chat memorizes the real values that show up in your account. If your stages are called "Initial Qualification / Proposal Sent / Negotiation", the AI learns it on the first call and uses it on the next ones.
Filters that respect what the API accepts
The AI learned, from probes against real accounts, exactly what each RD tool accepts. For "open deals" — where there is no native filter — it applies the right strategy instead of trying invalid combinations.
ID validation cross-checks the catalog
Every ID filter is checked against your account. If the ID looks like it doesn't exist and the result is empty, the AI flags it — instead of returning an empty list silently and leaving you puzzled.
Picks the right pipeline when you call it by name
If you say "show me the SaaS sales pipeline" and your account has two pipelines with similar names, Marketing.Chat picks the right one on the first try. The catalog memorizes ID→name pairs as tools are called.
"Yes" as a follow-up now triggers the right skill
Recurring scenario: "Want me to show your Landing Pages and Forms?" — you reply "yes". Before, the AI would invent data to look helpful. Now it detects the affirmative follow-up, remembers context and pulls the real data.
Listings bring EVERYTHING, not just page one
Before, "what are my contacts?" only returned 25 items — on accounts with 70+ leads, the AI would say "3 contacts". Now there's auto-pagination up to 500 records / 30s, with an honest warning when the base is bigger.
Deterministic counts and aggregations
Same question, same answer. Common aggregations (count + sum by stage/owner, top 5 by value) are pre-computed — before, the AI would sometimes sample part of the array and you'd see "37 deals" on one run and "42" on another.
RD quick actions reworked
Optimized buttons on connect. CRM: How is my pipeline? · Deals closed this week? · Stuck for 14+ days? · Why am I losing deals? (new) · Today's tasks? · Marketing: 30-day overview (new) · Top-converting assets? (new) · Email campaign performance.
Discovery mode for the integration
Ask "what does the RD integration do?" or "do you integrate with HubSpot?" — the AI replies based on the official catalog: what's covered, what's not, what's on the roadmap. No making up features that don't exist.
RD Station Marketing — coming soon
Infrastructure ready on our side, integration blocked on RD's side (auth proxy returning 401). Once it unlocks, enabling it takes ~2h — no architectural change.
In RD Station CRM, list open deals (excluding won and lost) grouped by pipeline stage. For each stage show how many deals and the total value. Sort by descending value and highlight the 5 individual deals with the highest value. End with a recommendation: where should I focus my energy this week?
For devs and partners — technical detail
- Integration via Remote MCP (Model Context Protocol) over Streamable HTTP using the official
@modelcontextprotocol/sdk. - New client per call (no long-lived session) to isolate state across users.
- Dynamic tool discovery at runtime via
tools/list— no hardcoded list. - URL with key persisted in MongoDB with AES-256-GCM; strict origin validation (
https://mcp.rdstationmentor.com/crm, anchored). - Retry only on read-only tools (
get_*,list_*,find_*,search_*); writes are never retried on 5xx to avoid duplication. - Discovery + Capability Registry + Intent Skill working together to avoid expensive activation in conversations that don't need the CRM.
Trust in the data — no hallucination.
The first rule of Marketing.Chat is now: nothing gets said without a source. Applied simultaneously across the 4 models — Gemini, Claude, GPT and Grok.
Universal rule across the 4 models
Before mentioning any specific data (numbers, IDs, names, dates, percentages), the AI must point to a source: current tool call, dispatcher briefing, your message, uploaded file or saved memory. No source, no claim.
Empty list is empty list
When a tool returns an empty list, the AI reports "There are no open deals" — instead of inventing 62 fictional deals totaling R$ 327k to fill the void (real case that happened before the fix).
IDs without mapped names don't become invented names
If a tool returns IDs without their corresponding names, the AI asks "want me to fetch the stage names?" — instead of guessing "New, Qualified, Negotiation".
Orphan briefing = honest error
When the dispatcher decides "execute" but the tools can't run, you get "I couldn't fetch the RD data right now. Try again in a few seconds" — instead of an improvisation about another topic (real case: the AI replied about B3 when given an RD deals briefing).
Real total of records always on the table
On GA4, Meta, Ads and RD queries, a structured TOTAL_DE_REGISTROS block now appears after every call — closing the loophole of the AI "fabricating" records that didn't come from the API.
Literal request first, suggestions later
If you ask "transcribe this audio", the AI delivers the full transcription first and only then offers "want me to turn it into an email?". It used to substitute the literal request with its own interpretation.
Audio, PDF, image and video: zero invented content from metadata
If an audio came corrupted, the AI says "I couldn't transcribe because…" — instead of inventing a meeting based on the file name. Applies to all native files.
WhatsApp .opus read as real audio
Before, WhatsApp's generic MIME type confused the system, which would activate the sandbox and generate a plausible transcription based on brand context (full integrity bug). Now extension-based detection guarantees real audio.
For devs and partners — technical detail
- "Traceable source" rule injected into the system prompt of all 4 providers (Gemini, Claude, GPT, Grok).
TOTAL_DE_REGISTROSblock is structured and idempotent.- "Literal request × suggestion" encoded as a golden rule: literal first, bonus later.
- Native audio detection via extension fallback when the MIME is generic (common with
.opusfrom WhatsApp).
From chat to Google Drive in 1 click.
Every deliverable Marketing.Chat produces — plans, reports, decks, spreadsheets — goes straight to your Drive in the editable Google Workspace format.
"Open in Drive" button on every deliverable
Documents, presentations and spreadsheets generated in chat appear in a card with the Open in Drive button. One click and the file is open on Google, ready to edit.
Automatic conversion to native format
.docx → Google Docs, .pptx → Google Slides, .xlsx → Google Sheets. Formatting, content and structure preserved. You're sent straight to the edit screen.
Connect Google without leaving chat
Before, connecting Drive/Analytics/Ads mid-conversation triggered a redirect — you'd land back on home and lose context. Now OAuth opens in a popup, closes itself, and you return exactly where you were.
Build a 2026 media budget forecast spreadsheet: 5 channels (Google Ads, Meta, TikTok, LinkedIn, Programmatic), 12 months, totals per channel and row, 15% YoY growth. Then save it to my Drive.
For devs and partners — technical detail
- Google OAuth in popup with
postMessageto close and return context to the originating tab. - Conversion
.docx → Docs / .pptx → Slides / .xlsx → Sheetsvia Drive API withconvert: true. - Minimum permissions:
drive.filescope (only files Marketing.Chat created), never the full Drive.
Decks and PDFs that look like a final deliverable.
Complete rewrite of the PPTX generator and PDF exporter. Files arrive at the client with the right design, editable and ready to present.
PPTX 100% editable, for real
Every text is a native frame, every table is editable cell by cell, every image and shape is selectable and movable. Opens in PowerPoint and Google Slides and edits everything. (It used to be "image-on-slide": pretty, but you couldn't change a single word.)
13 professional layouts
Cover, divider, two-pane, list, icons, quote, comparison, big number, timeline, table, bars, photo + caption and closing.
Automatic photos relevant to the topic
Cover slides and photo slides receive real images related to the subject, at no extra cost and without you searching a stock library.
"Open in Drive" on the deck card
One click → renders + uploads to Drive already converted to native Google Slides → opens in a new tab. About 10–15s from click to editing.
Campaign PDFs preserve each asset's design system
Each asset (custom PDF, formatted email, WhatsApp template, FAQ, email sequence) is rendered standalone with the fidelity of the individual "Download as PDF" and then merged into a single file. Each artifact keeps its own typography, colors and layout.
PDFs with charts finally work
When a reply contains a chart (chart-data) and you export to PDF, the chart becomes an actual chart — Chart.js rendered into the document. It used to come out as raw JSON.
Ready-to-copy messages now styled in the PDF
Boxed with a border + label "Ready-to-copy message", instead of the raw text mixed with the rest.
Build a 10-slide deck for the board on our 2026 marketing strategy: cover, agenda, big-number for projected growth, 3 pillars, quarterly timeline, channel mix, comparison vs. 2025, risks, next steps, closing. I want to open it editable in Google Slides.
GEO Monitor V2 — your brand in the eyes of AI.
Complete visual and functional rework. More editorial, more navigable, more useful for client or board presentations.
Fullscreen Presentation mode
Click Present and the report becomes a navigable deck with arrows and Esc. Ready for the meeting without exporting anything.
3-act New Audit wizard
Brand → keyword → site. More editorial, less form.
Dedicated profile for each top-5 competitor
Positioning, exclusive attributes, gaps and specific counter-attacks for each top-5 competitor.
Hero with automatic insight chips
"Leader tier", "+12 pts vs previous", "Top 3 in SoV" — and a side-by-side mini competitive ranking.
AEO cards with mini-vizs
Citation velocity bar, position pips, risk severity dots — dense but legible info.
Contextual tooltips on labels
You learn what each metric means on hover.
3 new chart types in the narratives
Radial donut, hex radar and quadrant matrix.
"by Marketing.Chat" co-brand on the logo
Anchor product identity across all GEO surfaces.
Specialist Chat shortcut directly in the GEO sidebar
Question about an insight? Jump straight to the chat with the brand specialist.
Real sources in audits
Before, every source appeared as "vertexaisearch.cloud.google.com" (useless). Now the real publisher shows up (forbes.com, gartner.com, semrush.com etc).
Real-usage telemetry
Each audit fires events (started, completed, failed, shared) and updates the user profile with total_audits, last_audit_at, best_score. Activation by product usage, not "email engagement".
Run a GEO audit on your brand in 5 minutes: see how Claude, Gemini, GPT and Grok answer when someone asks about your industry.
For devs and partners — technical detail
- Telemetry via Customer.io.
- Presentation mode as a dedicated route with keyboard handlers (← → Esc).
- Mini-vizs in inline SVG (no Chart.js dependency).
- Grounding source replacement done by extracting the real
domainfrom Google'sredirectURL.
Integrations Console redesigned.
The integrations screen is now a master/detail console. You see what's active, what has problems, what's available and what's still coming — with real usage metrics.
Side list with search + status filter
All / Active / With problem. You see what matters in seconds.
Lazy detail panel
Loads only when you click — performance preserved.
4 clear visual states
Active (connected and working) · With problem (token expired, auth error) · Available (ready to connect) · Coming soon (on roadmap, gray, non-clickable).
Keyboard navigation
↑ / ↓ + Enter + Esc. For people who want speed.
3 tabs per connected integration
Overview (who connected, token status, permissions) · Tools (list of tools with friendly descriptions) · Insights (real usage metrics).
Real insights for each integration
30-day daily counts, 7×24 heatmap (which day/hour you use it most), top 3 most-called tools, recent activity (last 10 with latency) and summary (success rate, average latency).
"Coming soon" separated from "Available"
No confusion between what exists and what's still coming. "Coming soon" items are gray and non-clickable.
For devs and partners — technical detail
- Usage metrics in a separate collection (
mcpToolCalls) with 30-day TTL — doesn't bloat the primary database. - 7×24 heatmap computed client-side from the call bucket.
- "Coming soon" state defined in registry, non-clickable by design.
Behind-the-scenes that matter.
Four things you don't see every day, but that buy you peace of mind — security, support and performance.
Automatic crash capture with support code
When a protected page breaks, you see a code (e.g. 1a2b3c4d) and a Reload button. That same code is stored for 60 days and lands as an email in the support team's inbox with the full stack trace. You say the code, we find the issue immediately.
Central file authorize
Every signed URL generated by the 4 routes (Gemini/Claude/OpenAI/Grok) goes through a single decider: you must own the file OR have access to the conversation where it was shared AND the file must be referenced in that conversation. Closes the cross-download loophole between workspace members.
Conditional router: only activates what you need
Before, with RD + GA + Ads + Meta connected, every message loaded 90+ tools into context — even when you just wanted "write a copy". Now the router evaluates intent first: copy doesn't pull any integration; "how's my traffic?" only pulls GA4. Fewer tokens, less latency, more focused model.
3 focused skills instead of 1 generic
Native reading (no skill) for "analyze/summarize/read this PDF" · file-manipulation for "resize, merge PDFs, convert JPG→PNG" · file-generation for "convert PDF to DOCX, save transcription as TXT". Each one with its own status message — the UI is honest about what's happening.
For devs and partners — technical detail
- Crashes captured via global error boundary → MongoDB (TTL 60 days) → webhook to Customer.io that fires an email to the support inbox with the stack trace.
- Central authorize with 3 checks: ownership, conversation access, reference integrity.
- Conditional router via Gemini with rich descriptions per skill, deciding activation by intent before tool injection into the context.