Nekzus
Nekzus MCP Server
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 identifierlocale
(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 evaluateprecision
(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 lengthincludeNumbers
(boolean, optional, default: true): Include numbersincludeSymbols
(boolean, optional, default: true): Include special symbolsincludeUppercase
(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 encodesize
(number, optional, default: 200): Size in pixelsdark
(string, optional, default: "#000000"): Color for dark moduleslight
(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 convertfrom
(string, required): Source unitto
(string, required): Target unitingredient
(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
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes using commitizen (
npm run commit
) - Push to the branch (
git push origin feature/amazing-feature
) - 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
- GitHub: @Nekzus
Show your support
Give a βοΈ if this project helped you!