A community-driven registry for the Claude Code ecosystem. Not affiliated with Anthropic.
Are you the author? Sign in to claim
An open-source DevUtils MCP Server — a comprehensive developer utilities toolkit for the Docker MCP Catalog. It provides
36 everyday developer tools for any MCP-compatible AI assistant. Hashing, encoding, UUID generation, JWT decoding, JSON formatting, network tools, text utilities, and more — all local, no external APIs.
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 — works with Claude, Cursor, VS Code, Windsurf, and any other MCP-compatible client.
Think of it as busybox for developer tools — small, essential, and always useful.
npx devutils-mcp-server
# Pull and run
docker run -i --rm ghcr.io/paladini/devutils-mcp-server
# Or build locally
docker build -t devutils-mcp-server .
docker run -i --rm devutils-mcp-server
npm install -g devutils-mcp-server
devutils-mcp-server
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"devutils": {
"command": "npx",
"args": ["devutils-mcp-server"]
}
}
}
Or with Docker:
{
"mcpServers": {
"devutils": {
"command": "docker",
"args": ["run", "-i", "--rm", "ghcr.io/paladini/devutils-mcp-server"]
}
}
}
Add to your Cursor MCP settings (~/.cursor/mcp.json):
{
"mcpServers": {
"devutils": {
"command": "npx",
"args": ["devutils-mcp-server"]
}
}
}
Add to your .vscode/mcp.json in the workspace, or to your user settings:
{
"servers": {
"devutils": {
"type": "stdio",
"command": "npx",
"args": ["devutils-mcp-server"]
}
}
}
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"devutils": {
"command": "npx",
"args": ["devutils-mcp-server"]
}
}
}
If this server is available in the Docker MCP Catalog, you can enable it directly from Docker Desktop:
npm install
npm run dev
| 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 |
| 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 |
| 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) |
| Tool | Description |
|---|---|
jwt_decode | Decode JWT header & payload (with human-readable dates) |
jwt_validate | Validate JWT structure & expiration |
| 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 |
| 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) |
| Tool | Description |
|---|---|
cidr_calculate | CIDR → network, broadcast, mask, host range, host count |
ip_validate | Validate & classify IPv4/IPv6 address |
| 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 |
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:
@modelcontextprotocol/sdk — Official MCP SDKbcryptjs — Password hashingnanoid — Compact ID generationzod — Input validationZero external API dependencies. All tools run locally with no network calls.
The image uses a multi-stage build for minimal size:
# Build
docker build -t devutils-mcp-server .
# Test (send an MCP initialize request)
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
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:
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.
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.
Universally accessible
Any MCP-compatible client (Claude, Cursor, VS Code Copilot, Windsurf, and more) can use these tools. A Python library only works if your agent is Python-based.
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.
Use DevUtils if:
Don't use DevUtils if:
hashlib, crypto)<domain>_<operation>), strict schemas, human-readable outputsgit checkout -b feat/amazing-tool)git commit -m 'feat: add amazing tool')git push origin feat/amazing-tool)MIT © Fernando Paladini
Run Claude Code as an MCP server so any agent can delegate coding tasks to it
Browser automation using accessibility snapshots instead of screenshots
MCP server integration for DaVinci Resolve Studio
Secure MCP server for MySQL database interaction, queries, and schema management
0
via CLI