mcp-devutils 1.3.0 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -234
- package/package.json +9 -1
package/README.md
CHANGED
|
@@ -1,238 +1,8 @@
|
|
|
1
|
-
# mcp-devutils
|
|
2
1
|
|
|
3
|
-
An MCP (Model Context Protocol) server with developer utilities. Use it directly with Claude Desktop, Cursor, or any MCP-compatible client.
|
|
4
|
-
|
|
5
|
-
## Tools
|
|
6
|
-
|
|
7
|
-
| Tool | Description |
|
|
8
|
-
|------|-------------|
|
|
9
|
-
| `uuid` | Generate UUID v4 (up to 10 at once) |
|
|
10
|
-
| `hash` | Hash text with md5, sha1, or sha256 |
|
|
11
|
-
| `base64` | Encode or decode base64 |
|
|
12
|
-
| `timestamp` | Convert between Unix timestamps and ISO 8601 |
|
|
13
|
-
| `jwt_decode` | Decode JWT token payload (no verification) |
|
|
14
|
-
| `random_string` | Generate random strings/passwords |
|
|
15
|
-
| `url_encode` | URL encode or decode strings |
|
|
16
|
-
| `json_format` | Pretty-print or minify JSON |
|
|
17
|
-
| `regex_test` | Test regex patterns against strings |
|
|
18
|
-
| `cron_explain` | Explain cron expressions in plain English + next 5 runs |
|
|
19
|
-
| `hmac` | Generate HMAC signatures (SHA-256, SHA-512, etc.) |
|
|
20
|
-
| `color_convert` | Convert colors between hex, RGB, and HSL |
|
|
21
|
-
| `semver_compare` | Compare two semantic versions |
|
|
22
|
-
| `http_status` | Look up HTTP status code meaning and usage |
|
|
23
|
-
| `slug` | Generate URL-safe slugs from text |
|
|
24
|
-
| `escape_html` | Escape or unescape HTML entities |
|
|
25
|
-
| `chmod_calc` | Convert between numeric and symbolic Unix permissions |
|
|
26
|
-
| `diff` | Compare two texts and show differences line by line |
|
|
27
|
-
| `number_base` | Convert numbers between decimal, hex, octal, and binary |
|
|
28
|
-
| `lorem_ipsum` | Generate placeholder lorem ipsum text |
|
|
29
|
-
| `word_count` | Count characters, words, lines, and bytes in text |
|
|
30
|
-
| `cidr` | Parse CIDR notation — network, broadcast, host range |
|
|
31
|
-
| `case_convert` | Convert between camelCase, snake_case, PascalCase, kebab-case, CONSTANT_CASE, Title Case |
|
|
32
|
-
| `markdown_toc` | Generate table of contents from markdown headings |
|
|
33
|
-
|
|
34
|
-
## Installation
|
|
35
|
-
|
|
36
|
-
```bash
|
|
37
|
-
npm install -g mcp-devutils
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
Or use directly with `npx`:
|
|
41
|
-
|
|
42
|
-
```json
|
|
43
|
-
{
|
|
44
|
-
"mcpServers": {
|
|
45
|
-
"devutils": {
|
|
46
|
-
"command": "npx",
|
|
47
|
-
"args": ["-y", "mcp-devutils"]
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
## Usage with Claude Desktop
|
|
54
|
-
|
|
55
|
-
Add to your `claude_desktop_config.json`:
|
|
56
|
-
|
|
57
|
-
```json
|
|
58
|
-
{
|
|
59
|
-
"mcpServers": {
|
|
60
|
-
"devutils": {
|
|
61
|
-
"command": "mcp-devutils"
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
Or with npx (no install needed):
|
|
68
|
-
|
|
69
|
-
```json
|
|
70
|
-
{
|
|
71
|
-
"mcpServers": {
|
|
72
|
-
"devutils": {
|
|
73
|
-
"command": "npx",
|
|
74
|
-
"args": ["-y", "mcp-devutils"]
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
## Usage with Cursor
|
|
81
|
-
|
|
82
|
-
Add to your Cursor MCP settings:
|
|
83
|
-
|
|
84
|
-
```json
|
|
85
|
-
{
|
|
86
|
-
"mcpServers": {
|
|
87
|
-
"devutils": {
|
|
88
|
-
"command": "npx",
|
|
89
|
-
"args": ["-y", "mcp-devutils"]
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
## Tool Examples
|
|
96
|
-
|
|
97
|
-
### uuid
|
|
98
|
-
Generate one or more UUIDs:
|
|
99
|
-
- `count`: Number of UUIDs to generate (1–10, default: 1)
|
|
100
|
-
|
|
101
|
-
### hash
|
|
102
|
-
Hash text with a chosen algorithm:
|
|
103
|
-
- `text`: Text to hash (required)
|
|
104
|
-
- `algorithm`: `md5`, `sha1`, or `sha256` (default: sha256)
|
|
105
|
-
|
|
106
|
-
### base64
|
|
107
|
-
Encode or decode base64:
|
|
108
|
-
- `text`: Input text (required)
|
|
109
|
-
- `action`: `encode` or `decode` (default: encode)
|
|
110
|
-
|
|
111
|
-
### timestamp
|
|
112
|
-
Convert timestamps:
|
|
113
|
-
- `value`: Unix timestamp or ISO date string (leave empty for current time)
|
|
114
|
-
|
|
115
|
-
### jwt_decode
|
|
116
|
-
Decode a JWT without verifying the signature:
|
|
117
|
-
- `token`: JWT string (required)
|
|
118
|
-
- Returns header, payload, expiry info
|
|
119
|
-
|
|
120
|
-
### random_string
|
|
121
|
-
Generate random strings:
|
|
122
|
-
- `length`: String length (default: 16, max: 256)
|
|
123
|
-
- `charset`: `alphanumeric`, `alpha`, `numeric`, `hex`, `password`, or `url-safe`
|
|
124
|
-
|
|
125
|
-
### url_encode
|
|
126
|
-
Encode or decode URLs:
|
|
127
|
-
- `text`: Input text (required)
|
|
128
|
-
- `action`: `encode` or `decode` (default: encode)
|
|
129
|
-
|
|
130
|
-
### json_format
|
|
131
|
-
Format or minify JSON:
|
|
132
|
-
- `json`: JSON string (required)
|
|
133
|
-
- `action`: `format` or `minify` (default: format)
|
|
134
|
-
- `indent`: Spaces for indentation (default: 2)
|
|
135
|
-
|
|
136
|
-
### regex_test
|
|
137
|
-
Test regex patterns:
|
|
138
|
-
- `pattern`: Regex pattern (required)
|
|
139
|
-
- `text`: String to test against (required)
|
|
140
|
-
- `flags`: Regex flags like `g`, `i`, `gi` (optional)
|
|
141
|
-
|
|
142
|
-
### cron_explain
|
|
143
|
-
Explain a cron expression in plain English and show the next 5 scheduled runs:
|
|
144
|
-
- `expression`: 5-field cron expression (required), e.g. `*/15 9-17 * * 1-5`
|
|
145
|
-
|
|
146
|
-
### hmac
|
|
147
|
-
Generate an HMAC signature:
|
|
148
|
-
- `message`: Message to sign (required)
|
|
149
|
-
- `key`: Secret key (required)
|
|
150
|
-
- `algorithm`: `sha256`, `sha512`, `sha1`, or `md5` (default: sha256)
|
|
151
|
-
- `encoding`: `hex` or `base64` (default: hex)
|
|
152
|
-
|
|
153
|
-
### color_convert
|
|
154
|
-
Convert colors between formats:
|
|
155
|
-
- `color`: Color string (required) — accepts `#ff5733`, `rgb(255,87,51)`, or `hsl(11,100%,60%)`
|
|
156
|
-
- Returns all three formats
|
|
157
|
-
|
|
158
|
-
### semver_compare
|
|
159
|
-
Compare two semantic versions:
|
|
160
|
-
- `version1`: First version (required), e.g. `1.2.3`
|
|
161
|
-
- `version2`: Second version (required), e.g. `2.0.0`
|
|
162
|
-
- Returns comparison result and parsed components
|
|
163
|
-
|
|
164
|
-
### http_status
|
|
165
|
-
Look up HTTP status codes:
|
|
166
|
-
- `code`: HTTP status code (required), e.g. `404`, `502`
|
|
167
|
-
- Returns status name, category, and description
|
|
168
|
-
|
|
169
|
-
### slug
|
|
170
|
-
Generate URL-safe slugs:
|
|
171
|
-
- `text`: Text to slugify (required)
|
|
172
|
-
- `separator`: Word separator (default: `-`)
|
|
173
|
-
|
|
174
|
-
### escape_html
|
|
175
|
-
Escape or unescape HTML entities:
|
|
176
|
-
- `text`: Input text (required)
|
|
177
|
-
- `action`: `escape` or `unescape` (default: escape)
|
|
178
|
-
|
|
179
|
-
### chmod_calc
|
|
180
|
-
Convert Unix file permissions:
|
|
181
|
-
- `permission`: Numeric (e.g. `755`) or symbolic (e.g. `rwxr-xr-x`) (required)
|
|
182
|
-
- Returns both formats plus owner/group/other breakdown
|
|
183
|
-
|
|
184
|
-
### diff
|
|
185
|
-
Compare two texts:
|
|
186
|
-
- `text1`: Original text (required)
|
|
187
|
-
- `text2`: Modified text (required)
|
|
188
|
-
- Returns line-by-line diff with added/removed/unchanged summary
|
|
189
|
-
|
|
190
|
-
### number_base
|
|
191
|
-
Convert numbers between bases:
|
|
192
|
-
- `value`: Number string (required) — prefix `0x` for hex, `0o` for octal, `0b` for binary, or plain decimal
|
|
193
|
-
- Returns decimal, hex, octal, and binary representations
|
|
194
|
-
|
|
195
|
-
### lorem_ipsum
|
|
196
|
-
Generate placeholder text:
|
|
197
|
-
- `count`: Number of units (default: 1, max: 20)
|
|
198
|
-
- `unit`: `paragraphs`, `sentences`, or `words` (default: paragraphs)
|
|
199
|
-
|
|
200
|
-
### word_count
|
|
201
|
-
Analyze text:
|
|
202
|
-
- `text`: Input text (required)
|
|
203
|
-
- Returns character count, word count, line count, and byte size
|
|
204
|
-
|
|
205
|
-
### cidr
|
|
206
|
-
Parse CIDR notation:
|
|
207
|
-
- `notation`: CIDR string (required), e.g. `192.168.1.0/24`
|
|
208
|
-
- Returns network, netmask, broadcast, host range, total hosts
|
|
209
|
-
|
|
210
|
-
### case_convert
|
|
211
|
-
Convert between naming conventions:
|
|
212
|
-
- `text`: Input text (required), e.g. `myVariableName` or `my-variable-name`
|
|
213
|
-
- `to`: Target case (required) — `camel`, `snake`, `pascal`, `kebab`, `constant`, or `title`
|
|
214
|
-
- Returns converted text plus all format variants
|
|
215
|
-
|
|
216
|
-
### markdown_toc
|
|
217
|
-
Generate a table of contents:
|
|
218
|
-
- `markdown`: Markdown text (required)
|
|
219
|
-
- `max_depth`: Maximum heading level to include (default: 3)
|
|
220
|
-
- Returns formatted TOC with anchor links
|
|
221
|
-
|
|
222
|
-
## See Also
|
|
223
|
-
|
|
224
|
-
- [mcp-apitools](https://www.npmjs.com/package/mcp-apitools) — 8 API & web dev utilities: HTTP status codes, MIME types, JWT creation, mock data, CORS headers, cookie parsing
|
|
225
|
-
- [mcp-texttools](https://www.npmjs.com/package/mcp-texttools) — 10 text transformation tools: case convert, slugify, word count, lorem ipsum, regex replace, markdown strip
|
|
226
|
-
- [mcp-mathtools](https://www.npmjs.com/package/mcp-mathtools) — 12 math & statistics tools: arithmetic, statistics, unit conversion, financial calculations, matrices
|
|
227
|
-
- [mcp-datetime](https://www.npmjs.com/package/mcp-datetime) — 10 date & time tools: timezone conversion, date math, cron explanation, business days
|
|
228
|
-
- [mcp-quick-calc](https://www.npmjs.com/package/mcp-quick-calc) — 5 calculator tools: currency conversion, percentages, compound interest, unit conversion, loan payments
|
|
229
|
-
- **[mcp-all-tools](https://www.npmjs.com/package/mcp-all-tools)** — All 54+ tools in a single MCP server
|
|
230
|
-
|
|
231
|
-
## License
|
|
232
|
-
|
|
233
|
-
MIT — [Hong Teoh](https://github.com/hlteoh37)
|
|
234
2
|
|
|
235
3
|
## Support
|
|
236
4
|
|
|
237
|
-
If this tool saves you time, consider
|
|
238
|
-
|
|
5
|
+
If this tool saves you time, consider supporting development:
|
|
6
|
+
|
|
7
|
+
- [Buy me a coffee](https://buymeacoffee.com/gl89tu25lp)
|
|
8
|
+
- [Tip via Stripe ($3)](https://buy.stripe.com/dRm8wP8R295Z9VyeN59Zm00)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mcp-devutils",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.1",
|
|
4
4
|
"description": "MCP server with 25 developer utilities - UUID, hash, HMAC, base64, timestamps, JWT decode, random strings, URL encode/decode, JSON format, regex test, cron explain, color convert, semver compare, HTTP status codes, slugify, HTML escape, chmod calculator, text diff, number base converter, lorem ipsum, word count, CIDR calculator, case converter, markdown TOC",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "index.js",
|
|
@@ -46,5 +46,13 @@
|
|
|
46
46
|
},
|
|
47
47
|
"dependencies": {
|
|
48
48
|
"@modelcontextprotocol/sdk": "^1.0.0"
|
|
49
|
+
},
|
|
50
|
+
"repository": {
|
|
51
|
+
"type": "git",
|
|
52
|
+
"url": "https://github.com/hlteoh37/mcp-devutils.git"
|
|
53
|
+
},
|
|
54
|
+
"homepage": "https://github.com/hlteoh37/mcp-devutils#readme",
|
|
55
|
+
"bugs": {
|
|
56
|
+
"url": "https://github.com/hlteoh37/mcp-devutils/issues"
|
|
49
57
|
}
|
|
50
58
|
}
|