Whop MCP: Connect AI Agents to Your Whop Store

MCP (Model Context Protocol) lets AI assistants like Claude, Cursor, and VS Code Copilot talk directly to the Whop API. Instead of clicking through dashboards or writing code, you tell your AI "create a 20% promo code" or "show me this month's revenue" and it happens.

This guide covers every available Whop MCP server, how to set each one up, what API endpoints they support, troubleshooting, and real examples of what you can do with them. Whether you're a Whop seller, course creator, or developer building on the Whop platform, this is the complete reference.

The Whop API has 155+ endpoints across 43 categories — products, payments, memberships, courses, chat, forums, affiliates, ads, analytics, and more. MCP servers expose these as tools your AI can call directly.


What is the Model Context Protocol (MCP)?

The Model Context Protocol is an open standard created by Anthropic that defines how AI assistants communicate with external services. Before MCP, every AI tool had to build its own custom integration for every API it wanted to access. MCP standardizes this into a single protocol.

An MCP server is a small program that sits between your AI client and an API. It translates the AI's requests into proper API calls and returns the results. For Whop, this means your AI assistant can:

  • List, create, update, and delete products and pricing plans
  • Process refunds, retry failed payments, void invoices
  • Manage memberships — pause, resume, cancel, add free days
  • Build and update courses with chapters and lessons
  • Send messages in chat channels, forums, and DMs
  • Run affiliate programs, ad campaigns, and track leads
  • Query analytics with SQL through the Stats API
  • Handle disputes, manage webhooks, upload files

The key benefit: you don't write any code. You add a JSON config to your AI client, provide your Whop API key, and start talking to your store in plain English.

How MCP Works (Step by Step)

  1. You ask your AI a question — "How many active memberships do I have?"
  2. The AI checks its available tools — it sees list_memberships is available via the Whop MCP server
  3. The AI calls the tool — it sends a structured request to the MCP server with the right parameters
  4. The MCP server calls the Whop API — it translates the tool call into a proper GET /api/v1/memberships request with your API key
  5. The API responds — the MCP server passes the data back to the AI
  6. The AI answers you — "You have 847 active memberships, 23 paused, and 12 pending cancellation."

This all happens in 1-2 seconds. The AI handles the complexity of API pagination, error handling, and data formatting.


Setup Guide: Install Whop MCP Server

Choose your AI client below. All configurations use the official @whop/mcp server. You'll need a Whop API key from dev.whop.com — go to Settings → API Keys → Create Key.

Claude Desktop

Open your Claude Desktop config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

If the file doesn't exist, create it. Add the following:

{
  "mcpServers": {
    "whop": {
      "command": "npx",
      "args": ["-y", "@whop/mcp"],
      "env": {
        "WHOP_API_KEY": "your_api_key_here"
      }
    }
  }
}

After saving: Quit Claude Desktop completely (not just close the window) and reopen it. The MCP server icon should appear in the chat input area.

If it doesn't work:

  • Make sure you have Node.js 18+ installed: run node --version in terminal
  • Check the JSON is valid — a missing comma or bracket will silently fail
  • Clear the MCP cache: rm -rf ~/.mcp-auth
  • Check Claude Desktop logs: Help → Show Logs
Cursor

Create or edit .cursor/mcp.json in your project root (for project-level) or in your home directory (for global):

{
  "mcpServers": {
    "whop": {
      "command": "npx",
      "args": ["-y", "@whop/mcp"],
      "env": {
        "WHOP_API_KEY": "your_api_key_here"
      }
    }
  }
}

After saving: Restart Cursor. The Whop MCP tools will appear in Cursor's tool list when you open Agent mode (Cmd+L or Ctrl+L).

Alternative — one-click install: You can also add Whop MCP via Cursor's MCP settings panel: Settings → MCP → Add Server.

If it doesn't work:

  • Ensure Node.js 18+ is installed and accessible from Cursor's terminal
  • Try the global config location if project-level doesn't work
  • Restart Cursor completely, not just reload the window
VS Code (GitHub Copilot)

Create .vscode/mcp.json in your project root:

