1. Conduid
  2. Documentation
  3. Thinkific MCP Server
MCP server · Documentation

Thinkific MCP Server

Enables AI assistants to manage Thinkific sites through the REST Admin API, providing tools for handling courses, students, enrollments, and orders. It features 24 specialized tools and resources with support for dual authentication and automatic rate-limit management.

Unclaimed last commit 6 months ago docs
34Low

Scored 6 months ago · breakdown

About Thinkific MCP Server

Thinkific MCP Server is an MCP server published by ackbarguppi-ai in the Documentation category: enables AI assistants to manage Thinkific sites through the REST Admin API, providing tools for handling courses, students, enrollments, and orders. It features 24 specialized tools and resources with support for dual authentication and automatic rate-limit management.

Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.

Install

From source
git clone https://github.com/ackbarguppi-ai/thinkific-mcp

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Tools (6)

create_userCreate a new user

Parameters not published.

delete_userDelete a user

Parameters not published.

get_userGet user details by ID

Parameters not published.

list_usersList all users/students

Parameters not published.

search_usersSearch users by email/name

Parameters not published.

update_userUpdate user details

Parameters not published.

Ask AI

✦

Ask AI about Thinkific MCP Server

Powered by Claude · Grounded in docs

I know everything about Thinkific MCP Server. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ✓README presentThe repository ships documentation.

5 checks have not been run yet.

README

Thinkific MCP Server

A production-quality Model Context Protocol (MCP) server for the Thinkific REST Admin API and GraphQL API. Lets AI assistants (Claude, GPT, etc.) interact with your Thinkific site directly — manage courses, students, enrollments, orders, coupons, communities, and more.

Features

  • 108 MCP tools covering the full Thinkific API surface — 77 REST tools and 31 GraphQL tools
  • Full REST coverage — courses, users, enrollments, orders, products, bundles, coupons, groups, instructors, reviews, promotions, categories, site scripts, external orders, publish requests, and more
  • GraphQL support — queries and mutations for communities, posts, lessons, assignments, and advanced data access via https://api.thinkific.com/stable/graphql
  • 3 MCP resources for quick site overview data
  • Dual authentication — API Key or OAuth Bearer token
  • Pagination on every list endpoint (page + limit params)
  • Rate-limit awareness — automatic retry with exponential back-off on 429 responses
  • Structured error handling — human-readable errors, never crashes the server
  • TypeScript — fully typed, strict mode, JSDoc throughout

Quick Start

1. Install

# Clone or copy the project
cd ~/Documents/thinkific-mcp

# Install dependencies
npm install

# Build
npm run build

2. Configure Authentication

You need one of the two auth methods:

Option A: API Key (single site)

Find your API key in your Thinkific admin: Settings → Code & Analytics → API.

export THINKIFIC_API_KEY="your-api-key"
export THINKIFIC_SUBDOMAIN="your-site-subdomain"

Option B: OAuth Token (multi-site apps)

export THINKIFIC_OAUTH_TOKEN="your-oauth-bearer-token"

3. Run

# Direct
node dist/index.js

# Or via npm
npm start

Usage with Claude Desktop

Add to your Claude Desktop MCP config (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "thinkific": {
      "command": "node",
      "args": ["/path/to/thinkific-mcp/dist/index.js"],
      "env": {
        "THINKIFIC_API_KEY": "your-api-key",
        "THINKIFIC_SUBDOMAIN": "your-subdomain"
      }
    }
  }
}

Usage with OpenClaw / mcporter

# Register the server
mcporter add thinkific -- node /path/to/thinkific-mcp/dist/index.js

# Set env vars
mcporter env thinkific THINKIFIC_API_KEY=your-api-key
mcporter env thinkific THINKIFIC_SUBDOMAIN=your-subdomain

# Verify tools are visible
mcporter tools thinkific

REST Tool Reference

Users

Tool Description Key Parameters
list_users List all users/students page, limit
get_user Get user details by ID user_id
create_user Create a new user first_name, last_name, email, password?, roles?, company?, send_welcome_email?
search_users Search users by email/name query, page, limit
update_user Update user details user_id, fields to update
delete_user Delete a user user_id

Enrollments

Tool Description Key Parameters
list_enrollments List enrollments (filterable) page, limit, query_user_id?, query_course_id?, query_email?
create_enrollment Enroll a user in a course course_id, user_id, activated_at?, expiry_date?
get_enrollment Get enrollment details by ID enrollment_id
update_enrollment Update an enrollment enrollment_id, fields to update

Courses

