Skip to main content
Glama

Thunder Client License Manager MCP Server

by chezsmithy
MIT License

Thunder Client License Manager MCP Server

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

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.

Related MCP Servers

  • A
    security
    A
    license
    A
    quality
    Facilitates contract and template management for eSignatures, enabling users to create, send, update, and manage contracts and templates with customizable options through a user-friendly interface.
    Last updated -
    13
    10
    Python
    MIT License
    • Apple
  • -
    security
    A
    license
    -
    quality
    Provides tools for managing IP assets and licenses, interacting with the Story Python SDK, and handling operations like minting tokens, registering IP, and uploading metadata to IPFS.
    Last updated -
    14
    Python
    MIT License
    • Apple
  • A
    security
    F
    license
    A
    quality
    Provides tools to interact with the Linear API, allowing users to fetch tasks, task details, teams, and users from their Linear workspace.
    Last updated -
    4
    JavaScript
    • Apple
  • -
    security
    F
    license
    -
    quality
    A service that provides programmatic access to qBittorrent's WebUI API, enabling management of torrents, trackers, tags, speed controls, and system information through natural language.
    Last updated -
    2
    Python

View all related MCP servers

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/chezsmithy/thunderclient-license-manager-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server