{
  "servers": {
    "whop": {
      "command": "npx",
      "args": ["-y", "@whop/mcp"],
      "env": {
        "WHOP_API_KEY": "your_api_key_here"
      }
    }
  }
}

Note: VS Code uses "servers" as the top-level key, not "mcpServers". This is a common source of errors when copying configs from other clients.

After saving: Open the Copilot chat panel. The MCP tools should be listed under available tools.

Windsurf

Add to your Windsurf MCP configuration (Settings → MCP):

{
  "mcpServers": {
    "whop": {
      "command": "npx",
      "args": ["-y", "@whop/mcp"],
      "env": {
        "WHOP_API_KEY": "your_api_key_here"
      }
    }
  }
}

After saving: Restart Windsurf for the MCP server to load.

Claude Code (CLI)

Run these commands in your terminal:

# Add the Whop MCP server to Claude Code
claude mcp add whop -- npx -y @whop/mcp

# Set your API key as an environment variable
export WHOP_API_KEY="your_api_key_here"

# Or add it to your shell profile for persistence:
echo 'export WHOP_API_KEY="your_api_key_here"' >> ~/.zshrc

The server will be available in your next Claude Code session. You can verify it's loaded by asking Claude to list available MCP tools.

Using Community Servers Instead

To use furkankoykiran/whop-mcp instead of the official server, change the args in any config above:

"args": ["-y", "@furkankoykiran/whop-mcp"]

To use IsaiahDupree/whop-mcp (not on npm — requires cloning):

# Clone the repository
git clone https://github.com/IsaiahDupree/whop-mcp.git
cd whop-mcp && npm install && npm run build

# Then in your MCP config, point to the local build:
"command": "node",
"args": ["/absolute/path/to/whop-mcp/dist/index.js"]

See the comparison table below for differences between servers.

General Troubleshooting

If the MCP server isn't connecting in any client:

  1. Check Node.js version: Run node --version. You need 18.0.0 or higher.
  2. Validate your API key: Test it with curl -H "Authorization: Bearer YOUR_KEY" https://api.whop.com/api/v1/products. If you get a 401, regenerate the key at dev.whop.com.
  3. Check JSON syntax: Paste your config into jsonlint.com to catch missing commas or brackets.
  4. Clear npx cache: Run npx clear-npx-cache then try again.
  5. Clear MCP auth cache: Run rm -rf ~/.mcp-auth and restart your client.
  6. Check firewall/proxy: MCP servers need outbound HTTPS access to api.whop.com.

Available Whop MCP Servers Compared

Five MCP servers exist for connecting to the Whop API. They vary significantly in API coverage, installation method, and maintenance. Here's how they compare as of April 2026.

ServerToolsInstall MethodAPI CoverageMaintained By
@whop/mcp npx @whop/mcp Official (core endpoints) Whop Inc.
furkankoykiran/whop-mcp 33 npx @furkankoykiran/whop-mcp ~30% (payments, memberships, products, promos, affiliates, reviews) Community (1 maintainer)
IsaiahDupree/whop-mcp ~95 Clone + npm run build ~80% (everything above + courses, messaging, ads, disputes, stats SQL) Community (1 maintainer)
Zapier MCP Varies Zapier platform Varies (action-based) Zapier
Pipedream MCP Varies Pipedream platform Varies (action-based) Pipedream

Which Server Should You Use?

Use the official @whop/mcp if you want the simplest, most reliable setup. It's maintained by Whop's team, receives regular updates, and covers the core API endpoints most sellers need. This is the recommended default.

Use furkankoykiran/whop-mcp if you want a well-documented community alternative with npm install support. It exposes 33 tools covering payments, memberships, products, promo codes, affiliates, and reviews. It also includes computed tools like get_financial_summary and get_review_stats that aggregate data client-side — useful for quick business overviews.

Use IsaiahDupree/whop-mcp if you need maximum API coverage. With ~95 tools across 21 categories, it covers areas no other server touches: full course management (courses, chapters, lessons, student tracking), messaging and DMs, the entire ads platform (campaigns, groups, ads), dispute handling, waitlist management, and SQL-based analytics queries. The tradeoff: it's not on npm, so you need to clone and build it locally.

