{"protocolVersion":"0.3.0","name":"Dev Tools","description":"A suite of free, privacy-friendly developer utilities — encoders, formatters, converters, and lookups — exposed as callable agent tools.","version":"0.1.0","url":"https://www.all-tools.app/api/mcp","preferredTransport":"mcp-streamable-http","documentationUrl":"https://www.all-tools.app/en","provider":{"organization":"Dev Tools","url":"https://www.all-tools.app"},"capabilities":{"streaming":false,"pushNotifications":false,"stateTransitionHistory":false},"defaultInputModes":["application/json","text/plain"],"defaultOutputModes":["application/json","text/plain"],"interfaces":[{"transport":"mcp-streamable-http","url":"https://www.all-tools.app/api/mcp","protocolVersion":"2025-06-18","description":"Model Context Protocol server exposing every tool."},{"transport":"rest","url":"https://www.all-tools.app/api","description":"Plain REST — POST JSON to /api/<tool-slug>. See the API catalog."}],"additionalDiscovery":{"mcpServerCard":"https://www.all-tools.app/.well-known/mcp/server-card.json","apiCatalog":"https://www.all-tools.app/.well-known/api-catalog"},"skills":[{"id":"base64_encode","name":"Base64 Encoder","description":"Encode UTF-8 text to a Base64 string.","tags":["encoding","base64"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"text":{"type":"string","description":"The text to Base64-encode."}},"required":["text"],"additionalProperties":false},"examples":["{\"text\":\"hello world\"}"],"endpoint":"https://www.all-tools.app/api/base64-encoder","documentationUrl":"https://www.all-tools.app/en/base64-encoder"},{"id":"base64_decode","name":"Base64 Decoder","description":"Decode a Base64 string back to UTF-8 text.","tags":["encoding","base64"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"text":{"type":"string","description":"The Base64 string to decode."}},"required":["text"],"additionalProperties":false},"examples":["{\"text\":\"aGVsbG8gd29ybGQ=\"}"],"endpoint":"https://www.all-tools.app/api/base64-decoder","documentationUrl":"https://www.all-tools.app/en/base64-decoder"},{"id":"url_encode","name":"URL Encoder","description":"Percent-encode text for safe use in a URL.","tags":["encoding","url"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"text":{"type":"string","description":"The text to URL-encode."}},"required":["text"],"additionalProperties":false},"examples":["{\"text\":\"a b&c=d\"}"],"endpoint":"https://www.all-tools.app/api/url-encoder","documentationUrl":"https://www.all-tools.app/en/url-encoder"},{"id":"url_decode","name":"URL Decoder","description":"Decode a percent-encoded URL component back to text.","tags":["encoding","url"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"text":{"type":"string","description":"The URL-encoded text to decode."}},"required":["text"],"additionalProperties":false},"examples":["{\"text\":\"a%20b%26c%3Dd\"}"],"endpoint":"https://www.all-tools.app/api/url-decoder","documentationUrl":"https://www.all-tools.app/en/url-decoder"},{"id":"utf8_encode","name":"UTF-8 Encoder","description":"Encode text into its UTF-8 byte representation as hex, decimal, or binary.","tags":["encoding","utf8","bytes"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"text":{"type":"string","description":"The text to encode."},"format":{"type":"string","enum":["hex","decimal","binary"],"description":"Output byte format (default: hex)."}},"required":["text"],"additionalProperties":false},"examples":["{\"text\":\"héllo\",\"format\":\"hex\"}"],"endpoint":"https://www.all-tools.app/api/utf8-encoder","documentationUrl":"https://www.all-tools.app/en/utf8-encoder"},{"id":"utf8_decode","name":"UTF-8 Decoder","description":"Decode UTF-8 bytes (hex, decimal, or binary) back into text.","tags":["encoding","utf8","bytes"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"text":{"type":"string","description":"The encoded bytes, whitespace-separated where applicable."},"format":{"type":"string","enum":["hex","decimal","binary"],"description":"Input byte format (default: hex)."}},"required":["text"],"additionalProperties":false},"examples":["{\"text\":\"68 c3 a9 6c 6c 6f\",\"format\":\"hex\"}"],"endpoint":"https://www.all-tools.app/api/utf8-decoder","documentationUrl":"https://www.all-tools.app/en/utf8-decoder"},{"id":"json_format","name":"JSON Formatter","description":"Repair and pretty-print JSON with a chosen indent size (2, 4, or 8).","tags":["formatting","json"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"text":{"type":"string","description":"The JSON text to format."},"indentSize":{"type":"number","enum":[2,4,8],"description":"Indent width in spaces (default: 2)."}},"required":["text"],"additionalProperties":false},"examples":["{\"text\":\"{\\\"b\\\":2,\\\"a\\\":1}\",\"indentSize\":2}"],"endpoint":"https://www.all-tools.app/api/json-formatter","documentationUrl":"https://www.all-tools.app/en/json-formatter"},{"id":"csv_to_json","name":"CSV to JSON","description":"Convert CSV text into a JSON array of row objects.","tags":["conversion","csv","json"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"csv":{"type":"string","description":"The CSV text to convert."},"delimiter":{"type":"string","description":"Field delimiter (default: comma)."}},"required":["csv"],"additionalProperties":false},"examples":["{\"csv\":\"a,b\\n1,2\",\"delimiter\":\",\"}"],"endpoint":"https://www.all-tools.app/api/csv-to-json","documentationUrl":"https://www.all-tools.app/en/csv-to-json"},{"id":"css_format","name":"CSS Formatter","description":"Beautify or minify CSS.","tags":["formatting","css"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"text":{"type":"string","description":"The CSS to process."},"action":{"type":"string","enum":["beautify","minify"],"description":"Whether to beautify or minify (default: minify)."},"indentSize":{"type":"number","description":"Indent width when beautifying (default: 2)."}},"required":["text"],"additionalProperties":false},"examples":["{\"text\":\"a{color:red}\",\"action\":\"beautify\"}"],"endpoint":"https://www.all-tools.app/api/css-formatter","documentationUrl":"https://www.all-tools.app/en/css-formatter"},{"id":"html_format","name":"HTML Formatter","description":"Beautify (format) or minify HTML.","tags":["formatting","html"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"html":{"type":"string","description":"The HTML to process."},"action":{"type":"string","enum":["format","minify"],"description":"Whether to format or minify."}},"required":["html","action"],"additionalProperties":false},"examples":["{\"html\":\"<div><p>hi</p></div>\",\"action\":\"format\"}"],"endpoint":"https://www.all-tools.app/api/html-formatter","documentationUrl":"https://www.all-tools.app/en/html-formatter"},{"id":"diff_text","name":"Diff Viewer","description":"Compute a line-by-line diff between two text blocks.","tags":["comparison","diff"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"original":{"type":"string","description":"The original text."},"modified":{"type":"string","description":"The modified text."},"ignoreWhitespace":{"type":"boolean","description":"Ignore whitespace-only changes (default: false)."}},"required":["original","modified"],"additionalProperties":false},"examples":["{\"original\":\"a\\nb\",\"modified\":\"a\\nc\"}"],"endpoint":"https://www.all-tools.app/api/diff-viewer","documentationUrl":"https://www.all-tools.app/en/diff-viewer"},{"id":"jwt_decode","name":"JWT Decoder","description":"Decode a JWT into its header and payload (no signature check).","tags":["decoding","jwt","auth"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"token":{"type":"string","description":"The JWT to decode."}},"required":["token"],"additionalProperties":false},"examples":["{\"token\":\"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjMifQ.sig\"}"],"endpoint":"https://www.all-tools.app/api/jwt-decoder","documentationUrl":"https://www.all-tools.app/en/jwt-decoder"},{"id":"hash_generate","name":"Hash Generator","description":"Compute MD5, SHA-1, SHA-2, and SHA-3 digests of the given text.","tags":["hashing","crypto"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"text":{"type":"string","description":"The text to hash."}},"required":["text"],"additionalProperties":false},"examples":["{\"text\":\"hello\"}"],"endpoint":"https://www.all-tools.app/api/hash-generator","documentationUrl":"https://www.all-tools.app/en/hash-generator"},{"id":"shasum","name":"Shasum","description":"Compute SHA checksums of the given text.","tags":["hashing","crypto","checksum"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"text":{"type":"string","description":"The text to checksum."}},"required":["text"],"additionalProperties":false},"examples":["{\"text\":\"hello\"}"],"endpoint":"https://www.all-tools.app/api/shasum","documentationUrl":"https://www.all-tools.app/en/shasum"},{"id":"color_convert","name":"Color Converter","description":"Convert a HEX color into RGB, HSL, and HSV representations.","tags":["conversion","color"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"hex":{"type":"string","description":"HEX color, e.g. \"#3b82f6\"."},"compareWith":{"type":"string","description":"Optional second HEX color to compare against."}},"required":["hex"],"additionalProperties":false},"examples":["{\"hex\":\"#3b82f6\"}"],"endpoint":"https://www.all-tools.app/api/color-converter","documentationUrl":"https://www.all-tools.app/en/color-converter"},{"id":"timestamp_convert","name":"Timestamp Converter","description":"Convert a Unix timestamp to an ISO date, or an ISO/parseable date to a Unix timestamp. Provide exactly one of `timestamp` or `date`.","tags":["conversion","time"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"timestamp":{"type":"number","description":"Unix timestamp in seconds or milliseconds."},"date":{"type":"string","description":"A date string to convert to a Unix timestamp."}},"additionalProperties":false},"examples":["{\"timestamp\":1700000000}"],"endpoint":"https://www.all-tools.app/api/timestamp-converter","documentationUrl":"https://www.all-tools.app/en/timestamp-converter"},{"id":"size_unit_convert","name":"Size Unit Converter","description":"Convert a length between units (px, in, cm, mm, m, km, ft, yd, mi, pt, pc, em, rem, vw, vh).","tags":["conversion","units"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"value":{"type":"number","description":"The value to convert."},"fromUnit":{"type":"string","description":"Source unit."},"toUnit":{"type":"string","description":"Target unit."}},"required":["value","fromUnit","toUnit"],"additionalProperties":false},"examples":["{\"value\":16,\"fromUnit\":\"px\",\"toUnit\":\"pt\"}"],"endpoint":"https://www.all-tools.app/api/size-unit-converter","documentationUrl":"https://www.all-tools.app/en/size-unit-converter"},{"id":"uuid_generate","name":"UUID Generator","description":"Generate one or more UUIDs (v4 or time-ordered v7).","tags":["generation","uuid"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"version":{"type":"string","enum":["v4","v7"],"description":"UUID version (default: v4)."},"count":{"type":"number","description":"How many UUIDs to generate (default: 1)."},"uppercase":{"type":"boolean","description":"Return uppercase UUIDs (default: false)."},"withHyphens":{"type":"boolean","description":"Include hyphens (default: true)."}},"additionalProperties":false},"examples":["{\"version\":\"v4\",\"count\":1}"],"endpoint":"https://www.all-tools.app/api/uuid-generator","documentationUrl":"https://www.all-tools.app/en/uuid-generator"},{"id":"cron_describe","name":"Cron Builder","description":"Validate a cron expression and describe its next run times in plain language.","tags":["scheduling","cron"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"cronExpression":{"type":"string","description":"A 5-field cron expression, e.g. \"0 9 * * 1-5\"."},"action":{"type":"string","enum":["validate","getNextRuns"],"description":"Whether to only validate or also compute next runs."}},"required":["cronExpression"],"additionalProperties":false},"examples":["{\"cronExpression\":\"0 9 * * 1-5\",\"action\":\"getNextRuns\"}"],"endpoint":"https://www.all-tools.app/api/cron-builder","documentationUrl":"https://www.all-tools.app/en/cron-builder"},{"id":"country_code_lookup","name":"Country Code Lookup","description":"Look up an ISO 3166-1 country by its alpha-2/alpha-3 code or by name. Provide exactly one of `code` or `name`.","tags":["lookup","reference","country"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"code":{"type":"string","description":"Alpha-2 or alpha-3 country code."},"name":{"type":"string","description":"Full or partial country name."}},"additionalProperties":false},"examples":["{\"code\":\"US\"}"],"endpoint":"https://www.all-tools.app/api/country-code","documentationUrl":"https://www.all-tools.app/en/country-code"},{"id":"ip_lookup","name":"IP Lookup","description":"Geolocate an IP address (country, region, city, ISP, ...).","tags":["lookup","network","geolocation"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"ip":{"type":"string","description":"The IPv4/IPv6 address to look up."}},"required":["ip"],"additionalProperties":false},"examples":["{\"ip\":\"8.8.8.8\"}"],"endpoint":"https://www.all-tools.app/api/ip-lookup","documentationUrl":"https://www.all-tools.app/en/ip-lookup"},{"id":"my_ip","name":"My IP","description":"Return the caller's public IP address and request metadata as seen by the server.","tags":["lookup","network"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"endpoint":"https://www.all-tools.app/api/my-ip","documentationUrl":"https://www.all-tools.app/en/my-ip"},{"id":"share_content","name":"Share Content","description":"Publish a text snippet and get a permanent shareable link. Set type to \"markdown\" or \"mermaid\" to have the share page render it as formatted HTML or a diagram. Anonymous shares are immutable and capped at 1 MB; fetch the raw text later from GET /api/share-content/<id>?format=text.","tags":["sharing","paste","snippet"],"inputModes":["application/json"],"outputModes":["application/json"],"inputSchema":{"type":"object","properties":{"content":{"type":"string","description":"The content to share (max 1 MB)."},"title":{"type":"string","description":"Optional title for the share (max 200 characters)."},"type":{"type":"string","enum":["text","markdown","mermaid"],"description":"How the share page renders the content: \"text\" (raw, default), \"markdown\" (rendered HTML), or \"mermaid\" (rendered diagram)."}},"required":["content"],"additionalProperties":false},"examples":["{\"content\":\"hello from an agent\",\"title\":\"greeting\"}"],"endpoint":"https://www.all-tools.app/api/share-content","documentationUrl":"https://www.all-tools.app/en/share-content"}]}