Skip to main content

Documentation Index

Fetch the complete documentation index at: https://help.kajabi.com/llms.txt

Use this file to discover all available pages before exploring further.

Follow the steps below for your AI tool of choice. Once connected, you can ask it to list your courses, draft broadcasts, search contacts, create offers, and more.

What’s possible

Browse and inspect — List and fetch sites, Courses, Products, Offers, orders, Contacts, Forms, Landing Pages, Blog posts, Email Broadcasts and Sequences, Coaching products, and themes. Search Contacts and Products by text. Create drafts — New Blog posts, Courses (with modules and lessons), Coaching products, Offers with pricing, Landing Pages, Email Broadcasts, Email Sequences with scheduled emails, and Forms with fields. Edit existing content — Update Course structure, Coaching metadata, Blog post body/SEO/tags, Form fields and settings, and theme content. See who’s who — Contact profiles with tags, purchases, and access; tag and segment lists. What it won’t do: Publish anything, take actions on behalf of customers, process payments, send email blasts, or touch account settings. Every write lands as a draft that a human finalizes in the Kajabi admin UI.

Before you begin

Server URL: https://mcp.kajabi.com/mcp Before you start: log into the correct Kajabi account in your browser — the OAuth approval uses that session.

Claude (Web — claude.ai)

Requires a paid Claude plan (Pro, Max, Team, or Enterprise).
  1. Go to claude.ai and sign in.
  2. Click your profile → Settings → Connectors.
  3. Click the Add custom connector button at the bottom of the page.
  4. Enter:
  1. Click Add, then approve the Kajabi consent screen in your browser.
  2. In a new chat, enable the Kajabi connector via the tools/attachments menu.
Verify: Ask “List my Kajabi sites.”

Claude Desktop

  1. Open Claude Desktop.
  2. Go to Settings → Connectors → Add custom Connector.
  3. Enter:
  1. Click Add and approve the consent screen in your browser.
Verify: Start a new conversation and ask “List my Kajabi sites.”

Claude Code (CLI)

claude mcp add kajabi --transport http https://mcp.kajabi.com/mcp Claude Code opens your browser for OAuth automatically. Approve the consent screen and you’re connected. Verify: > List my Kajabi sites

ChatGPT

Custom MCP connectors require Developer Mode, which exposes the full MCP tool surface (read + write). Only enable it for servers you trust — Kajabi is yours.

1. Enable Developer Mode (one-time)

  1. Open ChatGPT → Settings → Connectors → Advanced.
  2. Toggle Developer mode on.
  3. Read and accept the warning about write-enabled tools.

2. Add the Kajabi connector

  1. Open Settings → Apps → Advanced settings, click Create app.
  2. Enter:
  1. Save, then approve the Kajabi consent screen in your browser.

3. Use it in a chat

  1. Start a new conversation.
  2. Click the + icon (or Tools) → Developer mode → enable Kajabi.
  3. Ask your question.
Verify: “List my Kajabi sites.”

Tips

  • Always start with kjb_list_sites — most tools need a site_id.
  • Writes create drafts. Publishing still happens in the Kajabi admin UI.
  • Tokens refresh automatically. If you hit “Unauthorized,” remove the connector and re-add it.

Troubleshooting

IssueFix
”I don’t see any Kajabi tools”Confirm MCP is enabled on your account — reply and we’ll check.
ChatGPT: “Custom connectors not available”Enable Developer Mode in Settings Connectors Advanced.
Consent screen won’t load / auth failsLog into the right Kajabi account in your browser first, then retry.

Full list of tools

CategoryToolWhat it does
Siteslist_sitesLists all Kajabi sites the authenticated user can access. Call this first to discover site_ids.
Sitesget_site_summaryReturns a detailed summary of a site including settings, locale, and contact info.
SitespingSmoke test — confirms the MCP server is running and reachable.
Bloglist_blog_postsList blog posts with optional filtering by status (draft/published/scheduled) and tags. Paginated.
Blogget_blog_postGet full HTML content, SEO metadata, tags, and timestamps.
Blogcreate_blog_postCreate a draft blog post. Always created as a draft; publishing happens in the Kajabi admin UI.
Blogupdate_blog_postUpdate an existing post’s content, tags, or SEO metadata. Cannot change publish status.
Coursescreate_courseCreate a course. Supports evergreen (self-paced) and cohort (scheduled).
Coursesget_courseGet the full module/lesson tree with publishing states.
Coursesupdate_courseUpdate title, description, or thumbnail. Cannot change publish status.
Coursesupdate_course_contentAdd or update modules, submodules, and lessons in a course.
Coachingcreate_coachingCreate a coaching product. Supports one-on-one and group coaching.
Coachingget_coachingGet coaching program details including outline sessions or groups, client count, and scheduling config.
Coachingupdate_coachingUpdate title, description, coach info, and scheduling settings. Cannot change publish status.
Email broadcastslist_broadcastsList broadcasts with optional filtering by status (draft/scheduled/delivering/delivered).
Email broadcastsget_broadcastGet subject, body, recipient filters, and engagement stats (opens, clicks, bounces, rates).
Email broadcastscreate_broadcastCreate a draft broadcast. Optionally target a contact segment or all contacts. Sending happens in the admin UI.
Email sequenceslist_sequencesList active sequences with email count and subscriber count.
Email sequencesget_sequenceGet the sequence’s emails with drip timing, publication status, and engagement stats.
Email sequencescreate_sequenceCreate a sequence with a title and default send timing. Add emails with add_sequence_email.
Email sequencesadd_sequence_emailAdd an email to an existing sequence with a day offset and optional send time.
Formslist_formsList forms with submission counts. Paginated.
Formsget_formGet current fields, available site fields that can be added, and submission count.
Formscreate_formCreate a form with default fields (name and email).
Formsupdate_formUpdate settings or add existing site fields. Cannot modify or remove individual fields — use the admin UI.
Formslist_form_submissionsList submissions for a specific form. Submitted data is in the custom_fields JSONB column.
Landing pageslist_landing_pagesList standalone landing pages with optional filtering by status. Excludes funnel/pipeline step pages.
Landing pagesget_landing_pageGet SEO metadata, publish status, form count, and URLs.
Landing pagescreate_landing_pageCreate a draft landing page. Optionally specify a theme preset slug (defaults to ‘blank’).
Offerslist_offersList offers with optional filtering by status (draft/published). Includes pricing summary and product count.
Offersget_offerGet pricing breakdown, variants, and linked products.
Offerscreate_offerCreate a draft offer that controls what customers can purchase. Drafts only.
Offerslist_offer_purchasesList offer purchases with optional filtering by member, offer, or date range.
Offersget_offer_purchaseGet pricing breakdown, billing status, and full purchase detail.
Productssearch_productsSearch products by title with optional filtering by product type and sellable status.
Productsget_productGet product type, description, and linked offers.
Contactssearch_contactsSearch and filter contacts by name/email plus tags and segments.
Contactsget_contactGet contact profile including tags, custom fields, purchases, and product access.
Contactslist_segmentsList dynamic contact segments. Segments are filter queries, not static lists.
Contactslist_tagsList contact tags with contact count per tag. Use to find tag IDs before filtering contacts.
Themesget_theme_contentGet theme settings and the available section types for any themed page (site, course, landing page, offer, email, coaching).
Themesupdate_theme_contentUpdate theme settings on any themed page. Changes take effect immediately on published pages — no draft layer. Images must reference existing URLs.