it-tools-mcp 5.2.8 → 5.8.2
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 +3 -7
- package/build/tools/ansible/decrypt_ansible_vault/index.js +0 -2
- package/build/tools/ansible/encrypt_ansible_vault/index.js +0 -2
- package/build/tools/ansible/generate_ansible_inventory/index.js +0 -2
- package/build/tools/ansible/parse_ansible_inventory/index.js +0 -2
- package/build/tools/ansible/show_ansible_reference/index.js +0 -2
- package/build/tools/ansible/validate_ansible_playbook/index.js +0 -2
- package/build/tools/color/convert_hex_to_rgb/index.js +0 -2
- package/build/tools/color/convert_rgb_to_hex/index.js +0 -2
- package/build/tools/crypto/decode_jwt/index.js +0 -2
- package/build/tools/crypto/generate_basic_auth/index.js +0 -2
- package/build/tools/crypto/generate_bip39/index.js +0 -2
- package/build/tools/crypto/generate_hmac/index.js +0 -2
- package/build/tools/crypto/generate_otp/index.js +0 -2
- package/build/tools/crypto/generate_password/index.js +0 -2
- package/build/tools/crypto/generate_token/index.js +0 -2
- package/build/tools/crypto/hash_bcrypt/index.js +0 -2
- package/build/tools/crypto/hash_md5/index.js +0 -2
- package/build/tools/crypto/hash_sha1/index.js +0 -2
- package/build/tools/crypto/hash_sha256/index.js +0 -2
- package/build/tools/crypto/hash_sha512/index.js +0 -2
- package/build/tools/data_format/compare_json/index.js +0 -2
- package/build/tools/data_format/convert_html_to_markdown/index.js +0 -2
- package/build/tools/data_format/convert_json_to_csv/index.js +0 -2
- package/build/tools/data_format/convert_json_to_toml/index.js +0 -2
- package/build/tools/data_format/convert_markdown_to_html/index.js +0 -2
- package/build/tools/data_format/convert_toml_to_json/index.js +0 -2
- package/build/tools/data_format/format_json/index.js +17 -30
- package/build/tools/data_format/format_phone/index.js +0 -2
- package/build/tools/data_format/format_sql/index.js +0 -2
- package/build/tools/data_format/format_xml/index.js +0 -2
- package/build/tools/data_format/format_yaml/index.js +0 -2
- package/build/tools/data_format/minify_json/index.js +0 -2
- package/build/tools/development/convert_list/index.js +0 -2
- package/build/tools/development/format_html/index.js +0 -2
- package/build/tools/development/format_javascript/index.js +0 -2
- package/build/tools/development/generate_crontab/index.js +0 -2
- package/build/tools/development/generate_markdown_toc/index.js +0 -2
- package/build/tools/development/test_regex/index.js +0 -2
- package/build/tools/docker/convert_docker_compose_to_run/index.js +0 -2
- package/build/tools/docker/convert_docker_run_to_compose/index.js +0 -2
- package/build/tools/docker/generate_traefik_compose/index.js +0 -2
- package/build/tools/docker/show_docker_reference/index.js +0 -2
- package/build/tools/docker/validate_docker_compose/index.js +0 -2
- package/build/tools/encoding/convert_text_to_binary/index.js +0 -2
- package/build/tools/encoding/decode_base64/index.js +0 -2
- package/build/tools/encoding/decode_html/index.js +0 -2
- package/build/tools/encoding/decode_url/index.js +0 -2
- package/build/tools/encoding/encode_base64/index.js +0 -2
- package/build/tools/encoding/encode_html/index.js +0 -2
- package/build/tools/encoding/encode_html_entities/index.js +0 -2
- package/build/tools/encoding/encode_url/index.js +0 -2
- package/build/tools/forensic/decode_safelink/index.js +0 -2
- package/build/tools/forensic/fang_url/index.js +0 -2
- package/build/tools/forensic/identify_file_type/index.js +0 -2
- package/build/tools/id_generators/generate_qr_code/index.js +0 -2
- package/build/tools/id_generators/generate_svg_placeholder/index.js +0 -2
- package/build/tools/id_generators/generate_ulid/index.js +0 -2
- package/build/tools/id_generators/generate_uuid/index.js +0 -2
- package/build/tools/math/calculate_percentage/index.js +0 -2
- package/build/tools/math/convert_number_base/index.js +0 -2
- package/build/tools/math/convert_roman_numerals/index.js +0 -2
- package/build/tools/math/convert_temperature/index.js +0 -2
- package/build/tools/math/convert_unix_timestamp/index.js +0 -2
- package/build/tools/math/evaluate_math/index.js +0 -2
- package/build/tools/network/calculate_ip_subnet/index.js +0 -2
- package/build/tools/network/calculate_ipv4_subnet/index.js +0 -2
- package/build/tools/network/calculate_ipv6_subnet/index.js +0 -2
- package/build/tools/network/cat/index.js +0 -2
- package/build/tools/network/convert_cidr_to_ip_range/index.js +0 -2
- package/build/tools/network/convert_ip_range_to_cidr/index.js +0 -2
- package/build/tools/network/curl/index.js +0 -2
- package/build/tools/network/dig/index.js +0 -2
- package/build/tools/network/generate_ipv6_ula/index.js +0 -2
- package/build/tools/network/generate_mac_address/index.js +0 -2
- package/build/tools/network/generate_random_port/index.js +0 -2
- package/build/tools/network/grep/index.js +0 -2
- package/build/tools/network/head/index.js +0 -2
- package/build/tools/network/nslookup/index.js +0 -2
- package/build/tools/network/parse_url/index.js +0 -2
- package/build/tools/network/ping/index.js +0 -2
- package/build/tools/network/ps/index.js +0 -2
- package/build/tools/network/scp/index.js +0 -2
- package/build/tools/network/ssh/index.js +0 -2
- package/build/tools/network/tail/index.js +0 -2
- package/build/tools/network/telnet/index.js +0 -2
- package/build/tools/network/top/index.js +0 -2
- package/build/tools/network/validate_iban/index.js +0 -2
- package/build/tools/physics/convert_angle/index.js +0 -2
- package/build/tools/physics/convert_energy/index.js +0 -2
- package/build/tools/physics/convert_power/index.js +0 -2
- package/build/tools/text/analyze_distinct_words/index.js +0 -2
- package/build/tools/text/analyze_text_stats/index.js +0 -2
- package/build/tools/text/capitalize_text/index.js +0 -2
- package/build/tools/text/compare_text/index.js +0 -2
- package/build/tools/text/convert_text_to_camelcase/index.js +0 -2
- package/build/tools/text/convert_text_to_kebabcase/index.js +0 -2
- package/build/tools/text/convert_text_to_lowercase/index.js +0 -2
- package/build/tools/text/convert_text_to_nato/index.js +0 -2
- package/build/tools/text/convert_text_to_pascalcase/index.js +0 -2
- package/build/tools/text/convert_text_to_unicode/index.js +0 -2
- package/build/tools/text/convert_text_to_uppercase/index.js +0 -2
- package/build/tools/text/generate_ascii_art/index.js +0 -2
- package/build/tools/text/generate_lorem_ipsum/index.js +0 -2
- package/build/tools/text/generate_numeronym/index.js +0 -2
- package/build/tools/text/obfuscate_string/index.js +0 -2
- package/build/tools/text/search_emoji/index.js +0 -2
- package/build/tools/text/show_unicode_names/index.js +0 -2
- package/build/tools/text/slugify_text/index.js +0 -2
- package/build/tools/text/text_snakecase/index.js +0 -2
- package/build/tools/utility/convert_rem_px/index.js +0 -2
- package/build/tools/utility/format_css/index.js +0 -2
- package/build/tools/utility/lookup_http_status/index.js +0 -2
- package/build/tools/utility/lookup_mime_types/index.js +0 -2
- package/build/tools/utility/lookup_port_numbers/index.js +0 -2
- package/build/tools/utility/normalize_email/index.js +0 -2
- package/build/tools/utility/show_device_info/index.js +0 -2
- package/package.json +4 -4
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerPrettifyJavascript(server) {
|
|
3
3
|
server.registerTool("format_javascript", {
|
|
4
|
-
description: "Format and beautify JavaScript/CSS code",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
code: z.string().describe("JavaScript or CSS code to prettify"),
|
|
7
6
|
type: z.enum(["javascript", "css"]).describe("Type of code to format"),
|
|
@@ -10,7 +9,6 @@ export function registerPrettifyJavascript(server) {
|
|
|
10
9
|
// VS Code compliance annotations
|
|
11
10
|
annotations: {
|
|
12
11
|
title: "Format Javascript",
|
|
13
|
-
description: "Format and beautify JavaScript/CSS code",
|
|
14
12
|
readOnlyHint: false
|
|
15
13
|
}
|
|
16
14
|
}, async ({ code, type, indentSize }) => {
|
|
@@ -2,7 +2,6 @@ import { z } from "zod";
|
|
|
2
2
|
import { CronExpressionParser } from 'cron-parser';
|
|
3
3
|
export function registerGenerateCrontab(server) {
|
|
4
4
|
server.registerTool("generate_crontab", {
|
|
5
|
-
description: "Generate crontab expressions",
|
|
6
5
|
inputSchema: {
|
|
7
6
|
minute: z.string().describe("Minute (0-59, *, */n, n-m)").optional(),
|
|
8
7
|
hour: z.string().describe("Hour (0-23, *, */n, n-m)").optional(),
|
|
@@ -13,7 +12,6 @@ export function registerGenerateCrontab(server) {
|
|
|
13
12
|
// VS Code compliance annotations
|
|
14
13
|
annotations: {
|
|
15
14
|
title: "Generate Crontab",
|
|
16
|
-
description: "Generate crontab expressions",
|
|
17
15
|
readOnlyHint: false
|
|
18
16
|
}
|
|
19
17
|
}, async ({ minute = "*", hour = "*", dayOfMonth = "*", month = "*", dayOfWeek = "*" }) => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerGenerateMarkdownToc(server) {
|
|
3
3
|
server.registerTool("generate_markdown_toc", {
|
|
4
|
-
description: "Generate a table of contents from Markdown headers",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
markdown: z.string().describe("Markdown content to generate TOC from"),
|
|
7
6
|
maxLevel: z.number().optional().default(6).describe("Maximum header level to include (1-6)"),
|
|
@@ -10,7 +9,6 @@ export function registerGenerateMarkdownToc(server) {
|
|
|
10
9
|
// VS Code compliance annotations
|
|
11
10
|
annotations: {
|
|
12
11
|
title: "Generate Markdown Toc",
|
|
13
|
-
description: "Generate a table of contents from Markdown headers",
|
|
14
12
|
readOnlyHint: false
|
|
15
13
|
}
|
|
16
14
|
}, async ({ markdown, maxLevel, generateAnchors }) => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerTestRegex(server) {
|
|
3
3
|
server.registerTool("test_regex", {
|
|
4
|
-
description: "Test regular expressions against text",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
pattern: z.string().describe("Regular expression pattern"),
|
|
7
6
|
text: z.string().describe("Text to test against the regex"),
|
|
@@ -10,7 +9,6 @@ export function registerTestRegex(server) {
|
|
|
10
9
|
// VS Code compliance annotations
|
|
11
10
|
annotations: {
|
|
12
11
|
title: "Test Regex",
|
|
13
|
-
description: "Test regular expressions against text",
|
|
14
12
|
readOnlyHint: false
|
|
15
13
|
}
|
|
16
14
|
}, async ({ pattern, text, flags }) => {
|
|
@@ -2,14 +2,12 @@ import { z } from "zod";
|
|
|
2
2
|
import yaml from "js-yaml";
|
|
3
3
|
export function registerDockerComposeToRun(server) {
|
|
4
4
|
server.registerTool("convert_docker_compose_to_run", {
|
|
5
|
-
description: "Convert Docker Compose files to docker run commands",
|
|
6
5
|
inputSchema: {
|
|
7
6
|
content: z.string().describe("Docker Compose file content to convert"),
|
|
8
7
|
},
|
|
9
8
|
// VS Code compliance annotations
|
|
10
9
|
annotations: {
|
|
11
10
|
title: "Convert Docker Compose To Run",
|
|
12
|
-
description: "Convert Docker Compose files to docker run commands",
|
|
13
11
|
readOnlyHint: false
|
|
14
12
|
}
|
|
15
13
|
}, async ({ content }) => {
|
|
@@ -2,14 +2,12 @@ import { z } from "zod";
|
|
|
2
2
|
import yaml from "js-yaml";
|
|
3
3
|
export function registerDockerRunToCompose(server) {
|
|
4
4
|
server.registerTool("convert_docker_run_to_compose", {
|
|
5
|
-
description: "Convert docker run commands to Docker Compose format",
|
|
6
5
|
inputSchema: {
|
|
7
6
|
commands: z.string().describe("Docker run commands to convert (one per line)"),
|
|
8
7
|
},
|
|
9
8
|
// VS Code compliance annotations
|
|
10
9
|
annotations: {
|
|
11
10
|
title: "Convert Docker Run To Compose",
|
|
12
|
-
description: "Convert docker run commands to Docker Compose format",
|
|
13
11
|
readOnlyHint: false
|
|
14
12
|
}
|
|
15
13
|
}, async ({ commands }) => {
|
|
@@ -2,7 +2,6 @@ import { z } from "zod";
|
|
|
2
2
|
import yaml from "js-yaml";
|
|
3
3
|
export function registerGenerateTraefik(server) {
|
|
4
4
|
server.registerTool("generate_traefik_compose", {
|
|
5
|
-
description: "Generate Traefik Docker Compose configuration",
|
|
6
5
|
inputSchema: {
|
|
7
6
|
domain: z.string().optional().describe("Domain for Traefik services (default: example.com)"),
|
|
8
7
|
email: z.string().optional().describe("Email for Let's Encrypt (default: admin@example.com)"),
|
|
@@ -13,7 +12,6 @@ export function registerGenerateTraefik(server) {
|
|
|
13
12
|
// VS Code compliance annotations
|
|
14
13
|
annotations: {
|
|
15
14
|
title: "Generate Traefik Compose",
|
|
16
|
-
description: "Generate Traefik Docker Compose configuration",
|
|
17
15
|
readOnlyHint: false
|
|
18
16
|
}
|
|
19
17
|
}, async ({ domain = 'example.com', email = 'admin@example.com', network = 'traefik', serviceName = 'webapp', serviceImage = 'nginx:latest' }) => {
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
export function registerReferenceDocker(server) {
|
|
2
2
|
server.registerTool("show_docker_reference", {
|
|
3
|
-
description: "Get Docker commands reference and cheatsheet",
|
|
4
3
|
inputSchema: {},
|
|
5
4
|
// VS Code compliance annotations
|
|
6
5
|
annotations: {
|
|
7
6
|
title: "Show Docker Reference",
|
|
8
|
-
description: "Get Docker commands reference and cheatsheet",
|
|
9
7
|
readOnlyHint: true
|
|
10
8
|
}
|
|
11
9
|
}, async () => {
|
|
@@ -2,14 +2,12 @@ import { z } from "zod";
|
|
|
2
2
|
import yaml from "js-yaml";
|
|
3
3
|
export function registerValidateCompose(server) {
|
|
4
4
|
server.registerTool("validate_docker_compose", {
|
|
5
|
-
description: "Validate Docker Compose files for syntax errors, compatibility issues, and best practices. Example: check YAML syntax, service configuration, network setup",
|
|
6
5
|
inputSchema: {
|
|
7
6
|
content: z.string().describe("Docker Compose file content to validate"),
|
|
8
7
|
},
|
|
9
8
|
// VS Code compliance annotations
|
|
10
9
|
annotations: {
|
|
11
10
|
title: "Validate Docker Compose",
|
|
12
|
-
description: "Validate Docker Compose syntax and configuration",
|
|
13
11
|
readOnlyHint: false
|
|
14
12
|
}
|
|
15
13
|
}, async ({ content }) => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerConvertTextBinary(server) {
|
|
3
3
|
server.registerTool("convert_text_to_binary", {
|
|
4
|
-
description: "Convert text to binary and vice versa",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
input: z.string().describe("Text to convert to binary, or binary to convert to text"),
|
|
7
6
|
operation: z.enum(["encode", "decode"]).describe("Operation: encode text to binary or decode binary to text"),
|
|
@@ -9,7 +8,6 @@ export function registerConvertTextBinary(server) {
|
|
|
9
8
|
// VS Code compliance annotations
|
|
10
9
|
annotations: {
|
|
11
10
|
title: "Convert Text To Binary",
|
|
12
|
-
description: "Convert text to binary and vice versa",
|
|
13
11
|
readOnlyHint: false
|
|
14
12
|
}
|
|
15
13
|
}, async ({ input, operation }) => {
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerDecodeBase64(server) {
|
|
3
3
|
server.registerTool("decode_base64", {
|
|
4
|
-
description: 'Decode Base64 text back to original text. Example: "SGVsbG8gV29ybGQ=" → "Hello World"',
|
|
5
4
|
inputSchema: {
|
|
6
5
|
text: z.string().min(1).regex(/^[A-Za-z0-9+/]*={0,2}$/, "Invalid Base64 format").describe("Base64 text to decode"),
|
|
7
6
|
},
|
|
8
7
|
// VS Code compliance annotations
|
|
9
8
|
annotations: {
|
|
10
9
|
title: "Decode Base64",
|
|
11
|
-
description: "Decode Base64 text back to original text",
|
|
12
10
|
readOnlyHint: false
|
|
13
11
|
}
|
|
14
12
|
}, async ({ text }) => {
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerDecodeHtml(server) {
|
|
3
3
|
server.registerTool("decode_html", {
|
|
4
|
-
description: "Decode HTML entities",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
text: z.string().describe("HTML encoded text to decode"),
|
|
7
6
|
},
|
|
8
7
|
// VS Code compliance annotations
|
|
9
8
|
annotations: {
|
|
10
9
|
title: "Decode Html",
|
|
11
|
-
description: "Decode HTML entities",
|
|
12
10
|
readOnlyHint: false
|
|
13
11
|
}
|
|
14
12
|
}, async ({ text }) => {
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerDecodeUrl(server) {
|
|
3
3
|
server.registerTool("decode_url", {
|
|
4
|
-
description: "URL decode text",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
text: z.string().describe("URL encoded text to decode"),
|
|
7
6
|
},
|
|
8
7
|
// VS Code compliance annotations
|
|
9
8
|
annotations: {
|
|
10
9
|
title: "Decode Url",
|
|
11
|
-
description: "URL decode text",
|
|
12
10
|
readOnlyHint: false
|
|
13
11
|
}
|
|
14
12
|
}, async ({ text }) => {
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerEncodeBase64(server) {
|
|
3
3
|
server.registerTool("encode_base64", {
|
|
4
|
-
description: 'Encode text to Base64 format. Example: "Hello World" → "SGVsbG8gV29ybGQ="',
|
|
5
4
|
inputSchema: {
|
|
6
5
|
text: z.string().min(1).describe("Text to encode to Base64"),
|
|
7
6
|
},
|
|
8
7
|
// VS Code compliance annotations
|
|
9
8
|
annotations: {
|
|
10
9
|
title: "Encode Base64",
|
|
11
|
-
description: "Encode text to Base64 format",
|
|
12
10
|
readOnlyHint: false
|
|
13
11
|
}
|
|
14
12
|
}, async ({ text }) => {
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerEncodeHtml(server) {
|
|
3
3
|
server.registerTool("encode_html", {
|
|
4
|
-
description: "Encode HTML entities",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
text: z.string().describe("Text to HTML encode"),
|
|
7
6
|
},
|
|
8
7
|
// VS Code compliance annotations
|
|
9
8
|
annotations: {
|
|
10
9
|
title: "Encode Html",
|
|
11
|
-
description: "Encode HTML entities",
|
|
12
10
|
readOnlyHint: false
|
|
13
11
|
}
|
|
14
12
|
}, async ({ text }) => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerEncodeHtmlEntities(server) {
|
|
3
3
|
server.registerTool("encode_html_entities", {
|
|
4
|
-
description: "Extended HTML entity encoding/decoding",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
text: z.string().describe("Text to encode or decode"),
|
|
7
6
|
operation: z.enum(["encode", "decode"]).describe("Operation to perform"),
|
|
@@ -9,7 +8,6 @@ export function registerEncodeHtmlEntities(server) {
|
|
|
9
8
|
// VS Code compliance annotations
|
|
10
9
|
annotations: {
|
|
11
10
|
title: "Encode Html Entities",
|
|
12
|
-
description: "Extended HTML entity encoding/decoding",
|
|
13
11
|
readOnlyHint: false
|
|
14
12
|
}
|
|
15
13
|
}, async ({ text, operation }) => {
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerEncodeUrl(server) {
|
|
3
3
|
server.registerTool("encode_url", {
|
|
4
|
-
description: "URL encode text",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
text: z.string().describe("Text to URL encode"),
|
|
7
6
|
},
|
|
8
7
|
// VS Code compliance annotations
|
|
9
8
|
annotations: {
|
|
10
9
|
title: "Encode Url",
|
|
11
|
-
description: "URL encode text",
|
|
12
10
|
readOnlyHint: false
|
|
13
11
|
}
|
|
14
12
|
}, async ({ text }) => {
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerDecodeSafelink(server) {
|
|
3
3
|
server.registerTool("decode_safelink", {
|
|
4
|
-
description: "Decode Microsoft Outlook SafeLink URLs",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
safelink: z.string().describe("SafeLink URL to decode")
|
|
7
6
|
},
|
|
8
7
|
// VS Code compliance annotations
|
|
9
8
|
annotations: {
|
|
10
9
|
title: "Decode Safelink",
|
|
11
|
-
description: "Decode Microsoft Outlook SafeLink URLs",
|
|
12
10
|
readOnlyHint: false
|
|
13
11
|
}
|
|
14
12
|
}, async ({ safelink }) => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerFangUrl(server) {
|
|
3
3
|
server.registerTool("fang_url", {
|
|
4
|
-
description: "Defang or refang URLs for safe sharing (security analysis)",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
text: z.string().describe("Text containing URLs to fang/defang"),
|
|
7
6
|
operation: z.enum(["defang", "refang"]).describe("Whether to defang (make safe) or refang (restore) URLs")
|
|
@@ -9,7 +8,6 @@ export function registerFangUrl(server) {
|
|
|
9
8
|
// VS Code compliance annotations
|
|
10
9
|
annotations: {
|
|
11
10
|
title: "Fang Url",
|
|
12
|
-
description: "Defang or refang URLs for safe sharing (security analysis)",
|
|
13
11
|
readOnlyHint: false
|
|
14
12
|
}
|
|
15
13
|
}, async ({ text, operation }) => {
|
|
@@ -2,7 +2,6 @@ import { z } from "zod";
|
|
|
2
2
|
import { Buffer } from 'buffer';
|
|
3
3
|
export function registerIdentifyFileType(server) {
|
|
4
4
|
server.registerTool("identify_file_type", {
|
|
5
|
-
description: "Identify file type based on magic numbers/file signatures",
|
|
6
5
|
inputSchema: {
|
|
7
6
|
data: z.string().describe("Hex data or base64 data of file header"),
|
|
8
7
|
format: z.enum(["hex", "base64"]).describe("Format of the input data")
|
|
@@ -10,7 +9,6 @@ export function registerIdentifyFileType(server) {
|
|
|
10
9
|
// VS Code compliance annotations
|
|
11
10
|
annotations: {
|
|
12
11
|
title: "Identify File Type",
|
|
13
|
-
description: "Identify file type based on magic numbers/file signatures",
|
|
14
12
|
readOnlyHint: false
|
|
15
13
|
}
|
|
16
14
|
}, async ({ data, format }) => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerGenerateQr(server) {
|
|
3
3
|
server.registerTool("generate_qr_code", {
|
|
4
|
-
description: "Generate QR code for any text including URLs, WiFi networks, contact info, etc.",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
text: z.string().describe("Text to encode in QR code (URLs, WiFi: WIFI:T:WPA;S:network;P:password;;, contact info, etc.)"),
|
|
7
6
|
size: z.number().describe("Size multiplier (1-3)").optional(),
|
|
@@ -9,7 +8,6 @@ export function registerGenerateQr(server) {
|
|
|
9
8
|
// VS Code compliance annotations
|
|
10
9
|
annotations: {
|
|
11
10
|
title: "Generate Qr Code",
|
|
12
|
-
description: "Generate QR code for any text including URLs, WiFi networks, contact info, etc",
|
|
13
11
|
readOnlyHint: false
|
|
14
12
|
}
|
|
15
13
|
}, async ({ text, size = 1 }) => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerGenerateSvgPlaceholder(server) {
|
|
3
3
|
server.registerTool("generate_svg_placeholder", {
|
|
4
|
-
description: "Generate SVG placeholder images",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
width: z.number().describe("Width in pixels").optional(),
|
|
7
6
|
height: z.number().describe("Height in pixels").optional(),
|
|
@@ -12,7 +11,6 @@ export function registerGenerateSvgPlaceholder(server) {
|
|
|
12
11
|
// VS Code compliance annotations
|
|
13
12
|
annotations: {
|
|
14
13
|
title: "Generate Svg Placeholder",
|
|
15
|
-
description: "Generate SVG placeholder images",
|
|
16
14
|
readOnlyHint: false
|
|
17
15
|
}
|
|
18
16
|
}, async ({ width = 300, height = 200, backgroundColor = "#cccccc", textColor = "#666666", text }) => {
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
export function registerGenerateUlid(server) {
|
|
2
2
|
server.registerTool("generate_ulid", {
|
|
3
|
-
description: "Generate Universally Unique Lexicographically Sortable Identifier (ULID). Example: creates time-sortable unique IDs like '01ARZ3NDEKTSV4RRFFQ69G5FAV'",
|
|
4
3
|
inputSchema: {},
|
|
5
4
|
// VS Code compliance annotations
|
|
6
5
|
annotations: {
|
|
7
6
|
title: "Generate ULID",
|
|
8
|
-
description: "Generate time-sortable unique identifiers (ULID)",
|
|
9
7
|
readOnlyHint: false
|
|
10
8
|
}
|
|
11
9
|
}, async () => {
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import { randomUUID } from "crypto";
|
|
2
2
|
export function registerGenerateUuid(server) {
|
|
3
3
|
server.registerTool("generate_uuid", {
|
|
4
|
-
description: 'Generate a universally unique identifier (UUID). Example: generates "550e8400-e29b-41d4-a716-446655440000"',
|
|
5
4
|
inputSchema: {},
|
|
6
5
|
// VS Code compliance annotations
|
|
7
6
|
annotations: {
|
|
8
7
|
title: "Generate Uuid",
|
|
9
|
-
description: "Generate a universally unique identifier (UUID)",
|
|
10
8
|
readOnlyHint: false
|
|
11
9
|
}
|
|
12
10
|
}, async () => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerCalculatePercentage(server) {
|
|
3
3
|
server.registerTool("calculate_percentage", {
|
|
4
|
-
description: "Calculate percentages, percentage of a number, or percentage change",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
operation: z.enum(["percentage-of", "what-percentage", "percentage-change"]).describe("Type of percentage calculation"),
|
|
7
6
|
value1: z.number().describe("First value"),
|
|
@@ -10,7 +9,6 @@ export function registerCalculatePercentage(server) {
|
|
|
10
9
|
// VS Code compliance annotations
|
|
11
10
|
annotations: {
|
|
12
11
|
title: "Calculate Percentage",
|
|
13
|
-
description: "Calculate percentages, percentage of a number, or percentage change",
|
|
14
12
|
readOnlyHint: false
|
|
15
13
|
}
|
|
16
14
|
}, async ({ operation, value1, value2 }) => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerConvertNumberBase(server) {
|
|
3
3
|
server.registerTool("convert_number_base", {
|
|
4
|
-
description: "Convert numbers between different bases (binary, octal, decimal, hexadecimal)",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
number: z.string().describe("Number to convert"),
|
|
7
6
|
fromBase: z.number().describe("Source base (2-36)"),
|
|
@@ -10,7 +9,6 @@ export function registerConvertNumberBase(server) {
|
|
|
10
9
|
// VS Code compliance annotations
|
|
11
10
|
annotations: {
|
|
12
11
|
title: "Convert Number Base",
|
|
13
|
-
description: "Convert numbers between different bases (binary, octal, decimal, hexadecimal)",
|
|
14
12
|
readOnlyHint: false
|
|
15
13
|
}
|
|
16
14
|
}, async ({ number, fromBase, toBase }) => {
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerConvertRomanNumeral(server) {
|
|
3
3
|
server.registerTool("convert_roman_numerals", {
|
|
4
|
-
description: "Convert between Arabic numbers and Roman numerals",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
input: z.string().describe("Number to convert (Arabic number 1-3999 or Roman numeral)")
|
|
7
6
|
},
|
|
8
7
|
// VS Code compliance annotations
|
|
9
8
|
annotations: {
|
|
10
9
|
title: "Convert Roman Numerals",
|
|
11
|
-
description: "Convert between Arabic numbers and Roman numerals",
|
|
12
10
|
readOnlyHint: false
|
|
13
11
|
}
|
|
14
12
|
}, async ({ input }) => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerConvertTemperature(server) {
|
|
3
3
|
server.registerTool("convert_temperature", {
|
|
4
|
-
description: "Convert temperatures between Celsius, Fahrenheit, and Kelvin",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
temperature: z.number().describe("Temperature value to convert"),
|
|
7
6
|
from: z.enum(["celsius", "fahrenheit", "kelvin"]).describe("Source temperature unit"),
|
|
@@ -10,7 +9,6 @@ export function registerConvertTemperature(server) {
|
|
|
10
9
|
// VS Code compliance annotations
|
|
11
10
|
annotations: {
|
|
12
11
|
title: "Convert Temperature",
|
|
13
|
-
description: "Convert temperatures between Celsius, Fahrenheit, and Kelvin",
|
|
14
12
|
readOnlyHint: false
|
|
15
13
|
}
|
|
16
14
|
}, async ({ temperature, from, to }) => {
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerUnixTimestampConverter(server) {
|
|
3
3
|
server.registerTool("convert_unix_timestamp", {
|
|
4
|
-
description: "Convert between Unix timestamps and human-readable dates",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
input: z.string().describe("Unix timestamp (seconds) or ISO date string")
|
|
7
6
|
},
|
|
8
7
|
// VS Code compliance annotations
|
|
9
8
|
annotations: {
|
|
10
9
|
title: "Unix-timestamp-converter",
|
|
11
|
-
description: "Convert between Unix timestamps and human-readable dates",
|
|
12
10
|
readOnlyHint: false
|
|
13
11
|
}
|
|
14
12
|
}, async ({ input }) => {
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerEvaluateMath(server) {
|
|
3
3
|
server.registerTool("evaluate_math", {
|
|
4
|
-
description: "Safely evaluate mathematical expressions",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
expression: z.string().describe("Mathematical expression to evaluate (e.g., '2 + 3 * 4')")
|
|
7
6
|
},
|
|
8
7
|
// VS Code compliance annotations
|
|
9
8
|
annotations: {
|
|
10
9
|
title: "Evaluate Math",
|
|
11
|
-
description: "Safely evaluate mathematical expressions",
|
|
12
10
|
readOnlyHint: false
|
|
13
11
|
}
|
|
14
12
|
}, async ({ expression }) => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerIpSubnetCalculator(server) {
|
|
3
3
|
server.registerTool("calculate_ip_subnet", {
|
|
4
|
-
description: "Calculate subnet information for IPv4",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
ip: z.string().describe("IPv4 address (e.g., 192.168.1.1)"),
|
|
7
6
|
cidr: z.number().describe("CIDR notation (e.g., 24)"),
|
|
@@ -9,7 +8,6 @@ export function registerIpSubnetCalculator(server) {
|
|
|
9
8
|
// VS Code compliance annotations
|
|
10
9
|
annotations: {
|
|
11
10
|
title: "Ip-subnet-calculator",
|
|
12
|
-
description: "Calculate subnet information for IPv4",
|
|
13
11
|
readOnlyHint: false
|
|
14
12
|
}
|
|
15
13
|
}, async ({ ip, cidr }) => {
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerIpv4SubnetCalc(server) {
|
|
3
3
|
server.registerTool("calculate_ipv4_subnet", {
|
|
4
|
-
description: "Calculate IPv4 subnet information",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
cidr: z.string().describe("IPv4 CIDR notation (e.g., 192.168.1.0/24)"),
|
|
7
6
|
},
|
|
8
7
|
// VS Code compliance annotations
|
|
9
8
|
annotations: {
|
|
10
9
|
title: "Ipv4-subnet-calc",
|
|
11
|
-
description: "Calculate IPv4 subnet information",
|
|
12
10
|
readOnlyHint: false
|
|
13
11
|
}
|
|
14
12
|
}, async ({ cidr }) => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerIpv6SubnetCalculator(server) {
|
|
3
3
|
server.registerTool("calculate_ipv6_subnet", {
|
|
4
|
-
description: "Calculate IPv6 subnet information",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
ipv6: z.string().describe("IPv6 address and prefix (e.g., 2001:db8::/32)"),
|
|
7
6
|
newPrefix: z.number().optional().describe("New prefix length for subnetting")
|
|
@@ -9,7 +8,6 @@ export function registerIpv6SubnetCalculator(server) {
|
|
|
9
8
|
// VS Code compliance annotations
|
|
10
9
|
annotations: {
|
|
11
10
|
title: "Ipv6-subnet-calculator",
|
|
12
|
-
description: "Calculate IPv6 subnet information",
|
|
13
11
|
readOnlyHint: false
|
|
14
12
|
}
|
|
15
13
|
}, async ({ ipv6, newPrefix }) => {
|
|
@@ -2,14 +2,12 @@ import { z } from "zod";
|
|
|
2
2
|
import fs from "fs";
|
|
3
3
|
export function registerCat(server) {
|
|
4
4
|
server.registerTool("cat", {
|
|
5
|
-
description: "Display content of a file",
|
|
6
5
|
inputSchema: {
|
|
7
6
|
file: z.string().describe("File path")
|
|
8
7
|
},
|
|
9
8
|
// VS Code compliance annotations
|
|
10
9
|
annotations: {
|
|
11
10
|
title: "Cat",
|
|
12
|
-
description: "Display content of a file",
|
|
13
11
|
readOnlyHint: false
|
|
14
12
|
}
|
|
15
13
|
}, async ({ file }) => {
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerCidrToIpRange(server) {
|
|
3
3
|
server.registerTool("convert_cidr_to_ip_range", {
|
|
4
|
-
description: "Convert CIDR notation to IP address range",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
cidr: z.string().describe("CIDR notation (e.g., 192.168.1.0/24)")
|
|
7
6
|
},
|
|
8
7
|
// VS Code compliance annotations
|
|
9
8
|
annotations: {
|
|
10
9
|
title: "Cidr-to-ip-range",
|
|
11
|
-
description: "Convert CIDR notation to IP address range",
|
|
12
10
|
readOnlyHint: false
|
|
13
11
|
}
|
|
14
12
|
}, async ({ cidr }) => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerIpRangeToCidr(server) {
|
|
3
3
|
server.registerTool("convert_ip_range_to_cidr", {
|
|
4
|
-
description: "Convert IP address range to CIDR notation(s)",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
startIP: z.string().describe("Starting IP address"),
|
|
7
6
|
endIP: z.string().describe("Ending IP address")
|
|
@@ -9,7 +8,6 @@ export function registerIpRangeToCidr(server) {
|
|
|
9
8
|
// VS Code compliance annotations
|
|
10
9
|
annotations: {
|
|
11
10
|
title: "Ip-range-to-cidr",
|
|
12
|
-
description: "Convert IP address range to CIDR notation(s)",
|
|
13
11
|
readOnlyHint: false
|
|
14
12
|
}
|
|
15
13
|
}, async ({ startIP, endIP }) => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerCurl(server) {
|
|
3
3
|
server.registerTool("curl", {
|
|
4
|
-
description: "Make HTTP requests to web endpoints. Example: GET request to an API or POST data to a server",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
url: z.string().describe("URL to request"),
|
|
7
6
|
method: z.enum(["GET", "POST", "PUT", "DELETE", "PATCH", "HEAD"]).default("GET").describe("HTTP method"),
|
|
@@ -11,7 +10,6 @@ export function registerCurl(server) {
|
|
|
11
10
|
// VS Code compliance annotations
|
|
12
11
|
annotations: {
|
|
13
12
|
title: "Curl",
|
|
14
|
-
description: "Make HTTP requests to web endpoints",
|
|
15
13
|
readOnlyHint: false
|
|
16
14
|
}
|
|
17
15
|
}, async ({ url, method, headers, body }) => {
|
|
@@ -2,7 +2,6 @@ import { z } from "zod";
|
|
|
2
2
|
import dns from "dns";
|
|
3
3
|
export function registerDig(server) {
|
|
4
4
|
server.registerTool("dig", {
|
|
5
|
-
description: "Perform DNS lookup with dig command",
|
|
6
5
|
inputSchema: {
|
|
7
6
|
target: z.string().describe("Hostname or IP address"),
|
|
8
7
|
type: z.string().default("A").describe("DNS record type")
|
|
@@ -10,7 +9,6 @@ export function registerDig(server) {
|
|
|
10
9
|
// VS Code compliance annotations
|
|
11
10
|
annotations: {
|
|
12
11
|
title: "Dig",
|
|
13
|
-
description: "Perform DNS lookup with dig command",
|
|
14
12
|
readOnlyHint: false
|
|
15
13
|
}
|
|
16
14
|
}, async ({ target, type }) => {
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export function registerIpv6UlaGenerator(server) {
|
|
3
3
|
server.registerTool("generate_ipv6_ula", {
|
|
4
|
-
description: "Generate IPv6 Unique Local Address (ULA) prefix",
|
|
5
4
|
inputSchema: {
|
|
6
5
|
globalId: z.string().optional().describe("Global ID (40 bits in hex, auto-generated if not provided)"),
|
|
7
6
|
},
|
|
8
7
|
// VS Code compliance annotations
|
|
9
8
|
annotations: {
|
|
10
9
|
title: "Ipv6-ula-generator",
|
|
11
|
-
description: "Generate IPv6 Unique Local Address (ULA) prefix",
|
|
12
10
|
readOnlyHint: false
|
|
13
11
|
}
|
|
14
12
|
}, async ({ globalId }) => {
|