Use Zapier or Pipedream if you're already on those platforms and want no-code MCP access. These are action-based integrations rather than full API wrappers.

Detailed Feature Comparison

Feature@whop/mcpfurkankoykiranIsaiahDupree
Products & PlansYesYes (6 tools)Yes (10 tools)
Payments & RefundsYesYes (6 tools)Yes (5 tools)
MembershipsYesYes (7 tools)Yes (8 tools, includes pause/resume)
Promo CodesYesYes (5 tools)Yes (4 tools)
AffiliatesYes (3 tools)Yes (5 tools, includes archive)
CoursesNoYes (16 tools — full CRUD for courses, chapters, lessons)
Chat & MessagingNoYes (8 tools — channels, DMs, notifications)
ForumsNoYes (5 tools)
Ads PlatformNoYes (13 tools — campaigns, groups, ads)
DisputesNoYes (4 tools)
Stats / SQL QueriesNoYes (4 tools, includes raw SQL)
WebhooksNoYes (5 tools, 27 event types)
Auto-PaginationNo (single page)Yes (async generator)
Tool NamespacingNo (list_payments)Yes (whop_list_payments)
Output FormatFormatted markdownRaw JSON
Test SuiteNoneVitest + MSW mocks
LicenseMITNone

What Can You Do with Whop MCP?

Here are real examples of what becomes possible when your AI agent can talk directly to the Whop API. These are actual prompts you can type into Claude, Cursor, or any MCP-compatible client.

Product & Store Management

Manage your entire Whop catalog through conversation:

  • "List all my products with their prices" — returns every product with plan details
  • "Create a new product called 'Trading Signals' with a $49/month plan" — creates the product and pricing plan in one step
  • "Create a promo code SUMMER25 for 25% off, valid for the next 30 days" — sets up a time-limited discount
  • "Delete the 'Old Course Bundle' product" — removes it from your store
  • "Update the description of my premium membership plan" — edits plan details

Membership & Access Control

Handle members without touching the dashboard:

  • "How many active memberships do I have?" — counts and categorizes by status
  • "Give user_abc123 7 free days on their membership" — extends access
  • "Pause all memberships that are past due" — bulk action across your base
  • "Cancel the membership for user@example.com" — looks up by email and cancels
  • "Show me all memberships expiring this week" — filters by date range

Payments & Financial Operations

Track revenue and handle payment issues:

  • "Show me all failed payments from the last 7 days" — filters by status and date
  • "Refund payment pay_xyz for the full amount" — processes the refund
  • "What's my total revenue this month?" — aggregates payment data
  • "Retry all failed payments from yesterday" — batch retry
  • "List all pending disputes" — shows disputes needing attention

Course Management

Build and manage educational content (requires IsaiahDupree/whop-mcp for full coverage):

  • "Create a new course called 'Crypto Trading 101'" — sets up the course structure
  • "Add a chapter called 'Technical Analysis' to my trading course" — organizes content
  • "How many students have completed lesson 3?" — tracks progress
  • "List all students enrolled in my premium course" — student management

Community & Communication

Manage your community channels (requires IsaiahDupree/whop-mcp):

  • "Send an announcement to the #general channel: 'New course dropping Friday!'" — posts messages
  • "List all forum posts from the last 24 hours" — monitors activity
  • "Send a DM to user_abc123 about their support ticket" — direct messaging
  • "Send a notification to all members about the upcoming maintenance" — bulk notifications

Analytics & Reporting

Query your business data (requires IsaiahDupree/whop-mcp for SQL access):

  • "What's my MRR broken down by product?" — monthly recurring revenue analysis
  • "Run this SQL query against my stats: SELECT date, SUM(revenue) FROM payments GROUP BY date ORDER BY date DESC LIMIT 30" — raw SQL access to analytics
  • "Compare this month's revenue to last month" — trend analysis
  • "Which product has the highest churn rate?" — business intelligence

Whop API Reference for MCP

The Whop API v1 has 155+ endpoints across 43 categories. Here's what each category covers and the key endpoints available through MCP servers. All endpoints use the base URL https://api.whop.com/api/v1.

