Cleanor
Qué hace este MCP
Offers deterministic developer utilities, data conversion and validation tools, image optimization, color tools, QR generation, and placeholder graphics.
Herramientas
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['input'], 'properties': {'mode': {'enum': ['encode', 'decode'], 'type': 'string', 'default': 'encode', 'description': 'Direction.'}, 'input': {'type': 'string', 'maxLength': 100000, 'minLength': 1, 'description': 'Text to encode, or Base64 to decode.'}, 'url_safe': {'type': 'boolean', 'default': False, 'description': 'Use URL-safe alphabet (-_ instead of +/, no padding).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['mode', 'result'], 'properties': {'mode': {'type': 'string', 'description': 'encode or decode.'}, 'result': {'type': 'string', 'description': 'The encoded or decoded text.'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['value'], 'properties': {'value': {'type': 'string', 'maxLength': 2000, 'minLength': 1, 'description': 'The number, in from_base (e.g. "ff", "1010", "255").'}, 'to_base': {'type': 'integer', 'default': 16, 'maximum': 36, 'minimum': 2, 'description': 'Base to convert to (2â\x80\x9336).'}, 'from_base': {'type': 'integer', 'default': 10, 'maximum': 36, 'minimum': 2, 'description': 'Base of the input (2â\x80\x9336).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['input', 'from_base', 'to_base', 'result', 'decimal'], 'properties': {'input': {'type': 'string'}, 'result': {'type': 'string', 'description': 'The value in to_base.'}, 'decimal': {'type': 'string', 'description': 'The value in base 10.'}, 'to_base': {'type': 'number'}, 'from_base': {'type': 'number'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['value'], 'properties': {'value': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'A color: "#3b82f6", "rgb(59,130,246)" or "hsl(217,91%,60%)".'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['hex', 'rgb', 'hsl'], 'properties': {'hex': {'type': 'string'}, 'hsl': {'type': 'string'}, 'rgb': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['color'], 'properties': {'color': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'Base color: "#3b82f6", "rgb(...)" or "hsl(...)".'}, 'harmony': {'enum': ['complementary', 'analogous', 'triadic', 'tetradic', 'monochromatic'], 'type': 'string', 'default': 'analogous', 'description': 'Color-harmony rule.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['harmony', 'base', 'colors'], 'properties': {'base': {'type': 'string', 'description': 'The base color as hex.'}, 'colors': {'type': 'array', 'items': {'type': 'object', 'required': ['hex', 'hsl'], 'properties': {'hex': {'type': 'string'}, 'hsl': {'type': 'string'}}, 'additionalProperties': False}}, 'harmony': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['input'], 'properties': {'input': {'type': 'string', 'maxLength': 100000, 'minLength': 0, 'description': 'Text to measure.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['characters', 'utf16_units', 'words', 'lines', 'bytes'], 'properties': {'bytes': {'type': 'number', 'description': 'UTF-8 bytes.'}, 'lines': {'type': 'number'}, 'words': {'type': 'number'}, 'characters': {'type': 'number', 'description': 'Unicode code points.'}, 'utf16_units': {'type': 'number'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['expression'], 'properties': {'expression': {'type': 'string', 'maxLength': 200, 'minLength': 1, 'description': 'A 5-field cron expression, e.g. "30 2 * * 1-5".'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['minute', 'hour', 'day_of_month', 'month', 'day_of_week', 'next_runs'], 'properties': {'hour': {'type': 'string'}, 'month': {'type': 'string'}, 'minute': {'type': 'string'}, 'next_runs': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Next run times in UTC ISO 8601.'}, 'day_of_week': {'type': 'string'}, 'day_of_month': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'input': {'type': 'string', 'maxLength': 64, 'description': 'Optional: a Unix timestamp (s or ms) or ISO date string. Omit for the current time.'}, 'timezone': {'type': 'string', 'default': 'UTC', 'maxLength': 64, 'description': 'IANA timezone, e.g. "America/New_York" or "UTC".'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['timezone', 'local', 'iso_utc', 'unix_s', 'unix_ms'], 'properties': {'local': {'type': 'string', 'description': 'Human-readable local time in the timezone.'}, 'unix_s': {'type': 'number'}, 'iso_utc': {'type': 'string'}, 'unix_ms': {'type': 'number'}, 'timezone': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['a', 'b'], 'properties': {'a': {'type': 'string', 'maxLength': 100000, 'minLength': 0, 'description': 'The original ("before") text.'}, 'b': {'type': 'string', 'maxLength': 100000, 'minLength': 0, 'description': 'The updated ("after") text.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['changed', 'added', 'removed', 'diff'], 'properties': {'diff': {'type': 'string', 'description': 'The line diff (+/-/space prefixed), empty if identical.'}, 'added': {'type': 'number'}, 'changed': {'type': 'boolean'}, 'removed': {'type': 'number'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['input'], 'properties': {'input': {'type': 'string', 'maxLength': 100000, 'minLength': 1, 'description': 'Text to hash (UTF-8).'}, 'algorithm': {'enum': ['sha-256', 'sha-1', 'sha-384', 'sha-512'], 'type': 'string', 'default': 'sha-256', 'description': 'Hash algorithm. Default sha-256.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['algorithm', 'hex'], 'properties': {'hex': {'type': 'string', 'description': 'The hex-encoded digest.'}, 'algorithm': {'type': 'string', 'description': 'The hash algorithm used.'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['message', 'secret'], 'properties': {'secret': {'type': 'string', 'maxLength': 4096, 'minLength': 1, 'description': 'The shared secret key (UTF-8).'}, 'message': {'type': 'string', 'maxLength': 100000, 'minLength': 0, 'description': 'The message to sign (UTF-8).'}, 'encoding': {'enum': ['hex', 'base64'], 'type': 'string', 'default': 'hex', 'description': 'Output encoding.'}, 'algorithm': {'enum': ['sha-256', 'sha-1', 'sha-384', 'sha-512'], 'type': 'string', 'default': 'sha-256', 'description': 'Hash algorithm.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['algorithm', 'encoding', 'signature'], 'properties': {'encoding': {'type': 'string'}, 'algorithm': {'type': 'string'}, 'signature': {'type': 'string', 'description': 'The HMAC in the requested encoding.'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'format': {'enum': ['webp', 'avif', 'jxl'], 'type': 'string', 'default': 'avif', 'description': 'Target format to compare against JPEG.'}, 'quality': {'enum': ['web', 'high'], 'type': 'string', 'default': 'web', 'description': 'web = typical web quality (SSIM 0.95); high = near-lossless (SSIM 0.98).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['format', 'quality', 'percent_smaller_than_jpeg', 'all_formats', 'source'], 'properties': {'format': {'type': 'string'}, 'source': {'type': 'string'}, 'quality': {'type': 'string'}, 'all_formats': {'type': 'object', 'required': ['avif', 'webp', 'jxl'], 'properties': {'jxl': {'type': 'number'}, 'avif': {'type': 'number'}, 'webp': {'type': 'number'}}, 'additionalProperties': False}, 'percent_smaller_than_jpeg': {'type': 'number'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['input'], 'properties': {'mode': {'enum': ['pretty', 'minify'], 'type': 'string', 'default': 'pretty', 'description': 'pretty = 2-space indent; minify = single line.'}, 'input': {'type': 'string', 'maxLength': 100000, 'minLength': 1, 'description': 'JSON text.'}, 'sort_keys': {'type': 'boolean', 'default': False, 'description': 'Sort object keys alphabetically (deep).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['valid', 'formatted'], 'properties': {'valid': {'type': 'boolean', 'description': 'Whether the input was valid JSON.'}, 'formatted': {'type': 'string', 'description': 'The formatted JSON text.'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['token'], 'properties': {'token': {'type': 'string', 'maxLength': 100000, 'minLength': 1, 'description': 'The JWT (three dot-separated segments).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'header': {'description': 'The decoded JWT header object.'}, 'exp_iso': {'type': 'string', 'description': 'Expiry as ISO 8601, if present.'}, 'expired': {'type': 'boolean', 'description': 'Whether the token is past its exp, if present.'}, 'payload': {'description': 'The decoded JWT payload (claims).'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['image_url'], 'properties': {'width': {'type': 'integer', 'maximum': 4096, 'minimum': 16, 'description': 'Resize to this width in px, preserving aspect ratio. Omit to keep original size.'}, 'format': {'enum': ['webp', 'avif', 'jpeg'], 'type': 'string', 'default': 'webp', 'description': 'Output format. webp = best browser support; avif = smallest; jpeg = universal.'}, 'quality': {'type': 'integer', 'default': 80, 'maximum': 100, 'minimum': 1, 'description': 'Encode quality 1-100 (80 is a good default).'}, 'image_url': {'type': 'string', 'format': 'uri', 'description': 'Public URL of the source image (PNG/JPEG/WebP/AVIF/GIF).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['format', 'original_bytes', 'optimized_bytes', 'saved_pct', 'mime_type'], 'properties': {'format': {'type': 'string', 'description': 'Output image format.'}, 'mime_type': {'type': 'string'}, 'saved_pct': {'type': 'number', 'description': 'Percent smaller than the original.'}, 'original_bytes': {'type': 'number'}, 'optimized_bytes': {'type': 'number'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'bg': {'type': 'string', 'default': '#e5e7eb', 'maxLength': 32, 'description': 'Background color (hex, rgb() or hsl()).'}, 'text': {'type': 'string', 'maxLength': 120, 'description': 'Label text. Defaults to the dimensions, e.g. "600Ã\x97400".'}, 'color': {'type': 'string', 'default': '#6b7280', 'maxLength': 32, 'description': 'Text color.'}, 'width': {'type': 'integer', 'default': 600, 'maximum': 4000, 'minimum': 1, 'description': 'Width in pixels.'}, 'height': {'type': 'integer', 'default': 400, 'maximum': 4000, 'minimum': 1, 'description': 'Height in pixels.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['svg', 'width', 'height'], 'properties': {'svg': {'type': 'string', 'description': 'The SVG markup.'}, 'width': {'type': 'number'}, 'height': {'type': 'number'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['text'], 'properties': {'ecc': {'enum': ['L', 'M', 'Q', 'H'], 'type': 'string', 'default': 'M', 'description': 'Error-correction level: L=7%, M=15%, Q=25%, H=30% recoverable.'}, 'size': {'type': 'integer', 'default': 320, 'maximum': 1024, 'minimum': 64, 'description': 'SVG pixel size.'}, 'text': {'type': 'string', 'maxLength': 2000, 'minLength': 1, 'description': 'Text or URL to encode.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['svg'], 'properties': {'svg': {'type': 'string', 'description': 'The QR code as SVG markup.'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['pattern', 'input'], 'properties': {'flags': {'type': 'string', 'default': 'g', 'maxLength': 8, 'description': 'Regex flags, e.g. "gi". Allowed: g i m s u y d.'}, 'input': {'type': 'string', 'maxLength': 20000, 'minLength': 0, 'description': 'Text to test against.'}, 'pattern': {'type': 'string', 'maxLength': 1000, 'minLength': 1, 'description': 'The regex pattern (without slashes).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['matched', 'match_count', 'truncated', 'matches'], 'properties': {'matched': {'type': 'boolean', 'description': 'Whether the pattern matched at all.'}, 'matches': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'match', 'groups'], 'properties': {'index': {'type': 'number'}, 'match': {'type': 'string'}, 'groups': {'type': 'array', 'items': {'type': ['string', 'null']}}}, 'additionalProperties': False}, 'description': 'Each match with its start index and captured groups.'}, 'truncated': {'type': 'boolean', 'description': 'True if results were capped at 100.'}, 'match_count': {'type': 'number'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['input'], 'properties': {'input': {'type': 'string', 'maxLength': 2000, 'minLength': 1, 'description': 'Text to slugify.'}, 'separator': {'enum': ['-', '_'], 'type': 'string', 'default': '-', 'description': 'Word separator.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': 'The URL-safe slug.'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['storage_gb'], 'properties': {'content': {'enum': ['photos', 'video'], 'type': 'string', 'default': 'photos', 'description': 'What to count.'}, 'storage_gb': {'type': 'number', 'maximum': 4096, 'minimum': 1, 'description': 'Advertised storage size in GB (e.g. 64, 128, 256, 512).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['storage_gb', 'usable_gb', 'content', 'breakdown'], 'properties': {'content': {'type': 'string'}, 'breakdown': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'count', 'unit'], 'properties': {'unit': {'type': 'string'}, 'count': {'type': 'number'}, 'label': {'type': 'string'}}, 'additionalProperties': False}, 'description': 'How many of each item fit.'}, 'usable_gb': {'type': 'number', 'description': 'Usable GB after OS/filesystem overhead.'}, 'storage_gb': {'type': 'number'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['value', 'from', 'to'], 'properties': {'to': {'type': 'string', 'maxLength': 8, 'minLength': 1, 'description': 'Target unit (must be the same category as "from").'}, 'from': {'type': 'string', 'maxLength': 8, 'minLength': 1, 'description': 'Source unit (e.g. "km", "lb", "mib", "c").'}, 'value': {'type': 'number', 'description': 'The numeric value to convert.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['value', 'from', 'to', 'result', 'category'], 'properties': {'to': {'type': 'string'}, 'from': {'type': 'string'}, 'value': {'type': 'number'}, 'result': {'type': 'number'}, 'category': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['url'], 'properties': {'url': {'type': 'string', 'maxLength': 4000, 'minLength': 1, 'description': 'The URL to parse (absolute, with scheme).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['scheme', 'host', 'port', 'path', 'query', 'fragment'], 'properties': {'host': {'type': 'string'}, 'path': {'type': 'string'}, 'port': {'type': 'string', 'description': 'Port, or empty if the scheme default.'}, 'query': {'type': 'array', 'items': {'type': 'object', 'required': ['key', 'value'], 'properties': {'key': {'type': 'string'}, 'value': {'type': 'string'}}, 'additionalProperties': False}}, 'scheme': {'type': 'string'}, 'fragment': {'type': 'string'}, 'username': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'count': {'type': 'integer', 'default': 1, 'maximum': 100, 'minimum': 1, 'description': 'How many to generate.'}, 'version': {'enum': ['v4', 'v7'], 'type': 'string', 'default': 'v4', 'description': 'UUID version. v7 = time-ordered.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['version', 'uuids'], 'properties': {'uuids': {'type': 'array', 'items': {'type': 'string'}, 'description': 'The generated UUIDs.'}, 'version': {'type': 'string', 'description': 'UUID version generated.'}}, 'additionalProperties': False}
Cambios recientes en herramientas
Servidores MCP similares
GripForge
Generates, rigs, animates, analyzes, and packages game characters, weapons, armor, effects, environments, and engine-ready assets.
spriteship
Generates and manages 2D game characters, assets, animations, tilesets, UI packs, maps, and engine-ready exports for multiple gam…
Blixtworks
Offers pay-per-call utilities for text, image processing and analysis, data conversion, validation, web inspection, cryptography,…
Compose Preview Catalogs
Browses, renders, compares, audits, and edits Jetpack Compose preview catalogs and associated UI designs.
arch-tools-mcp
Provides general-purpose agent APIs for browser automation, web and PDF extraction, data conversion, email operations, fact check…
kernelcad
Authors, evaluates, reviews, simulates, edits, and exports parametric CAD assemblies and geometry from editable TypeScript-based …
floot
Creates, edits, previews, databases, and publishes full-stack web and mobile applications with hosted resources and deployment wo…
Raven
Supports coding agents with design audits, design-system guidance, and a configurable visual preference profile.