SFMC evaluation evidence
Evidence buyers should collect before trusting AI-assisted SFMC execution.
Campaign Builder is strongest when evaluators can inspect how a real campaign moved from scoped Salesforce Marketing Cloud access to Campaign Agent planning, Bruno dry-run orchestration, specialist agent work, Factory readiness, and reviewed draft artifacts.
Review sequence
Evaluate the same order Campaign Builder uses for controlled execution.
Start with account scope and entitlements, then inspect campaign planning and Bruno dry-run evidence before reviewing draft-producing SFMC workflows.
Start with access
Verify auth mode, BU-to-workspace mapping, account credential source, CSRF behavior, and request tracing before evaluating any AI output.
Run one real campaign
Use Campaign Agent to produce a brief and campaignSpec, then use Bruno dry run to show proposed SFMC work without side effects.
Inspect draft-producing workflows
Test the selected Email, Content, Journey, Image, localization, and Factory paths only where entitlements and prerequisites are configured.
Close with write boundaries
Confirm which steps are reads, previews, draft creation, or confirmed writes, and keep Journey activation inside Marketing Cloud.
Evidence matrix
Tie each product claim to proof, implementation, and boundary.
Use these rows as the checklist for a technical evaluation, pilot readout, or SFMC admin review. They are grounded in Campaign Builder implementation docs and route families.
SFMC launch and tenant scope
Proof to collect: Record the auth source, enterprise ID, business unit ID, tenant ID, workspace ID, token-context verification, BU mapping result, and request ID on failures.
Implemented surface: /api/v1/sfmc/app/launch, /api/v1/sfmc/oauth/callback, /api/v1/sfmc/bu-map, /api/v1/sfmc-connect/test, requireAuth, marketingCloudAccess, and sfmcBuMapping.
Boundary to verify: A mapped launch establishes scoped access; it does not grant every agent, tool, or SFMC write path.
Entitlement-controlled agent surface
Proof to collect: Show which specialist agents and tools are enabled for the pilot account, then confirm unavailable workflows return access-controlled behavior.
Implemented surface: routes/v1/index.js gates Campaign, Content, Email, Journey, Image, Translator, Advisor, Audience, Bruno, content-blocks, and tool:factory with requireEntitlement.
Boundary to verify: Do not present disabled agents as available product scope for that account or workspace.
Campaign Agent planning output
Proof to collect: Keep the normalized top brief, uploaded-context references, workspace knowledge grounding, assumptions, taxonomy, Data Extension plan, journey plan, email definitions, validation warnings, buildPackage, and Bruno-compatible campaignSpec.
Implemented surface: /api/v1/agent/campaign/generate-brief, /api/v1/agent/campaign/execute-campaign, and the /api/v1/campaigns/* aliases.
Boundary to verify: Campaign Agent prepares the execution package; confirmed production-bound work still routes through Bruno or reviewed SFMC write paths.
Bruno dry-run orchestration
Proof to collect: Capture missing inputs, entitlement-filtered skill discovery, pending action preview summaries, dry-run stage plan, proposed artifacts, manual Journey activation warning, durable run state, request journal, artifact ledger, and resume behavior.
Implemented surface: /api/v1/agent/bruno/execute-campaign, /api/v1/agent/bruno/runs/:id, brunoRunStore, brunoStageResults, brunoRollback, workflowDefinitions, and Factory-backed campaignSpec execution.
Boundary to verify: A dry run must produce proposed work without SFMC side effects; write-skill execution remains confirmed and reviewable.
Email reuse and guided updates
Proof to collect: Retain search results, preview-safe email details, copy targets, subject and preheader changes, slot-aware update summaries, rewrite drafts, translation drafts, and Bruno previewSummary output.
Implemented surface: /api/v1/emails/*, /api/v1/agent/email/*, /api/v1/marketingcloud/getEmails, and /api/v1/marketingcloud/getEmailById/:id.
Boundary to verify: Email copy, update, slot update, rewrite application, and translation application require confirmation; preview summaries should not expose full raw HTML.
Factory production readiness
Proof to collect: Verify tool:factory entitlement, settings.factory.enabled, connected account SFMC credentials, configured template assets, template-check results, campaign draft records, Content Builder folders, image uploads, Data Extensions, email previews, variants, and template review findings.
Implemented surface: /api/v1/factory/campaigns/draft, /api/v1/factory/assets/folder, /api/v1/factory/assets/upload-images, /api/v1/factory/data-extensions, /api/v1/factory/emails, /api/v1/factory/preview/draft, /api/v1/factory/preview/variants, and /api/v1/factory/template-review.
Boundary to verify: Factory prepares configured SFMC drafts and review artifacts; it is not an automatic launch, compliance approval, or unrestricted write layer.
Journey draft creation boundary
Proof to collect: Keep the journeyDraftPlan, reference journey lookup, selected source journey or scratch template, drafted email copy, readiness state, blockers, warnings, cloneArtifacts warnings, and manualActivationRequired value.
Implemented surface: /api/v1/agent/journey/*, /api/v1/journey/*, /api/v1/marketingcloud/createJourneyFromScratch, /api/v1/marketingcloud/createJourneyFromTemplate, and Journey readiness helpers.
Boundary to verify: Campaign Builder creates or clones Journey Builder drafts only; activation remains a manual Salesforce Marketing Cloud step.
Localization and image provenance
Proof to collect: Record source language, target locale, tone guidance, HTML/token preservation, localized variants, provider/source metadata, saved image details, generation request state, credit usage, and SFMC insertion target.
Implemented surface: /api/v1/agent/translator, /api/v1/translate, Content Agent localization routes, Email Agent translate skill, /api/v1/agent/image/search, /api/v1/agent/image/assets, /api/v1/agent/image/chat, and /api/v1/agent/image/assets/:id/sfmc-insert.
Boundary to verify: Localization and image flows support reviewed content production; they do not remove brand review, legal review, or SFMC asset approval steps.
Review language
Keep evidence precise around Salesforce Marketing Cloud control.
Campaign Builder accelerates campaign production toward SFMC execution. It should be evaluated as a reviewable execution layer with scoped access, confirmed writes, and draft boundaries.
Dry runs show proposed work without SFMC side effects.
Journey Builder activation remains manual in Salesforce Marketing Cloud.
Factory prepares configured draft artifacts and review evidence.
Confirmed writes require authentication, entitlement checks, tenant/workspace scope, request tracing, and previewable action summaries.
FAQ
Questions that turn a demo into a technical evaluation.
Which proof should a buyer ask for first?
Ask for launch and scope evidence first: auth source, tenant/workspace mapping, SFMC enterprise and business unit context, account credential status, entitlement scope, and request IDs on errors.
What makes Bruno evidence different from normal chat output?
Bruno evidence should include missing inputs, entitled skill routing, pending write-action summaries, dry-run stage plans, durable run state, request journals, artifact ledgers, and manual Journey activation warnings.
When should Factory be evaluated?
Evaluate Factory only after tool:factory entitlement, settings.factory.enabled, account SFMC credentials, and configured template assets are in place.
What claims should the evidence matrix avoid?
Avoid claims of automatic Journey activation, guaranteed compliance, unrestricted SFMC writes, or unsupported integrations. Campaign Builder supports reviewed SFMC execution workflows and draft artifacts.
Next reading
Use the matrix with the pilot plan and security review.
Pair the evidence matrix with the SFMC pilot plan, Bruno orchestration guide, Factory workflow, and security review to validate the implementation from idea to reviewed Marketing Cloud drafts.