Products & Pricing

ProductsPOST /products, GET /products/{id}, PATCH /products/{id}, GET /products, DELETE /products/{id}. Full CRUD for your store catalog. Products are the top-level container; each product can have multiple plans attached to it with different pricing or access levels.

PlansPOST /plans, GET /plans/{id}, PATCH /plans/{id}, GET /plans, DELETE /plans/{id}. Pricing tiers attached to products. Supports one-time payments, subscriptions (monthly, annual, or custom billing periods), trial periods, and free plans. Plans determine what a member pays and how often.

Promo CodesPOST /promo_codes, GET /promo_codes/{id}, GET /promo_codes, DELETE /promo_codes/{id}. Percentage or fixed-amount discounts with optional expiration dates, usage limits, and plan restrictions. Create promo codes for specific plans or across your entire catalog.

Checkout ConfigurationsPOST /checkout_configurations, GET /checkout_configurations/{id}, GET /checkout_configurations. Customize the checkout experience per product, including fields to collect, upsells, and post-purchase redirects.

Payments & Billing

PaymentsPOST /payments, GET /payments/{id}, GET /payments, POST /payments/{id}/refund, POST /payments/{id}/retry, POST /payments/{id}/void. Filter by product, plan, status (draft, open, paid, pending, uncollectible, unresolved, void), currency, billing reason, or date range.

RefundsGET /refunds/{id}, GET /refunds. Track refund status and history.

InvoicesPOST /invoices, GET /invoices/{id}, GET /invoices, POST /invoices/{id}/void. Generate and manage invoices.

DisputesGET /disputes/{id}, GET /disputes, POST /disputes/{id}/submit_evidence, POST /disputes/{id}/update_evidence. Handle chargebacks and payment disputes.

Memberships & Users

MembershipsGET /memberships/{id}, PATCH /memberships/{id}, GET /memberships, POST /memberships/{id}/add_free_days, POST /memberships/{id}/cancel, POST /memberships/{id}/pause, POST /memberships/{id}/resume, POST /memberships/{id}/uncancel. Full lifecycle management of subscriptions.

MembersGET /members/{id}, GET /members. List and inspect your member base.

UsersGET /users/{id}, GET /users, GET /users/{id}/access/{resource_id}. Check if specific users have access to specific resources.

Entries / WaitlistGET /entries/{id}, GET /entries, POST /entries/{id}/approve, POST /entries/{id}/deny. Manage gated access queues.

Courses & Education

CoursesPOST /courses, GET /courses/{id}, PATCH /courses/{id}, GET /courses, DELETE /courses/{id}. Create and manage online courses.

Course ChaptersPOST /course_chapters, GET /course_chapters/{id}, PATCH /course_chapters/{id}, GET /course_chapters, DELETE /course_chapters/{id}. Organize course content into sections.

Course LessonsPOST /course_lessons, GET /course_lessons/{id}, PATCH /course_lessons/{id}, GET /course_lessons, DELETE /course_lessons/{id}. Plus POST /{id}/start, POST /{id}/mark_as_completed, POST /{id}/submit_assessment.

Course StudentsGET /course_students/{id}, GET /course_students. Track enrollment and progress.

Community & Messaging

Chat ChannelsGET /chat_channels/{id}, PATCH /chat_channels/{id}, GET /chat_channels. Manage community chat spaces.

MessagesPOST /messages, GET /messages/{id}, PATCH /messages/{id}, GET /messages, DELETE /messages/{id}. Full message management.

DM Channels & Members — Full CRUD for direct message channels and participants.

Forums & PostsGET /forums, POST /forum_posts, GET /forum_posts. Community discussion boards.

NotificationsPOST /notifications. Send push notifications to members.

Support ChannelsPOST /support_channels, GET /support_channels. Customer support infrastructure.

Marketing & Growth

AffiliatesPOST /affiliates, GET /affiliates/{id}, GET /affiliates, POST /affiliates/{id}/archive, POST /affiliates/{id}/unarchive. Plus affiliate overrides for custom commission rates per affiliate. The affiliates system lets you set up a referral program where others earn a percentage of each sale they drive. Overrides let you give specific affiliates custom rates outside your default commission structure.

