Overview
PlaybookM helps marketing teams manage the production system behind revenue work: what is planned, who owns it, what content supports it, how much it costs, and whether it creates enough coverage for business goals.
The docs start with the operating model, then move into setup, weekly workflows, governance, and the product areas most teams use first.
How it works
- Capture campaigns, activities, content, spend, targets, and owners in one place.
- Organize work by calendar timing, status, channel, market, audience, and priority.
- Review coverage against pipeline, proof, budget, and performance goals.
- Use weekly operating reviews to adjust activity plans before gaps become misses.
Setup checklist
- Create a workspace and invite the marketing operators who plan, approve, or report on work.
- Import existing activities from a spreadsheet or add priority campaigns directly in PlaybookM.
- Connect activities to dates, owners, targets, content, channels, budget, and expected outcomes.
- Review pipeline coverage, content coverage, spend, and performance views with the team each week.
Connect Claude or Codex
PlaybookM includes a local CLI and MCP server so Claude Code and Codex can work with your workspace using the same role and permissions as your PlaybookM account.
1. Install the CLI and MCP server
Requires Go 1.26 or newer.
go install github.com/carneybill/PlaybookM/cli/playbookm-pp-cli/cmd/playbookm-pp-cli@latest
go install github.com/carneybill/PlaybookM/cli/playbookm-pp-cli/cmd/playbookm-pp-mcp@latest
2. Select and authorize your workspace
Replace your-workspace with the workspace name from your PlaybookM URL.
export PLAYBOOKM_WORKSPACE=your-workspace
playbookm-pp-cli auth login --device-code
playbookm-pp-cli doctor
For the PlaybookM marketing workspace, use export PLAYBOOKM_WORKSPACE=playbookm.
Open the printed verification URL, confirm the matching code while signed in, and return to the terminal. Your password and browser cookie are never shared with the agent.
The approval screen keeps the workspace from the URL and sends it with the approval request. Higher-privilege users can run lower-role commands, so admins and marketing owners can still use read and contributor workflows through Claude or Codex.
3. Add PlaybookM to Claude Code
claude mcp add --scope user \
-e PLAYBOOKM_WORKSPACE=your-workspace \
playbookm -- playbookm-pp-mcp
claude mcp list
4. Add PlaybookM to Codex
codex mcp add --env PLAYBOOKM_WORKSPACE=your-workspace \
playbookm -- playbookm-pp-mcp
codex mcp list
Verify the connection
Start a new Claude Code or Codex session and ask: “Show my PlaybookM workspace access and list the latest activities.” The MCP server exposes a small search-and-execute tool surface instead of loading every API command into the agent context.
To disconnect, run playbookm-pp-cli auth logout. This revokes the server-side CLI session and removes local credentials.
CLIs
PlaybookM uses separately authenticated command-line tools so provider credentials remain on the trusted local runner. Availability in this catalog does not bypass provider certification, workspace permissions, previews, or required approvals.
playbookm-pp-cli
Work with an authenticated PlaybookM workspace using the user's existing role and permissions.
Authentication
PlaybookM device authorization
google-ads-pp-cli
Discover Google Ads accounts and manage campaign structure and aggregate performance.
Authentication
Google OAuth and developer token
linkedin-pp-cli
Discover LinkedIn ad accounts, manage campaigns, and read campaign analytics.
Authentication
LinkedIn Marketing OAuth
meta-ads-pp-cli
Read Meta ad accounts, campaigns, and insights and submit governed campaign changes.
Authentication
Meta access token
microsoft-ads-pp-cli
Read Microsoft Advertising accounts and campaigns through fixed SOAP v13 operations.
Authentication
Microsoft OAuth and developer token
hubspot-pp-cli
Read and manage approved HubSpot company, deal, and pipeline data without importing contact PII.
Authentication
HubSpot private-app token
salesforce-pp-cli
Read approved account, opportunity, pipeline, and campaign data from a Salesforce instance.
Authentication
Salesforce OAuth access token
google-search-console-pp-cli
Read search performance, sitemap status, properties, and indexed-URL diagnostics.
Authentication
Google Search Console OAuth
google-web-vitals-pp-cli
Run PageSpeed analysis and read Chrome UX Report field performance.
Authentication
Google API key
dataforseo-pp-cli
Run usage-bounded keyword, SERP, backlink, and competitor research.
Authentication
DataForSEO login and password
screaming-frog-pp-cli
Run constrained local technical SEO crawls with fixed, reviewable exports.
Authentication
Local Screaming Frog installation
wordpress-pp-cli
Read WordPress content inventory and submit governed draft or publishing-state changes.
Authentication
WordPress Application Password
External campaign tools
PlaybookM can coordinate separately authenticated provider CLIs for Salesforce, HubSpot, Google Ads, LinkedIn, Meta Ads, and Google Analytics. Connecting PlaybookM never gives the agent access to the PlaybookM repository, GitHub, deployments, arbitrary shell commands, or provider credentials.
- For LinkedIn, install
linkedin-pp-cli on the same trusted computer as the PlaybookM MCP server. - Register
http://localhost:8085/callback in the LinkedIn app, then run linkedin-pp-cli auth login. Provider tokens remain local. - Google Ads also requires a local OAuth desktop client and
GOOGLE_ADS_DEVELOPER_TOKEN; manager accounts set GOOGLE_ADS_LOGIN_CUSTOMER_ID. - Meta Ads uses
meta-ads-pp-cli with a local META_ADS_META_ACCESS_TOKEN. - HubSpot uses
hubspot-pp-cli with a private-app token kept in HUBSPOT_HUBSPOT_PRIVATE_APP. - Salesforce uses
salesforce-pp-cli with SALESFORCE_SALESFORCE_ACCESS_TOKEN and the authenticated instance REST root in SALESFORCE_BASE_URL. - Search workflows use separately authenticated Google Search Console, PageSpeed/CrUX, DataForSEO, and local Screaming Frog CLIs. PlaybookM imports dated aggregate observations and technical findings, not unrestricted crawl output.
- WordPress publishing uses
wordpress-pp-cli; every draft or status change follows the same preview and approval controls as an external campaign write. - Microsoft Ads uses
microsoft-ads-pp-cli with local OAuth and developer tokens; its initial certified surface is read-only account and campaign discovery. - Select the provider account and teams that may use it in Settings → Integrations.
- Ask Claude or Codex to draft a campaign or change. PlaybookM creates an exact preview without changing the provider.
- A Marketing Owner approves the provider, account, budget, schedule, assets, and changed fields.
- The local runner consumes that one-time approval, executes once, and returns a redacted provisional receipt for provider readback.
Provider capabilities appear only after the exact CLI version, authentication, permissions, output schema, and profile signature pass certification. A connected PlaybookM CLI by itself does not enable LinkedIn or another provider.
Performance sync
Certified read operations can import daily aggregate spend, delivery, engagement, conversion, pipeline, revenue, and analytics observations. Imports retain provider, account, campaign, date, currency, attribution, profile version, and run provenance.
- Stable provider identifiers link facts automatically; name-only matches require review.
- Overlapping runs correct the same daily fact instead of duplicating it.
- Contact, lead, audience-member, and visitor-level data is rejected.
- Manual activity cost and lead values remain unchanged and display separately.
- Scheduled sync is read-only; every external write still requires a new exact approval.
Adding your first activity
Start with a real marketing activity your team already cares about, such as a launch, webinar, campaign, field event, content asset, partner motion, or nurture program.
- Open Activities and create a new activity.
- Add the activity name, owner, planned date, channel, status, and audience.
- Connect the activity to targets, proof points, budget, and expected outcomes.
- Review it in calendar, list, pipeline coverage, and reporting views.
Upload your current activities spreadsheet
If your team already tracks marketing activities in a spreadsheet, use the import flow to bring that work into PlaybookM instead of recreating every activity manually.
- Download the PlaybookM activity import template.
- Copy your current activity data into the matching template columns.
- Upload the CSV and review field mapping, required fields, and validation notes.
- Confirm the import, then review the activities in list and calendar views.
Subscribing to a calendar
Calendar subscriptions give stakeholders a live view of planned marketing activity without requiring them to work inside PlaybookM every day.
- Open the Calendar view and choose the share or subscription option.
- Select the activity data that should be visible to subscribers.
- Copy the generated calendar URL.
- Add the URL to Google Calendar, Outlook, Apple Calendar, or another calendar app.
Core workflows
Governance
Use roles, shared calendars, import/export controls, and audit-friendly activity data to keep marketing operations visible without forcing every stakeholder into the same workflow.
- Give planners, admins, and viewers the right level of access.
- Share calendar views with stakeholders who only need visibility.
- Keep activity data portable through CSV templates and exports.