accueil / serveurs / Dev & Code / io.github.fabwaseem/benchline
io.github.fabwaseem/benchline
serveur MCP (Model Context Protocol) · benchline 1.0.0
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 io.github.fabwaseem/benchline est sûr ?
Au dernier audit MCP Hub, le serveur MCP « io.github.fabwaseem/benchline » 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 82 outils
- aes_crypt≈ 279 tokens
AES-256-GCM encryption with PBKDF2-SHA256 key derivation. Encrypt returns a base64 bundle (salt, IV, ciphertext); decrypt reverses it.
Paramètres, retour & exemple (5)
Paramètresmode· string · requis · encrypt | decrypttext· string · optionnel
Plaintext to encrypt (encrypt mode)bundle· string · optionnel
Base64 bundle from a previous encryption (decrypt mode)iterations· integer · optionnelpassphrase· string · requis
Exemple d'appel{"name": "aes_crypt", "arguments": {"mode": "encrypt", "passphrase": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"mode": "encrypt", "bundle": "texte", "plaintext": "texte"}} - analyze_har≈ 938 tokens
Parse a HAR (HTTP Archive) capture and summarize it: request counts, status distribution, slowest and largest requests, top hosts, and per-request timings.
Paramètres, retour & exemple (2)
Paramètreshar· string · requis
HAR file contents as JSON texttop· integer · optionnel
How many slowest/largest requests and top hosts to include
Exemple d'appel{"name": "analyze_har", "arguments": {"har": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"largest": [], "slowest": [], "topHosts": [], "truncated": true, "totalBytes": 1, "totalTimeMs": 1, "statusGroups": {}, "totalRequests": 1}} - base64_codec≈ 328 tokens
Encode UTF-8 text as Base64, or decode Base64 and data URIs. URL-safe output uses - and _ and omits padding. Decode reports the sniffed media type and whether the bytes are UTF-8 text.
Paramètres, retour & exemple (5)
Paramètresmime· string · optionneltext· string · requis
Text to encode, or Base64 or a data URI to decode.action· string · optionnel · encode | decodedataUri· boolean · optionnelurlSafe· boolean · optionnel
Encode with the URL-safe alphabet and no padding. Data URIs stay on the standard alphabet.
Exemple d'appel{"name": "base64_codec", "arguments": {"text": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"ok": true, "mime": "texte", "error": "texte", "binary": true, "output": "texte", "filename": "texte"}} - build_csp≈ 450 tokens
Build a Content-Security-Policy from directives, or lint an existing policy. Returns the header line, a Next.js headers() snippet, and warnings for unsafe sources.
Paramètres, retour & exemple (4)
Paramètrespolicy· string · optionnel
An existing Content-Security-Policy value to lint. When set, directive fields are ignored.sources· object · optionnelblockAllMixedContent· boolean · optionnelupgradeInsecureRequests· boolean · optionnel
Exemple d'appel{"name": "build_csp", "arguments": {"policy": "texte", "sources": {}, "blockAllMixedContent": true, "upgradeInsecureRequests": true}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"checks": [], "header": "texte", "policy": "texte", "nextConfig": "texte"}} - build_json_ld≈ 474 tokens
Build schema.org JSON-LD for one type, plus a script tag and a list of missing fields. Use this when you already know the fields. It does not fetch a page.
Paramètres, retour & exemple (2)
Paramètrestype· string · requis · Article | BlogPosting | FAQPage | HowTo | Product | Organization | Person | LocalBusinessvalues· object · requis
Fields for the chosen schema.org type. Repeatable fields are arrays of objects.
Exemple d'appel{"name": "build_json_ld", "arguments": {"type": "Article", "values": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"json": "texte", "checks": [], "script": "texte"}} - build_nextjs_dockerfile≈ 432 tokens
Generate a production Dockerfile, dockerignore, compose file, and next.config snippet for a Next.js app. Defaults match a pnpm standalone image.
Paramètres, retour & exemple (13)
Paramètresbase· string · optionnel · alpine | slimnode· string · optionnel · 20 | 22 | 24port· integer · optionnelturbo· boolean · optionnelprisma· boolean · optionnelmigrate· boolean · optionnelhealthPath· string · optionnelpublicEnvs· array · optionnelstandalone· boolean · optionnelcacheMounts· boolean · optionnelhealthcheck· boolean · optionnelpackageManager· string · optionnel · npm | pnpm | yarn | buntelemetryDisabled· boolean · optionnel
Exemple d'appel{"name": "build_nextjs_dockerfile", "arguments": {"base": "alpine", "node": "20", "port": 1, "turbo": true, "prisma": true, "migrate": true}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"image": "texte", "compose": "texte", "commands": "texte", "dockerfile": "texte", "nextConfig": "texte", "dockerignore": "texte", "estimatedSize": "texte"}} - build_open_graph≈ 779 tokens
Render one of the Open Graph templates as a PNG and a Next.js opengraph-image.tsx file. Pass a template id from list_og_templates, the fields that template uses, colors, a size, and optional base64 images.
Paramètres, retour & exemple (33)
Paramètrescta· string · optionnelurl· string · optionneldate· string · optionnelhero· string · optionnel
Hero image as base64, a data URI, or a public URL.logo· string · optionnel
Logo image as base64, a data URI, or a public URL. Private addresses are refused. 10 MB cap.meta· string · optionnelrole· string · optionnelsize· string · optionnel · 1200x630 | 1600x900 | 1080x1080stat· string · optionneltime· string · optionnelafter· string · optionnel
After image as base64, a data URI, or a public URL.badge· string · optionnelbrand· string · optionnel
Brand name shown on templates that have a brand row.price· string · optionnelquote· string · optionnelsteps· string · optionnel
One step per line.title· string · optionnelauthor· string · optionnelavatar· string · optionnel
Portrait image as base64, a data URI, or a public URL.before· string · optionnel
Before image as base64, a data URI, or a public URL.colors· object · optionnelcaption· string · optionnelcommand· string · optionnelepisode· string · optionneleyebrow· string · optionnelimageUrl· string · optionnel
Public URL written into og:image. This does not fetch the file.readTime· string · optionnelsubtitle· string · optionneltemplate· string · optionnel · editorial | aurora | blueprint | terminal | split | brutalist | launch | profile
Template id from list_og_templates.versions· string · optionnel
One version per line, as v2.3 | Note.statLabel· string · optionnelafterValue· string · optionnelbeforeValue· string · optionnel
Exemple d'appel{"name": "build_open_graph", "arguments": {"cta": "texte", "url": "texte", "date": "texte", "hero": "texte", "logo": "texte", "meta": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"png": "texte", "width": 1, "height": 1, "source": "texte", "metaTags": "texte", "mimeType": "texte", "template": "texte"}} - calculate_cidr≈ 521 tokens
Return the network, broadcast, host range, and host count for an IPv4 or IPv6 CIDR. Optionally test whether an address is inside it, split it, or merge it with other CIDRs.
Paramètres, retour & exemple (4)
Paramètrescidr· string · requis
IPv4 or IPv6 CIDR, such as 192.168.1.0/24 or 2001:db8::/32. A dotted mask may follow the address.merge· array · optionnel
Extra CIDRs to aggregate with cidr.contains· string · optionnel
Address to test for membership.splitPrefix· integer · optionnel
Longer prefix to split into, at most 256 networks.
Exemple d'appel{"name": "calculate_cidr", "arguments": {"cidr": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"split": [], "merged": [], "summary": {}, "contains": true, "splitCount": "texte", "containsDetail": "texte"}} - calculate_emi≈ 458 tokens
Calculate a reducing-balance loan installment and its amortization schedule. Money is rounded half up to cents. An optional extra monthly payment reduces principal.
Paramètres, retour & exemple (4)
Paramètresmonths· integer · requis
Term in months.principal· string|number · requis
Amount borrowed, such as 100000.annualRate· string|number · requis
Annual interest rate in percent, such as 10.extraMonthly· string|number · optionnel
Extra principal paid every month.
Exemple d'appel{"name": "calculate_emi", "arguments": {"months": 1, "principal": 1, "annualRate": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"csv": "texte", "emi": "texte", "schedule": [], "payoffMonths": 1, "totalPayment": "texte", "totalInterest": "texte", "totalPrincipal": "texte"}} - calculate_percentage≈ 342 tokens
Calculate percent of a value, what percent one number is of another, percent change, the reverse, an increase or decrease, and margin versus markup.
Paramètres, retour & exemple (3)
Paramètresa· string|number · requis
First value. For of and increase, this is the percent.b· string|number · requis
Second value. For of and increase, this is the amount.mode· string · optionnel · of | is | change | reverse | increase | decrease | margin
of, is, change, reverse, increase, decrease, or margin.
Exemple d'appel{"name": "calculate_percentage", "arguments": {"a": 1, "b": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"unit": "number", "parts": [], "result": "texte", "formula": "texte"}} - calculate_programmer≈ 372 tokens
Evaluate integer expressions with C-like precedence (hex/octal/binary literals, bitwise ops, shifts) and report base conversions plus signed/unsigned interpretations.
Paramètres, retour & exemple (5)
Paramètresa· string · optionnel
First operand, e.g. '0xFF' or '255'b· string · optionnel
Second operand (not needed for 'not')op· string · optionnel · and | or | xor | not | shl | shr
Bitwise operation (alternative to expression)bits· string · optionnel · 8 | 16 | 32 | 64
Bit width for masking and signed interpretationexpression· string · optionnel
Integer expression, e.g. '0xFF & 0x0F | (1 << 4)'
Exemple d'appel{"name": "calculate_programmer", "arguments": {"a": "texte", "b": "texte", "op": "and", "bits": "8", "expression": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"hex": "texte", "bits": 1, "octal": "texte", "binary": "texte", "signed": "texte", "decimal": "texte", "unsigned": "texte"}} - check_http_headers≈ 418 tokens
Fetch a public URL, follow redirects, and grade HSTS, Content-Security-Policy, framing, nosniff, and Referrer-Policy. Private addresses are refused. The body is not stored.
Paramètres, retour & exemple (1)
Paramètresurl· string · requis
Public http or https URL. Private addresses are refused.
Exemple d'appel{"name": "check_http_headers", "arguments": {"url": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"grade": "A", "checks": [], "status": 1, "headers": [], "finalUrl": "texte", "elapsedMs": 1, "redirects": []}} - check_robots_txt≈ 424 tokens
Fetch a public robots.txt and report whether the wildcard group blocks the site and whether Sitemap lines are absolute. Use this when you have a URL, not a pasted file.
Paramètres, retour & exemple (1)
Paramètresurl· string · requis
A public page or a robots.txt URL. A page URL is resolved to /robots.txt on that origin.
Exemple d'appel{"name": "check_robots_txt", "arguments": {"url": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"text": "texte", "issues": [], "status": 1, "document": {}, "finalUrl": "texte"}} - check_ssl≈ 512 tokens
Connect to a public host on port 443 and report certificate expiry, subject alternative names, protocol, and chain. Private addresses are refused. The handshake times out after 8 seconds.
Paramètres, retour & exemple (1)
Paramètreshost· string · requis
Public hostname or https URL. Only port 443 is contacted. Private addresses are refused.
Exemple d'appel{"name": "check_ssl", "arguments": {"host": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"bits": 1, "host": "texte", "sans": [], "chain": [], "grade": "A", "checks": [], "issuer": "texte", "serial": "texte", "subject": "texte", "validTo": "texte", "protocol": "texte", "validFrom": "texte"}} - compress_image≈ 612 tokens
Re-encode an image at a quality from 1 to 100, optionally capping the longest edge. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB. Returns the image as base64.
Paramètres, retour & exemple (4)
Paramètresfile· object · requis
The image. Provide url or data.choice· string · optionnel · original | jpeg | png | webp | avifmaxEdge· ? · optionnel
Longest edge in pixels. Omit it to keep the size.quality· number · optionnel
Exemple d'appel{"name": "compress_image", "arguments": {"file": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": "texte", "mime": "texte", "after": 1, "bytes": 1, "label": "texte", "width": 1, "before": 1, "format": "texte", "height": 1, "quality": 1, "filename": "texte", "extension": "texte"}} - compress_pdf≈ 542 tokens
Recompress embedded images in a PDF. Presets are light, medium, and strong. Send base64 or a public URL. Private addresses are refused. An optional target size tries harder. Returns the PDF and the sizes before and after.
Paramètres, retour & exemple (6)
Paramètresurl· string · optionnel
Public URL of a PDF. Private and local addresses are refused. Provide data or url.data· string · optionnel
PDF bytes as base64 or a data URI. Decoded size is capped at 10 MB. Provide data or url.preset· string · optionnel · light | medium | strongfilename· string · optionnelmimeType· string · optionneltargetBytes· ? · optionnel
Optional size ceiling in bytes, such as 102400.
Exemple d'appel{"name": "compress_pdf", "arguments": {"url": "texte", "data": "texte", "preset": "light", "filename": "texte", "mimeType": "texte", "targetBytes": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": "texte", "note": "texte", "after": 1, "pages": 1, "saved": 1, "before": 1, "images": 1, "percent": 1, "metTarget": true, "keptOriginal": true, "recompressed": 1}} - convert_case≈ 303 tokens
Convert text to camelCase, snake_case, kebab-case, CONSTANT_CASE, and AP or Chicago title case. Returns every style unless one is requested.
Paramètres, retour & exemple (2)
Paramètrestext· string · requis
Text to convert. Each line is converted on its own.style· string · optionnel · lower | upper | sentence | capital | title-ap | title-chicago | camel | pascal
Return one style. Omit it to return every style.
Exemple d'appel{"name": "convert_case", "arguments": {"text": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"cases": []}} - convert_color≈ 342 tokens
Convert HEX, RGB, HSL, OKLCH, or CMYK into every format, name the nearest Tailwind token, and report the WCAG 2 contrast ratio against a background.
Paramètres, retour & exemple (2)
Paramètrescolor· string · requis
HEX, rgb(), hsl(), oklch(), cmyk(), or a CSS color name.background· string · optionnel
Background used for the WCAG contrast ratio.
Exemple d'appel{"name": "convert_color", "arguments": {"color": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"ok": true, "hex": "texte", "hsl": "texte", "rgb": "texte", "cmyk": "texte", "oklch": "texte", "aaLarge": true, "aaNormal": true, "aaaLarge": true, "tailwind": "texte", "aaaNormal": true, "contrastText": "texte"}} - convert_csv_json≈ 415 tokens
Convert CSV to JSON or JSON to CSV. Supports comma, tab, semicolon, and pipe delimiters, an optional header, type inference, and dotted flattening. Inferred numbers that do not fit in a JavaScript number keep their digits.
Paramètres, retour & exemple (6)
Paramètrestext· string · requisheader· boolean · optionnelflatten· boolean · optionnel
Used when converting JSON to CSV. Nested keys become dotted columns.delimiter· string · optionnel · auto | , | | ; | |
Comma, tab, semicolon, pipe, or auto. Auto is a comma when writing CSV.direction· string · optionnel · csv-to-json | json-to-csvinferTypes· boolean · optionnel
Used when converting CSV to JSON.
Exemple d'appel{"name": "convert_csv_json", "arguments": {"text": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"ok": true, "rows": 1, "error": "texte", "output": "texte", "columns": 1, "warning": "texte", "delimiter": "texte"}} - convert_curl≈ 286 tokens
Parse a curl command and generate equivalent JavaScript fetch, Python requests, Go, PHP, or Rust code.
Paramètres, retour & exemple (2)
Paramètrestarget· string · optionnel · fetch | python | go | php | rustcommand· string · requis
Exemple d'appel{"name": "convert_curl", "arguments": {"command": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"url": "texte", "body": "texte", "method": "texte", "headers": [], "snippet": "texte", "warnings": []}} - convert_currency≈ 324 tokens
Convert money between ISO 4217 currencies using live exchange rates from the Frankfurter API, fetched through the SSRF-safe outbound guard. Supports historical dates.
Paramètres, retour & exemple (4)
Paramètresto· string · optionnel
ISO 4217 currency code.date· string · optionnel
Historical date; omit for the latest rates.from· string · optionnel
ISO 4217 currency code.amount· number · optionnel
Exemple d'appel{"name": "convert_currency", "arguments": {"to": "texte", "date": "texte", "from": "texte", "amount": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"ok": true, "to": "texte", "date": "texte", "from": "texte", "rate": 1, "error": "texte", "amount": 1, "result": 1}} - convert_data_format≈ 332 tokens
Convert between JSON, YAML, TOML, and XML. Auto-detects the source. Numbers that do not fit in a JavaScript number keep their digits. Errors include a line and column. TOML refuses null and a non-table root.
Paramètres, retour & exemple (3)
Paramètresto· string · optionnel · json | yaml | toml | xmlfrom· string · optionnel · auto | json | yaml | toml | xmltext· string · requis
The source document.
Exemple d'appel{"name": "convert_data_format", "arguments": {"text": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"ok": true, "line": "texte", "error": "texte", "column": "texte", "output": "texte", "detected": "texte"}} - convert_image≈ 441 tokens
Convert an image to JPEG, PNG, WebP, or AVIF. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB. Returns the image as base64. HEIC is not decoded here.
Paramètres, retour & exemple (2)
Paramètresfile· object · requis
The image. Provide url or data.target· string · optionnel · jpeg | png | webp | avif
Exemple d'appel{"name": "convert_image", "arguments": {"file": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": "texte", "mime": "texte", "bytes": 1, "width": 1, "height": 1, "source": "texte", "filename": "texte", "extension": "texte"}} - convert_json_to_types≈ 272 tokens
Infer types from a JSON document and generate TypeScript interfaces, Zod schemas, Python Pydantic models or dataclasses, and Go structs.
Paramètres, retour & exemple (3)
Paramètresjson· string · requistargets· array · optionnelrootName· string · optionnel
Exemple d'appel{"name": "convert_json_to_types", "arguments": {"json": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"outputs": {}, "warnings": []}} - convert_markdown_html≈ 224 tokens
Convert GitHub-flavored Markdown to HTML, or HTML to Markdown. to is html or markdown. sanitize strips scripts from the text output. The conversion does not fetch a URL.
Paramètres, retour & exemple (3)
Paramètresto· string · optionnel · html | markdowntext· string · optionnelsanitize· boolean · optionnel
Exemple d'appel{"name": "convert_markdown_html", "arguments": {"to": "html", "text": "texte", "sanitize": true}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"output": "texte", "direction": "html"}} - convert_units≈ 329 tokens
Convert length, mass, volume, temperature, area, speed, time, and data size. Decimal bytes (kB, MB) and binary bytes (KiB, MiB) are separate categories.
Paramètres, retour & exemple (5)
Paramètresto· string · requis
Target unit id from the same category.from· string · requis
Source unit id, such as m, C, MB, or MiB.value· string|number · requiscategory· string · requis · length | mass | volume | temperature | area | speed | time | data-decimalprecision· integer · optionnel
Exemple d'appel{"name": "convert_units", "arguments": {"to": "texte", "from": "texte", "value": 1, "category": "length"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"rows": [], "result": "texte"}} - convert_unix_timestamp≈ 491 tokens
Convert epoch seconds, milliseconds, microseconds, or nanoseconds to ISO-8601 and RFC 2822 in an IANA time zone, or convert a calendar time back to epoch.
Paramètres, retour & exemple (9)
Paramètresday· integer · optionnelhour· integer · optionnelunit· string · optionnel · auto | s | ms | us | nsyear· integer · optionnelinput· string · optionnel
Unix timestamp, ISO-8601, RFC 2822, or now. Leave it empty when year, month, and day are set.month· integer · optionnelminute· integer · optionnelsecond· integer · optionneltimeZone· string · optionnel
IANA time zone, such as UTC or America/New_York.
Exemple d'appel{"name": "convert_unix_timestamp", "arguments": {"day": 1, "hour": 1, "unit": "auto", "year": 1, "input": "texte", "month": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"unit": "texte", "isoUtc": "texte", "offset": "texte", "rfc2822": "texte", "seconds": "texte", "weekday": "texte", "isoLocal": "texte", "relative": "texte", "timeZone": "texte", "milliseconds": "texte", "alternateIsoUtc": "texte"}} - count_text≈ 511 tokens
Count words, code points, graphemes, sentences, and paragraphs, and compare the length with SEO and social limits.
Paramètres, retour & exemple (1)
Paramètrestext· string · requis
Text to count.
Exemple d'appel{"name": "count_text", "arguments": {"text": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"lines": 1, "words": 1, "graphemes": 1, "platforms": [], "sentences": 1, "characters": 1, "paragraphs": 1, "uniqueWords": 1, "readingLabel": "texte", "speakingLabel": "texte", "charactersNoSpaces": 1}} - count_tokens≈ 433 tokens
Count tokens with the o200k or cl100k encoder and price the count against the published model table. Claude and Gemini rows are estimates, not those vendors' tokenizers.
Paramètres, retour & exemple (6)
Paramètrestext· string · requis
The prompt or document to count.encoding· string · optionnel · o200k | cl100kmodelIds· array · optionnel
Price rows to return. Unknown ids are rejected.cachedRatio· number · optionneloutputTokens· integer · optionnelrequestsPerDay· number · optionnel
Exemple d'appel{"name": "count_tokens", "arguments": {"text": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"chars": 1, "count": 1, "words": 1, "prices": [], "encoding": "texte"}} - crop_image≈ 538 tokens
Crop an image to a pixel box or a 0 to 1 ratio box. circle cuts a round mask. format is png, jpeg, or webp. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB. Returns the image as base64.
Paramètres, retour & exemple (8)
Paramètresx· number · optionnely· number · optionnelfile· object · requis
The image. Provide url or data.unit· string · optionnel · px | ratio
px is source pixels. ratio is a 0 to 1 share of the source.width· number · optionnelcircle· boolean · optionnelformat· string · optionnel · png | jpeg | webpheight· number · optionnel
Exemple d'appel{"name": "crop_image", "arguments": {"file": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": "texte", "mime": "texte", "bytes": 1, "width": 1, "height": 1, "filename": "texte", "extension": "texte"}} - date_difference≈ 678 tokens
Count calendar days, elapsed time, and business days between two dates. Business days skip weekends and any YYYY-MM-DD holidays you list.
Paramètres, retour & exemple (6)
ParamètresendDate· string · requis
End date as YYYY-MM-DD.endTime· string · optionnel
End time as HH:MM or HH:MM:SS. Defaults to midnight.holidays· string · optionnel
Weekday holidays to exclude from business days, one YYYY-MM-DD per line.startDate· string · requis
Start date as YYYY-MM-DD.startTime· string · optionnel
Start time as HH:MM or HH:MM:SS. Defaults to midnight.includeEnd· boolean · optionnel
Count the end date as well as the days between.
Exemple d'appel{"name": "date_difference", "arguments": {"endDate": "texte", "startDate": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"days": 1, "sign": 1, "hours": 1, "weeks": 1, "years": 1, "months": 1, "minutes": 1, "seconds": 1, "extraDays": 1, "totalDays": 1, "totalHours": "texte", "countedDays": 1}} - decode_jwt≈ 325 tokens
Decode a signed JSON Web Token into its header, payload, and registered claims. Dates are absolute ISO timestamps. The signature is not checked.
Paramètres, retour & exemple (1)
Paramètrestoken· string · requis
A signed JWT, with or without a Bearer prefix. The signature is not verified.
Exemple d'appel{"name": "decode_jwt", "arguments": {"token": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"ok": true, "kind": "texte", "error": "texte", "claims": [], "header": {}, "payload": {}, "signature": "texte"}} - diff_text≈ 532 tokens
Compare two texts by line, word, or character, or compare JSON so object key order does not matter. Returns an inline diff, side-by-side rows for line and JSON modes, and a unified patch.
Paramètres, retour & exemple (4)
Paramètresleft· string · requis
The original text.mode· string · optionnel · line | word | char | jsonright· string · requis
The changed text.ignoreWhitespace· boolean · optionnel
Exemple d'appel{"name": "diff_text", "arguments": {"left": "texte", "right": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"ok": true, "rows": [], "unit": "lines", "added": 1, "error": "texte", "patch": "texte", "pieces": [], "removed": 1, "unchanged": true}} - execute_graphql≈ 332 tokens
Send a GraphQL query with optional variables and headers to a public http or https endpoint on port 80 or 443 and return the response data or errors. Local, private, and internal addresses are refused.
Paramètres, retour & exemple (5)
Paramètresquery· string · requisheaders· object · optionnelendpoint· string · requistimeoutMs· integer · optionnelvariables· object · optionnel
Exemple d'appel{"name": "execute_graphql", "arguments": {"query": "texte", "endpoint": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"ok": true, "data": "texte", "error": "texte", "errors": "texte", "status": 1, "durationMs": 1}} - explain_chmod≈ 244 tokens
Convert an octal or symbolic file mode into octal, symbolic notation, and a chmod command, including setuid, setgid, and the sticky bit.
Paramètres, retour & exemple (2)
Paramètresmode· string · requis
Octal such as 755 or 4755, or symbolic such as rwxr-xr-x.path· string · optionnel
Exemple d'appel{"name": "explain_chmod", "arguments": {"mode": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"octal": "texte", "setgid": true, "setuid": true, "sticky": true, "command": "texte", "symbolic": "texte"}} - explain_cron≈ 446 tokens
Turn a cron expression into English, the next UTC run times, and snippets for crontab, GitHub Actions, Vercel, Kubernetes, and node-cron.
Paramètres, retour & exemple (4)
Paramètresnow· string · optionnel
ISO timestamp used as the clock. Omit it to use the current time.dialect· string · optionnel · standard | seconds | quartz | hostedtimeZone· string · optionnel
IANA time zone used to list the next runs. Hosted schedules stay in UTC.expression· string · requis
A cron expression, including @daily or @reboot.
Exemple d'appel{"name": "explain_cron", "arguments": {"expression": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"runs": [], "error": "texte", "valid": true, "fields": [], "english": "texte", "snippets": [], "hostedNote": "texte"}} - extract_pdf_text≈ 409 tokens
Read the selectable text layer of a PDF. Returns per-page text, markdown-style headings, and an o200k token count. Does not OCR scans. Send base64 or a public URL. Private addresses are refused.
Paramètres, retour & exemple (4)
Paramètresurl· string · optionnel
Public URL of a PDF. Private and local addresses are refused. Provide data or url.data· string · optionnel
PDF bytes as base64 or a data URI. Decoded size is capped at 10 MB. Provide data or url.filename· string · optionnelmimeType· string · optionnel
Exemple d'appel{"name": "extract_pdf_text", "arguments": {"url": "texte", "data": "texte", "filename": "texte", "mimeType": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"text": "texte", "pages": [], "tokens": 1, "markdown": "texte", "pageCount": 1, "emptyPages": 1}} - fetch_page_markdown≈ 279 tokens
Fetch a public HTML page and return the article as Markdown, plus a title, excerpt, and o200k token count. Private and local addresses are refused. The response is capped at 800 KB.
Paramètres, retour & exemple (1)
Paramètresurl· string · requis
Public http or https URL. Private and local addresses are refused.
Exemple d'appel{"name": "fetch_page_markdown", "arguments": {"url": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"url": "texte", "chars": 1, "title": "texte", "tokens": 1, "excerpt": "texte", "markdown": "texte"}} - fill_pdf_form≈ 675 tokens
Fill an interactive PDF form's text fields, checkboxes, dropdowns, and radios by field name, with an option to flatten the result. Pass inspectOnly to list the fields first.
Paramètres, retour & exemple (4)
Paramètresfile· object · requis
PDF as base64, a data URI, or a public URL. Private addresses are refused. 10 MB cap.values· object · optionnel
Field name to value. Checkboxes take booleans; dropdowns and radios take one of their options.flatten· boolean · optionnel
Flatten the form so fields become plain page content.inspectOnly· boolean · optionnel
List the form fields without changing anything.
Exemple d'appel{"name": "fill_pdf_form", "arguments": {"file": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"pdf": "texte", "fields": [], "filled": 1, "mimeType": "texte", "pageCount": 1}} - format_json≈ 348 tokens
Pretty-print or minify JSON. A number that does not fit in a JavaScript number keeps the digits you sent. Returns the formatted text when it is valid, or the line and column of each syntax error.
Paramètres, retour & exemple (4)
Paramètresjson· string · requis
JSON text to format or validate.indent· string · optionnel · 2 | 4 | tabminify· boolean · optionnelsortKeys· boolean · optionnel
Sort object keys. Array order is kept.
Exemple d'appel{"name": "format_json", "arguments": {"json": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"valid": true, "errors": [], "output": "texte"}} - format_sql≈ 262 tokens
Format SQL for PostgreSQL, MySQL, BigQuery, Snowflake, and other dialects. Choose keyword case and an indent of 2 or 4 spaces.
Paramètres, retour & exemple (4)
Paramètressql· string · requis
SQL to format.indent· ? · optionneldialect· string · optionnel · postgresql | mysql | mariadb | sqlite | transactsql | bigquery | snowflake | redshiftkeywordCase· string · optionnel · upper | lower | preserve
Exemple d'appel{"name": "format_sql", "arguments": {"sql": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"sql": "texte"}} - generate_fake_data≈ 417 tokens
Generate seeded lorem ipsum, or fake JSON, CSV, or SQL rows from a list of field types.
Paramètres, retour & exemple (8)
Paramètreskind· string · optionnel · words | sentences | paragraphsmode· string · optionnel · lorem | rowsrows· integer · optionnelseed· integer · optionnelcount· integer · optionneltable· string · optionnelfields· array · optionnelformat· string · optionnel · json | csv | sql
Exemple d'appel{"name": "generate_fake_data", "arguments": {"kind": "words", "mode": "lorem", "rows": 1, "seed": 1, "count": 1, "table": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"rows": 1, "format": "text", "output": "texte"}} - generate_favicon≈ 517 tokens
Build a favicon pack from an image or up to three letters. The ZIP contains favicon.ico, PNG sizes, a web manifest, an HTML snippet, and a Next.js metadata snippet. Letters are drawn with a built-in bitmap font so the result does not depend on a system font. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB.
Paramètres, retour & exemple (5)
Paramètresfile· object · optionnel
A square-or-any image. Provide file or text.name· string · optionneltext· string · optionnel
Up to three letters drawn as the mark. Provide file or text.color· string · optionnelbackground· string · optionnel
Exemple d'appel{"name": "generate_favicon", "arguments": {"file": {}, "name": "texte", "text": "texte", "color": "texte", "background": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": "texte", "html": "texte", "mime": "texte", "bytes": 1, "preview": "texte", "filename": "texte", "manifest": "texte", "nextMetadata": "texte"}} - generate_invoice≈ 661 tokens
Build an invoice or quote PDF from company and client details, line items with quantities and rates, a tax rate, and an optional percent or flat discount. All money is computed in integer cents, so there are no float rounding errors. Returns the PDF as base64 plus the total.
Paramètres, retour & exemple (1)
Paramètresinvoice· object · requis
Exemple d'appel{"name": "generate_invoice", "arguments": {"invoice": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": "texte", "bytes": 1, "currency": "texte", "totalCents": 1}} - generate_keypair≈ 380 tokens
Generate an RSA, EC, or Ed25519 key pair as PEM and JWK, or convert between PEM and JWK. The private key is returned in the result and is not stored. The page in the browser generates keys locally and does not send them.
Paramètres, retour & exemple (5)
Paramètresalg· string · optionnel · RS256 | RS384 | RS512 | PS256 | ES256 | ES384 | ES512 | Ed25519jwk· string · optionnel
JWK JSON to convert. Required for to_pem.pem· string · optionnel
SPKI or PKCS8 PEM to convert. Required for to_jwk.action· string · optionnel · generate | to_jwk | to_pemmodulusLength· ? · optionnel
Exemple d'appel{"name": "generate_keypair", "arguments": {"alg": "RS256", "jwk": "texte", "pem": "texte", "action": "generate", "modulusLength": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"alg": "RS256", "jwks": "texte", "publicJwk": "texte", "publicPem": "texte", "privateJwk": "texte", "privatePem": "texte"}} - generate_llms_txt≈ 278 tokens
Render llms.txt and llms-full.txt from a site name, a summary, and a list of pages. It does not crawl. Grouping follows the page URLs.
Paramètres, retour & exemple (3)
Paramètrespages· array · requis
Pages you already know. This tool does not fetch them.summary· string · requissiteName· string · requis
Exemple d'appel{"name": "generate_llms_txt", "arguments": {"pages": [], "summary": "texte", "siteName": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"full": "texte", "llms": "texte"}} - generate_meme≈ 507 tokens
Render a classic top/bottom-caption meme as a PNG. Give it an image (base64, data URI, or public URL) or pick a gradient style, and it returns captioned meme artwork.
Paramètres, retour & exemple (6)
Paramètrestop· string · optionnelimage· object · optionnel
Base image as base64, a data URI, or a public URL. Private addresses are refused. 10 MB cap. Omit to use a gradient style background.upper· boolean · optionnel
Uppercase captions, classic meme style.bottom· string · optionnelstyleId· string · optionnel
Gradient style id when no image is given: sunset, ocean, grape, forest, mono, candy. Default: sunset.fontScale· number · optionnel
Caption size multiplier.
Exemple d'appel{"name": "generate_meme", "arguments": {"top": "texte", "image": {}, "upper": true, "bottom": "texte", "styleId": "texte", "fontScale": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"png": "texte", "width": 1, "height": 1, "mimeType": "texte"}} - generate_password≈ 405 tokens
Generate cryptographic passwords or EFF-wordlist passphrases and report the entropy in bits. Randomness comes from the platform CSPRNG.
Paramètres, retour & exemple (12)
Paramètrescount· integer · optionneldigit· boolean · optionnelstyle· string · optionnel · password | passphrasewords· integer · optionneldigits· boolean · optionnellength· integer · optionnelsymbols· boolean · optionnellowercase· boolean · optionnelseparator· string · optionneluppercase· boolean · optionnelcapitalize· boolean · optionnelexcludeAmbiguous· boolean · optionnel
Exemple d'appel{"name": "generate_password", "arguments": {"count": 1, "digit": true, "style": "password", "words": 1, "digits": true, "length": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"bits": 1, "label": "texte", "score": 1, "values": []}} - generate_qr_code≈ 472 tokens
Build a static QR code for text, a URL, Wi-Fi, or a vCard. Returns the payload, an SVG string, and a PNG as base64.
Paramètres, retour & exemple (10)
Paramètresecc· string · optionnel · L | M | Q | Hurl· string · optionneldark· string · optionnelsize· integer · optionneltext· string · optionneltype· string · optionnel · text | url | wifi | vcardwifi· object · optionnellight· string · optionnelvcard· object · optionnelmargin· integer · optionnel
Exemple d'appel{"name": "generate_qr_code", "arguments": {"ecc": "L", "url": "texte", "dark": "texte", "size": 1, "text": "texte", "type": "text"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"svg": "texte", "payload": "texte", "pngBase64": "texte"}} - generate_resume≈ 578 tokens
Build a resume PDF from profile, experience, education, and skills. A name plus at least one experience, education, or skills entry is required. Choose the clean, modern, or compact template. Returns the A4 PDF as base64.
Paramètres, retour & exemple (2)
Paramètresresume· object · requistemplate· string · optionnel · clean | modern | compact
Exemple d'appel{"name": "generate_resume", "arguments": {"resume": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": "texte", "bytes": 1, "pageCount": 1}} - generate_totp≈ 457 tokens
Compute RFC 4226/6238 one-time passcodes from a base32 secret. Supports 6/8 digits, SHA1/SHA256/SHA512, and custom periods.
Paramètres, retour & exemple (7)
Paramètresat· integer · optionnel
Unix time in milliseconds; defaults to nowmode· string · optionnel · totp | hotpdigits· ? · optionnelperiod· integer · optionnel
TOTP period in secondssecret· string · requis
Base32 TOTP/HOTP secretcounter· integer · optionnel
HOTP counteralgorithm· string · optionnel · SHA1 | SHA256 | SHA512
Exemple d'appel{"name": "generate_totp", "arguments": {"secret": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"code": "texte", "mode": "totp", "digits": 1, "period": 1, "algorithm": "texte", "secondsRemaining": "texte"}} - generate_uuid≈ 292 tokens
Generate UUID version 4 or version 7 from cryptographic randomness, up to 10,000 at once, or inspect the version, variant, and v7 timestamp.
Paramètres, retour & exemple (4)
Paramètrescount· integer · optionnelvalue· string · optionnel
UUID to inspect when action is inspect.action· string · optionnel · generate | inspectversion· string · optionnel · v4 | v7
Exemple d'appel{"name": "generate_uuid", "arguments": {"count": 1, "value": "texte", "action": "generate", "version": "v4"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"ids": [], "variant": "texte", "version": "texte", "timestamp": "texte"}} - hash_data≈ 336 tokens
Compute MD5, SHA-1, SHA-256, and SHA-512 for UTF-8 text or base64 bytes. Pass hmacKey for HMAC and expected to see which digest matches.
Paramètres, retour & exemple (4)
Paramètrestext· string · optionnel
UTF-8 text to hash. Use this or base64.base64· string · optionnel
Raw bytes as standard base64.hmacKey· string · optionnel
UTF-8 HMAC key. Omit it for a plain digest.expected· string · optionnel
Hex or base64 digest to compare.
Exemple d'appel{"name": "hash_data", "arguments": {"text": "texte", "base64": "texte", "hmacKey": "texte", "expected": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"hmac": true, "hashes": [], "matches": []}} - hash_password≈ 443 tokens
Hash a password with bcrypt or argon2id, or verify a hash. Returns an htpasswd line when a username is set. The password is not stored or logged. The page in the browser never sends the password; this call only hashes the arguments you send.
Paramètres, retour & exemple (8)
Paramètrescost· integer · optionnel
Bcrypt cost factor, from 4 to 12.hash· string · optionnel
Existing bcrypt or argon2id hash. When set, the password is verified instead of hashed.memory· integer · optionnel
Argon2id memory in KiB.password· string · requis
Password to hash or verify. It is used only for this call and is not stored.username· string · optionnel
Optional htpasswd username. A colon is not allowed.algorithm· string · optionnel · bcrypt | argon2iditerations· integer · optionnelparallelism· integer · optionnel
Exemple d'appel{"name": "hash_password", "arguments": {"password": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"hash": "texte", "htpasswd": "texte", "verified": true, "algorithm": "bcrypt"}} - images_to_pdf≈ 429 tokens
Turn images, sent as base64 or public URLs in order, into one PDF. JPEG and PNG are embedded directly. Other formats are converted to PNG first. Page size is A4, Letter, or fit. Private addresses are refused. Returns the PDF as base64.
Paramètres, retour & exemple (4)
Paramètrespage· string · optionnel · a4 | letter | fitimages· array · requismargin· number · optionnelorientation· string · optionnel · auto | portrait | landscape
Exemple d'appel{"name": "images_to_pdf", "arguments": {"images": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": "texte", "bytes": 1, "pageCount": 1}} - inspect_meta_tags≈ 449 tokens
Fetch one public HTML page and report title, description, canonical, Open Graph, Twitter, and JSON-LD. Use this to see what a live URL advertises.
Paramètres, retour & exemple (1)
Paramètresurl· string · requis
A public HTML page. Only that URL is fetched.
Exemple d'appel{"name": "inspect_meta_tags", "arguments": {"url": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"og": {}, "lang": "texte", "icons": [], "title": "texte", "checks": [], "robots": "texte", "status": 1, "twitter": {}, "finalUrl": "texte", "viewport": "texte", "canonical": "texte", "redirects": []}} - list_og_templates≈ 537 tokens
List Open Graph card templates with ids, names, categories, defaults, color presets, and field schemas.
Paramètres, retour & exemple (1)
Paramètrescategory· string · optionnel · Blog | Product | Dev | Social | Event
Exemple d'appel{"name": "list_og_templates", "arguments": {"category": "Blog"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"templates": []}} - lookup_dns≈ 630 tokens
Query A, AAAA, MX, TXT, CNAME, and CAA for a public hostname over DNS-over-HTTPS, and parse SPF and DMARC. Private names are refused. The resolver is Cloudflare or Google.
Paramètres, retour & exemple (4)
Paramètresmail· boolean · optionnel
Also fetch the _dmarc TXT record and parse SPF.name· string · requis
Public hostname, such as example.com. Private names are refused.types· array · optionnelresolver· string · optionnel · cloudflare | google
Exemple d'appel{"name": "lookup_dns", "arguments": {"name": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"spf": "texte", "name": "texte", "dmarc": "texte", "queries": [], "records": [], "resolver": "cloudflare"}} - make_collage≈ 559 tokens
Arrange up to 9 photos into a collage layout (duo, trio, focus, quad, six, nine) with a gap and background color, and get back a square PNG.
Paramètres, retour & exemple (5)
Paramètresgap· integer · optionnel
Gap between cells in pixels.width· integer · optionnel
Output width in pixels; the collage is square.images· array · requis
Photos as base64, data URIs, or public URLs. Private addresses are refused. 10 MB cap each.layout· string · optionnel
Layout id: duo, duo-stack, trio, focus, quad, six, nine. Unknown ids fall back to quad.background· string · optionnel
Exemple d'appel{"name": "make_collage", "arguments": {"images": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"png": "texte", "cells": 1, "width": 1, "height": 1, "mimeType": "texte"}} - merge_pdf≈ 386 tokens
Combine PDF files. Each file is base64 or a public URL, and can keep a page range such as 1-3,5. Private addresses are refused. Returns one PDF as base64.
Paramètres, retour & exemple (1)
Paramètresfiles· array · requis
Exemple d'appel{"name": "merge_pdf", "arguments": {"files": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": "texte", "bytes": 1, "pageCount": 1}} - minify_code≈ 342 tokens
Minify source code with Terser (JS), csso (CSS), or a structural HTML pass and report before/after byte counts.
Paramètres, retour & exemple (6)
Paramètrescode· string · requiscssLevel· ? · optionneljsMangle· boolean · optionnellanguage· string · requis · js | css | htmljsCompress· boolean · optionnelhtmlAggressive· boolean · optionnel
Exemple d'appel{"name": "minify_code", "arguments": {"code": "texte", "language": "js"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"code": "texte", "savedPct": 1, "afterBytes": 1, "savedBytes": 1, "beforeBytes": 1}} - optimize_svg≈ 457 tokens
Minify an SVG with SVGO. Send markup or a file as base64 or a public URL. Private addresses are refused and the file is capped at 10 MB. The viewBox is kept unless removeViewBox is true. Returns the optimized markup and the byte counts.
Paramètres, retour & exemple (5)
Paramètressvg· string · optionnel
SVG markup. Provide svg or file.file· object · optionnel
An SVG file. Provide svg or file.precision· integer · optionnelremoveViewBox· boolean · optionnelremoveDimensions· boolean · optionnel
Exemple d'appel{"name": "optimize_svg", "arguments": {"svg": "texte", "file": {}, "precision": 1, "removeViewBox": true, "removeDimensions": true}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"svg": "texte", "afterBytes": 1, "savedBytes": 1, "beforeBytes": 1, "savedPercent": 1}} - organize_pdf≈ 430 tokens
Reorder, rotate, or drop PDF pages. Each entry names a 1-based source page and a rotation of 0, 90, 180, or 270. The same page may be listed twice. Send base64 or a public URL. Private addresses are refused.
Paramètres, retour & exemple (5)
Paramètresurl· string · optionnel
Public URL of a PDF. Private and local addresses are refused. Provide data or url.data· string · optionnel
PDF bytes as base64 or a data URI. Decoded size is capped at 10 MB. Provide data or url.pages· array · requisfilename· string · optionnelmimeType· string · optionnel
Exemple d'appel{"name": "organize_pdf", "arguments": {"pages": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": "texte", "bytes": 1, "pageCount": 1}} - protect_pdf≈ 562 tokens
Protect a PDF with AES-256, or unlock one when the password is known. action is protect or unlock. password is the user password. ownerPassword is optional. permissions cover printing, copying, modifying, annotating, filling forms, accessibility, and assembly. Send base64 or a public URL. Private addresses are refused.
Paramètres, retour & exemple (8)
Paramètresurl· string · optionnel
Public URL of a PDF. Private and local addresses are refused. Provide data or url.data· string · optionnel
PDF bytes as base64 or a data URI. Decoded size is capped at 10 MB. Provide data or url.action· string · optionnel · protect | unlockfilename· string · optionnelmimeType· string · optionnelpassword· string · optionnel
User password. Required to protect or unlock. Unlock only works when this is the known password.permissions· object · optionnelownerPassword· string · optionnel
Owner password. Blank uses the user password.
Exemple d'appel{"name": "protect_pdf", "arguments": {"url": "texte", "data": "texte", "action": "protect", "filename": "texte", "mimeType": "texte", "password": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": "texte", "bytes": 1, "encrypted": true}} - query_jsonpath≈ 336 tokens
Evaluate a JSONPath Plus query against a JSON document and return the matches with their paths. A number that does not fit in a JavaScript number is returned as its original digits, with a precision warning.
Paramètres, retour & exemple (3)
Paramètresjson· string · requis
JSON document textlimit· integer · optionnel
Maximum matches to returnquery· string · requis
JSONPath query, e.g. $.store.book[*].author
Exemple d'appel{"name": "query_jsonpath", "arguments": {"json": "texte", "query": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"count": 1, "matches": [], "warning": "texte", "truncated": true}} - read_barcode≈ 376 tokens
Read QR codes and barcodes from an image. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB. Returns each code's text and format. An image with no code returns an empty list.
Paramètres, retour & exemple (1)
Paramètresfile· object · requis
The image. Provide url or data.
Exemple d'appel{"name": "read_barcode", "arguments": {"file": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"codes": [], "count": 1}} - read_exif≈ 663 tokens
Read EXIF tags, including GPS, or strip them. action is read or strip. scope is all or gps. gps-only removal keeps the other JPEG tags. Other formats are re-encoded, which drops every tag. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB.
Paramètres, retour & exemple (3)
Paramètresfile· object · requis
The photo. Provide url or data.scope· string · optionnel · all | gps
Used when action is strip. gps removes the GPS block from a JPEG. all re-encodes and drops every tag.action· string · optionnel · read | strip
Exemple d'appel{"name": "read_exif", "arguments": {"file": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"gps": "texte", "data": "texte", "mime": "texte", "note": "texte", "tags": [], "when": "texte", "bytes": 1, "width": 1, "camera": "texte", "height": 1, "filename": "texte", "stripped": "none"}} - read_image_text≈ 379 tokens
Extract text from an image with Tesseract. language defaults to eng. Other codes in the list are fetched when first used. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB. Returns the text and a confidence from 0 to 100. An image with no text returns an empty string.
Paramètres, retour & exemple (2)
Paramètresfile· object · requis
The image. Provide url or data.language· string · optionnel
A Tesseract language code such as eng, spa, fra, deu, or jpn.
Exemple d'appel{"name": "read_image_text", "arguments": {"file": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"text": "texte", "language": "texte", "confidence": 1}} - remove_background≈ 560 tokens
Remove a solid or near-solid background by flood-filling from the border. color is an optional #rrggbb. The portrait model runs in the browser, not in this handler: MODNet is Apache-2.0, RMBG-1.4 is non-commercial, and the ONNX runtime is too large for the serverless function. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB. Returns a PNG as base64.
Paramètres, retour & exemple (4)
Paramètresfile· object · requis
The image. Provide url or data.color· string · optionnel
Background color as #rgb or #rrggbb. Blank samples the corners.feather· boolean · optionneltolerance· number · optionnel
How far a border pixel may be from the background color, in RGB distance.
Exemple d'appel{"name": "remove_background", "arguments": {"file": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": "texte", "mime": "texte", "note": "texte", "bytes": 1, "width": 1, "height": 1, "method": "texte", "filename": "texte"}} - render_pdf_pages≈ 522 tokens
Render PDF pages to PNG or JPEG. DPI is 72 to 216. A page range such as 1-3,5 is optional. At most 24 pages and 25 MB of images. Send base64 or a public URL. Private addresses are refused. Returns image base64 and a ZIP when there is more than one page.
Paramètres, retour & exemple (8)
Paramètresdpi· integer · optionnelurl· string · optionnel
Public URL of a PDF. Private and local addresses are refused. Provide data or url.data· string · optionnel
PDF bytes as base64 or a data URI. Decoded size is capped at 10 MB. Provide data or url.range· string · optionnel
Pages to render, such as 1-3,5. Blank renders every page, up to 24.format· string · optionnel · png | jpegquality· integer · optionnel
JPEG quality from 1 to 100. Ignored for PNG.filename· string · optionnelmimeType· string · optionnel
Exemple d'appel{"name": "render_pdf_pages", "arguments": {"dpi": 1, "url": "texte", "data": "texte", "range": "texte", "format": "png", "quality": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"zip": "texte", "images": [], "pageCount": 1}} - resize_image≈ 526 tokens
Resize an image by pixels or percent. Fit is contain, cover, or stretch. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB. Returns the image as base64.
Paramètres, retour & exemple (7)
Paramètresfit· string · optionnel · contain | cover | stretchfile· object · requis
The image. Provide url or data.mode· string · optionnel · pixels | percentwidth· ? · optionnelheight· ? · optionnelpercent· number · optionnellockAspect· boolean · optionnel
Exemple d'appel{"name": "resize_image", "arguments": {"file": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": "texte", "mime": "texte", "bytes": 1, "width": 1, "height": 1, "filename": "texte", "extension": "texte"}} - resize_social_image≈ 511 tokens
Crop and resize an image to an exact social media preset: instagram-post (1080x1080), instagram-portrait (1080x1350), instagram-story (1080x1920), youtube-thumbnail (1280x720), x-post (1200x675), x-header (1500x500), linkedin-post (1200x627), or facebook-post (1200x630). The cover crop keeps the center subject. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB. Returns the image as base64 PNG.
Paramètres, retour & exemple (2)
Paramètresfile· object · requis
The image. Provide url or data.preset· string · requis · instagram-post | instagram-portrait | instagram-story | youtube-thumbnail | x-post | x-header | linkedin-post | facebook-post
Social platform preset with exact pixel dimensions.
Exemple d'appel{"name": "resize_social_image", "arguments": {"file": {}, "preset": "instagram-post"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": "texte", "bytes": 1, "width": 1, "height": 1}} - score_ai_seo≈ 300 tokens
Fetch a public page plus its robots.txt, sitemap, and llms.txt, then score how ready it is for AI search crawlers. Use this when you have a live URL.
Paramètres, retour & exemple (1)
Paramètresurl· string · requis
A public page. The check also reads robots.txt, sitemap.xml, and llms.txt on that origin.
Exemple d'appel{"name": "score_ai_seo", "arguments": {"url": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"score": 1, "checks": [], "status": 1, "finalUrl": "texte"}} - sign_pdf≈ 705 tokens
Stamp a PNG signature image onto one or more PDF pages at given positions (fractions of the page, x and y measured from the top-left, width as a fraction of page width). The signature keeps its aspect ratio. Returns the signed PDF as base64.
Paramètres, retour & exemple (3)
Paramètresfile· object · requis
The PDF to sign.signature· object · requis
The signature as a PNG image, base64 or a public URL.placements· array · requis
Exemple d'appel{"name": "sign_pdf", "arguments": {"file": {}, "signature": {}, "placements": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": "texte", "bytes": 1, "pageCount": 1}} - split_pdf≈ 434 tokens
Extract a page range into one PDF, or split into single pages or chunks of N. Send base64 or a public URL. Private addresses are refused. Returns PDF base64 and a ZIP when there are several files.
Paramètres, retour & exemple (8)
Paramètresurl· string · optionnel
Public URL of a PDF. Private and local addresses are refused. Provide data or url.data· string · optionnel
PDF bytes as base64 or a data URI. Decoded size is capped at 10 MB. Provide data or url.mode· string · optionnel · extract | pages | chunksname· string · optionnelevery· integer · optionnel
Used when mode is chunks.range· string · optionnel
Pages to keep, such as 1-3,5. Blank keeps every page.filename· string · optionnelmimeType· string · optionnel
Exemple d'appel{"name": "split_pdf", "arguments": {"url": "texte", "data": "texte", "mode": "extract", "name": "texte", "every": 1, "range": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"zip": "texte", "files": [], "pageCount": 1}} - test_regex≈ 418 tokens
Run a JavaScript regular expression against a sample and return every match, capture group, a short explanation, and an optional replacement.
Paramètres, retour & exemple (4)
Paramètrestext· string · requis
Sample to search.flags· string · optionnelpattern· string · requis
JavaScript regular expression body, without slashes.replacement· string · optionnel
When set, the sample is replaced and returned.
Exemple d'appel{"name": "test_regex", "arguments": {"text": "texte", "pattern": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"matches": [], "truncated": true, "explanation": [], "replacement": "texte"}} - trim_audio≈ 495 tokens
Trim a WAV audio file to a time range with optional fade in and out, returning a 16-bit PCM WAV as base64. Only WAV is accepted; the web UI handles MP3/OGG/M4A.
Paramètres, retour & exemple (5)
Paramètresfile· object · requisendSec· number · requis
Trim end in seconds, after startSec.startSec· number · requis
Trim start in seconds.fadeInSec· number · optionnel
Linear fade-in length in seconds.fadeOutSec· number · optionnel
Linear fade-out length in seconds.
Exemple d'appel{"name": "trim_audio", "arguments": {"file": {}, "endSec": 1, "startSec": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": "texte", "bytes": 1, "sampleRate": 1, "durationSec": 1}} - url_codec≈ 344 tokens
Percent-encode or decode text, or parse a URL into its host, path, hash, and query parameters.
Paramètres, retour & exemple (4)
Paramètresmode· string · optionnel · component | fullvalue· string · requisaction· string · optionnel · encode | decode | parseplusAsSpace· boolean · optionnel
When decoding, treat + as a space.
Exemple d'appel{"name": "url_codec", "arguments": {"value": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"hash": "texte", "port": "texte", "query": "texte", "value": "texte", "params": [], "hostname": "texte", "pathname": "texte", "protocol": "texte", "username": "texte"}} - validate_json_schema≈ 290 tokens
Infer a JSON Schema from a sample, or validate JSON against a schema. Returns error paths plus TypeScript and Zod generated from the sample.
Paramètres, retour & exemple (2)
Paramètresjson· string · requis
JSON document to infer from or validate.schema· string · optionnel
JSON Schema. Omit it to infer a schema from the document.
Exemple d'appel{"name": "validate_json_schema", "arguments": {"json": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"zod": "texte", "valid": true, "errors": [], "schema": "texte", "typescript": "texte"}} - validate_sitemap≈ 558 tokens
Validate sitemap XML or a public sitemap URL, including a sitemap index and a sample of HTTP statuses. Or generate a urlset from a list of URLs. Private addresses are refused and responses are size-capped.
Paramètres, retour & exemple (4)
Paramètresurl· string · optionnel
Public sitemap URL. Private addresses are refused.xml· string · optionnel
Sitemap XML. Use this or url.urls· array · optionnel
URLs to place in a generated sitemap. When set, url and xml are ignored.probe· boolean · optionnel
Request a sample of locations and report HTTP status.
Exemple d'appel{"name": "validate_sitemap", "arguments": {"url": "texte", "xml": "texte", "urls": [], "probe": true}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"xml": "texte", "kind": "urlset", "urls": [], "issues": [], "probes": [], "source": "texte", "sitemaps": [], "urlCount": 1, "sitemapCount": 1}} - validate_websocket_url≈ 257 tokens
Validate and parse a ws:// or wss:// URL into its components, and optionally decode a WebSocket close code.
Paramètres, retour & exemple (2)
Paramètresurl· string · requisexplainCloseCode· integer · optionnel
Exemple d'appel{"name": "validate_websocket_url", "arguments": {"url": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"host": "texte", "path": "texte", "port": 1, "error": "texte", "valid": true, "secure": true, "protocol": "ws", "closeCode": "texte"}} - zip_files≈ 464 tokens
Create a ZIP archive from files or list and extract the contents of a ZIP archive. Everything is handled in memory; no files are stored.
Paramètres, retour & exemple (3)
Paramètresmode· string · optionnel · zip | unzipfiles· array · optionnel
Files to zip (zip mode).archive· object · optionnel
Archive to extract (unzip mode).
Exemple d'appel{"name": "zip_files", "arguments": {"mode": "zip", "files": [], "archive": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"zip": "texte", "mode": "zip", "files": [], "fileCount": 1, "totalBytes": 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é ».