LeadsPOST /leads, GET /leads/{id}, PATCH /leads/{id}, GET /leads. Track and manage potential customers before they convert to paying members. Useful for waitlists, pre-launch signups, and sales pipeline tracking.

Ad CampaignsPOST /ad_campaigns, GET /ad_campaigns/{id}, PATCH /ad_campaigns/{id}, GET /ad_campaigns, POST /{id}/pause, POST /{id}/unpause, DELETE /ad_campaigns/{id}. Full advertising lifecycle management: create campaigns, organize them into ad groups, create individual ads, and pause or unpause them based on performance.

Ad Groups & Ads — Full CRUD for ad groups (which organize ads within a campaign) and individual ads. Each ad can target different audiences or use different creative assets within the same campaign budget.

Financial & Treasury

Ledger AccountsGET /ledger_accounts/{id}. Check your Whop wallet balance and pending amounts. Your ledger account tracks all incoming payments, fees, and outgoing withdrawals.

TransfersPOST /transfers, GET /transfers/{id}, GET /transfers. Move funds between Whop accounts. Useful for splitting revenue between team members or moving funds to a specific payout account.

WithdrawalsPOST /withdrawals, GET /withdrawals/{id}, GET /withdrawals. Initiate a payout to your connected bank account or payout method. Track withdrawal status through the API.

Payout MethodsGET /payout_methods/{id}, GET /payout_methods. List and inspect your configured payout destinations — bank accounts, PayPal, or other supported methods.

Analytics & Stats

Stats API — Four powerful endpoints:

  • GET /stats/describe — discover available metrics, dimensions, and data nodes
  • POST /stats/metric — query pre-defined metrics with aggregations and breakdowns
  • POST /stats/raw — query raw data with custom filtering
  • POST /stats/sql — run arbitrary SQL queries against your analytics data

The SQL endpoint is particularly powerful — it lets your AI write and execute analytical queries against your business data in real time.

Platform & Infrastructure

WebhooksPOST /webhooks, GET /webhooks/{id}, PATCH /webhooks/{id}, GET /webhooks, DELETE /webhooks/{id}. 27 event types including payment.succeeded, membership.activated, dispute.created, course_lesson_interaction.completed, and more. Uses Standard Webhooks spec for signature verification.

Apps & Builds — Create, manage, and promote app builds for the Whop app ecosystem.

FilesPOST /files, GET /files/{id}. Upload and retrieve files.

CompaniesPOST /companies, GET /companies/{id}, PATCH /companies/{id}, GET /companies. Manage company settings.

Experiences — CRUD plus attach/detach resources and duplicate. Experiences are the containers that hold your community products — they can include courses, chat channels, forums, and other content types bundled together for members.

Verifications — KYC and identity verification status. Check whether a user has completed age verification, ID verification, or other compliance checks required for your product.

Shipments — Track physical product shipments for merchandise or physical goods sold through Whop. Query shipment status and update tracking information.

Analytics & Stats: Example SQL Query

The Stats SQL endpoint accepts raw SQL and returns results as JSON. Here's an example of what your AI can execute on your behalf:

# Example: query via the Stats API SQL endpoint
curl -X POST https://api.whop.com/api/v1/stats/sql \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query": "SELECT DATE(created_at) as date, SUM(amount) as revenue FROM payments WHERE status = '\''paid'\'' GROUP BY DATE(created_at) ORDER BY date DESC LIMIT 30"}'

Authentication

MCP servers authenticate using a Company API Key or App API Key passed via the WHOP_API_KEY environment variable. The server sends this as a Bearer token in the Authorization header on every API request. Generate keys at dev.whop.com.

You can verify your API key is working before configuring your MCP client:

# Test your API key — should return a list of your products
curl -H "Authorization: Bearer YOUR_API_KEY" \
     https://api.whop.com/api/v1/products

The API also supports OAuth 2.1 + PKCE for user-delegated access, though MCP servers typically use API keys for simplicity.

