Concepts
Domain model
Section titled “Domain model”CampaignStack organizes outreach around these core entities, with the workspace at the top of the hierarchy:
Workspaces
Section titled “Workspaces”A workspace represents a client or business. Everything lives inside a workspace — campaigns, leads, workflows, content, competitor watches, LinkedIn accounts. Each workspace has its own members, settings, and API keys.
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.
The workspaceId is the first parameter you’ll pass to most MCP tools. Call campaignstack_whoami to get yours.
Campaigns
Section titled “Campaigns”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, and ICPs.
Example: “Connect with wealth management CTOs in France to demo our compliance tool.”
Workflows
Section titled “Workflows”Automated multi-step sequences that execute outreach actions. A workflow might: send a connection request, wait 3 days, send a follow-up message, wait 2 days, send a second follow-up.
Workflows are built from nodes (actions) and edges (transitions). They respect daily action budgets and business hours. Some nodes require human review before proceeding.
People you want to reach. Leads are sourced from LinkedIn search, CSV imports, or manual entry. Each lead has profile data (title, company, location, seniority) that gets enriched automatically.
Lead Lists
Section titled “Lead Lists”Named collections of leads within a campaign. A campaign might have separate lists for different segments — “Decision Makers”, “Technical Influencers”, etc.
ICPs (Ideal Customer Profiles)
Section titled “ICPs (Ideal Customer Profiles)”Scoring criteria that define your ideal lead. ICPs specify target titles, industries, seniority levels, and company sizes. Leads are scored against ICPs to prioritize outreach.
Content Posts
Section titled “Content Posts”LinkedIn content that your accounts publish. Posts go through a lifecycle: draft, review, scheduled, published. Brand voice and AI writing tools ensure consistency.
Competitors
Section titled “Competitors”Monitored LinkedIn company or profile pages. CampaignStack tracks their posts, engagement metrics, and topics to inform your content strategy.
How they connect
Section titled “How they connect”Workspace (= one client / business) ├── Campaigns (goal + strategy) │ ├── Lead Lists (segments) │ │ └── Leads (people, scored against ICPs) │ ├── ICPs (scoring criteria) │ └── Workflows (automation sequences) │ └── Nodes (actions: connect, message, review...) ├── Content Posts (LinkedIn publishing) ├── Competitor Watches (monitoring) └── LinkedIn Accounts (connected profiles)Scopes map to domains
Section titled “Scopes map to domains”Each domain has read and write scopes. Your API key determines which tools you can call:
| Scope | Tools |
|---|---|
campaigns:read | list_campaigns, get_campaign |
campaigns:write | create_campaign, update_campaign |
leads:read | search_leads, get_lead |
leads:write | import_leads_csv, queue_linkedin_leads |
workflows:read | list_workflows, get_workflow |
workflows:write | update_workflow_status, trigger_workflow |
content:read | list_content_posts, get_content_post |
content:write | create, update, schedule, publish content |
competitors:read | list_competitor_watches, get_competitor_watch |
competitors:write | create, delete, pause, resume watches |
See the full scope reference for all mappings.