it-tools-mcp 3.2.12 → 3.6.0
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/build/index.js +60 -67
- package/build/tools/ansible/ansible-inventory-generator/index.js +5 -2
- package/build/tools/ansible/ansible-playbook-validator/index.js +5 -2
- package/build/tools/ansible/ansible-reference/index.js +4 -1
- package/build/tools/ansible/ansible-vault-decrypt/index.js +6 -3
- package/build/tools/ansible/ansible-vault-encrypt/index.js +7 -4
- package/build/tools/color/color-hex-to-rgb/index.js +5 -2
- package/build/tools/color/color-rgb-to-hex/index.js +7 -4
- package/build/tools/crypto/basic-auth-generator/index.js +6 -3
- package/build/tools/crypto/bcrypt-hash/index.js +7 -4
- package/build/tools/crypto/bip39-generate/index.js +5 -2
- package/build/tools/crypto/hash-md5/index.js +5 -2
- package/build/tools/crypto/hash-sha1/index.js +5 -2
- package/build/tools/crypto/hash-sha256/index.js +5 -2
- package/build/tools/crypto/hash-sha512/index.js +5 -2
- package/build/tools/crypto/hmac-generator/index.js +7 -4
- package/build/tools/crypto/jwt-decode/index.js +5 -2
- package/build/tools/crypto/otp-code-generator/index.js +7 -4
- package/build/tools/crypto/password-generate/index.js +9 -6
- package/build/tools/crypto/token-generator/index.js +7 -4
- package/build/tools/dataFormat/html-to-markdown/index.js +5 -2
- package/build/tools/dataFormat/json-diff/index.js +6 -3
- package/build/tools/dataFormat/json-format/index.js +7 -3
- package/build/tools/dataFormat/json-minify/index.js +5 -2
- package/build/tools/dataFormat/json-to-csv/index.js +6 -3
- package/build/tools/dataFormat/json-to-toml/index.js +5 -2
- package/build/tools/dataFormat/markdown-to-html/index.js +5 -2
- package/build/tools/dataFormat/phone-format/index.js +6 -3
- package/build/tools/dataFormat/sql-format/index.js +6 -3
- package/build/tools/dataFormat/toml-to-json/index.js +5 -2
- package/build/tools/dataFormat/xml-format/index.js +6 -3
- package/build/tools/dataFormat/yaml-format/index.js +5 -2
- package/build/tools/development/crontab-generate/index.js +9 -6
- package/build/tools/development/html-prettifier/index.js +6 -3
- package/build/tools/development/javascript-prettifier/index.js +7 -4
- package/build/tools/development/list-converter/index.js +8 -5
- package/build/tools/development/markdown-toc-generator/index.js +7 -4
- package/build/tools/development/regex-tester/index.js +7 -4
- package/build/tools/docker/docker-compose-to-docker-run/index.js +5 -2
- package/build/tools/docker/docker-compose-validator/index.js +5 -2
- package/build/tools/docker/docker-reference/index.js +4 -1
- package/build/tools/docker/docker-run-to-docker-compose/index.js +5 -2
- package/build/tools/docker/traefik-compose-generator/index.js +9 -6
- package/build/tools/encoding/base64-decode/index.js +6 -2
- package/build/tools/encoding/base64-encode/index.js +27 -11
- package/build/tools/encoding/html-decode/index.js +5 -2
- package/build/tools/encoding/html-encode/index.js +5 -2
- package/build/tools/encoding/html-entities-extended/index.js +6 -3
- package/build/tools/encoding/text-to-binary/index.js +6 -3
- package/build/tools/encoding/url-decode/index.js +5 -2
- package/build/tools/encoding/url-encode/index.js +5 -2
- package/build/tools/forensic/file-type-identifier/index.js +6 -3
- package/build/tools/forensic/safelink-decoder/index.js +5 -2
- package/build/tools/forensic/url-fanger/index.js +6 -3
- package/build/tools/idGenerators/qr-generate/index.js +6 -3
- package/build/tools/idGenerators/svg-placeholder-generator/index.js +9 -6
- package/build/tools/idGenerators/ulid-generate/index.js +4 -1
- package/build/tools/idGenerators/uuid-generate/index.js +4 -1
- package/build/tools/math/math-evaluate/index.js +5 -2
- package/build/tools/math/number-base-converter/index.js +7 -4
- package/build/tools/math/percentage-calculator/index.js +7 -4
- package/build/tools/math/roman-numeral-converter/index.js +5 -2
- package/build/tools/math/temperature-converter/index.js +7 -4
- package/build/tools/math/unix-timestamp-converter/index.js +5 -2
- package/build/tools/network/cat/index.js +5 -2
- package/build/tools/network/cidr-to-ip-range/index.js +5 -2
- package/build/tools/network/curl/index.js +11 -6
- package/build/tools/network/dig/index.js +6 -3
- package/build/tools/network/grep/index.js +6 -3
- package/build/tools/network/head/index.js +6 -3
- package/build/tools/network/iban-validate/index.js +5 -2
- package/build/tools/network/ip-range-to-cidr/index.js +6 -3
- package/build/tools/network/ip-subnet-calculator/index.js +6 -3
- package/build/tools/network/ipv4-subnet-calc/index.js +5 -2
- package/build/tools/network/ipv6-subnet-calculator/index.js +6 -3
- package/build/tools/network/ipv6-ula-generator/index.js +5 -2
- package/build/tools/network/mac-address-generate/index.js +6 -3
- package/build/tools/network/nslookup/index.js +5 -2
- package/build/tools/network/ping/index.js +9 -4
- package/build/tools/network/ps/index.js +4 -1
- package/build/tools/network/random-port/index.js +8 -5
- package/build/tools/network/scp/index.js +10 -7
- package/build/tools/network/ssh/index.js +8 -5
- package/build/tools/network/tail/index.js +6 -3
- package/build/tools/network/telnet/index.js +6 -3
- package/build/tools/network/top/index.js +4 -1
- package/build/tools/network/url-parse/index.js +5 -2
- package/build/tools/physics/angle-converter/index.js +11 -8
- package/build/tools/physics/energy-converter/index.js +13 -10
- package/build/tools/physics/power-converter/index.js +13 -10
- package/build/tools/text/ascii-art-text/index.js +6 -3
- package/build/tools/text/distinct-words/index.js +5 -2
- package/build/tools/text/emoji-search/index.js +5 -2
- package/build/tools/text/lorem-ipsum-generator/index.js +6 -3
- package/build/tools/text/numeronym-generator/index.js +5 -2
- package/build/tools/text/slugify-string/index.js +7 -4
- package/build/tools/text/string-obfuscator/index.js +6 -3
- package/build/tools/text/text-camelcase/index.js +5 -2
- package/build/tools/text/text-capitalize/index.js +5 -2
- package/build/tools/text/text-diff/index.js +6 -3
- package/build/tools/text/text-kebabcase/index.js +5 -2
- package/build/tools/text/text-lowercase/index.js +5 -2
- package/build/tools/text/text-pascalcase/index.js +5 -2
- package/build/tools/text/text-snakecase/index.js +5 -2
- package/build/tools/text/text-stats/index.js +5 -2
- package/build/tools/text/text-to-nato-alphabet/index.js +6 -3
- package/build/tools/text/text-to-unicode/index.js +6 -3
- package/build/tools/text/text-to-unicode-names/index.js +5 -2
- package/build/tools/text/text-uppercase/index.js +5 -2
- package/build/tools/utility/css-prettifier/index.js +6 -3
- package/build/tools/utility/device-info/index.js +4 -1
- package/build/tools/utility/email-normalizer/index.js +5 -2
- package/build/tools/utility/http-status-codes/index.js +5 -2
- package/build/tools/utility/mime-types/index.js +6 -3
- package/build/tools/utility/port-numbers/index.js +5 -2
- package/build/tools/utility/rem-px-converter/index.js +8 -4
- package/package.json +1 -1
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerTextCamelcase(server) {
|
|
3
|
-
server.
|
|
4
|
-
|
|
3
|
+
server.registerTool("text-camelcase", {
|
|
4
|
+
description: "Convert text to camelCase",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
text: z.string().describe("Text to convert to camelCase"),
|
|
7
|
+
}
|
|
5
8
|
}, async ({ text }) => {
|
|
6
9
|
const camelCase = text
|
|
7
10
|
.replace(/(?:^\w|[A-Z]|\b\w)/g, (word, index) => {
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerTextCapitalize(server) {
|
|
3
|
-
server.
|
|
4
|
-
|
|
3
|
+
server.registerTool("text-capitalize", {
|
|
4
|
+
description: "Capitalize first letter of each word",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
text: z.string().describe("Text to capitalize"),
|
|
7
|
+
}
|
|
5
8
|
}, async ({ text }) => {
|
|
6
9
|
const capitalized = text.replace(/\b\w/g, l => l.toUpperCase());
|
|
7
10
|
return {
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerTextDiff(server) {
|
|
3
|
-
server.
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
server.registerTool("text-diff", {
|
|
4
|
+
description: "Compare two texts and show differences",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
text1: z.string().describe("First text to compare"),
|
|
7
|
+
text2: z.string().describe("Second text to compare"),
|
|
8
|
+
}
|
|
6
9
|
}, async ({ text1, text2 }) => {
|
|
7
10
|
try {
|
|
8
11
|
// Simple diff implementation
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerTextKebabcase(server) {
|
|
3
|
-
server.
|
|
4
|
-
|
|
3
|
+
server.registerTool("text-kebabcase", {
|
|
4
|
+
description: "Convert text to kebab-case",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
text: z.string().describe("Text to convert to kebab-case"),
|
|
7
|
+
}
|
|
5
8
|
}, async ({ text }) => {
|
|
6
9
|
const kebabCase = text
|
|
7
10
|
.replace(/([a-z])([A-Z])/g, '$1-$2')
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerTextLowercase(server) {
|
|
3
|
-
server.
|
|
4
|
-
|
|
3
|
+
server.registerTool("text-lowercase", {
|
|
4
|
+
description: "Convert text to lowercase",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
text: z.string().describe("Text to convert to lowercase"),
|
|
7
|
+
}
|
|
5
8
|
}, async ({ text }) => {
|
|
6
9
|
return {
|
|
7
10
|
content: [
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerTextPascalcase(server) {
|
|
3
|
-
server.
|
|
4
|
-
|
|
3
|
+
server.registerTool("text-pascalcase", {
|
|
4
|
+
description: "Convert text to PascalCase",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
text: z.string().describe("Text to convert to PascalCase"),
|
|
7
|
+
}
|
|
5
8
|
}, async ({ text }) => {
|
|
6
9
|
const pascalCase = text
|
|
7
10
|
.replace(/(?:^\w|[A-Z]|\b\w)/g, word => word.toUpperCase())
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerTextSnakecase(server) {
|
|
3
|
-
server.
|
|
4
|
-
|
|
3
|
+
server.registerTool("text-snakecase", {
|
|
4
|
+
description: "Convert text to snake_case",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
text: z.string().describe("Text to convert to snake_case"),
|
|
7
|
+
}
|
|
5
8
|
}, async ({ text }) => {
|
|
6
9
|
const snakeCase = text
|
|
7
10
|
.replace(/([a-z])([A-Z])/g, '$1_$2')
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerTextStats(server) {
|
|
3
|
-
server.
|
|
4
|
-
|
|
3
|
+
server.registerTool("text-stats", {
|
|
4
|
+
description: "Get statistics about text (character count, word count, etc.)",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
text: z.string().describe("Text to analyze"),
|
|
7
|
+
}
|
|
5
8
|
}, async ({ text }) => {
|
|
6
9
|
const lines = text.split('\n');
|
|
7
10
|
const words = text.trim().split(/\s+/).filter(word => word.length > 0);
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerTextToNatoAlphabet(server) {
|
|
3
|
-
server.
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
server.registerTool("text-to-nato-alphabet", {
|
|
4
|
+
description: "Convert text to NATO phonetic alphabet",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
text: z.string().describe("Text to convert to NATO phonetic alphabet"),
|
|
7
|
+
language: z.string().optional().default("International").describe("Language/country variant (International, France, Germany, etc.)")
|
|
8
|
+
}
|
|
6
9
|
}, async ({ text, language }) => {
|
|
7
10
|
// NATO phonetic alphabet mappings
|
|
8
11
|
const natoAlphabets = {
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerTextToUnicode(server) {
|
|
3
|
-
server.
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
server.registerTool("text-to-unicode", {
|
|
4
|
+
description: "Convert text to Unicode code points and vice versa",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
input: z.string().describe("Text to convert to Unicode or Unicode to convert to text"),
|
|
7
|
+
operation: z.enum(["encode", "decode"]).describe("Operation: encode text to Unicode or decode Unicode to text"),
|
|
8
|
+
}
|
|
6
9
|
}, async ({ input, operation }) => {
|
|
7
10
|
try {
|
|
8
11
|
if (operation === "encode") {
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerTextToUnicodeNames(server) {
|
|
3
|
-
server.
|
|
4
|
-
|
|
3
|
+
server.registerTool("text-to-unicode-names", {
|
|
4
|
+
description: "Convert text to Unicode character names",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
text: z.string().describe("Text to convert to Unicode names")
|
|
7
|
+
}
|
|
5
8
|
}, async ({ text }) => {
|
|
6
9
|
const unicodeNames = [...text].map(char => {
|
|
7
10
|
const codePoint = char.codePointAt(0);
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerTextUppercase(server) {
|
|
3
|
-
server.
|
|
4
|
-
|
|
3
|
+
server.registerTool("text-uppercase", {
|
|
4
|
+
description: "Convert text to uppercase",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
text: z.string().describe("Text to convert to uppercase"),
|
|
7
|
+
}
|
|
5
8
|
}, async ({ text }) => {
|
|
6
9
|
return {
|
|
7
10
|
content: [
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerCssPrettifier(server) {
|
|
3
|
-
server.
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
server.registerTool("css-prettifier", {
|
|
4
|
+
description: "Format and prettify CSS code",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
css: z.string().describe("CSS code to format"),
|
|
7
|
+
indentSize: z.number().optional().describe("Number of spaces for indentation (default: 2)")
|
|
8
|
+
}
|
|
6
9
|
}, async ({ css, indentSize = 2 }) => {
|
|
7
10
|
try {
|
|
8
11
|
// Basic CSS prettifier implementation
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
export function registerDeviceInfo(server) {
|
|
2
|
-
server.
|
|
2
|
+
server.registerTool("device-info", {
|
|
3
|
+
description: "Get basic device/system information",
|
|
4
|
+
inputSchema: {}
|
|
5
|
+
}, async () => {
|
|
3
6
|
try {
|
|
4
7
|
const info = {
|
|
5
8
|
platform: process.platform,
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerEmailNormalizer(server) {
|
|
3
|
-
server.
|
|
4
|
-
|
|
3
|
+
server.registerTool("email-normalizer", {
|
|
4
|
+
description: "Normalize email addresses (remove dots, plus aliases, etc.)",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
email: z.string().describe("Email address to normalize"),
|
|
7
|
+
}
|
|
5
8
|
}, async ({ email }) => {
|
|
6
9
|
try {
|
|
7
10
|
// Basic email validation
|
|
@@ -26,8 +26,11 @@ function getUsageHint(code) {
|
|
|
26
26
|
return 'an unknown status';
|
|
27
27
|
}
|
|
28
28
|
export function registerHttpStatusCodes(server) {
|
|
29
|
-
server.
|
|
30
|
-
|
|
29
|
+
server.registerTool("http-status-codes", {
|
|
30
|
+
description: "Get information about HTTP status codes",
|
|
31
|
+
inputSchema: {
|
|
32
|
+
code: z.number().optional().describe("HTTP status code to look up (optional)"),
|
|
33
|
+
}
|
|
31
34
|
}, async ({ code }) => {
|
|
32
35
|
try {
|
|
33
36
|
const statusCodes = {
|
|
@@ -33,9 +33,12 @@ function getMimeDescription(mimeType) {
|
|
|
33
33
|
return descriptions[mimeType] || 'No description available';
|
|
34
34
|
}
|
|
35
35
|
export function registerMimeTypes(server) {
|
|
36
|
-
server.
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
server.registerTool("mime-types", {
|
|
37
|
+
description: "Look up MIME types for file extensions",
|
|
38
|
+
inputSchema: {
|
|
39
|
+
input: z.string().describe("File extension (e.g., 'txt') or MIME type (e.g., 'text/plain')"),
|
|
40
|
+
lookupType: z.enum(["extension-to-mime", "mime-to-extension"]).describe("Lookup direction").optional(),
|
|
41
|
+
}
|
|
39
42
|
}, async ({ input, lookupType = "extension-to-mime" }) => {
|
|
40
43
|
try {
|
|
41
44
|
if (lookupType === "extension-to-mime") {
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerPortNumbers(server) {
|
|
3
|
-
server.
|
|
4
|
-
|
|
3
|
+
server.registerTool("port-numbers", {
|
|
4
|
+
description: "Look up common TCP/UDP port numbers and their services",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
query: z.string().describe("Port number or service name to look up")
|
|
7
|
+
}
|
|
5
8
|
}, async ({ query }) => {
|
|
6
9
|
try {
|
|
7
10
|
const ports = {
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerRemPxConverter(server) {
|
|
3
|
-
server.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
server.registerTool("rem-px-converter", {
|
|
4
|
+
description: "Convert between REM and PX units for CSS. Example: Convert 1.5rem to pixels, or 24px to rem units.",
|
|
5
|
+
inputSchema: {
|
|
6
|
+
value: z.number().min(0).describe("Value to convert (e.g., 1.5 for 1.5rem or 24 for 24px)"),
|
|
7
|
+
fromUnit: z.enum(["rem", "px"]).describe("Source unit - either 'rem' or 'px'"),
|
|
8
|
+
rootFontSize: z.number().min(1).max(100).default(16).describe("Root font size in pixels (default: 16px - standard browser default)")
|
|
9
|
+
}
|
|
7
10
|
}, async ({ value, fromUnit, rootFontSize = 16 }) => {
|
|
8
11
|
try {
|
|
9
12
|
let result;
|
|
@@ -53,6 +56,7 @@ Notes:
|
|
|
53
56
|
}
|
|
54
57
|
catch (error) {
|
|
55
58
|
return {
|
|
59
|
+
isError: true,
|
|
56
60
|
content: [{
|
|
57
61
|
type: "text",
|
|
58
62
|
text: `Error converting REM/PX: ${error instanceof Error ? error.message : 'Unknown error'}`
|