100+ integrations are ready to connect to your AI.Connect your first MCP

Kajabi MCP server for your AI

Look up what a contact bought, add or remove tags, grant or revoke offer access, and pull orders and form submissions without opening the Kajabi admin.

PopMCPKajabi

Which offers does jen@example.com have, and what has she paid for

Supported Kajabi tools

Every contact, offer, order, form, course and webhook operation in the connection, plus the events it can watch for.

kajabi_add_tag_to_contact

Add tag to contact.

kajabi_contact_details

Contact details.

kajabi_create_contact

Create a contact.

kajabi_delete_contact

Delete contact

kajabi_grant_offer_to_contact

Grant offer to contact.

kajabi_list_contacts

List contacts.

kajabi_list_contacts_offers

List contact's offers.

kajabi_list_contacts_tags

List contact's tags.

kajabi_remove_tag_from_contact

Remove tag from contact.

kajabi_revoke_offer_from_contact

Revoke offer from contact.

kajabi_update_contact

Update contact.

kajabi_create_hook

Create hook.

kajabi_delete_hook

Delete hook.

kajabi_list_hooks

List hooks.

kajabi_customer_details

Customer details.

kajabi_grant_offer_to_customer

Grant offer to customer.

kajabi_list_customers

List customers.

kajabi_list_customers_offers

List customer's offers.

kajabi_cancel_subscription

Cancel subscription.

kajabi_contact_note_details

Contact note details.

kajabi_create_contact_note

Create contact note.

kajabi_form_details

Form details.

kajabi_list_contact_notes

List contact notes.

kajabi_list_form_submissions

List form submissions.

kajabi_list_forms

List forms.

kajabi_list_purchases

List purchases.

kajabi_purchase_details

Purchase details.

kajabi_submit_form

Submit form.

kajabi_list_order_items

List order items.

kajabi_list_orders

List orders.

kajabi_list_sites

List sites.

kajabi_order_details

Order details.

kajabi_site_details

Site details.

kajabi_list_offers

List offers.

kajabi_offer_details

Offer details.

kajabi_course_details

Course details.

kajabi_list_contact_tags

List contact tags.

kajabi_list_courses

List courses.

kajabi_list_custom_fields

List custom fields.

kajabi_list_products

List products.

kajabi_list_transactions

List transactions.

kajabi_product_details

Product details.

kajabi_transaction_details

Transaction details.

kajabi_get_me

My user profile.

kajabi_replace_offers_for_contact

Replace offers for contact.

kajabi_replace_tags_for_contact

Replace tags for contact.

kajabi_form_submission_sample

Form submission sample.

kajabi_hook_details

Hook details.

kajabi_order_created_sample

Order created sample.

kajabi_payment_succeeded_sample

Payment succeeded sample.

kajabi_purchase_sample

Purchase sample.

kajabi_tag_added_sample

Tag added sample.

kajabi_tag_removed_sample

Tag removed sample.

kajabi_replace_offers_for_customer

Replace offers for customer.

kajabi_revoke_offer_from_customer

Revoke offer from customer.

kajabi_deactivate_purchase

Deactivate purchase.

kajabi_delete_contact_note

Delete contact note.

kajabi_form_submission_details

Form submission details.

kajabi_reactivate_purchase

Reactivate purchase.

kajabi_update_contact_note

Update contact note.

kajabi_list_website_pages

List website pages.

kajabi_order_item_details

Order item details.

kajabi_website_page_details

Website page details.

kajabi_list_offers_products

List offer's products.

kajabi_blog_post_details

Blog post details.

kajabi_contact_tag_details

Contact tag details.

kajabi_custom_field_details

Custom field details.

kajabi_get_payout_details

Get payout details.

kajabi_landing_page_details

Landing page details.

kajabi_list_blog_posts

List blog posts.

kajabi_list_landing_pages

List landing pages.

kajabi_list_payouts

List payouts.

kajabi_list_podcasts

List podcasts.

kajabi_show_podcast

Show podcast.

kajabi_version

Version.

Connect Kajabi to your AI

Credentials off one Kajabi screen, then an endpoint your client signs into. Nothing to deploy, and nothing to install.

In Kajabi open Settings → Public API, click Create User API Key, choose the user and permissions, then paste the Client ID and Client Secret. The legacy Account Details pair is rejected. One key, one account.

Client IDYour Kajabi Public API Client ID
Client Secret••••••••••••3f7a
ConnectionVerified

