devutils-mcp-server

devutils-mcp-server

An open-source DevUtils MCP Server — a comprehensive developer utilities toolkit that provides 36 tools across 8 categories that AI assistants can invoke directly.

Category
Visit Server

README

šŸ› ļø DevUtils MCP Server

A comprehensive developer utilities toolkit for the Docker MCP Catalog. 36 everyday tools — hashing, encoding, UUID generation, JWT decoding, JSON formatting, network tools, text utilities, and more.

License: MIT Docker MCP


šŸŽÆ Why?

The Docker MCP Catalog has 200+ servers for databases, APIs, monitoring, and productivity — but no basic developer utilities toolkit.

Every developer needs to hash strings, encode/decode data, generate UUIDs, decode JWTs, format JSON, calculate CIDR ranges, and convert timestamps every day. DevUtils MCP Server brings all of these tools directly into your AI assistant.

Think of it as busybox for developer tools — small, essential, and always useful.


šŸ“¦ Quick Start

With Docker

# Build the image
docker build -t devutils-mcp-server .

# Run (interactive, for MCP clients)
docker run -i --rm devutils-mcp-server

With Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "devutils": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "devutils-mcp-server"]
    }
  }
}

With Docker MCP Toolkit (Docker Desktop)

If this server is available in the Docker MCP Catalog, you can enable it directly from Docker Desktop:

  1. Open Docker Desktop → MCP Toolkit
  2. Search for DevUtils
  3. Click Enable
  4. It will be available to any connected MCP client (Claude, Cursor, VS Code, etc.)

Local Development (without Docker)

npm install
npm run dev

šŸ”§ Available Tools (36 total)

šŸ” Hash Tools (6)

Tool Description
hash_md5 Generate MD5 hash
hash_sha1 Generate SHA-1 hash
hash_sha256 Generate SHA-256 hash
hash_sha512 Generate SHA-512 hash
hash_bcrypt Generate bcrypt hash (configurable rounds)
hash_bcrypt_verify Verify string against bcrypt hash

šŸ”„ Encoding Tools (8)

Tool Description
base64_encode Encode string to Base64
base64_decode Decode Base64 to string
url_encode URL-encode (percent-encoding)
url_decode Decode URL-encoded string
html_encode Encode HTML entities
html_decode Decode HTML entities
hex_encode Encode string to hex
hex_decode Decode hex to string

šŸŽ² Generator Tools (4)

Tool Description
generate_uuid Cryptographic UUID v4 (batch support)
generate_nanoid Compact URL-friendly ID (configurable length)
generate_password Secure password (configurable complexity)
generate_random_hex Random hex string (configurable length)

šŸ”‘ JWT Tools (2)

Tool Description
jwt_decode Decode JWT header & payload (with human-readable dates)
jwt_validate Validate JWT structure & expiration

šŸ“ Formatter Tools (3)

Tool Description
json_format Pretty-print or minify JSON
json_validate Validate JSON with error location
json_path_query Extract values using dot-notation path

šŸ”¢ Converter Tools (5)

Tool Description
timestamp_to_date Unix timestamp → human date (timezone support)
date_to_timestamp Date string → Unix timestamp
number_base_convert Convert between bases (bin/oct/dec/hex/any)
color_convert Convert colors (HEX ↔ RGB ↔ HSL)
byte_convert Convert byte units (B/KB/MB/GB/TB/PB)

🌐 Network Tools (2)

Tool Description
cidr_calculate CIDR → network, broadcast, mask, host range, host count
ip_validate Validate & classify IPv4/IPv6 address

āœļø Text Tools (6)

Tool Description
text_stats Character/word/line/sentence count, reading time
lorem_ipsum Generate placeholder text
case_convert Convert between camelCase, snake_case, PascalCase, etc.
slugify Convert string to URL-friendly slug
regex_test Test regex pattern against input
text_diff Line-by-line diff between two texts

šŸ—ļø Architecture

src/
ā”œā”€ā”€ index.ts          # MCP server entry point (stdio transport)
└── tools/
    ā”œā”€ā”€ hash.ts       # Cryptographic hash functions
    ā”œā”€ā”€ encoding.ts   # Encode/decode utilities
    ā”œā”€ā”€ generators.ts # ID and password generators
    ā”œā”€ā”€ jwt.ts        # JWT decode and validation
    ā”œā”€ā”€ formatters.ts # JSON formatting and querying
    ā”œā”€ā”€ converters.ts # Data type and unit converters
    ā”œā”€ā”€ network.ts    # Network calculation utilities
    └── text.ts       # Text analysis and manipulation

Tech Stack:

  • TypeScript + Node.js 22
  • @modelcontextprotocol/sdk — Official MCP SDK
  • bcryptjs — Password hashing
  • nanoid — Compact ID generation
  • zod — Input validation

Zero external API dependencies. All tools run locally with no network calls.


🐳 Docker

The image uses a multi-stage build for minimal size:

  1. Build stage: Compiles TypeScript on Node 22 Alpine
  2. Runtime stage: Runs compiled JS on Node 22 Alpine as non-root user
# Build
docker build -t devutils-mcp-server .

# Test
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0.0"}}}' | docker run -i --rm devutils-mcp-server

ā“ FAQ & Design Philosophy

Why MCP, and not just a library?

Valid criticism: If you're writing Python scripts and need to hash something, hashlib is 2 lines of code. Why run MCP overhead?

Answer: This server is optimized for AI agents in multi-step workflows, not programmers writing code:

  1. AI hallucination cost >> MCP overhead
    An AI model spending 50ms calling an MCP tool (vs. 1ms library call) is negligible when the alternative is the model making up a hash or using the wrong encoding. A wrong hash → debugging time → 1000x worse than overhead.

  2. Reliable tool semantics
    Libraries let the model do anything (import, call, write loops). MCP enforces strict tool contracts. For example, jwt_decode always returns human-readable dates with timezone support — no model confusion about Unix epoch interpretation.

  3. Universally accessible
    Any AI client (Claude, Cursor, VS Code, ChatGPT plugins) can use these tools. A Python library only works if your agent is Python-based.

  4. Multi-tenant safety
    In production systems, letting AI agents run arbitrary library code is a security risk. MCP provides explicit tool whitelisting with input validation.

When to use DevUtils versus alternatives

Use DevUtils if:

  • You're using Claude, Cursor, ChatGPT, or other AI agents
  • You want reliable, validated utility operations in your AI workflows
  • You need 36+ tools in one container (vs. learning 8 different tool specs)
  • You want educational reference implementations of common algorithms

Don't use DevUtils if:

  • You're writing regular Python/Node/Go code (use native libraries like hashlib, crypto)
  • You need extreme performance (direct library calls are 1000x faster)
  • You're in an environment without Docker/container support

Design philosophy

  • Small & focused: 36 utilities, zero external APIs, ~50MB container
  • Security-first: Non-root user, Alpine Linux, minimal attack surface
  • AI-friendly: Consistent naming (<domain>_<operation>), strict schemas, human-readable outputs
  • Battle-tested: Each tool references standard implementations (zod validation, bcryptjs hashing, etc.)

šŸ“ Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feat/amazing-tool)
  3. Commit your changes (git commit -m 'feat: add amazing tool')
  4. Push to the branch (git push origin feat/amazing-tool)
  5. Open a Pull Request

šŸ“„ License

MIT Ā© Fernando Paladini

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured