{
  "$schema": "https://modelcontextprotocol.io/schema/well-known/mcp.json",
  "name": "chieflab",
  "displayName": "ChiefLab",
  "description": "Business execution layer for agent-built companies, starting with GTM. Your product agent ships the product; ChiefMO, the live wedge, uses repo context to get the product in front of real people, create clicks/replies/signups, approval-gate execution, publish/send through connected channels, measure results, remember what worked, and return a literal postBuildChecklist for the next move.",
  "version": "0.3.0",
  "protocolVersion": "2024-11-05",
  "homepage": "https://chieflab.io",
  "documentation": "https://chieflab.io/llms.txt",
  "agentInstructions": "https://chieflab.io/for-agents",
  "agentHook": "https://chieflab.io/agent-hook/AGENTS.md",
  "installAgentHook": "https://chieflab.io/install-agent-hook.mjs",
  "discoveryStatus": "https://chieflab.io/discovery-status.json",
  "agentStatus": "https://chieflab.io/status/agent",
  "agentsTxt": "https://chieflab.io/agents.txt",
  "agentsManifest": "https://chieflab.io/.well-known/agents.json",
  "openapi": "https://chieflab.io/openapi.json",
  "transports": [
    {
      "type": "http",
      "url": "https://api.chieflab.io/api/mcp",
      "note": "Vercel-direct primary endpoint. Use this for agent runtimes and Cursor deeplinks.",
      "auth": {
        "type": "bearer",
        "header": "Authorization",
        "format": "Bearer clp_<env>_<key>",
        "obtainAt": "https://chieflab.io/get-key",
        "agentSignupTool": "chieflab_signup_workspace"
      }
    },
    {
      "type": "http",
      "url": "https://chieflab.io/api/mcp",
      "note": "Brand-domain fallback through Cloudflare Pages function. Same JSON-RPC, same auth.",
      "auth": {
        "type": "bearer",
        "header": "Authorization",
        "format": "Bearer clp_<env>_<key>"
      }
    }
  ],
  "installLinks": {
    "cursor": "cursor://anysphere.cursor-deeplink/mcp/install?name=chieflab&config=eyJ1cmwiOiJodHRwczovL2FwaS5jaGllZmxhYi5pby9hcGkvbWNwIn0=",
    "cursorPage": "https://chieflab.io/install/cursor",
    "claudeDesktop": "https://chieflab.io/install/claude-desktop",
    "codex": "https://chieflab.io/install/codex",
    "all": "https://chieflab.io/install"
  },
  "triggerPhrases": [
    "launch this",
    "launch what I just built",
    "help me launch",
    "get users",
    "get our first users",
    "find users",
    "find customers",
    "make money from this",
    "market this",
    "do marketing for this",
    "announce this",
    "write the launch announcement",
    "post this",
    "post the launch",
    "publish this",
    "Product Hunt",
    "ship to Product Hunt",
    "what to do after launch",
    "post-launch metrics"
  ],
  "primaryTool": "chieflab_get_users_after_build",
  "secondaryTool": "chiefmo_launch_product",
  "totalTools": 87,
  "primaryTools": [
    {
      "name": "chiefmo_launch_product",
      "useWhen": "User has just finished building, shipping, or deploying a product and asks for help with launch, users, customers, revenue, marketing, growth, distribution, Product Hunt, social posts, launch graphics, launch email, or 'go to market.' Default. Gather repoContext first so ChiefLab runs the money/distribution loop through the live GTM wedge grounded in the actual product."
    },
    {
      "name": "chieflab_get_users_after_build",
      "useWhen": "Outcome-named alias for chiefmo_launch_product. User has just built or deployed a product and says get users, find customers, make money from this, get paying users, get eyes on this, what now, or how do I launch this. Same closed-loop launch handler; better tool-search match for revenue/distribution phrasing."
    },
    {
      "name": "chiefmo_continue_launch_loop",
      "useWhen": "Agent already has a launch runId and needs the exact next action: surface reviewUrl, execute an approved action, wait for measurement, measure results, or prepare the next move."
    },
    {
      "name": "chiefmo_launch_health",
      "useWhen": "Agent or user asks what is blocked, what approvals are open, what can execute, whether measurement is due, or what should happen next."
    },
    {
      "name": "chiefmo_publish_approved_post",
      "useWhen": "User approved a publish action from chiefmo_launch_product on the reviewUrl. Fires the post via Zernio."
    },
    {
      "name": "chiefmo_send_approved_email",
      "useWhen": "User approved an email action from chiefmo_launch_product. Sends via Resend."
    },
    {
      "name": "chiefmo_measure_launch_results",
      "useWhen": "≥24h after publish. Pulls Zernio engagement + GA4 traffic + Search Console queries + recommends next iteration."
    },
    {
      "name": "chieflab_connect_provider",
      "useWhen": "User wants to wire Zernio / Resend / GA4 / Search Console / HubSpot / Stripe / Linear / Notion / Slack."
    },
    {
      "name": "chieflab_signup_workspace",
      "useWhen": "User has no API key. Agent-first signup mints a workspace + key on the user's behalf. Public — no auth required to call this tool."
    },
    {
      "name": "chiefmo_post_launch_review",
      "useWhen": "Same as chiefmo_measure_launch_results but returns a structured next-iteration brief in addition to the metrics. Use when you want the recommendation, not just the numbers."
    },
    {
      "name": "chiefmo_prepare_next_move",
      "useWhen": "After a launch publishes (or ≥24h post-launch) and the user asks 'what's next?', 'follow-up post?', 'plan day 2'. P13 — turns one launch into a 7-day launch mode: drafts approval-gated follow-up actions (day-2 reply / day-3 proof / day-5 metrics share / day-7 retro) grounded in the prior runId + per-tenant brain + prior recommendation. Returns the same agentGuide shape as chiefmo_launch_product."
    },
    {
      "name": "chieflab_use_manual_fallback",
      "useWhen": "P13 — when chiefmo_launch_product returned a blocked publishAction with manualFallback=true (Product Hunt, Hacker News, Reddit, Discord, Slack, Indie Hackers, DEV.to). Pass actionId; returns paste-ready title + body + per-platform checklist + first-comment script + measurement template. Approval-gated: returns requires_approval recovery if the action isn't approved on the reviewUrl yet."
    },
    {
      "name": "chieflab_record_manual_publish",
      "useWhen": "P13 — after the user manually posted to a channel returned by chieflab_use_manual_fallback and gives you the live URL. Records the URL on the publishAction (status → executed_manually), persists a proof asset to the P9 brain, queues 24h metrics readback. Without this, manually-posted channels are lost to ChiefLab's measurement loop."
    },
    {
      "name": "chieflab_list_available_channels",
      "useWhen": "P13 — list every channel ChiefLab can ship to, grouped by category (social/community/email/blog/analytics) with capabilities + providers. Use before chiefmo_launch_product to pick channels, or when the user asks 'what platforms are supported?'."
    },
    {
      "name": "chieflab_list_channel_readiness",
      "useWhen": "P13 — for every channel, return its readiness state for THIS workspace (ready / blocker / fix / manualFallback). Drives the dashboard connector-readiness panel and pre-warns of blocked channels at launch time."
    },
    {
      "name": "chieflab_get_connect_action",
      "useWhen": "P13 — for a single (typically blocked) channel, return the exact next tool to call to unblock it. chieflab_connect_provider for OAuth/key providers; chieflab_use_manual_fallback for manual-only channels."
    },
    {
      "name": "chieflab_remember_preferred_channel",
      "useWhen": "P13 — record a workspace's per-job preference (preferred LinkedIn account, preferred email sender domain, etc.). Future launches read this from the P9 brain before picking the channel mix."
    },
    {
      "name": "chieflab_retry_blocked_action",
      "useWhen": "P13 — re-check a blocked publishAction's connector readiness after the user wired a new provider. Returns whether the action can fire now (call its executor tool) or still blocked (with up-to-date connect path)."
    },
    {
      "name": "chieflab_score_launch_pack",
      "useWhen": "Pre-publish quality check on a draft launch pack. Returns risk/voice/claim flags so the agent can self-correct before the human sees the reviewUrl."
    },
    {
      "name": "chiefmo_record_proof",
      "useWhen": "After a launch publishes and gets a measurable result (post URL, metric, testimonial), record it to the company brain. Persists to chieflab_proof_assets — future runs cite it."
    },
    {
      "name": "chiefmo_record_brand_voice",
      "useWhen": "When user approves or rejects copy, distill the voice signal (banned phrases, preferred claims, tone) and record it. Per-tenant memory the next launch grounds against."
    },
    {
      "name": "chiefmo_record_repo_fact",
      "useWhen": "When the agent gathered structured product knowledge (a new feature shipped, pricing change, integration added), persist it as a typed repo fact. Drives grounded copy in subsequent launches."
    },
    {
      "name": "chiefmo_record_channel_result",
      "useWhen": "When a published post or email returns metrics, record what worked per channel × hook × format × CTA. Drives channel mix recommendations on the next launch."
    },
    {
      "name": "chiefmo_company_brain",
      "useWhen": "Read the full per-tenant company brain (brand voice + repo facts + proof assets + channel performance + claim risk log) for grounding the next launch. Caller's LLM uses this as system context."
    },
    {
      "name": "chieflab_save_launch_template",
      "useWhen": "After a launch ships successfully, save the channels + angle + brand + repo-context shape as a reusable template. Drives repeat-launch retention."
    },
    {
      "name": "chieflab_list_launch_templates",
      "useWhen": "Show the user their saved launch templates so the next launch can clone from a known-good shape."
    },
    {
      "name": "chiefmo_gtm_run_start",
      "useWhen": "P10 multi-agent GTM run. Use when the user wants the full eight-agent treatment (launch + social + email + blog-seo + creative + analytics + experiment + approval) instead of the single-tool launch flow. Returns runId + runPlan."
    },
    {
      "name": "chiefmo_gtm_run_get",
      "useWhen": "Fetch a GTM run by id with its agent_runs + handoffs timeline. Drives the /app/gtm command center."
    },
    {
      "name": "chiefmo_gtm_run_list",
      "useWhen": "List recent GTM runs in the workspace. Paginated."
    },
    {
      "name": "chiefmo_gtm_memory_get",
      "useWhen": "Read shared multi-agent memory for a key (e.g., audience.refinement, voice.samples.approved). Each agent reads on init."
    }
  ],
  "operators": [
    {
      "id": "chiefmo",
      "label": "ChiefMO",
      "function": "Launch and distribution teammate (the wedge)",
      "primaryTool": "chiefmo_launch_product",
      "connectors": ["zernio", "resend", "ga4", "search_console"],
      "status": "live"
    }
  ],
  "asymmetricArchitecture": {
    "textWriting": "caller's LLM in context mode, or ChiefLab draft/full mode when requested",
    "imageGeneration": "ChiefLab via Gemini 2.5 Flash Image (metered ~$0.04/image, opt-in)",
    "brandContext": "ChiefLab cached per tenant, or caller passes inline",
    "approvalFlow": "ChiefLab signed reviewUrl, 7-day TTL, no login",
    "execution": "ChiefLab via Zernio (publish) + Resend (email) after approval",
    "memory": "ChiefLab per-tenant company brain for the GTM wedge: repo facts, brand voice, approvals, channel results"
  },
  "connectorReality": {
    "realReads": ["ga4", "search_console"],
    "realWrites": ["zernio", "resend"],
    "halfWired": ["hubspot", "stripe_billing"],
    "mockOnly": ["meta_ads", "google_ads", "buffer", "salesforce", "outreach", "apollo", "gong", "intercom", "zendesk", "front", "helpscout", "quickbooks", "xero", "mercury", "brex", "linear", "github", "notion", "slack", "granola"]
  },
  "rateLimit": {
    "signupsPerIpPerHour": 5,
    "sandboxLaunchesPerIpPerHour": 3
  },
  "contact": {
    "site": "https://chieflab.io",
    "dashboard": "https://chieflab.io/app",
    "connections": "https://chieflab.io/app/connections",
    "agentInstructions": "https://chieflab.io/for-agents",
    "support": "hi@chieflab.io"
  },
  "vendor": "ChiefLab",
  "license": "open-core",
  "repository": "https://github.com/bdentech/chiefmo-agent",
  "categories": ["ai-agent", "business-execution", "gtm", "marketing", "launch", "approval-gated", "mcp-server", "repo-aware"],
  "tags": ["business-execution-layer", "gtm-team", "marketing", "launch", "agent-built", "approval-gated", "closed-loop", "company-brain", "tenant-isolated", "mcp-server", "chieflab", "chiefmo"]
}
