accueil / serveurs / Dev & Code / art.maddegen.agent/synapse-util
art.maddegen.agent/synapse-util
serveur MCP (Model Context Protocol) · mad-synapse-util 2.2.1
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que art.maddegen.agent/synapse-util est sûr ?
Au dernier audit MCP Hub, le serveur MCP « art.maddegen.agent/synapse-util » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 10 outils
- cron_explain≈ 371 tokens
Explain a cron expression in plain English and list its next N run times in any time zone — catch a schedule mistake before it fires at 3 am. Supports 5-field and 6-field (seconds) cron, ranges, steps, L/W/#, and nicknames (@daily, @hourly…). Price: free. Errors: returns isError with a message for invalid input or an upstream failure (not charged).
Paramètres, retour & exemple (3)
Paramètrestz· string · optionnel
IANA time zone for the next-run times. Default "UTC".count· integer · optionnel
How many upcoming run times to list. Range 1-50. Default 5.expression· string · requis
Cron expression, 5 fields (or 6 with seconds), e.g. "*/15 9-17 * * 1-5".
Exemple d'appel{"name": "cron_explain", "arguments": {"expression": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"tz": "texte", "valid": true, "meaning": "texte", "next_runs": [], "expression": "texte"}} - hash_encode≈ 492 tokens
Hash data (SHA-256/512, SHA3, Keccak-256, BLAKE2, MD5, SHA-1, RIPEMD-160, HMAC) and convert between utf8, hex, base64, base64url and base58 — exact, in one call. Useful for signatures, content addressing, EVM selectors (keccak of a function signature), and decoding blobs agents are handed. Input can itself be hex/base64/base58. Price: free. Errors: returns isError with a message for invalid input or an upstream failure (not charged).
Paramètres, retour & exemple (4)
Paramètresinput· string · requis
Data to hash or re-encode.hashes· array · optionnel
sha256, sha512, sha3-256, sha3-512, keccak256, blake2b512, blake2s256, md5, sha1, ripemd160. 0-12 items. Default ["sha256","keccak256"].hmac_key· string · optionnel
if set, HMAC instead of plain hash (utf8 key)input_encoding· string · optionnel · utf8 | hex | base64 | base58
How the input string is encoded. One of "utf8", "hex", "base64", "base58". Default "utf8".
Exemple d'appel{"name": "hash_encode", "arguments": {"input": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"bytes": 1, "hashes": {}, "encodings": {}}} - json_schema_validate≈ 356 tokens
Validate JSON data against a JSON Schema (draft-07/2019-09/2020-12, formats like email/uri/date-time) and get every error with its exact path — check tool I/O before acting on it. Ajv, strict about types, all errors reported. Pass data and schema as JSON values (or JSON strings). Price: free. Errors: returns isError with a message for invalid input or an upstream failure (not charged).
Paramètres, retour & exemple (3)
Paramètresdata· ? · requis
any JSON value (or a JSON string with parse_strings=true)schema· object · requis
The JSON Schema to validate against.parse_strings· boolean · optionnel
true = if data is a string, parse it as JSON first. Default false.
Exemple d'appel{"name": "json_schema_validate", "arguments": {"data": "texte", "schema": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"valid": true, "errors": [], "error_count": 1}} - jwt_decode≈ 392 tokens
Decode a JSON Web Token's header and claims, show issued/expiry times in plain dates and whether it has expired — optionally verify an HS256/384/512 signature with a secret. Decoding does not need the key. Never paste production secrets into third-party tools you do not trust; verification here is local and nothing is stored or logged. Price: free. Errors: returns isError with a message for invalid input or an upstream failure (not charged).
Paramètres, retour & exemple (2)
Paramètrestoken· string · requis
The JWT (three base64url parts). The signature is not verified.secret· string · optionnel
optional HMAC secret to verify HS* signatures
Exemple d'appel{"name": "jwt_decode", "arguments": {"token": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"header": {}, "expired": true, "payload": {}, "issued_at": "texte", "signature": "texte", "expires_at": "texte", "not_before": "texte", "seconds_left": 1, "alg_none_warning": "texte"}} - markdown_convert≈ 248 tokens
Convert Markdown to clean HTML (GitHub-flavoured: tables, task lists, fenced code) or HTML back to Markdown. marked for md→html, Turndown for html→md. Scripts/styles are dropped on html→md. Price: free. Errors: returns isError with a message for invalid input or an upstream failure (not charged).
Paramètres, retour & exemple (2)
Paramètresto· string · optionnel · html | markdown
Target format. One of "html", "markdown". Default "html".input· string · requis
Markdown or HTML to convert.
Exemple d'appel{"name": "markdown_convert", "arguments": {"input": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"to": "texte", "output": "texte"}} - qr_code≈ 539 tokens
Make a QR code for any text, URL, Solana Pay / wallet address or Wi-Fi login — as a PNG (base64 data URL) or SVG, with size, margin, colours and error correction. Rendered on our server. For Wi-Fi pass wifi_ssid + wifi_password; for Solana Pay pass a solana: URI as text. Price: free. Errors: returns isError with a message for invalid input or an upstream failure (not charged).
Paramètres, retour & exemple (9)
Paramètresdark· string · optionnel
Foreground colour as #rrggbb. Default "#000000".size· integer · optionnel
Image width/height in pixels. Range 64-2048. Default 512.text· string · optionnel
Text or URL to encode (ignored when wifi_ssid is set).light· string · optionnel
Background colour as #rrggbb. Default "#ffffff".format· string · optionnel · png | svg
PNG (base64 data URL) or SVG markup. One of "png", "svg". Default "png".margin· integer · optionnel
Quiet-zone width in modules. Range 0-16. Default 2.wifi_ssid· string · optionnel
Wi-Fi network name; makes a join-network QR instead of text.wifi_password· string · optionnel
Wi-Fi password (with wifi_ssid; omit for open networks).error_correction· string · optionnel · L | M | Q | H
Error-correction level: L 7%, M 15%, Q 25%, H 30%. One of "L", "M", "Q", "H". Default "M".
Exemple d'appel{"name": "qr_code", "arguments": {"dark": "texte", "size": 1, "text": "texte", "light": "texte", "format": "png", "margin": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"svg": "texte", "format": "texte", "encoded": "texte"}} - random_gen≈ 471 tokens
Cryptographically secure randomness: UUID v4/v7, passwords, API-key-style tokens, integers in a range, dice, coin flips, or a fair shuffle / pick from a list. Node's CSPRNG. Output is generated fresh per call and never stored or logged. Price: free. Errors: returns isError with a message for invalid input or an upstream failure (not charged).
Paramètres, retour & exemple (7)
Paramètresmax· integer · optionnel
Highest integer (kind=int). Default 100.min· integer · optionnel
Lowest integer (kind=int or dice sides). Default 1.kind· string · optionnel · uuid4 | uuid7 | password | token | int | shuffle | pick | coin
What to generate. One of "uuid4", "uuid7", "password", "token", "int", "shuffle", "pick", "coin", "dice". Default "uuid4".count· integer · optionnel
How many values to generate. Range 1-100. Default 1.items· array · optionnel
List to shuffle or pick from (kind=shuffle or pick). 0-1000 items.length· integer · optionnel
Length for passwords and tokens. Range 4-256. Default 20.symbols· boolean · optionnel
Include symbols in passwords. Default true.
Exemple d'appel{"name": "random_gen", "arguments": {"max": 1, "min": 1, "kind": "uuid4", "count": 1, "items": [], "length": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"kind": "texte", "result": []}} - text_diff≈ 388 tokens
Diff two texts: unified diff (patch format), a line/word-level change list, and similarity % — compare versions of a doc, config or code. jsdiff. mode=lines gives a unified patch; mode=words gives word-level changes for prose. Price: free. Errors: returns isError with a message for invalid input or an upstream failure (not charged).
Paramètres, retour & exemple (4)
Paramètresa· string · requis
Original text.b· string · requis
Changed text.mode· string · optionnel · lines | words
Diff granularity. One of "lines", "words". Default "lines".context· integer · optionnel
Unchanged lines of context around each change in the patch. Range 0-20. Default 3.
Exemple d'appel{"name": "text_diff", "arguments": {"a": "texte", "b": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"changes": [], "unified": "texte", "identical": true, "chars_added": 1, "chars_removed": 1, "similarity_pct": 1}} - text_stats≈ 504 tokens
Count characters, words, sentences, lines and paragraphs, estimate LLM tokens, reading time and readability (Flesch), and pull out every URL, email, @handle, #tag, number and crypto address. Token count is an estimate (~4 characters per token for English; code and non-Latin scripts differ). Extraction uses strict patterns; EVM addresses are checksum-validated. Price: free. Errors: returns isError with a message for invalid input or an upstream failure (not charged).
Paramètres, retour & exemple (2)
Paramètrestext· string · requis
Text (or a URL when extract=true) to analyse.extract· boolean · optionnel
true = if text is a URL, fetch the page and analyse its readable text. Default true.
Exemple d'appel{"name": "text_stats", "arguments": {"text": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"lines": 1, "words": 1, "extracted": {}, "sentences": 1, "characters": 1, "paragraphs": 1, "readability": "texte", "reading_minutes": 1, "estimated_tokens": 1, "flesch_reading_ease": 1, "characters_no_spaces": 1}} - unit_convert≈ 310 tokens
Convert between units of length, mass, volume, temperature, speed, area, time, data size, energy, power, pressure, frequency and more — or list every unit a value converts to. Exact conversion tables (convert-units). Use abbreviations: m, km, mi, ft, kg, lb, oz, l, gal, C, F, K, km/h, mph, knot, B, KB, MB, GB (binary, 1 GB = 1024 MB), J, kWh, W, Pa, bar, psi, Hz… Price: free. Errors: returns isError with a message for invalid input or an upstream failure (not charged).
Paramètres, retour & exemple (3)
Paramètresto· string · optionnel
omit to get every compatible unitfrom· string · requis
Source unit, e.g. "mi", "kg", "degF", "GB".value· number · requis
Number to convert.
Exemple d'appel{"name": "unit_convert", "arguments": {"from": "texte", "value": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"to": "texte", "from": "texte", "value": 1, "result": 1}}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».