JUHE API Marketplace
chezsmithy avatar
MCP Server

Thunder Client License Manager MCP Server

Provides tools for managing Thunder Client licenses through their API, enabling users to add, retrieve, and remove licenses with simple commands.

0
GitHub Stars
8/23/2025
Last Updated
MCP Server Configuration
1{
2 "name": "thunderclient-license-manager",
3 "command": "npx",
4 "args": [
5 "-y",
6 "/path/to/thunderclient-license-manager-mcp"
7 ],
8 "env": {
9 "TC_API_KEY": "your-api-key-here",
10 "TC_ACCOUNT_NUMBER": "your-account-number-here"
11 }
12}
JSON12 lines

README Documentation

Thunder Client License Manager MCP Server

An MCP (Model Context Protocol) server that provides tools for managing Thunder Client licenses through their API.

Thunder Client License Manager Server MCP server

Features

  • Add licenses: Add Thunder Client licenses for specified email addresses
  • Get licenses: Retrieve license information with automatic pagination
  • Remove licenses: Remove Thunder Client licenses for specified email addresses

Requirements

  • Node.js 20+ (LTS)
  • TypeScript
  • Thunder Client API access

Installation

  1. Clone this repository
  2. Install dependencies:
    npm install
    
  3. Build the project:
    npm run build
    

Environment Variables

Before using the MCP server, you need to set the following environment variables:

  • TC_API_KEY: Your Thunder Client API key (sent as 'api-key' header)
  • TC_ACCOUNT_NUMBER: Your Thunder Client account number
  • TC_BASE_URL: (Optional) Base URL for Thunder Client API (defaults to 'https://www.thunderclient.com')

Example Environment Setup

export TC_API_KEY="your-api-key-here"
export TC_ACCOUNT_NUMBER="your-account-number"
export TC_BASE_URL="https://www.thunderclient.com"  # optional

MCP Configuration

Add the server to your MCP settings configuration:

For Cline/Claude Desktop

Add to your cline_mcp_settings.json or Claude Desktop configuration:

{
  "mcpServers": {
    "thunderclient-license-manager": {
      "command": "npx",
      "args": ["-y", "/path/to/thunderclient-license-manager-mcp"],
      "env": {
        "TC_API_KEY": "your-api-key-here",
        "TC_ACCOUNT_NUMBER": "your-account-number-here"
      }
    }
  }
}

For other MCP clients

Use the stdio transport with npx:

npx -y .

Available Tools

1. thunderclient_add_license

Add Thunder Client licenses for specified email addresses.

Parameters:

  • emails (required): Array of email addresses to add licenses for

Example:

{
  "emails": ["user1@example.com", "user2@example.com"]
}

2. thunderclient_get_licenses

Get Thunder Client licenses with smart pagination.

Parameters:

  • pageNumber (optional): Specific page to fetch. If omitted, fetches ALL pages automatically

Example - Get all licenses:

{}

Example - Get specific page:

{
  "pageNumber": 2
}

3. thunderclient_remove_license

Remove Thunder Client licenses for specified email addresses.

Parameters:

  • emails (required): Array of email addresses to remove licenses for

Example:

{
  "emails": ["user1@example.com", "user2@example.com"]
}

API Response Format

All tools return responses in the following format:

{
  "success": true/false,
  "data": { /* API response data */ },
  "message": "Success/error message",
  "error": "Error details (if success is false)"
}

Special Response for thunderclient_get_licenses without pageNumber

When fetching all pages, the response includes:

{
  "success": true,
  "data": {
    "licenses": [ /* Combined licenses from all pages */ ],
    "totalPages": 5,
    "totalCount": 150,
    "pagesFetched": 5
  },
  "message": "Retrieved 150 licenses across 5 page(s)"
}

Development

Scripts

  • npm run build: Compile TypeScript to JavaScript
  • npm run dev: Watch mode for development
  • npm start: Run the compiled server

Project Structure

src/
├── index.ts          # Main MCP server implementation
├── api-client.ts     # Thunder Client API wrapper
└── types.ts          # TypeScript type definitions

Error Handling

The server includes comprehensive error handling:

  • Environment variable validation
  • API request/response error handling
  • Input validation for required parameters
  • Proper MCP error codes and messages

License

MIT

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

Support

For issues related to the Thunder Client API, refer to their documentation. For MCP server issues, please create an issue in this repository.

Quick Install

Quick Actions

Key Features

Model Context Protocol
Secure Communication
Real-time Updates
Open Source