Skip to content

Concepts

CampaignStack organizes outreach around these core entities, with the workspace as the tenant boundary for everything you create.

A workspace represents a client or business. Your campaigns, lead lists, workflows, content, competitor watches, settings, and workspace API keys live inside it.

If you’re an agency, you’ll typically have one workspace per client. If you’re a solo operator, you have one workspace for your business.

Most MCP tools take a workspaceId parameter. Call campaignstack_whoami first — with a user key (csu_) it returns every workspace you belong to, with IDs and roles.

A campaign is a goal-driven outreach initiative inside a workspace. It defines who you’re targeting, why, and how. Campaigns contain lead lists, workflows, ICPs, personas, and phases.

Example: “Connect with wealth management CTOs in France to demo our compliance tool.”

Personas describe the buyer profiles a campaign targets (role, pains, goals) and inform AI message crafting. Phases structure a campaign’s roadmap over time — sourcing, outreach, content, intelligence, refinement. Both have full CRUD tools.

People you want to reach. CampaignStack maintains a shared lead database: leads sourced from public platforms (LinkedIn search, enrichment) are readable across the platform, so every campaign benefits from data that already exists — the same model Apollo uses.

Leads you supply yourself — CSV imports, manual entry, or imports via the MCP API — are private to your workspace and never enter the shared pool.

Each lead carries profile data (title, company, location, seniority) that gets enriched automatically, plus per-workspace tags and notes that only your workspace sees.

Named collections of leads in your workspace, optionally attached to a campaign. Two kinds: static lists (you add/remove leads explicitly) and query lists (a stored search predicate that re-materializes automatically as matching leads appear).

Scoring criteria that define your ideal lead: target titles, industries, seniority levels, company sizes, keywords. A lead’s score for a campaign is its ICP match plus its signal score — and that total determines whether the lead is part of the campaign at all, not just its priority.

Signals are detected changes on leads and companies — job change, new post, funding round, headcount growth. They boost lead scores (per-campaign weights are tunable) and expire after a set window. Signal agents watch for signals continuously and can route matching leads into workflows automatically — audiences that build themselves.

Automated multi-step sequences that execute outreach actions across channels. A workflow might: send a connection request, wait 3 days, send a follow-up message, A/B split, notify you on reply.

Workflows are built from nodes (actions) and edges (transitions). They respect daily action budgets and business hours. LinkedIn sends can be gated behind human review — you approve, edit, or reject each message before it goes out.

Replies land in a unified inbox covering all connected accounts. Conversations are account-scoped: one inbox per LinkedIn account, shared across the workspaces that account is linked to.

LinkedIn content that your accounts publish. Posts go through a lifecycle: draft, review, scheduled, published. Brand voice and AI writing tools ensure consistency, and auto-scheduling places posts into budget-safe slots.

Monitored LinkedIn company or profile pages. CampaignStack tracks their posts, engagement metrics, and topics to inform your content strategy.

Workspace-level conversation guidance that AI crafting follows — tone, positioning, objection handling. Campaigns can append extra instructions. See the playbooks guide.

LinkedIn and Google accounts power sending; one account can be linked to several workspaces. Every billable action (enrichment, scraping, AI crafting) consumes credits from your workspace balance — check it with campaignstack_get_credit_balance.

Workspace (= one client / business)
├── Campaigns (goal + strategy)
│ ├── Lead Lists (segments → leads, scored per campaign)
│ ├── ICPs (scoring criteria)
│ ├── Personas & Phases (targeting + roadmap)
│ └── Workflows (automation sequences)
│ └── Nodes (actions: connect, message, email, review...)
├── Signal Agents (self-building audiences)
├── Content Posts (LinkedIn publishing)
├── Competitor Watches (monitoring)
└── Connected Accounts (LinkedIn + Google, shareable across workspaces)
Shared platform data (readable by all tenants):
Leads ── Companies ── Signals

Each API key carries scopes following the {domain}:{action} pattern — campaigns:read, leads:write, outreach:write, and so on across 16 domains. Your key’s scopes determine which tools it can call.

See the full scope reference for every scope and its tool mapping.