Then just ask for the work

  • Which offers does jen@example.com have, and what has she paid for

    • list_contacts
    • contact_details
    • list_contacts_offers
    • list_purchases
  • Tag everyone who submitted the waitlist form last week as warm-lead

    • list_forms
    • list_form_submissions
    • add_tag_to_contact
  • Add Priya as a contact, log the demo call, and grant her the Pro Coaching offer

    • create_contact
    • create_contact_note
    • grant_offer_to_contact
  • Show last month's orders for the Launch Bundle offer and who bought each one

    • list_offers
    • list_orders
    • list_order_items
    • customer_details

Use Kajabi from the assistant you already open

One hosted endpoint, registered once per client. The same tools and the same permissions, whichever window the request comes from.

Claude DesktopCustom connector

Add the PopMCP URL under Settings → Connectors and the tools appear in every chat.

Claude WebCustom connector

The same endpoint, registered in the browser. Nothing to install on the machine you are working from.

ChatGPTCustom connector

Register PopMCP as a custom connector, then let ChatGPT read and update the account.

CodexDesktop & CLI

Wire the endpoint into Codex or the Codex CLI when a task needs live business context, not a fixture.

OpenCodeCoding agent

Register the remote MCP server in OpenCode's config for terminal-first and scripted agent runs.

ZCodeDesktop app

Add PopMCP as an MCP server in Z.ai's desktop app and work the account from the same window.

Kajabi MCP server questions

What teams ask before putting Kajabi behind an AI client.

Which Kajabi credentials do I need, and why was my existing API key rejected?

You need a Public API Client ID and Client Secret. In Kajabi go to Settings → Public API, click Create User API Key, name it something like "MCP", pick the user and permissions, and copy both values into the connect form. The API Key and Secret under Settings → Account Details → API Credentials are Kajabi's legacy Zapier credentials and will be rejected here.

Is there an OAuth screen, a callback URL, or a token to refresh?

No. There is no redirect, consent screen, or re-authentication step. PopMCP exchanges the Client ID and Secret for a short-lived access token server-side over HTTPS using the OAuth2 Client Credentials flow. Because the key belongs to one Kajabi account, the MCP server is locked to that account.

What is the difference between a contact and a customer in these tools?

A contact is anyone on your list; they become a customer when they make their first purchase. That split runs through the tool set, so people-level lookups use list_contacts and contact_details while buyer-level lookups use list_customers and customer_details. Offer access can be read either way, through list_contacts_offers or list_customers_offers.

Can the agent build courses, edit products, or change my site pages?

No. Courses, products and sites are read-only here through list_courses, course_details, list_products, list_sites and site_details. The writes stay on people and commerce: creating, updating and deleting contacts, adding and removing tags, writing contact notes, granting and revoking offers, submitting forms, canceling subscriptions, and managing webhooks.

How do I stop the agent from revoking access or canceling a subscription by accident?

Set the connection to read-only if you only want reporting, which leaves write tools like revoke_offer_from_contact, cancel_subscription and delete_contact unavailable. If you need writes, keep full access but turn on approval-required-for-writes so each of those calls is shown to you before it runs. Reads such as list_purchases and order_details keep working either way.

Which Kajabi events can PopMCP watch for?

Webhook-backed events fire on a purchase, a form submission, a tag added to or removed from a contact, a successful payment including subscription renewals, and a new order. Polled events cover a contact being created, a contact becoming a customer, an unsubscribe, a bounced email, a transaction such as a charge, refund or dispute, and a Kajabi Payments payout. The rest work by change detection, such as a purchase being deactivated so a member loses access to an offer, and that access returning when it is reactivated.

Do I have to run or host the Kajabi MCP server myself?

No. PopMCP hosts it and gives you a Streamable HTTP MCP URL. There is nothing to deploy, no callback URL to register, and no infrastructure to keep running or patch.

Which AI clients can use this MCP server?

Any client that supports a remote Streamable HTTP MCP server — Claude Desktop, Claude Web, ChatGPT custom connectors, Codex and the Codex CLI, OpenCode and Z.ai's ZCode, as well as editors such as Cursor, Windsurf and Zed. Your client signs in to PopMCP with OAuth; the provider credential never leaves the server.

Why do only 44 of the 75 tools load by default?

Loading 75 tool definitions into every conversation burns context before the work starts. PopMCP loads a curated 44-tool set covering the everyday workflows and keeps the rest searchable, so your AI pulls a specialist tool only when a task needs it. You can switch a connection to the full catalog at any time.

What is the difference between a tool and a trigger?

A tool is something your AI calls — there are 75 here. A trigger is something PopMCP watches for you: 20 Kajabi events that can start work on the PopMCP side. Triggers never enter your AI client's context, and none of them ask you to paste a callback URL into Kajabi.

Connect Kajabi to your AI in minutes

Launch a hosted MCP endpoint for Kajabi, keep tool access under control, and start testing real workflow prompts right away.

Connect your first MCP