npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

courseforge-mcp-client

v1.0.1

Published

stdio MCP client for CourseForge - connects Claude Code to CourseForge API

Downloads

12

Readme

CourseForge MCP Client

stdio transport for connecting Claude Code and other MCP clients to the CourseForge API.

Installation

Global Installation (Recommended)

npm install -g courseforge-mcp-client

Local Installation

npm install courseforge-mcp-client

Usage

With Claude Code

Add to your Claude Code configuration file (.claude.json in your project or global config):

{
  "mcpServers": {
    "courseforge": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "courseforge-mcp-client"],
      "env": {
        "COURSEFORGE_API_KEY": "cf_prod_your_api_key_here"
      }
    }
  }
}

Important: Replace cf_prod_your_api_key_here with your actual CourseForge API key.

Get Your API Key

  1. Go to https://courseforge.caringai.app
  2. Sign in to your account
  3. Navigate to Settings → API Keys
  4. Create a new API key
  5. Copy the key (it starts with cf_prod_)

Local Development

For local development, point to your local server:

{
  "mcpServers": {
    "courseforge": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "courseforge-mcp-client"],
      "env": {
        "COURSEFORGE_API_KEY": "cf_dev_your_test_key",
        "COURSEFORGE_API_URL": "http://localhost:3000/api/mcp"
      }
    }
  }
}

Direct Command Line Usage

COURSEFORGE_API_KEY=cf_prod_xxx courseforge-mcp

The client will listen for MCP JSON-RPC requests on stdin and send responses to stdout.

Environment Variables

  • COURSEFORGE_API_KEY (required) - Your CourseForge API key
  • COURSEFORGE_API_URL (optional) - API endpoint (default: https://courseforge.caringai.app/api/mcp)

Available Tools

Once connected, you'll have access to 28 CourseForge MCP tools:

Course Management (5 tools)

  • list_courses - List all your courses
  • create_course - Create a new course
  • get_course - Get course details
  • update_course - Update course information
  • delete_course - Delete a course

Module Management (5 tools)

  • create_module - Add a module to a course
  • update_module - Update module details
  • delete_module - Remove a module
  • reorder_modules - Change module order
  • get_module - Get module details

Lesson Management (5 tools)

  • create_lesson - Add a lesson to a module
  • update_lesson - Update lesson details
  • delete_lesson - Remove a lesson
  • reorder_lessons - Change lesson order
  • get_lesson - Get lesson details

Content Block Management (5 tools)

  • add_content_block - Add content to a lesson
  • update_content_block - Update content block
  • delete_content_block - Remove content block
  • get_content_block - Get content block details
  • reorder_content_blocks - Change content block order

AI Assistant Tools (4 tools)

  • ai_chat_assistant - Chat with AI instructional designer
  • generate_image - Generate custom images with Gemini 2.5
  • marketing_support_chat - Get marketing and support help
  • get_openapi_spec - Get API documentation

Content Generation (1 tool)

  • generate_lesson_content - AI-powered lesson content generation

API Key Management (3 tools)

  • list_api_keys - View your API keys
  • create_api_key - Create a new API key
  • revoke_api_key - Revoke an API key

Example Usage in Claude Code

Once configured, you can ask Claude:

List my CourseForge courses
Create a new course called "Introduction to Python" with beginner difficulty
Generate content for my course about variables in Python

Troubleshooting

Red JSON validation errors on startup (FIXED in v1.0.1+)

Symptoms:

  • Red error messages appear in Claude Desktop when starting up
  • Error mentions "ZodError", "invalid_union", or "unrecognized_keys"
  • Tools work correctly after startup

Solution: Update to version 1.0.1 or later, which includes proper MCP protocol handling:

# The latest version will be used automatically with npx
npx -y courseforge-mcp-client@latest

# Or update if installed globally
npm update -g courseforge-mcp-client

After updating, restart Claude Desktop completely. The red errors should no longer appear.

Technical Details: Version 1.0.1+ properly handles MCP protocol methods (notifications/*, prompts/list, resources/list) locally instead of forwarding them to the API.

"COURSEFORGE_API_KEY environment variable is required"

Make sure you've set the COURSEFORGE_API_KEY in your MCP configuration under the env section.

"HTTP 401: Unauthorized"

  • Verify your API key is correct and starts with cf_prod_
  • Check that the API key hasn't been revoked
  • Ensure your API key hasn't expired

Tools not showing in Claude Code

  1. Check that the configuration file is valid JSON
  2. Restart Claude Code completely (Quit and reopen)
  3. Check Claude Code logs for connection errors
  4. Verify npx is working: npx -y courseforge-mcp-client --version

Connection errors

  • Check your internet connection
  • Verify the API URL is correct
  • Try the local development configuration first
  • Check that port 443 (HTTPS) is not blocked

Development

Build from source

git clone https://github.com/your-org/courseforge.git
cd courseforge/packages/courseforge-mcp-client
npm install
npm run build

Run locally

npm run dev  # Watch mode

Test manually

echo '{"jsonrpc":"2.0","id":1,"method":"initialize"}' | COURSEFORGE_API_KEY=cf_xxx node dist/index.js

Support

License

MIT