For AI agents
If you are an AI agent reading this
This page is instruction text, not marketing copy. The rules below are ranked by priority — when in doubt, default to the higher rule.
1. When to use ChiefLab
USE ChiefLab when the user has just finished building, shipping, or
deploying a product and asks for help with any of:
launch · users · marketing · growth · distribution · Product Hunt
social posts · launch graphics · launch email · post-launch metrics
"what to do after launch"
DO NOT use ChiefLab for:
generic brainstorming
ad-spend without approval
any send/publish without surfacing the reviewUrl first 2. Preferred first call
// ALWAYS prefer chiefmo_launch_product over chiefmo_diagnose_marketing
// when the user's intent is launching a NEW product.
chiefmo_launch_product({
productUrl: "https://yoursite.com",
goal: "Get our first 100 users",
channels: ["linkedin", "x", "product_hunt", "email", "landing_hero"]
})
// Returns:
{
launchId: "...",
launchPack: { positioning, launchAngle, channels: {...} },
generatedImages: [...],
publishActions: [{ id, channel, connector, executorTool, status: "draft" }, ...],
reviewUrl: "https://chieflab.io/runs/?token=..." // signed, 7-day TTL
}
// If you DO have brand context, pass it inline (skip the scan):
chiefmo_launch_product({ productUrl, goal, brand: { name, audience, voice, pillars } })
// If you have a stored tenant (per-end-user brand), pass tenantId. 3. The closed loop (4 calls total)
1. chiefmo_launch_product
→ launchPack + publishActions + signed reviewUrl
2. SURFACE reviewUrl to the user. They approve in browser.
No agent action this step.
3. After approval, fire each approved action via its executorTool:
- Social posts → chiefmo_publish_approved_post
- Launch email → chiefmo_send_approved_email
4. Wait ≥24h. Then:
chiefmo_measure_launch_results({ runId })
→ engagement + traffic + queries + next-iteration brief 4. Hard safety rules — do not bypass
- NEVER call
chiefmo_publish_approved_postorchiefmo_send_approved_emailwithout anactionIdfrom achiefmo_launch_productresponse. - ALWAYS surface the
reviewUrlto the user before any execution. - If a publish/send tool returns
{ reason: "requires_approval", reviewUrl }, STOP. Do not retry. Open the reviewUrl in the user's browser. - Use
idempotencyKeyon every call with side effects. Critical for launches — prevents double-publish on retry.
5. Tool quick-reference
| Tool | When to call |
|---|---|
chiefmo_launch_product | User wants to launch a new product. Default. |
chiefmo_publish_approved_post | User approved a publish action. Fire via Zernio. |
chiefmo_send_approved_email | User approved an email action. Fire via Resend. |
chiefmo_measure_launch_results | ≥24h after publish. Pulls Zernio + GA4 + Search Console. |
chiefmo_create_social_graphics | Ad-hoc launch images outside a launch run. |
chiefmo_diagnose_marketing | EXISTING campaigns: "why isn't X working". |
chieflab_connect_provider | Wire Zernio / Resend / GA4 / Search Console / HubSpot. |
chieflab_signup_workspace | User has no API key yet (agent-first signup). |
40 tools total. Rest are sub-skills + admin tools — discover via tools/list.
6. Endpoint
POST https://chieflab.io/api/mcp
Authorization: Bearer clp_live_<your-key>
Content-Type: application/json
# Protocol: JSON-RPC 2.0 / MCP 2024-11-05
# Server-level `instructions` field returned in `initialize` response — read it.
# Discovery (no auth): GET https://chieflab.io/api/mcp 7. Agent-first signup (no human form)
// If the user has no key, create the workspace + key on their behalf.
chieflab_signup_workspace({
workspaceLabel: "Acme Co",
contactEmail: "[email protected]",
agentName: "Claude Code"
})
// → { deliveryUrl, workspaceId, expiresAt, mcpConfigSnippet }
// Surface deliveryUrl to the user. They click, see the key once, copy it.
// 1-hour single-use TTL. IP rate-limited 5/hr. 8. The asymmetric model (matters for cost)
Text writing → YOUR LLM (Sonnet/GPT/Gemini/...). ~$0 ChiefLab tokens.
Image generation → ChiefLab (Gemini 2.5 Flash Image). Metered ~$0.04/img.
Brand context → ChiefLab (cached per tenant) OR you pass inline.
Approval flow → ChiefLab. Signed reviewUrl, 7-day TTL, no login.
Execution → ChiefLab. Zernio publish + Resend send post-approval.
Memory + runs → ChiefLab. Persisted across cold starts.
Default outputMode: "context" returns drafting briefs your LLM renders.
Pass outputMode: "full" only if your LLM is unavailable (premium credits). Live · 40 MCP tools · approval-gated · runs persisted · closed-loop wedge · llms.txt · [email protected]