All list endpoints use cursor-based pagination with after, before, first, and last parameters. Rate limiting returns 429 responses with a 60-second cooldown — both official SDKs auto-retry.

The base URL for all API calls is https://api.whop.com/api/v1. Every request must include the Authorization: Bearer YOUR_API_KEY header. Responses are JSON. Error responses follow a standard format with error and message fields. A 401 means your API key is invalid or expired; a 403 means you're attempting an action your key doesn't have permission for; a 404 means the resource doesn't exist under your account.


Frequently Asked Questions

What is an MCP server?

An MCP (Model Context Protocol) server is a standardized bridge between AI agents and external services. It exposes API functionality as "tools" that AI models can call directly, letting you control platforms like Whop through natural language instead of writing code. Think of it as a translator between your AI assistant and the Whop API.

How do I connect Whop MCP to Claude?

Add a JSON configuration block to your Claude Desktop config file that points to the Whop MCP server and includes your API key. The entire setup takes about 2 minutes. Scroll up to the Quick Setup section for copy-paste configs for Claude Desktop, Cursor, VS Code, Windsurf, and Claude Code.

Is Whop MCP free?

Yes. All Whop MCP servers listed on this site are free and open source. The official @whop/mcp and community servers are available at no cost. You only need a Whop API key, which you can generate for free at dev.whop.com.

What's the difference between official and community MCP servers?

The official @whop/mcp is maintained by Whop's team and is the recommended default. Community servers like furkankoykiran/whop-mcp (33 tools, npm published) and IsaiahDupree/whop-mcp (95 tools, ~80% coverage) are built by independent developers. Community servers may offer broader API coverage or different tool designs. Check the comparison table to see which fits your needs.

Do I need coding experience?

No. Setting up a Whop MCP server requires copying a JSON config into your AI client's settings file. Once connected, you interact with Whop through natural language. Ask your AI to "list my products" or "create a 20% promo code" instead of writing API calls.

What Whop API endpoints are supported?

The Whop API v1 covers 155+ endpoints across 43 categories: Products, Plans, Payments, Refunds, Invoices, Memberships, Courses, Chat, Forums, Affiliates, Ads, Analytics (with SQL queries), Webhooks (27 event types), and much more. Coverage varies by server — see the full API reference and comparison table above.

What is the difference between Whop MCP and the Whop API?

The Whop API is a REST API at api.whop.com/api/v1 that you call with HTTP requests and an API key. You need to write code (or use an SDK) to interact with it. A Whop MCP server wraps this API and exposes it as tools that AI assistants can call automatically. The MCP server handles authentication, request formatting, pagination, and error handling — you just describe what you want in plain English.

Can I use Whop MCP with ChatGPT?

Not directly. As of April 2026, ChatGPT does not natively support the Model Context Protocol. MCP is currently supported by Claude Desktop, Cursor, VS Code (via GitHub Copilot), Windsurf, Claude Code, and other clients that implement the MCP specification. However, third-party tools like Composio and Zapier can bridge Whop to ChatGPT through their own integration layers.

Is my Whop API key safe when using MCP?

Your API key stays on your local machine. It's stored in your AI client's config file and passed to the MCP server process as an environment variable. The MCP server runs locally (via npx) and sends requests directly to api.whop.com — there's no third-party server in between. Your key never leaves your computer except to authenticate with the Whop API itself.

How do I get a Whop API key?

Go to dev.whop.com, sign in with your Whop account, navigate to Settings → API Keys, and click "Create Key." You'll get a key starting with whop_. Copy it immediately — you won't be able to see it again. If you lose it, you can create a new one.

Can MCP servers modify my Whop store data?

Yes. MCP servers have full read and write access to your store based on your API key's permissions. This means the AI can create products, refund payments, cancel memberships, delete content, and perform other destructive actions. Always review what the AI is about to do before confirming. Some community servers like furkankoykiran/whop-mcp include warning labels on destructive tools like refund_payment and terminate_membership.

What Node.js version do I need?

Node.js 18 or higher. Check your version with node --version. If you need to install or update Node.js, use nodejs.org or a version manager like nvm (nvm install 20).