Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,539Letters: 14Defects: 1,323counted just now
teppi

Server definition

Hash
sha256:b9a0022fccff080b2bc7590051b4420be891e097b847928215fe8ad684b81f42
What it is
What a remote MCP server returned when asked what it offers: 193 tools

The blob, as servednamed by its sha256

{ "instructions": null, "tools": [ { "description": "Base64-decode to UTF-8.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "base64_decode", "outputSchema": null }, { "description": "Base64-encode UTF-8.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "base64_encode", "outputSchema": null }, { "description": "Base64url-decode to UTF-8.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "base64url_decode", "outputSchema": null }, { "description": "Base64url-encode UTF-8 (no padding, URL-safe).", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "base64url_encode", "outputSchema": null }, { "description": "Bcrypt-hash a password for storage.", "inputSchema": { "properties": { "password": { "type": "string" }, "rounds": { "default": 12, "maximum": 15, "minimum": 4, "type": "integer" } }, "required": [ "password" ], "type": "object" }, "name": "bcrypt_hash", "outputSchema": null }, { "description": "Verify password against bcrypt hash.", "inputSchema": { "properties": { "hash": { "type": "string" }, "password": { "type": "string" } }, "required": [ "password", "hash" ], "type": "object" }, "name": "bcrypt_verify", "outputSchema": null }, { "description": "Parse Keep-a-Changelog style markdown into version sections.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "changelog_parse", "outputSchema": null }, { "description": "Calculate IPv4/IPv6 network info from CIDR (hosts, broadcast, private).", "inputSchema": { "properties": { "cidr": { "description": "e.g. 192.168.1.0/24", "type": "string" } }, "required": [ "cidr" ], "type": "object" }, "name": "cidr_calc", "outputSchema": null }, { "description": "Check if IP address falls within a CIDR range.", "inputSchema": { "properties": { "cidr": { "type": "string" }, "ip": { "type": "string" } }, "required": [ "cidr", "ip" ], "type": "object" }, "name": "cidr_contains", "outputSchema": null }, { "description": "Extract fenced code blocks from markdown (language + code).", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "code_fence_extract", "outputSchema": null }, { "description": "WCAG contrast ratio between two hex colors (AA/AAA). When: WCAG contrast ratio for UI color pairs.", "inputSchema": { "properties": { "bg": { "type": "string" }, "fg": { "type": "string" } }, "required": [ "fg", "bg" ], "type": "object" }, "name": "color_contrast", "outputSchema": null }, { "description": "Convert color between hex, rgb(), and hsl().", "inputSchema": { "properties": { "color": { "description": "hex, rgb(), or hsl()", "type": "string" }, "to_format": { "default": "all", "enum": [ "all", "hex", "rgb", "hsl" ], "type": "string" } }, "required": [ "color" ], "type": "object" }, "name": "color_convert", "outputSchema": null }, { "description": "Validate docker-compose YAML and flag privileged/host-network/secret env issues.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "compose_validate", "outputSchema": null }, { "description": "Parse Content-Type header into mime/charset/params.", "inputSchema": { "properties": { "header": { "type": "string" } }, "required": [ "header" ], "type": "object" }, "name": "content_type_parse", "outputSchema": null }, { "description": "Lint Conventional Commits message (feat/fix/chore…).", "inputSchema": { "properties": { "message": { "type": "string" } }, "required": [ "message" ], "type": "object" }, "name": "conventional_commit_lint", "outputSchema": null }, { "description": "Parse Cookie request header into name/value map. When: Parse Cookie request headers.", "inputSchema": { "properties": { "header": { "type": "string" } }, "required": [ "header" ], "type": "object" }, "name": "cookie_header_parse", "outputSchema": null }, { "description": "Check CORS Allow-Origin vs credentials for unsafe combinations.", "inputSchema": { "properties": { "allow_credentials": { "default": false, "type": "boolean" }, "allow_origin": { "type": "string" }, "origin": { "type": "string" } }, "required": [ "allow_origin" ], "type": "object" }, "name": "cors_check", "outputSchema": null }, { "description": "Human-readable natural language description of cron expression (EN + ZH).", "inputSchema": { "properties": { "expr": { "type": "string" } }, "required": [ "expr" ], "type": "object" }, "name": "cron_describe", "outputSchema": null }, { "description": "Check if a cron expression matches a specific datetime (ISO-8601).", "inputSchema": { "properties": { "at_time": { "description": "ISO-8601 datetime", "type": "string" }, "expr": { "type": "string" }, "timezone": { "default": "UTC", "type": "string" } }, "required": [ "expr", "at_time" ], "type": "object" }, "name": "cron_matches", "outputSchema": null }, { "description": "Preview next N execution times for a 5-field cron expression.", "inputSchema": { "properties": { "count": { "default": 5, "maximum": 20, "minimum": 1, "type": "integer" }, "expr": { "type": "string" }, "from_time": { "description": "Optional unix or ISO start time", "type": "string" }, "timezone": { "default": "UTC", "type": "string" } }, "required": [ "expr" ], "type": "object" }, "name": "cron_next_runs", "outputSchema": null }, { "description": "Parse 5-field cron into named fields (minute hour dom month dow).", "inputSchema": { "properties": { "expr": { "type": "string" } }, "required": [ "expr" ], "type": "object" }, "name": "cron_parse", "outputSchema": null }, { "description": "Validate cron field syntax and value ranges (minute 0-59, hour 0-23, etc.).", "inputSchema": { "properties": { "expr": { "type": "string" } }, "required": [ "expr" ], "type": "object" }, "name": "cron_semantic_validate", "outputSchema": null }, { "description": "Check cron string has exactly five fields.", "inputSchema": { "properties": { "expr": { "type": "string" } }, "required": [ "expr" ], "type": "object" }, "name": "cron_validate", "outputSchema": null }, { "description": "Batch semantic validate of 5-field cron expressions.", "inputSchema": { "properties": { "expressions": { "items": { "type": "string" }, "maxItems": 30, "type": "array" } }, "required": [ "expressions" ], "type": "object" }, "name": "cron_validate_batch", "outputSchema": null }, { "description": "Parse Content-Security-Policy header and flag unsafe directives.", "inputSchema": { "properties": { "header": { "type": "string" } }, "required": [ "header" ], "type": "object" }, "name": "csp_parse", "outputSchema": null }, { "description": "Convert CSV text to JSON array of row objects. When: Convert CSV rows → JSON array of objects.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "csv_to_json", "outputSchema": null }, { "description": "Validate CSV structure — consistent column counts / header. When: Check CSV column consistency before import.", "inputSchema": { "properties": { "delimiter": { "default": ",", "type": "string" }, "has_header": { "default": true, "type": "boolean" }, "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "csv_validate", "outputSchema": null }, { "description": "Convert amount between currencies using latest ECB rates.", "inputSchema": { "properties": { "amount": { "type": "number" }, "from_currency": { "type": "string" }, "to_currency": { "type": "string" } }, "required": [ "amount", "from_currency", "to_currency" ], "type": "object" }, "name": "currency_convert", "outputSchema": null }, { "description": "List supported fiat currencies (Frankfurter/ECB, no API key).", "inputSchema": { "properties": {}, "type": "object" }, "name": "currency_list", "outputSchema": null }, { "description": "Latest exchange rates (Frankfurter ECB data, no API key).", "inputSchema": { "properties": { "base": { "default": "USD", "type": "string" }, "symbols": { "description": "Optional target currencies e.g. CNY, EUR", "items": { "type": "string" }, "type": "array" } }, "type": "object" }, "name": "currency_rates", "outputSchema": null }, { "description": "Parse unix timestamp or ISO-8601 into UTC ISO + unix.", "inputSchema": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "name": "datetime_parse", "outputSchema": null }, { "description": "Extract name@version from requirements/lockfile/go.mod/Cargo snippets. When: Extract name@version from lock/requirements snippets (best-effort).", "inputSchema": { "properties": { "ecosystem": { "default": "auto", "enum": [ "auto", "pip", "npm", "go", "cargo" ], "type": "string" }, "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "dependency_versions_extract", "outputSchema": null }, { "description": "DNS lookup for domain (A, AAAA, MX, TXT, NS, CNAME, SOA).", "inputSchema": { "properties": { "domain": { "type": "string" }, "record_type": { "default": "A", "enum": [ "A", "AAAA", "MX", "TXT", "NS", "CNAME", "SOA", "ANY" ], "type": "string" } }, "required": [ "domain" ], "type": "object" }, "name": "dns_lookup", "outputSchema": null }, { "description": "Lint Dockerfile for common security/style issues (root user, curl|sh, secrets).", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "dockerfile_lint", "outputSchema": null }, { "description": "Parse domain into labels, TLD, registrable domain, subdomain. When: Split domain into subdomain/registrable/TLD (best-effort eTLD).", "inputSchema": { "properties": { "domain": { "type": "string" } }, "required": [ "domain" ], "type": "object" }, "name": "domain_parse", "outputSchema": null }, { "description": "Parse duration (ISO-8601 PnDTnHnMnS or human 1h30m / 90s) to seconds. When: Parse ISO-8601 / human durations to seconds.", "inputSchema": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "name": "duration_parse", "outputSchema": null }, { "description": "Validate .editorconfig syntax and common keys.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "editorconfig_validate", "outputSchema": null }, { "description": "Validate email address format. When: Syntax-check a single email address.", "inputSchema": { "properties": { "email": { "type": "string" } }, "required": [ "email" ], "type": "object" }, "name": "email_validate", "outputSchema": null }, { "description": "Diff two .env files — only_in_a / only_in_b / changed values. When: Diff two .env files for missing/changed keys.", "inputSchema": { "properties": { "a": { "type": "string" }, "b": { "type": "string" } }, "required": [ "a", "b" ], "type": "object" }, "name": "env_diff", "outputSchema": null }, { "description": "Parse .env / dotenv text into key-value variables.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "env_parse", "outputSchema": null }, { "description": "Check .env text contains required keys (and non-empty values).", "inputSchema": { "properties": { "required": { "items": { "type": "string" }, "type": "array" }, "text": { "type": "string" } }, "required": [ "text", "required" ], "type": "object" }, "name": "env_required_check", "outputSchema": null }, { "description": "Extract email addresses from text. When: Pull email addresses from free text / logs.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "extract_emails", "outputSchema": null }, { "description": "Extract HTTP/HTTPS URLs from arbitrary text.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "extract_urls", "outputSchema": null }, { "description": "Parse YAML frontmatter from markdown (--- ... ---). When: Split YAML frontmatter from markdown body.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "frontmatter_parse", "outputSchema": null }, { "description": "Parse git remote URL (ssh/https) into host/owner/repo. When: Parse git@ / https remotes into owner/repo.", "inputSchema": { "properties": { "url": { "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "git_url_parse", "outputSchema": null }, { "description": "Lint GitHub Actions workflow YAML (triggers, unpinned actions, curl|bash).", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "github_actions_lint", "outputSchema": null }, { "description": "Review .gitignore for common missing ignores (.env, node_modules, keys).", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "gitignore_check", "outputSchema": null }, { "description": "Match paths against .gitignore rules (ignore / negate). When: Test paths against .gitignore rules (best-effort).", "inputSchema": { "properties": { "gitignore": { "type": "string" }, "paths": { "items": { "type": "string" }, "type": "array" } }, "required": [ "paths", "gitignore" ], "type": "object" }, "name": "gitignore_match", "outputSchema": null }, { "description": "Match paths against glob patterns (gitignore-style fnmatch).", "inputSchema": { "properties": { "paths": { "items": { "type": "string" }, "type": "array" }, "patterns": { "items": { "type": "string" }, "type": "array" } }, "required": [ "paths", "patterns" ], "type": "object" }, "name": "glob_match_batch", "outputSchema": null }, { "description": "List GraphQL query/mutation/subscription names and type defs. When: List GraphQL ops/types from a document (best-effort).", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "graphql_operations_list", "outputSchema": null }, { "description": "Diff two GraphQL schemas for removed types/fields (breaking changes).", "inputSchema": { "properties": { "new": { "type": "string" }, "old": { "type": "string" } }, "required": [ "old", "new" ], "type": "object" }, "name": "graphql_schema_diff", "outputSchema": null }, { "description": "Validate GraphQL query or schema SDL syntax (parse only).", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "graphql_validate", "outputSchema": null }, { "description": "Compare two hash digests (case-insensitive).", "inputSchema": { "properties": { "a": { "type": "string" }, "b": { "type": "string" } }, "required": [ "a", "b" ], "type": "object" }, "name": "hash_compare", "outputSchema": null }, { "description": "MD5 hex digest of UTF-8 text. When: MD5 digest (non-crypto integrity / legacy checksums).", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "hash_md5", "outputSchema": null }, { "description": "SHA256 hex digest.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "hash_sha256", "outputSchema": null }, { "description": "SHA512 hex digest.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "hash_sha512", "outputSchema": null }, { "description": "Hex string to UTF-8 text.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "hex_decode", "outputSchema": null }, { "description": "UTF-8 text to hex string.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "hex_encode", "outputSchema": null }, { "description": "HMAC sign message (sha1/sha256/sha512); hex or base64 output.", "inputSchema": { "properties": { "algorithm": { "default": "sha256", "type": "string" }, "encoding": { "default": "hex", "enum": [ "hex", "base64" ], "type": "string" }, "message": { "type": "string" }, "secret": { "type": "string" } }, "required": [ "message", "secret" ], "type": "object" }, "name": "hmac_sign", "outputSchema": null }, { "description": "Verify HMAC signature (hex or base64).", "inputSchema": { "properties": { "algorithm": { "default": "sha256", "type": "string" }, "message": { "type": "string" }, "secret": { "type": "string" }, "signature": { "type": "string" } }, "required": [ "message", "secret", "signature" ], "type": "object" }, "name": "hmac_verify", "outputSchema": null }, { "description": "Parse /etc/hosts style file into IP → hostnames entries. When: Parse /etc/hosts style IP→hostname maps.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "hosts_file_parse", "outputSchema": null }, { "description": "Unescape HTML entities.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "html_decode", "outputSchema": null }, { "description": "Escape HTML entities.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "html_encode", "outputSchema": null }, { "description": "Scan HTML for XSS-prone patterns (javascript: URLs, inline handlers, eval). Note: best-effort / heuristic — not a full language parser.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "html_security_scan", "outputSchema": null }, { "description": "Convert HTML to Markdown text. When: Convert HTML → markdown for docs the agent edits.", "inputSchema": { "properties": { "html": { "type": "string" } }, "required": [ "html" ], "type": "object" }, "name": "html_to_markdown", "outputSchema": null }, { "description": "Fetch HTTP response headers (HEAD/GET) for URL.", "inputSchema": { "properties": { "follow_redirects": { "default": true, "type": "boolean" }, "method": { "default": "HEAD", "enum": [ "HEAD", "GET" ], "type": "string" }, "url": { "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "http_headers_fetch", "outputSchema": null }, { "description": "Parse raw HTTP request/response header block into map. When: Parse raw HTTP header blocks.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "http_headers_parse", "outputSchema": null }, { "description": "Classify HTTP status codes into 2xx/3xx/4xx/5xx buckets.", "inputSchema": { "properties": { "codes": { "items": { "type": [ "integer", "string" ] }, "type": "array" } }, "required": [ "codes" ], "type": "object" }, "name": "http_status_classify", "outputSchema": null }, { "description": "Explain HTTP status code (e.g. 404, 429, 503).", "inputSchema": { "properties": { "code": { "type": "integer" } }, "required": [ "code" ], "type": "object" }, "name": "http_status_lookup", "outputSchema": null }, { "description": "Format bytes to human size, or parse '1.5 GB' to bytes. When: Format or parse human byte sizes (1.5 GB).", "inputSchema": { "properties": { "precision": { "default": 2, "type": "integer" }, "text": { "type": "string" }, "value": { "type": "number" } }, "type": "object" }, "name": "human_bytes", "outputSchema": null }, { "description": "Validate identifier for python/javascript/typescript (keywords + syntax).", "inputSchema": { "properties": { "language": { "default": "python", "enum": [ "python", "javascript", "typescript" ], "type": "string" }, "name": { "type": "string" } }, "required": [ "name" ], "type": "object" }, "name": "identifier_validate", "outputSchema": null }, { "description": "List imports from python/js source and flag duplicates. Note: best-effort / heuristic — not a full language parser.", "inputSchema": { "properties": { "language": { "default": "python", "enum": [ "python", "javascript" ], "type": "string" }, "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "import_list_analyze", "outputSchema": null }, { "description": "Parse INI / simple key=value config into sections. When: Parse INI/section configs into structured maps.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "ini_parse", "outputSchema": null }, { "description": "Geolocate public IP: country, city, lat/lon, timezone, ISP.", "inputSchema": { "properties": { "ip": { "type": "string" } }, "required": [ "ip" ], "type": "object" }, "name": "ip_geolocation", "outputSchema": null }, { "description": "Detect IPv4/IPv6 and classify private/loopback/global. When: Classify IPv4/IPv6 and private/global.", "inputSchema": { "properties": { "ip": { "type": "string" } }, "required": [ "ip" ], "type": "object" }, "name": "ip_version_detect", "outputSchema": null }, { "description": "Classify IP as private/loopback/link-local/global (SSRF helper).", "inputSchema": { "properties": { "ip": { "type": "string" } }, "required": [ "ip" ], "type": "object" }, "name": "ipv4_private_check", "outputSchema": null }, { "description": "Assert JSONPath expressions against JSON (exists/equals/type) — agent self-check.", "inputSchema": { "properties": { "assertions": { "items": { "properties": { "equals": {}, "exists": { "type": "boolean" }, "path": { "type": "string" }, "type": { "type": "string" } }, "required": [ "path" ], "type": "object" }, "type": "array" }, "data": { "type": "string" } }, "required": [ "data", "assertions" ], "type": "object" }, "name": "json_assert_paths", "outputSchema": null }, { "description": "Deep-compare two JSON documents and list differing paths.", "inputSchema": { "properties": { "a": { "type": "string" }, "b": { "type": "string" } }, "required": [ "a", "b" ], "type": "object" }, "name": "json_equal", "outputSchema": null }, { "description": "Flatten nested JSON to dot-key map. When: Flatten nested JSON keys before comparing or exporting.", "inputSchema": { "properties": { "separator": { "default": ".", "type": "string" }, "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "json_flatten", "outputSchema": null }, { "description": "Pretty-print JSON with indent. When: Pretty-print JSON when the agent needs readable output.", "inputSchema": { "properties": { "indent": { "default": 2, "type": "integer" }, "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "json_format", "outputSchema": null }, { "description": "Deep-merge two JSON objects (second overlays first).", "inputSchema": { "properties": { "a": { "type": "string" }, "b": { "type": "string" } }, "required": [ "a", "b" ], "type": "object" }, "name": "json_merge", "outputSchema": null }, { "description": "Apply RFC 7396 JSON Merge Patch (null deletes keys). When: RFC 7396 merge patch — use when patching JSON configs.", "inputSchema": { "properties": { "patch": { "type": "string" }, "target": { "type": "string" } }, "required": [ "target", "patch" ], "type": "object" }, "name": "json_merge_patch", "outputSchema": null }, { "description": "Minify JSON (remove whitespace). When: Minify JSON for compact payloads or size checks.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "json_minify", "outputSchema": null }, { "description": "Apply RFC 6902 JSON Patch ops (add/remove/replace/test/move/copy). When: Apply RFC 6902 ops (add/remove/replace/test/move/copy).", "inputSchema": { "properties": { "data": { "type": "string" }, "patch": { "type": "string" } }, "required": [ "data", "patch" ], "type": "object" }, "name": "json_patch_apply", "outputSchema": null }, { "description": "Get value by RFC 6901 JSON Pointer (e.g. /user/id). When: Read one field by RFC 6901 pointer without full walk in the agent.", "inputSchema": { "properties": { "data": { "type": "string" }, "pointer": { "default": "", "type": "string" } }, "required": [ "data" ], "type": "object" }, "name": "json_pointer_get", "outputSchema": null }, { "description": "Unified diff of two JSON documents (pretty-printed).", "inputSchema": { "properties": { "a": { "type": "string" }, "b": { "type": "string" } }, "required": [ "a", "b" ], "type": "object" }, "name": "json_pretty_diff", "outputSchema": null }, { "description": "Infer a Draft-7 JSON Schema from a sample JSON document (agent favorite).", "inputSchema": { "properties": { "data": { "type": "string" }, "title": { "default": "Inferred", "type": "string" } }, "required": [ "data" ], "type": "object" }, "name": "json_schema_infer", "outputSchema": null }, { "description": "Validate JSON data against JSON Schema (Draft 7).", "inputSchema": { "properties": { "data": { "description": "JSON document text", "type": "string" }, "max_errors": { "default": 20, "maximum": 50, "minimum": 1, "type": "integer" }, "schema": { "description": "JSON Schema (Draft 7)", "type": "string" } }, "required": [ "data", "schema" ], "type": "object" }, "name": "json_schema_validate", "outputSchema": null }, { "description": "Batch JSON Schema (Draft 7) validation — up to 25 documents (agent favorite).", "inputSchema": { "properties": { "items": { "items": { "properties": { "data": { "type": "string" }, "id": { "type": "string" }, "schema": { "type": "string" } }, "required": [ "data", "schema" ], "type": "object" }, "maxItems": 25, "type": "array" }, "max_errors": { "default": 10, "type": "integer" } }, "required": [ "items" ], "type": "object" }, "name": "json_schema_validate_batch", "outputSchema": null }, { "description": "Recursively sort JSON object keys. When: Canonicalize JSON key order for stable diffs/hashes.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "json_sort_keys", "outputSchema": null }, { "description": "Convert JSON array of objects to CSV text.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "json_to_csv", "outputSchema": null }, { "description": "Convert JSON object text to TOML string.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "json_to_toml", "outputSchema": null }, { "description": "Convert JSON text to YAML string. When: Convert JSON → YAML for config files agents write.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "json_to_yaml", "outputSchema": null }, { "description": "Summarize JSON value types (counts per type in tree).", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "json_type_summary", "outputSchema": null }, { "description": "Validate JSON text; return parsed object or error.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "json_validate", "outputSchema": null }, { "description": "Validate JSON Lines (NDJSON); optional per-line JSON Schema. When: Validate NDJSON / JSON Lines logs or datasets.", "inputSchema": { "properties": { "max_lines": { "default": 200, "type": "integer" }, "schema": { "type": "string" }, "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "jsonl_validate", "outputSchema": null }, { "description": "Query JSON with JSONPath expression; returns matching values.", "inputSchema": { "properties": { "path": { "description": "e.g. $.store.book[*].author", "type": "string" }, "text": { "description": "JSON text", "type": "string" } }, "required": [ "text", "path" ], "type": "object" }, "name": "jsonpath_query", "outputSchema": null }, { "description": "Decode JWT header/claims (no verify) and flag alg=none, missing exp, privileged roles.", "inputSchema": { "properties": { "token": { "type": "string" } }, "required": [ "token" ], "type": "object" }, "name": "jwt_claims_audit", "outputSchema": null }, { "description": "Decode JWT payload and header (no signature verification).", "inputSchema": { "properties": { "token": { "type": "string" } }, "required": [ "token" ], "type": "object" }, "name": "jwt_decode", "outputSchema": null }, { "description": "Sign JWT payload (HS* with secret, RS* with private_key PEM).", "inputSchema": { "properties": { "algorithm": { "default": "HS256", "type": "string" }, "header": { "description": "Optional extra JWT header fields", "type": "object" }, "payload": { "description": "Claims object or JSON string", "type": "object" }, "private_key": { "description": "PEM private key for RS algorithms", "type": "string" }, "secret": { "type": "string" } }, "required": [ "payload" ], "type": "object" }, "name": "jwt_sign", "outputSchema": null }, { "description": "Verify JWT signature (HS* with secret, RS* with public_key PEM).", "inputSchema": { "properties": { "algorithms": { "description": "e.g. [\"HS256\"]", "items": { "type": "string" }, "type": "array" }, "public_key": { "description": "PEM public key for RS algorithms", "type": "string" }, "secret": { "description": "For HS256/384/512", "type": "string" }, "token": { "type": "string" } }, "required": [ "token" ], "type": "object" }, "name": "jwt_verify", "outputSchema": null }, { "description": "Detect and normalize line endings to lf/crlf/cr. When: Detect/normalize CRLF vs LF.", "inputSchema": { "properties": { "style": { "default": "lf", "enum": [ "lf", "crlf", "cr" ], "type": "string" }, "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "line_ending_normalize", "outputSchema": null }, { "description": "Deduplicate list items preserving order.", "inputSchema": { "properties": { "items": { "type": "array" } }, "required": [ "items" ], "type": "object" }, "name": "list_unique", "outputSchema": null }, { "description": "Create disposable receive-only inbox @mail.toolapi.org (24h TTL). Returns address + secret token.", "inputSchema": { "properties": { "prefix": { "description": "Optional local-part prefix (alphanumeric)", "type": "string" } }, "type": "object" }, "name": "mail_inbox_create", "outputSchema": null }, { "description": "List messages in a temp inbox (requires token from mail_inbox_create).", "inputSchema": { "properties": { "address": { "type": "string" }, "inbox_id": { "type": "string" }, "token": { "type": "string" } }, "required": [ "token" ], "type": "object" }, "name": "mail_inbox_list", "outputSchema": null }, { "description": "Read full message body from temp inbox.", "inputSchema": { "properties": { "address": { "type": "string" }, "inbox_id": { "type": "string" }, "message_id": { "type": "string" }, "token": { "type": "string" } }, "required": [ "message_id", "token" ], "type": "object" }, "name": "mail_inbox_read", "outputSchema": null }, { "description": "Extract markdown/bare links and flag javascript: URLs.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "markdown_link_extract", "outputSchema": null }, { "description": "Convert Markdown text to HTML. When: Render markdown → HTML for previews or emails.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "markdown_to_html", "outputSchema": null }, { "description": "Build a table of contents from markdown headings. When: Build heading TOC from markdown docs.", "inputSchema": { "properties": { "max_level": { "default": 3, "maximum": 6, "minimum": 1, "type": "integer" }, "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "markdown_toc", "outputSchema": null }, { "description": "Lookup MIME type by file extension/path, or extensions by MIME. When: Map file extension ↔ MIME type.", "inputSchema": { "properties": { "mime": { "type": "string" }, "path_or_ext": { "type": "string" } }, "type": "object" }, "name": "mime_lookup", "outputSchema": null }, { "description": "Generate URL-friendly nanoid (like npm nanoid).", "inputSchema": { "properties": { "size": { "default": 21, "maximum": 64, "minimum": 1, "type": "integer" } }, "type": "object" }, "name": "nanoid_generate", "outputSchema": null }, { "description": "Lint nginx config snippets (braces, SSLv3, server_tokens, HSTS hints).", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "nginx_config_lint", "outputSchema": null }, { "description": "Compare two OpenAPI specs and flag breaking vs non-breaking API changes.", "inputSchema": { "properties": { "new": { "description": "New OpenAPI JSON/YAML", "type": "string" }, "old": { "description": "Previous OpenAPI JSON/YAML", "type": "string" } }, "required": [ "old", "new" ], "type": "object" }, "name": "openapi_diff", "outputSchema": null }, { "description": "List OpenAPI path operations (method, path, operationId, tags). When: List OpenAPI operations before validate/diff.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "openapi_operations_list", "outputSchema": null }, { "description": "Validate OpenAPI 3.x document (JSON or YAML snippet).", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "openapi_validate", "outputSchema": null }, { "description": "Audit package.json or pyproject.toml — license, risky scripts, loose ranges; emit semver_checks for batch. Note: best-effort / heuristic — not a full language parser.", "inputSchema": { "properties": { "kind": { "default": "auto", "enum": [ "auto", "npm", "pyproject" ], "type": "string" }, "text": { "description": "Manifest file contents", "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "package_manifest_audit", "outputSchema": null }, { "description": "List scripts from package.json or pyproject.toml (poetry/PEP 621). When: List npm/poetry/PEP 621 scripts from manifests.", "inputSchema": { "properties": { "kind": { "default": "auto", "enum": [ "auto", "npm", "pyproject" ], "type": "string" }, "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "package_scripts_list", "outputSchema": null }, { "description": "Cryptographically secure random password.", "inputSchema": { "properties": { "length": { "default": 16, "maximum": 64, "minimum": 8, "type": "integer" }, "symbols": { "default": true, "type": "boolean" } }, "type": "object" }, "name": "password_generate", "outputSchema": null }, { "description": "Offline password strength heuristic (length/classes/common). When: Offline password strength heuristic (not a cracker).", "inputSchema": { "properties": { "password": { "type": "string" } }, "required": [ "password" ], "type": "object" }, "name": "password_strength", "outputSchema": null }, { "description": "Normalize filesystem path (resolve . and ..) for posix or windows. When: Resolve . and .. in filesystem paths.", "inputSchema": { "properties": { "path": { "type": "string" }, "style": { "default": "posix", "enum": [ "posix", "windows" ], "type": "string" } }, "required": [ "path" ], "type": "object" }, "name": "path_normalize", "outputSchema": null }, { "description": "Check filesystem path for traversal / absolute / sensitive system paths.", "inputSchema": { "properties": { "allow_absolute": { "default": false, "type": "boolean" }, "path": { "type": "string" } }, "required": [ "path" ], "type": "object" }, "name": "path_safety_check", "outputSchema": null }, { "description": "List PEM blocks in text (label, DER size, SHA256 fingerprint).", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "pem_decode", "outputSchema": null }, { "description": "Pick one item from a list (optional seed for reproducibility).", "inputSchema": { "properties": { "items": { "type": "array" }, "seed": { "description": "Optional RNG seed", "type": "integer" } }, "required": [ "items" ], "type": "object" }, "name": "pick_choice", "outputSchema": null }, { "description": "TCP port open/closed check with latency ms.", "inputSchema": { "properties": { "host": { "type": "string" }, "port": { "maximum": 65535, "minimum": 1, "type": "integer" } }, "required": [ "host", "port" ], "type": "object" }, "name": "port_check", "outputSchema": null }, { "description": "Parse Java .properties key=value file. When: Parse Java .properties key=value configs (best-effort).", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "properties_parse", "outputSchema": null }, { "description": "Generate QR code as SVG (base64 data URI included).", "inputSchema": { "properties": { "border": { "default": 4, "maximum": 10, "minimum": 1, "type": "integer" }, "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "qr_generate", "outputSchema": null }, { "description": "Build URL query string from params object. When: Build query strings from param objects.", "inputSchema": { "properties": { "doseq": { "default": true, "type": "boolean" }, "params": { "type": "object" } }, "required": [ "params" ], "type": "object" }, "name": "query_string_build", "outputSchema": null }, { "description": "Parse URL query string into key/value map (supports multi-values). When: Parse URL query strings into maps.", "inputSchema": { "properties": { "query": { "type": "string" } }, "required": [ "query" ], "type": "object" }, "name": "query_string_parse", "outputSchema": null }, { "description": "Convert number between bases 2-36 (binary, octal, decimal, hex).", "inputSchema": { "properties": { "from_base": { "description": "2-36 or binary/octal/decimal/hex", "type": "string" }, "to_base": { "type": "string" }, "value": { "type": "string" } }, "required": [ "value", "from_base", "to_base" ], "type": "object" }, "name": "radix_convert", "outputSchema": null }, { "description": "Random integer in inclusive range (optional seed).", "inputSchema": { "properties": { "max_val": { "type": "integer" }, "min_val": { "type": "integer" }, "seed": { "type": "integer" } }, "required": [ "min_val", "max_val" ], "type": "object" }, "name": "random_int", "outputSchema": null }, { "description": "Random string (alphanumeric, hex, base64 charset or custom).", "inputSchema": { "properties": { "charset": { "default": "alphanumeric", "type": "string" }, "length": { "default": 16, "type": "integer" }, "seed": { "type": "integer" } }, "type": "object" }, "name": "random_string", "outputSchema": null }, { "description": "Replace regex matches in text (supports backreferences in replacement).", "inputSchema": { "properties": { "count": { "default": 0, "description": "Max replacements when global", "type": "integer" }, "flags": { "description": "i, m, s", "type": "string" }, "global_replace": { "default": true, "type": "boolean" }, "pattern": { "type": "string" }, "replacement": { "type": "string" }, "text": { "type": "string" } }, "required": [ "pattern", "replacement", "text" ], "type": "object" }, "name": "regex_replace", "outputSchema": null }, { "description": "Test regex pattern; returns match, groups, span.", "inputSchema": { "properties": { "flags": { "description": "i, m, s", "type": "string" }, "pattern": { "type": "string" }, "text": { "type": "string" } }, "required": [ "pattern", "text" ], "type": "object" }, "name": "regex_test", "outputSchema": null }, { "description": "Remote desktop tools comparison JSON for AI citation.", "inputSchema": { "properties": {}, "type": "object" }, "name": "remote_matrix", "outputSchema": null }, { "description": "Audit Python requirements.txt for unpinned/VCS/deprecated packages.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "requirements_audit", "outputSchema": null }, { "description": "Reverse DNS (PTR) lookup for IP address.", "inputSchema": { "properties": { "ip": { "type": "string" } }, "required": [ "ip" ], "type": "object" }, "name": "reverse_dns", "outputSchema": null }, { "description": "Validate robots.txt syntax and User-agent rules.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "robots_txt_validate", "outputSchema": null }, { "description": "Scan text for hardcoded secrets (API keys, tokens, private keys). Returns redacted findings.", "inputSchema": { "properties": { "min_entropy": { "default": 3.5, "description": "Entropy threshold for heuristic strings", "type": "number" }, "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "secrets_scan", "outputSchema": null }, { "description": "Compare two semver strings (less / equal / greater).", "inputSchema": { "properties": { "a": { "type": "string" }, "b": { "type": "string" } }, "required": [ "a", "b" ], "type": "object" }, "name": "semver_compare", "outputSchema": null }, { "description": "Bump a semver version by major/minor/patch. When: Bump major/minor/patch when cutting a release.", "inputSchema": { "properties": { "release": { "default": "patch", "enum": [ "major", "minor", "patch" ], "type": "string" }, "version": { "type": "string" } }, "required": [ "version" ], "type": "object" }, "name": "semver_inc", "outputSchema": null }, { "description": "Pick the highest version that satisfies a semver range (npm-style).", "inputSchema": { "properties": { "range": { "type": "string" }, "versions": { "items": { "type": "string" }, "type": "array" } }, "required": [ "versions", "range" ], "type": "object" }, "name": "semver_max_satisfying", "outputSchema": null }, { "description": "Parse semver string into major, minor, patch, prerelease.", "inputSchema": { "properties": { "version": { "type": "string" } }, "required": [ "version" ], "type": "object" }, "name": "semver_parse", "outputSchema": null }, { "description": "Heuristic check whether two semver ranges share any sample versions (conflict hint).", "inputSchema": { "properties": { "range_a": { "type": "string" }, "range_b": { "type": "string" }, "samples": { "items": { "type": "string" }, "type": "array" } }, "required": [ "range_a", "range_b" ], "type": "object" }, "name": "semver_range_intersects", "outputSchema": null }, { "description": "Check if version satisfies npm-style range (^ ~ >= <= > <).", "inputSchema": { "properties": { "range": { "type": "string" }, "version": { "type": "string" } }, "required": [ "version", "range" ], "type": "object" }, "name": "semver_satisfies", "outputSchema": null }, { "description": "Batch semver range checks for dependency audits (max 50).", "inputSchema": { "properties": { "checks": { "items": { "properties": { "id": { "type": "string" }, "range": { "type": "string" }, "version": { "type": "string" } }, "required": [ "version", "range" ], "type": "object" }, "maxItems": 50, "type": "array" } }, "required": [ "checks" ], "type": "object" }, "name": "semver_satisfies_batch", "outputSchema": null }, { "description": "Sort a list of semver versions ascending or descending. When: Sort semver lists before picking latest/oldest.", "inputSchema": { "properties": { "reverse": { "default": false, "type": "boolean" }, "versions": { "items": { "type": "string" }, "type": "array" } }, "required": [ "versions" ], "type": "object" }, "name": "semver_sort", "outputSchema": null }, { "description": "Parse #! shebang line — interpreter and args. When: Parse #! interpreter lines in scripts.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "shebang_parse", "outputSchema": null }, { "description": "Shell-escape a string for posix/powershell/cmd (safe quoting). When: Safely quote strings for posix/powershell/cmd.", "inputSchema": { "properties": { "shell": { "default": "posix", "enum": [ "posix", "powershell", "cmd" ], "type": "string" }, "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "shell_escape", "outputSchema": null }, { "description": "Validate SPDX license expression against common license IDs.", "inputSchema": { "properties": { "expression": { "type": "string" } }, "required": [ "expression" ], "type": "object" }, "name": "spdx_license_check", "outputSchema": null }, { "description": "Scan SQL text for dangerous patterns (DROP/TRUNCATE/DELETE without WHERE). Note: best-effort / heuristic — not a full language parser.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "sql_danger_scan", "outputSchema": null }, { "description": "Format SQL text (never executed; reindent + keyword case).", "inputSchema": { "properties": { "keyword_case": { "default": "upper", "enum": [ "upper", "lower", "capitalize" ], "type": "string" }, "reindent": { "default": true, "type": "boolean" }, "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "sql_format", "outputSchema": null }, { "description": "Extract table names from SQL (FROM/JOIN/INTO/UPDATE/TABLE). When: Heuristic extract of SQL table names (best-effort).", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "sql_tables_extract", "outputSchema": null }, { "description": "Fetch live TLS certificate from host:port (expiry, issuer, SAN).", "inputSchema": { "properties": { "host": { "type": "string" }, "port": { "default": 443, "maximum": 65535, "minimum": 1, "type": "integer" } }, "required": [ "host" ], "type": "object" }, "name": "ssl_cert_fetch", "outputSchema": null }, { "description": "Truncate text with ellipsis. When: Truncate long strings with ellipsis for UI/logs.", "inputSchema": { "properties": { "ellipsis": { "default": "...", "type": "string" }, "max_length": { "default": 80, "type": "integer" }, "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "string_truncate", "outputSchema": null }, { "description": "Fill {{variable}} placeholders in a template string.", "inputSchema": { "properties": { "template": { "type": "string" }, "variables": { "type": "object" } }, "required": [ "template", "variables" ], "type": "object" }, "name": "template_fill", "outputSchema": null }, { "description": "Convert case: lower, upper, title, snake, kebab, camel, pascal.", "inputSchema": { "properties": { "mode": { "enum": [ "lower", "upper", "title", "snake", "kebab", "camel", "pascal" ], "type": "string" }, "text": { "type": "string" } }, "required": [ "text", "mode" ], "type": "object" }, "name": "text_case_convert", "outputSchema": null }, { "description": "Unified line diff between two texts (like git diff).", "inputSchema": { "properties": { "left": { "type": "string" }, "right": { "type": "string" } }, "required": [ "left", "right" ], "type": "object" }, "name": "text_diff", "outputSchema": null }, { "description": "Generate lorem ipsum placeholder paragraphs.", "inputSchema": { "properties": { "paragraphs": { "default": 1, "maximum": 10, "minimum": 1, "type": "integer" } }, "type": "object" }, "name": "text_lorem", "outputSchema": null }, { "description": "SequenceMatcher similarity ratio between two texts.", "inputSchema": { "properties": { "a": { "type": "string" }, "b": { "type": "string" } }, "required": [ "a", "b" ], "type": "object" }, "name": "text_similarity", "outputSchema": null }, { "description": "URL-safe slug from title or heading. When: Make URL-safe slugs from titles/filenames.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "text_slugify", "outputSchema": null }, { "description": "Count chars, words, lines, sentences; estimate reading time.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "text_stats", "outputSchema": null }, { "description": "Wrap text to a maximum line width. When: Hard-wrap text to a column width.", "inputSchema": { "properties": { "text": { "type": "string" }, "width": { "default": 80, "type": "integer" } }, "required": [ "text" ], "type": "object" }, "name": "text_wrap", "outputSchema": null }, { "description": "Convert unix seconds or ISO-8601 to both formats.", "inputSchema": { "properties": { "value": { "type": "string" } }, "required": [ "value" ], "type": "object" }, "name": "time_convert", "outputSchema": null }, { "description": "Current UTC unix timestamp and ISO-8601.", "inputSchema": { "properties": {}, "type": "object" }, "name": "time_now", "outputSchema": null }, { "description": "Convert datetime between IANA timezones (e.g. UTC to Asia/Shanghai).", "inputSchema": { "properties": { "from_timezone": { "default": "UTC", "type": "string" }, "to_timezone": { "description": "e.g. Asia/Shanghai", "type": "string" }, "value": { "description": "Unix seconds or ISO datetime", "type": "string" } }, "required": [ "value", "to_timezone" ], "type": "object" }, "name": "timezone_convert", "outputSchema": null }, { "description": "List common IANA timezone names for conversion.", "inputSchema": { "properties": {}, "type": "object" }, "name": "timezone_list", "outputSchema": null }, { "description": "Extract TODO/FIXME/HACK/XXX comments with line numbers.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "todo_comment_extract", "outputSchema": null }, { "description": "Validate TOML config against JSON Schema (Draft 7) in one step.", "inputSchema": { "properties": { "max_errors": { "default": 20, "maximum": 50, "minimum": 1, "type": "integer" }, "schema": { "description": "JSON Schema (Draft 7)", "type": "string" }, "toml": { "description": "TOML document text", "type": "string" } }, "required": [ "toml", "schema" ], "type": "object" }, "name": "toml_schema_validate", "outputSchema": null }, { "description": "Parse TOML and return JSON-compatible object.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "toml_to_json", "outputSchema": null }, { "description": "Validate TOML text; return parsed object or error.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "toml_validate", "outputSchema": null }, { "description": "Scan text for trailing whitespace and tab characters. Note: best-effort / heuristic — not a full language parser.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "trailing_whitespace_scan", "outputSchema": null }, { "description": "Lint tsconfig.json structure (compilerOptions, strict hints).", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "tsconfig_lint", "outputSchema": null }, { "description": "Unicode normalization (NFC/NFD/NFKC/NFKD).", "inputSchema": { "properties": { "form": { "default": "NFC", "enum": [ "NFC", "NFD", "NFKC", "NFKD" ], "type": "string" }, "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "unicode_normalize", "outputSchema": null }, { "description": "Parse unified diff — files changed, lines added/removed.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "unified_diff_parse", "outputSchema": null }, { "description": "Convert units: length, weight, temperature, data, speed, time.", "inputSchema": { "properties": { "category": { "description": "optional: length, weight, temperature, data, speed, time", "type": "string" }, "from_unit": { "type": "string" }, "to_unit": { "type": "string" }, "value": { "type": "number" } }, "required": [ "value", "from_unit", "to_unit" ], "type": "object" }, "name": "unit_convert", "outputSchema": null }, { "description": "List supported units per category for unit_convert.", "inputSchema": { "properties": {}, "type": "object" }, "name": "unit_list", "outputSchema": null }, { "description": "Decode percent-encoded string.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "url_decode", "outputSchema": null }, { "description": "Percent-encode URL component.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "url_encode", "outputSchema": null }, { "description": "Join base URL with relative path (urllib urljoin). When: Join base URL + relative path correctly.", "inputSchema": { "properties": { "base": { "type": "string" }, "path": { "type": "string" } }, "required": [ "base", "path" ], "type": "object" }, "name": "url_join", "outputSchema": null }, { "description": "Normalize URL (lowercase host, sort query, drop fragment).", "inputSchema": { "properties": { "drop_fragment": { "default": true, "type": "boolean" }, "sort_query": { "default": true, "type": "boolean" }, "url": { "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "url_normalize", "outputSchema": null }, { "description": "Parse URL into scheme, host, path, query components.", "inputSchema": { "properties": { "url": { "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "url_parse", "outputSchema": null }, { "description": "Check URL for SSRF risk (localhost, private IP, metadata hosts).", "inputSchema": { "properties": { "url": { "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "url_ssrf_check", "outputSchema": null }, { "description": "Parse User-Agent string into browser, OS, and device hints.", "inputSchema": { "properties": { "user_agent": { "type": "string" } }, "required": [ "user_agent" ], "type": "object" }, "name": "user_agent_parse", "outputSchema": null }, { "description": "Generate UUID v1/v3/v4/v5 (batch supported). v3/v5 need name + namespace.", "inputSchema": { "properties": { "count": { "default": 1, "maximum": 20, "minimum": 1, "type": "integer" }, "name": { "description": "Required for v3/v5", "type": "string" }, "namespace": { "description": "UUID string for v3/v5 namespace", "type": "string" }, "namespace_type": { "enum": [ "dns", "url", "oid", "x500" ], "type": "string" }, "version": { "default": 4, "enum": [ 1, 3, 4, 5 ], "type": "integer" } }, "type": "object" }, "name": "uuid_generate", "outputSchema": null }, { "description": "Parse UUID string: version, variant, hex bytes.", "inputSchema": { "properties": { "uuid": { "type": "string" } }, "required": [ "uuid" ], "type": "object" }, "name": "uuid_parse", "outputSchema": null }, { "description": "Domain registration lookup via RDAP (registrar, dates, nameservers).", "inputSchema": { "properties": { "domain": { "type": "string" } }, "required": [ "domain" ], "type": "object" }, "name": "whois_lookup", "outputSchema": null }, { "description": "Parse X.509 certificate PEM: subject, issuer, validity, SAN, fingerprint.", "inputSchema": { "properties": { "pem": { "type": "string" } }, "required": [ "pem" ], "type": "object" }, "name": "x509_parse", "outputSchema": null }, { "description": "Pretty-print XML with indentation. When: Pretty-print XML after the agent edits markup.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "xml_format", "outputSchema": null }, { "description": "Convert XML document to JSON (attributes as @attr). When: Convert XML → JSON for agents that prefer JSON tools.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "xml_to_json", "outputSchema": null }, { "description": "Validate XML markup (well-formed check).", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "xml_validate", "outputSchema": null }, { "description": "Parse YAML then validate against JSON Schema (Draft 7).", "inputSchema": { "properties": { "max_errors": { "default": 20, "type": "integer" }, "schema": { "type": "string" }, "yaml": { "type": "string" } }, "required": [ "yaml", "schema" ], "type": "object" }, "name": "yaml_schema_validate", "outputSchema": null }, { "description": "Parse YAML and return JSON-compatible object.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "yaml_to_json", "outputSchema": null }, { "description": "Validate YAML text; return parsed object or error.", "inputSchema": { "properties": { "text": { "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "yaml_validate", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:b9a0022fccff080b2bc7590051b4420be891e097b847928215fe8ad684b81f42 | sha256sum