Tool Description Key Parameters
list_courses List all courses with pagination page, limit
get_course Get a single course by ID course_id

Chapters

Tool Description Key Parameters
list_chapters List chapters in a course course_id, page, limit
get_chapter Get chapter details by ID chapter_id

Contents

Tool Description Key Parameters
list_contents List lessons in a chapter chapter_id, page, limit
get_content Get content/lesson details by ID content_id

Orders

Tool Description Key Parameters
list_orders List orders (filterable) page, limit, query_user_id?, query_email?
get_order Get order details by ID order_id

Products

Tool Description Key Parameters
list_products List all products page, limit
get_product Get product details by ID product_id
list_related_products List related products product_id, page, limit

Bundles

Tool Description Key Parameters
list_bundles List course bundles page, limit
get_bundle Get bundle details by ID bundle_id
list_bundle_courses List courses in a bundle bundle_id, page, limit
list_bundle_enrollments List bundle enrollments bundle_id, page, limit
create_bundle_enrollment Enroll a user in a bundle bundle_id, user_id
update_bundle_enrollment Update a bundle enrollment bundle_id, enrollment_id, fields to update

Groups

Tool Description Key Parameters
list_groups List all groups page, limit
get_group Get group details by ID group_id
create_group Create a new group name
delete_group Delete a group group_id

Group Analysts

Tool Description Key Parameters
list_group_analysts List analysts for a group group_id, page, limit
add_group_analyst Add an analyst to a group group_id, user_id
remove_group_analyst Remove an analyst from a group group_id, user_id

Group Users

Tool Description Key Parameters
add_user_to_group Add a user to a group group_id, user_id

Coupons

Tool Description Key Parameters
list_coupons List all coupons page, limit
create_coupon Create a discount code code, discount_type, discount_amount, note?, quantity?, product_ids?, expires_at?
get_coupon Get coupon details by ID coupon_id
update_coupon Update a coupon coupon_id, fields to update
delete_coupon Delete a coupon coupon_id
bulk_create_coupons Bulk create coupons count, coupon params

Promotions

Tool Description Key Parameters
list_promotions List promotions page, limit
create_promotion Create a promotion name, discount_type, discount_amount, promotion params
get_promotion Get promotion details by ID promotion_id
update_promotion Update a promotion promotion_id, fields to update
delete_promotion Delete a promotion promotion_id
get_promotion_by_coupon Get promotion for a coupon code coupon_code

Categories

Tool Description Key Parameters
list_categories List categories page, limit
create_category Create a new category name
get_category Get category details by ID category_id
update_category Update a category category_id, fields to update
delete_category Delete a category category_id
list_category_products List products in a category category_id, page, limit
add_products_to_category Add products to a category category_id, product_ids
remove_products_from_category Remove products from a category category_id, product_ids

Course Reviews

Tool Description Key Parameters
list_course_reviews List reviews (filterable) course_id?, page, limit
create_course_review Create a course review course_id, user_id, rating, title?, review?
get_course_review Get review details by ID review_id

Instructors

Tool Description Key Parameters
list_instructors List instructors page, limit
create_instructor Create an instructor profile user_id, instructor fields
get_instructor Get instructor details by ID instructor_id
update_instructor Update an instructor profile instructor_id, fields to update
delete_instructor Delete an instructor profile instructor_id

Custom Profile Fields

Tool Description Key Parameters
list_custom_profile_fields List all custom profile fields (none)

External Orders

Tool Description Key Parameters
create_external_order Create an external order user_id, product_id, order params
refund_external_order Refund an external order order_id
purchase_external_order Process an external order purchase order_id

Product Publish Requests

Tool Description Key Parameters
list_publish_requests List product publish requests page, limit
get_publish_request Get a publish request by ID request_id
approve_publish_request Approve a publish request request_id
deny_publish_request Deny a publish request request_id

Site Scripts

Tool Description Key Parameters
list_site_scripts List all site scripts page, limit
create_site_script Create a site script name, src, load_method?, location?
get_site_script Get site script details by ID script_id
update_site_script Update a site script script_id, fields to update
delete_site_script Delete a site script script_id

Site

Tool Description Key Parameters
get_site_info Site overview (counts and settings) (none)

GraphQL Tool Reference

GraphQL tools use the Thinkific GraphQL endpoint: https://api.thinkific.com/stable/graphql

Queries

