Nekzus

Integrates with
greeting

Nekzus MCP Server

Github Workflow npm-version npm-month npm-total Donate

A Model Context Protocol (MCP) server that provides utility tools for development and testing This implementation is built on top of the official MCP SDK and offers an extensible architecture for adding new tools

Components

Tools

  • greeting

    • Generate personalized greeting messages
    • Input: name (string, required): Name of the recipient
    • Example:
      {"name": "John"} -> "πŸ‘‹ Hello John! Welcome to the MCP server!"
      
  • card

    • Draw random cards from a standard 52-card poker deck
    • Input: No parameters required
    • Example:
      {} -> "🎴 Drew card: A♠️" (random from 52 cards)
      
  • datetime

    • Get formatted date/time for any timezone
    • Inputs:
      • timeZone (string, optional, default: "UTC"): Timezone identifier
      • locale (string, optional, default: "en-US"): Locale for formatting
    • Example:
      {"timeZone": "America/New_York", "locale": "es-ES"} -> 
      "πŸ•’ domingo, 24 de marzo de 2024, 15:25:25 hora de verano del este"
      
  • calculator

    • Perform mathematical calculations
    • Inputs:
      • expression (string, required): Mathematical expression to evaluate
      • precision (number, optional, default: 2): Number of decimal places
    • Supported operations: +, -, *, /, %, (), .
    • Example:
      {"expression": "2 + 2 * 3", "precision": 2} -> "πŸ”’ Result: 8.00"
      {"expression": "(15 / 2) % 2", "precision": 3} -> "πŸ”’ Result: 1.500"
      
  • passwordGen

    • Generate secure passwords with customizable options
    • Inputs:
      • length (number, optional, default: 16): Password length
      • includeNumbers (boolean, optional, default: true): Include numbers
      • includeSymbols (boolean, optional, default: true): Include special symbols
      • includeUppercase (boolean, optional, default: true): Include uppercase letters
    • Example:
      {"length": 12, "includeSymbols": true} -> "πŸ” Generated: Kj2$mP9&vN4x"
      {"length": 8, "includeNumbers": false} -> "πŸ” Generated: KjMpNvXw"
      
  • qrGen

    • Generate QR codes for text or URLs
    • Inputs:
      • text (string, required): Text or URL to encode
      • size (number, optional, default: 200): Size in pixels
      • dark (string, optional, default: "#000000"): Color for dark modules
      • light (string, optional, default: "#ffffff"): Color for light modules
    • Output: Returns a Data URL containing the QR code image
    • Example:
      // Basic Usage
      {"text": "https://github.com/nekzus"} -> 
      "πŸ“± QR Code generated successfully!
       Properties:
       β€’ Content: https://github.com/nekzus
       β€’ Size: 200px
       β€’ Dark Color: #000000
       β€’ Light Color: #ffffff
       
       QR Code (Data URL):
       data:image/png;base64,..."
      
      // Custom Size and Colors
      {
        "text": "Hello World!",
        "size": 300,
        "dark": "#FF0000",
        "light": "#FFFFFF"
      } -> 
      "πŸ“± QR Code generated successfully!
       Properties:
       β€’ Content: Hello World!
       β€’ Size: 300px
       β€’ Dark Color: #FF0000
       β€’ Light Color: #FFFFFF
       
       QR Code (Data URL):
       data:image/png;base64,..."
      

    Note: The QR code is returned as a Data URL that can be used directly in HTML <img> tags or converted to a file.

  • kitchenConvert

    • Convert between kitchen measurements
    • Inputs:
      • value (number, required): Value to convert
      • from (string, required): Source unit
      • to (string, required): Target unit
      • ingredient (string, optional): Ingredient for accurate conversion

    Supported Units:

    Volume Units:

    - ml    (milliliters)
    - l     (liters)
    - cup   (US cup = 236.588 ml)
    - tbsp  (US tablespoon = 14.787 ml)
    - tsp   (US teaspoon = 4.929 ml)
    - floz  (US fluid ounce = 29.574 ml)
    

    Weight Units:

    - g     (grams)
    - kg    (kilograms)
    - oz    (ounces = 28.350 g)
    - lb    (pounds = 453.592 g)
    

    Ingredient Densities:

    - water        (1.000 g/ml)
    - milk         (1.030 g/ml)
    - flour        (0.593 g/ml)
    - sugar        (0.845 g/ml)
    - brown_sugar  (0.721 g/ml)
    - salt         (1.217 g/ml)
    - butter       (0.911 g/ml)
    - oil          (0.918 g/ml)
    - honey        (1.420 g/ml)
    - maple_syrup  (1.370 g/ml)
    

    Examples:

    // Volume to Volume
    {"value": 1, "from": "cup", "to": "ml"} -> 
    "βš–οΈ 1 cup = 236.59 ml"
    
    // Weight to Weight
    {"value": 500, "from": "g", "to": "lb"} -> 
    "βš–οΈ 500 g = 1.10 lb"
    
    // Volume to Weight (requires ingredient)
    {"value": 1, "from": "cup", "to": "g", "ingredient": "flour"} -> 
    "βš–οΈ 1 cup of flour = 140.30 g"
    

Key Features

  • Zero configuration required
  • JSON-RPC 2.0 compliant
  • Type-safe implementations
  • Emoji-enhanced responses
  • Comprehensive error handling
  • ESM support
  • Full TypeScript types
  • Docker support

Configuration

To use this server with the Claude Desktop app, add the following configuration to the "mcpServers" section of your claude_desktop_config.json:

NPX (Recommended)

{
  "mcpServers": {
    "nekzus": {
      "transport": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@nekzus/mcp-server"
      ]
    }
  }
}

Docker

{
  "mcpServers": {
    "nekzus": {
      "transport": "stdio",
      "command": "docker",
      "args": ["run", "-i", "--rm", "--init", "nekzus/mcp-server"]
    }
  }
}

The configuration file is typically located at:

  • Windows: %APPDATA%/claude-desktop/claude_desktop_config.json
  • macOS: ~/Library/Application Support/claude-desktop/claude_desktop_config.json
  • Linux: ~/.config/claude-desktop/claude_desktop_config.json

Development

## Install dependencies
npm install

## Run in development mode
npm run dev

## Format code
npm run format

## Lint code
npm run lint

## Run tests
npm run test

## Build
npm run build

Docker

Build the Docker image:

## Build the image
docker build -t nekzus/mcp-server .

## Run the container
docker run -i --rm --init nekzus/mcp-server

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes using commitizen (npm run commit)
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.

Author

πŸ‘€ nekzus

Show your support

Give a ⭐️ if this project helped you!