MCP Server Nekzus logo

MCP Server Nekzus

by Nekzus

MCP Server Nekzus is a Model Context Protocol (MCP) server that provides utility tools for development and testing. It's built on top of the official MCP SDK and offers an extensible architecture for adding new tools.

View on GitHub

Last updated: N/A

MCP Server Nekzus

npm-version

npm-version

npm-month

npm-month

npm-total

npm-total

Donate

Donate

<div align="center">

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

</div>

🌟 Features

  • šŸ”„ MCP Protocol Implementation
  • šŸ› ļø Integrated Utility Tools
  • šŸ“ Schema Validation with Zod
  • šŸš€ ESM Support
  • šŸ”’ Strict TypeScript Types
  • 🧩 Extensible Architecture for New Tools

šŸ› ļø Available Tools

1. greeting

Generates a personalized greeting message.

Parameters:

  • name (string): Recipient's name

Example:

// Result: šŸ‘‹ Hello John! Welcome to the MCP server!
{
  name: "John";
}

2. card

Gets a random card from a standard poker deck.

Parameters:

  • No parameters required

Example:

// Result: šŸŽ“ You drew: Ace of ā™ ļø Spades
{}

3. datetime

Gets the current date and time for a specific timezone.

Parameters:

  • timeZone (string, optional): Timezone identifier (e.g., "America/New_York")
  • locale (string, optional): Locale identifier (e.g., "en-US")

Example:

// Result: 
// šŸ—“ļø Date: March 20, 2024
// ā° Time: 7:25:25 PM
// šŸŒ Timezone: America/New_York
{
  timeZone: "America/New_York",
  locale: "en-US"
}

4. calculator

Performs mathematical calculations with support for basic and advanced operations.

Parameters:

  • expression (string): Mathematical expression (e.g., "2 + 2 * 3")
  • precision (number, optional): Decimal places in the result (default: 2)

Example:

// Result: 8
{
  expression: "2 + 2 * 3"
}

5. passwordGen

Generates secure passwords with customizable options.

Parameters:

  • length (number, optional): Password length (default: 16)
  • includeNumbers (boolean, optional): Include numbers (default: true)
  • includeSymbols (boolean, optional): Include special characters (default: true)
  • includeUppercase (boolean, optional): Include uppercase letters (default: true)

Example:

// Result: 4v7&9G8$
{
  length: 16,
  includeNumbers: true,
  includeSymbols: true,
  includeUppercase: true
}

6. qrGen

Generates QR codes for text or URLs.

Parameters:

  • text (string): Text or URL to encode
  • size (number, optional): Size in pixels (default: 200)
  • dark (string, optional): Dark module color (default: "#000000")
  • light (string, optional): Light module color (default: "#ffffff")

Example:

// Result: QR code for "https://example.com"
{
  text: "https://example.com"
}

7. kitchenConvert

Converts between common kitchen measurements and weights, including volume-to-weight conversions based on specific ingredients.

Parameters:

  • value (number): Value to convert
  • from (string): Source unit (e.g., "cup", "tbsp", "g", "oz", "ml")
  • to (string): Target unit (e.g., "cup", "tbsp", "g", "oz", "ml")
  • ingredient (string, optional): Ingredient for accurate volume-to-weight conversions

Supported Units:

Volume:

  • ml (milliliters)
  • l (liters)
  • cup (US cup)
  • tbsp (tablespoon)
  • tsp (teaspoon)
  • floz (fluid ounce)

Weight:

  • g (grams)
  • kg (kilograms)
  • oz (ounces)
  • lb (pounds)

Supported Ingredients:

  • water
  • milk
  • flour
  • sugar
  • brown sugar
  • salt
  • butter
  • oil
  • honey
  • maple syrup

Examples:

// Simple volume conversion
// Result: šŸ”„ Conversion Result:
// • 1 cup = 236.59 ml
{
  value: 1,
  from: "cup",
  to: "ml"
}

// Volume to weight conversion with ingredient
// Result: šŸ”„ Conversion Result:
// • 1 cup of flour = 140.25 g
{
  value: 1,
  from: "cup",
  to: "g",
  ingredient: "flour"
}

šŸš€ Usage

As MCP Server

  1. Global Installation:
npm install -g @nekzus/mcp-server
  1. Execution:
npx @nekzus/mcp-server

As a Dependency

import { McpUtilityServer } from "@nekzus/mcp-server";

const server = new McpUtilityServer();
server.start();

šŸ”§ Development

# Clone repository
git clone https://github.com/nekzus/mcp-server.git

# Install dependencies
npm install

# Development mode
npm run dev

# Build
npm run build

# Run
npm start

šŸ“ Project Structure

src/
ā”œā”€ā”€ types/          # Type definitions
│   └── index.ts    # Shared types
ā”œā”€ā”€ utils/          # Utilities
│   ā”œā”€ā”€ cards.ts    # Card functions
│   ā”œā”€ā”€ datetime.ts # Date/time functions
│   └── schema.ts   # Schema conversion
ā”œā”€ā”€ tools/          # Tool implementations
│   └── index.ts    # Tools registry
└── index.ts        # Main entry point

šŸ” Technical Details

  • Transport: Uses StdioServerTransport for communication
  • Validation: Converts JSON schemas to Zod for input validation
  • Types: Fully typed implementation with TypeScript
  • Error Handling: Robust error handling and resource cleanup
  • Signals: Handles SIGTERM and SIGINT signals for graceful shutdown

šŸ“„ 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

🌟 Support

Give a ā­ļø if this project helped you!