Tool Description Key Parameters
gql_site Fetch site details via GraphQL (none)
gql_me Get current authenticated user (none)
gql_course Get course details by ID id
gql_course_by_slug Get course details by slug slug
gql_user Get user details by ID id
gql_user_by_email Get user details by email email
gql_bundle Get bundle details by ID id
gql_category Get category details by ID id
gql_chapter Get chapter details by ID id
gql_lesson Get lesson details by ID id
gql_group Get group details by ID id
gql_product Get product details by ID id
gql_community Get community details by ID id
gql_community_user Get community user details community_id, user_id
gql_post Get a community post by ID id
gql_space Get a community space by ID id

Mutations

Tool Description Key Parameters
gql_create_post Create a community post space_id, content, title?
gql_reply_to_post Reply to a community post post_id, content
gql_update_post Update a community post post_id, content?, title?
gql_follow_post Follow a community post post_id
gql_unfollow_post Unfollow a community post post_id
gql_pin_post Pin a community post post_id
gql_unpin_post Unpin a community post post_id
gql_move_post Move a post to another space post_id, space_id
gql_react_to_post React to a community post post_id, reaction
gql_bulk_add_users_to_groups Bulk add users to groups user_ids, group_ids
gql_bulk_remove_users_from_groups Bulk remove users from groups user_ids, group_ids
gql_mark_lesson_incomplete Mark a lesson as incomplete for a user lesson_id, user_id
gql_view_lesson Mark a lesson as viewed/complete for a user lesson_id, user_id
gql_update_assignment_submission Update an assignment submission submission_id, fields to update
gql_update_product Update a product via GraphQL id, fields to update

Resources

Resource URI Description
thinkific://courses JSON listing of all courses (first 100)
thinkific://users JSON listing of all users (first 100)
thinkific://site JSON overview with total counts

Environment Variables

Variable Required Description
THINKIFIC_API_KEY Yes (API Key auth) Your Thinkific API key from Settings → Code & Analytics → API
THINKIFIC_SUBDOMAIN Yes (API Key auth) Your Thinkific site subdomain (e.g. my-school from my-school.thinkific.com)
THINKIFIC_OAUTH_TOKEN Yes (OAuth auth) OAuth2 Bearer token (alternative to API Key auth)

Note: If THINKIFIC_OAUTH_TOKEN is set, it takes precedence over API Key auth.

Project Structure

thinkific-mcp/
├── src/
│   ├── index.ts       # Entry point — server bootstrap
│   ├── client.ts      # Thinkific API client (auth, pagination, retry)
│   ├── tools.ts       # MCP tool definitions and handlers (REST)
│   ├── gql-tools.ts   # MCP tool definitions and handlers (GraphQL)
│   ├── resources.ts   # MCP resource definitions
│   ├── types.ts       # TypeScript interfaces for API responses
│   └── test.ts        # Validation test script
├── dist/              # Compiled JavaScript (after build)
├── package.json
├── tsconfig.json
├── README.md
├── LICENSE
└── .gitignore

Development

# Build
npm run build

# Watch mode
npm run dev

# Type-check only
npm run lint

# Run tests (after build)
npm test

Troubleshooting

"Thinkific authentication not configured"

Set the required environment variables. You need either:

  • THINKIFIC_API_KEY and THINKIFIC_SUBDOMAIN, or
  • THINKIFIC_OAUTH_TOKEN

401 Authentication Error

  • Verify your API key hasn't been rotated (keys are shown only once after reset)
  • Confirm your Thinkific plan supports API access (Grow/Pro + Growth or above)
  • Check the subdomain matches exactly (e.g. my-school, not my-school.thinkific.com)

429 Rate Limit

The server automatically retries with exponential back-off (up to 3 retries). If you're consistently hitting rate limits, reduce request frequency or add pagination with smaller page sizes.

Empty Results

  • Check that you're connecting to the correct site (verify subdomain)
  • Some endpoints require data to exist first (e.g. no enrollments without courses and users)

Server Won't Start

  • Ensure Node.js 18+ is installed: node --version
  • Run npm run build first — the server runs from dist/
  • Check stderr for error messages (stdout is reserved for MCP protocol)

API Documentation

License

MIT — see LICENSE.

README copy captured when this server was indexed; it may lag the repository. The original is authoritative.

Questions

About Thinkific MCP Server

How do I install Thinkific MCP Server?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Thinkific MCP Server safe to use with an AI agent?

Its trust score is 34 out of 100 (low). It passes 1 of the 1 static security checks run so far. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Thinkific MCP Server still maintained?

The last commit was 6 months ago. That's long enough that you should check whether the maintainer is responding to issues before depending on it.