Add (or strip) a prefix and suffix on every line, with optional quoting, numbering and a custom joiner, e.g. to build an SQL IN list or a JS array.
POST /api/v1/tools/add-prefix-suffix-to-linesMCP add_prefix_suffix_to_lines
Exact age in years, months and days on a given date, with totals in days and weeks and the next birthday.
POST /api/v1/tools/age-calculatorMCP age_calculator
Count LLM tokens in text: exact counts for OpenAI's o200k_base and cl100k_base tokenizers, estimates for Claude, Gemini and Llama, and how much of common context windows it fills.
POST /api/v1/tools/ai-token-counterMCP ai_token_counter
Simplify width × height to an aspect ratio (1920×1080 → 16:9, with the nearest common preset), or resize to a ratio by solving the missing width or height.
POST /api/v1/tools/aspect-ratio-calculatorMCP aspect_ratio_calculator
Descriptive statistics for a list of numbers: mean, median, mode, min, max, range, geometric and harmonic means, variance, standard deviation and quartiles.
POST /api/v1/tools/average-calculatorMCP average_calculator
Generate a 1D barcode as SVG: EAN-13, UPC-A, EAN-8 (check digit added or verified), Code 128 or Code 39.
POST /api/v1/tools/barcode-generatorMCP barcode_generator
Encode text to Base64 or decode Base64 to text (UTF-8).
POST /api/v1/tools/base64-encoder-decoderMCP base64_encoder_decoder
Hash a password with bcrypt (random salt), or check a password against an existing bcrypt hash.
POST /api/v1/tools/bcrypt-generatorMCP bcrypt_generatorRandom output
Split a restaurant bill item by item (tax and tip shared in proportion to what each person ate, to the cent) or settle group trip expenses with the fewest payments.
POST /api/v1/tools/bill-splitterMCP bill_splitter
Adult body mass index with the WHO category and the healthy weight range for the height, in metric or imperial units.
POST /api/v1/tools/bmi-calculatorMCP bmi_calculator
Body fat percentage by the US Navy circumference method, with the ACE category and (given a weight) fat and lean mass.
POST /api/v1/tools/body-fat-calculatorMCP body_fat_calculator
Build or normalise a CSS border-radius value (including elliptical blob shapes) from a shorthand value or a named preset.
POST /api/v1/tools/border-radius-generatorMCP border_radius_generator
Build a CSS box-shadow from one layer's settings, a JSON list of layers, or a named preset. Colours are validated and re-serialised.
POST /api/v1/tools/box-shadow-generatorMCP box_shadow_generator
Break-even point: units and revenue needed to cover fixed costs, with contribution margin and an optional target profit.
POST /api/v1/tools/break-even-calculatorMCP break_even_calculator
Count working days between two dates, or add/subtract working days to a date, skipping weekends and an optional holiday list.
POST /api/v1/tools/business-days-calculatorMCP business_days_calculator
Compound annual growth rate: the CAGR between two values, the future value at a given CAGR, or the years needed to reach a target. Rates are returned as fractions (0.12 = 12%).
POST /api/v1/tools/cagr-calculatorMCP cagr_calculator
Convert text between upper, lower, title, sentence, camel, Pascal, snake, kebab, constant and dot case.
POST /api/v1/tools/case-converterMCP case_converter
Decode X.509 certificates (PEM, up to 20 in a chain): subject, issuer, validity, SANs, key, extensions and fingerprints, with self-signed and chain-order checks.
POST /api/v1/tools/certificate-decoderMCP certificate_decoder
Count characters (grapheme clusters), characters without spaces, UTF-8 bytes, words and lines, plus X post weighted length, SMS encoding and segments, and common platform limits.
POST /api/v1/tools/character-counterMCP character_counter
Convert IPv4/IPv6 CIDR blocks to first–last ranges, ranges to the minimal CIDR list, merge overlapping CIDRs and ranges, or list every address in a small block.
POST /api/v1/tools/cidr-ip-range-converterMCP cidr_ip_range_converter
Format a reference for a book, journal article, website, newspaper article or report in APA 7, MLA 9, Chicago (notes-bibliography) or Harvard style.
POST /api/v1/tools/citation-generatorMCP citation_generator
Build a CSS clip-path: polygon from points, circle, ellipse or inset, or a named preset shape (triangle, hexagon, star, arrows…). All values are percentages.
POST /api/v1/tools/clip-path-generatorMCP clip_path_generator
Flip one or more fair coins with a cryptographic random source, with head/tail counts and longest streaks.
POST /api/v1/tools/coin-flipMCP coin_flipRandom output
Simulate how a list of colours looks with each colour vision deficiency (Machado 2009 model) and flag pairs that become hard to tell apart for one chosen type. Colours only, not images.
POST /api/v1/tools/color-blindness-simulatorMCP color_blindness_simulator
Convert a colour between HEX, RGB(A), HSL and HSV, detecting the input format.
POST /api/v1/tools/color-converterMCP color_converter
Mix two colours in sRGB, linear RGB and OKLab, with the equivalent CSS color-mix() and an evenly spaced blend scale in each space.
POST /api/v1/tools/color-mixerMCP color_mixer
Generate a palette from one base colour: complementary, analogous, triadic, tetradic, split-complementary and monochromatic harmonies, plus a 50–950 tint and shade scale as CSS variables and a Tailwind theme.
POST /api/v1/tools/color-palette-generatorMCP color_palette_generator
Grow a starting amount with compound interest and optional end-of-month contributions; returns the final balance, interest earned, AER and an optional year-by-year table.
POST /api/v1/tools/compound-interest-calculatorMCP compound_interest_calculator
WCAG contrast ratio between two colours, with AA and AAA results.
POST /api/v1/tools/contrast-checkerMCP contrast_checker
How long a credit card balance takes to clear and the interest paid: at a fixed monthly payment, within a set number of months, or paying only the minimum.
POST /api/v1/tools/credit-card-payoff-calculatorMCP credit_card_payoff_calculator
Check a payment card number's format: brand from its IIN prefix, length and Luhn check digit. Does not contact any bank or check whether the card exists.
POST /api/v1/tools/credit-card-validatorMCP credit_card_validator
Explain a five-field cron expression and list its next run times (UTC).
POST /api/v1/tools/cron-expression-parserMCP cron_expression_parser
Build a Content-Security-Policy from directive lines (as header, meta tag, Nginx and Apache config) with a security analysis, or analyse an existing policy for risky settings.
POST /api/v1/tools/csp-header-generatorMCP csp_header_generator
Decode a PKCS#10 certificate signing request: subject, public key, requested SANs and extensions, attributes, and whether its self-signature is valid.
POST /api/v1/tools/csr-decoderMCP csr_decoder
Build a CSS linear, radial or conic gradient (optionally repeating) from colour stops. Colours are validated and written as hex.
POST /api/v1/tools/css-gradient-generatorMCP css_gradient_generator
Generate CSS Grid layout code (grid-template-columns/rows, gap and named grid-template-areas) plus matching HTML.
POST /api/v1/tools/css-grid-generatorMCP css_grid_generator
Minify CSS with csso (optionally merging and reordering rules) or pretty-print it. Syntax problems the parser recovered from are returned as warnings.
POST /api/v1/tools/css-minifierMCP css_minifier
Build a CSS text-shadow from one layer's settings, a JSON list of layers, or a named preset (neon, 3D, outline, long shadow).
POST /api/v1/tools/css-text-shadow-generatorMCP css_text_shadow_generator
Generate CSS for a triangle pointing in any of eight directions, as the classic border trick and as clip-path, plus a tooltip arrow for straight directions.
POST /api/v1/tools/css-triangle-generatorMCP css_triangle_generator
Clean CSV: trim cells, drop empty rows and columns, remove duplicate rows, rename headers, fix ragged rows and drop columns. Returns the cleaned CSV and a report of what changed.
POST /api/v1/tools/csv-cleanerMCP csv_cleaner
Convert CSV (comma, semicolon, tab or pipe separated) to JSON.
POST /api/v1/tools/csv-to-jsonMCP csv_to_json
Turn CSV into SQL: an optional CREATE TABLE with inferred column types, then batched INSERT statements, quoted for PostgreSQL, MySQL, SQLite or SQL Server.
POST /api/v1/tools/csv-to-sqlMCP csv_to_sql
Parse CSV into headers and rows (padded to the same width), optionally filtered by a search term and sorted by a column. Numbers and dates sort naturally.
POST /api/v1/tools/csv-viewerMCP csv_viewer
Convert a curl command into equivalent code: JavaScript fetch, Node.js axios, Python requests, Go net/http, PHP curl or HTTPie. Handles headers, -d/--data*, -F forms, -u auth and common flags; unsupported options come back as warnings.
POST /api/v1/tools/curl-converterMCP curl_converter
Add or subtract years, months, weeks and days (or business days) to a date. Month ends are clamped: 31 January + 1 month = 28/29 February.
POST /api/v1/tools/date-calculatorMCP date_calculator
Time between two dates in years, months and days, plus total days, weeks and business days (Monday–Friday).
POST /api/v1/tools/date-difference-calculatorMCP date_difference_calculator
Days (and a days/hours/minutes/seconds countdown) until a date, or until the next New Year, Valentine's Day, Easter, Halloween, US Thanksgiving or Christmas.
POST /api/v1/tools/days-until-calculatorMCP days_until_calculator
Compare the avalanche (highest APR first) and snowball (smallest balance first) debt payoff strategies: months to debt-free, total interest and payoff order.
POST /api/v1/tools/debt-payoff-calculatorMCP debt_payoff_calculator
Roll dice in standard tabletop notation (2d6+3, 4d6kh3, d20-1, 3d8+2d4) with a cryptographic random source; returns each die, the total, and the possible min, max and average.
POST /api/v1/tools/dice-rollerMCP dice_rollerRandom output
Apply one or more percentage discounts in order (each to the already reduced price): final price, total saving and the equivalent single discount.
POST /api/v1/tools/discount-calculatorMCP discount_calculator
Look up a domain's DNS records (A, AAAA, CNAME, MX, NS, TXT, CAA, SOA) through public resolvers.
POST /api/v1/tools/dns-lookupMCP dns_lookupRandom outputLive network check
Convert one or more docker run commands into a docker-compose.yml: ports, volumes, env vars, networks, restart policy, healthchecks, resource limits and more. Unsupported flags come back as warnings.
POST /api/v1/tools/docker-run-to-composeMCP docker_run_to_compose
Registration data (RDAP, the successor to WHOIS) for a domain or a public IP address: registrar, dates, status, nameservers and DNSSEC.
POST /api/v1/tools/domain-whois-lookupMCP domain_whois_lookupRandom outputLive network check
Estimated pregnancy due date (40 weeks) from the last period, conception date or IVF transfer, with milestone dates and the gestational age on a given day.
POST /api/v1/tools/due-date-calculatorMCP due_date_calculator
SPF (with the DNS lookup count), DKIM, DMARC, MX, MTA-STS, TLS-RPT and BIMI for a domain, with a plain-English verdict.
POST /api/v1/tools/email-auth-checkerMCP email_auth_checkerRandom outputLive network check
Convert a .env file to JSON, YAML, docker run -e flags or a Kubernetes env list, or a flat JSON object back to .env. Reports duplicate keys (last value wins).
POST /api/v1/tools/env-json-converterMCP env_json_converter
Generate realistic fake test data (names, emails on example.com, phones, addresses, UUIDs, IPs from documentation ranges…) as JSON, CSV, SQL INSERTs or NDJSON. A seed makes the output reproducible.
POST /api/v1/tools/fake-data-generatorMCP fake_data_generatorRandom output
Turn plain text into Unicode styles (bold, italic, script, fraktur, double-struck, monospace, circled, small caps, upside down, strikethrough…) for social bios and posts.
POST /api/v1/tools/fancy-text-generatorMCP fancy_text_generator
Find and replace in text, as plain text or a JavaScript regular expression, with case sensitivity and whole-word options. Returns the result and match counts.
POST /api/v1/tools/find-and-replaceMCP find_and_replace
Generate flexbox CSS and HTML for a container and its items (direction, wrap, justify, align, gaps, and per-item flex, align-self and order). Defaults are left out of the CSS.
POST /api/v1/tools/flexbox-playgroundMCP flexbox_playground
Add, subtract, multiply or divide fractions, mixed numbers and decimals exactly, with the simplified result, mixed number, decimal and worked steps.
POST /api/v1/tools/fraction-calculatorMCP fraction_calculator
Fuel needed and cost of a trip from distance, fuel efficiency (L/100 km, km/L, US or UK MPG) and fuel price, optionally round trip and split between people.
POST /api/v1/tools/fuel-cost-calculatorMCP fuel_cost_calculator
Generate frosted-glass (glassmorphism) CSS: translucent background, backdrop blur and saturation (with the -webkit- prefix), border, radius and shadow.
POST /api/v1/tools/glassmorphism-generatorMCP glassmorphism_generator
US-style GPA on a 4.0 scale from letter grades and credits, optionally weighted for honors/AP courses and combined with a previous cumulative GPA.
POST /api/v1/tools/gpa-calculatorMCP gpa_calculator
Score needed on a final exam to reach a target grade, or the weighted average of graded categories (percentages or points like 43/50).
POST /api/v1/tools/grade-calculatorMCP grade_calculator
MD5, SHA-1, SHA-256, SHA-384 and SHA-512 hashes of text (UTF-8).
POST /api/v1/tools/hash-generatorMCP hash_generator
Compute an HMAC (SHA-1, SHA-256, SHA-384 or SHA-512) of a message with a secret key, e.g. to sign or check webhook payloads.
POST /api/v1/tools/hmac-generatorMCP hmac_generator
Freelance hourly and day rate needed to reach a take-home income after tax, business expenses, non-billable time and weeks off.
POST /api/v1/tools/hourly-rate-calculatorMCP hourly_rate_calculator
Generate Apache .htaccess and Nginx redirect rules: single page, bulk list, domain move, force HTTPS, add or remove www, add or remove trailing slashes.
POST /api/v1/tools/htaccess-redirect-generatorMCP htaccess_redirect_generator
Escape text as HTML entities, or decode named (&), decimal (&) and hex (&) character references back to text.
POST /api/v1/tools/html-entity-encoder-decoderMCP html_entity_encoder_decoder
Pretty-print HTML with consistent indentation, or minify it (collapse whitespace, drop comments). <pre>, <textarea>, <script> and <style> contents are kept as written when minifying.
POST /api/v1/tools/html-formatterMCP html_formatter
Build an Apache/nginx .htpasswd file from username:password lines, hashed with bcrypt ($2y$), APR1-MD5 ($apr1$) or SHA-1 ({SHA}).
POST /api/v1/tools/htpasswd-generatorMCP htpasswd_generatorRandom output
Fetch a public URL once (redirects not followed, body not read) and return the status line, response headers, resolved address and timing.
POST /api/v1/tools/http-header-checkerMCP http_header_checkerRandom outputLive network check
Look up HTTP status codes: the reason phrase, what it means, the defining specification and usage notes. Search by code (404), code prefix (40), class (4xx) or words (rate limit).
POST /api/v1/tools/http-status-codesMCP http_status_codes
Inflation at a steady annual rate: what an amount will cost in the future, or what a future amount is worth in today's money, plus purchasing power lost and doubling time.
POST /api/v1/tools/inflation-calculatorMCP inflation_calculator
Convert an IP address between dotted decimal, decimal integer, hex, binary, octal and IPv6 forms (IPv4-mapped included).
POST /api/v1/tools/ip-address-converterMCP ip_address_converter
Validate an IPv6 address and return its expanded and compressed forms, address type, reverse DNS name, embedded IPv4, integer value and, with a prefix, the network range.
POST /api/v1/tools/ipv6-address-toolMCP ipv6_address_tool
Minify JavaScript with terser (mangle names, compress, drop comments) or pretty-print it. Syntax errors come back with line and column.
POST /api/v1/tools/javascript-minifierMCP javascript_minifier
Compare two JSON documents structurally: lists added, removed, changed and moved values with JSONPath-style paths, plus an RFC 6902 JSON Patch that turns the original into the changed document.
POST /api/v1/tools/json-diffMCP json_diff
Validate and pretty-print or minify JSON.
POST /api/v1/tools/json-formatterMCP json_formatter
Validate a JSON document against a JSON Schema (draft 2020-12 or draft-07). Returns valid, every error with its JSON Pointer path and schema keyword, and warnings about unsupported keywords.
POST /api/v1/tools/json-schema-validatorMCP json_schema_validator
Convert a JSON array of objects to CSV.
POST /api/v1/tools/json-to-csvMCP json_to_csv
Generate Go struct types with json tags from a sample JSON document. Integers and floats are kept apart; arrays of objects are merged into one struct.
POST /api/v1/tools/json-to-goMCP json_to_go
Generate Python classes (dataclasses, Pydantic v2 models or TypedDicts) with type hints from a sample JSON document. Keys become snake_case fields, with aliases where needed.
POST /api/v1/tools/json-to-pythonMCP json_to_python
Generate TypeScript interfaces or type aliases from a sample JSON document. Keys missing from some array items become optional.
POST /api/v1/tools/json-to-typescriptMCP json_to_typescript
Convert JSON to XML. Keys with the attribute prefix (default @_) become attributes; arrays become repeated elements.
POST /api/v1/tools/json-to-xmlMCP json_to_xml
Generate Zod schemas (and inferred TypeScript types) from a sample JSON document, optionally detecting string formats such as email, URL, UUID and dates.
POST /api/v1/tools/json-to-zodMCP json_to_zod
Convert JSON to YAML or YAML to JSON.
POST /api/v1/tools/json-yaml-converterMCP json_yaml_converter
Evaluate a JSONPath expression against JSON and return every match with its normalised path, JSON Pointer and value. Filters such as [?(@.price < 10)] run in a safe interpreter (no eval).
POST /api/v1/tools/jsonpath-testerMCP jsonpath_tester
Convert between calendar dates (UTC), Julian Date (JD), Modified Julian Date (MJD) and ordinal dates (YYDDD / YYYYDDD).
POST /api/v1/tools/julian-date-converterMCP julian_date_converter
Decode a JWT's header and payload. Does not verify the signature.
POST /api/v1/tools/jwt-decoderMCP jwt_decoder
Sign a JWT (HS256/384/512 with a shared secret, or RS/PS/ES with a PEM private key), or verify a token's signature and exp/nbf/iat claims.
POST /api/v1/tools/jwt-encoderMCP jwt_encoder
Generate one new signing key pair (ECDSA, Ed25519 or RSA up to 4096 bits): PKCS#8 private key PEM, SPKI public key PEM, OpenSSH public key line and SHA-256 fingerprint. The key is created on PithLab's server and not stored; generate locally for production secrets.
POST /api/v1/tools/key-pair-generatorMCP key_pair_generatorRandom output
Check whether a year is a leap year under Gregorian rules (with the rule that applies and the previous/next leap years), or list the leap years in a range.
POST /api/v1/tools/leap-year-checkerMCP leap_year_checker
Remove hidden characters, smart punctuation and other artefacts from AI-generated text.
POST /api/v1/tools/llm-text-cleanerMCP llm_text_cleaner
Fixed-rate loan or mortgage repayment: monthly payment, total interest, total repaid, a yearly amortisation summary and optionally the full monthly schedule.
POST /api/v1/tools/loan-calculatorMCP loan_calculator
Generate lorem ipsum placeholder text by paragraphs, sentences or words, as plain text or HTML paragraphs. Pass a seed for repeatable output.
POST /api/v1/tools/lorem-ipsum-generatorMCP lorem_ipsum_generatorRandom output
Generate random MAC addresses (locally administered unicast by default, optional vendor OUI prefix), or inspect and reformat an existing one.
POST /api/v1/tools/mac-address-generatorMCP mac_address_generatorRandom output
Identify and decode an unknown string: Base64, Base32, hex, URL/percent encoding, JWTs, Unix timestamps, UUIDs, HTML entities, binary, Morse, ROT13, punycode, IP addresses and more. Returns matches ranked by confidence.
POST /api/v1/tools/magic-decoderMCP magic_decoder
Turn CSV, TSV or an existing Markdown table into a tidy GitHub-flavoured Markdown table, with column alignment and padded columns. The first row is the header.
POST /api/v1/tools/markdown-table-generatorMCP markdown_table_generator
What a meeting costs from its length and attendees' pay. Annual salaries are converted at 2,080 working hours a year.
POST /api/v1/tools/meeting-cost-calculatorMCP meeting_cost_calculator
Find the hours on a date when working hours overlap across 2 to 6 time zones (DST-aware), with each overlap in UTC and every zone's local time.
POST /api/v1/tools/meeting-plannerMCP meeting_planner
Fetch a page (first 1 MB) and report its title, description, canonical, robots, Open Graph and Twitter tags, hreflang, H1s and JSON-LD types, with fixes.
POST /api/v1/tools/meta-tag-checkerMCP meta_tag_checkerRandom outputLive network check
Generate HTML <head> tags for SEO and social sharing (title, description, canonical, robots, Open Graph, Twitter card), with length advice.
POST /api/v1/tools/meta-tag-generatorMCP meta_tag_generator
Find the MIME type and Content-Type header for a file extension or filename, the extensions for a MIME type, or search the table. Optionally detect a file's real type from its first bytes (magic numbers).
POST /api/v1/tools/mime-type-lookupMCP mime_type_lookup
Translate text to International Morse code or Morse back to text, with the playback duration at a given speed.
POST /api/v1/tools/morse-code-translatorMCP morse_code_translator
Maximum home price you can afford from income, debts, down payment and mortgage rate, using front-end and back-end debt-to-income (DTI) limits including property tax, insurance and HOA.
POST /api/v1/tools/mortgage-affordability-calculatorMCP mortgage_affordability_calculator
Spell text with the NATO/ICAO phonetic alphabet (Alfa, Bravo, Charlie…), or turn phonetic words back into text.
POST /api/v1/tools/nato-phonetic-alphabetMCP nato_phonetic_alphabet
Convert a whole number of any size between binary, octal, decimal, hexadecimal and any base from 2 to 36.
POST /api/v1/tools/number-base-converterMCP number_base_converter
Adjust the lightness of palette colours as little as possible (in OKLCH, hue kept) until chosen foreground/background pairs meet a WCAG contrast target.
POST /api/v1/tools/palette-contrast-fixerMCP palette_contrast_fixer
Random diceware-style passphrases from the EFF large word list (7,776 words), chosen with a cryptographic random source, with their entropy in bits.
POST /api/v1/tools/passphrase-generatorMCP passphrase_generatorRandom output
Random passwords from a cryptographic random source.
POST /api/v1/tools/password-generatorMCP password_generatorRandom output
Estimate a password's strength like zxcvbn: entropy in bits, a 0–4 score, detected weak patterns (common passwords, sequences, keyboard runs, dates, repeats), estimated crack times and suggestions.
POST /api/v1/tools/password-strength-checkerMCP password_strength_checker
Convert PEM to DER (as Base64 or hex, with an optional ASN.1 structure dump), or wrap Base64/hex DER in PEM armour with a detected or chosen label.
POST /api/v1/tools/pem-der-converterMCP pem_der_converter
Percentages: X% of Y, X as a percentage of Y, change from X to Y, increase or decrease X by Y%.
POST /api/v1/tools/percentage-calculatorMCP percentage_calculator
Look up TCP and UDP port numbers: the service, what it's for, and security notes for ports that are risky to expose. Search by port, list, range or service name.
POST /api/v1/tools/port-number-lookupMCP port_number_lookup
Profit, margin (profit ÷ price) and markup (profit ÷ cost) from cost and price, or the selling price for a target margin or markup.
POST /api/v1/tools/profit-margin-calculatorMCP profit_margin_calculator
Convert CSS pixels to rem or rem to pixels for a given root font size (16px by default).
POST /api/v1/tools/px-to-rem-converterMCP px_to_rem_converter
Generate a QR code as an SVG image for a URL, text, email, phone number, SMS, vCard contact or map location.
POST /api/v1/tools/qr-code-generatorMCP qr_code_generator
Fairly pick random winners from a list of names (no repeats), or shuffle the names into balanced random teams. Uses a cryptographic random source.
POST /api/v1/tools/random-name-pickerMCP random_name_pickerRandom output
Random integers or decimals in an inclusive range from a cryptographic random source, with or without duplicates (unbiased at any range size), optionally sorted.
POST /api/v1/tools/random-number-generatorMCP random_number_generatorRandom output
Random strings from chosen character sets (or a custom alphabet), each character drawn uniformly with a cryptographic random source.
POST /api/v1/tools/random-string-generatorMCP random_string_generatorRandom output
Cryptographically random tokens for API keys, session secrets and webhooks, as hex, Base64, Base64url or Base62, with an optional prefix such as sk_live_.
POST /api/v1/tools/random-token-generatorMCP random_token_generatorRandom output
Simplify a ratio (4:6 → 2:3, with percentages), solve a proportion A:B = C:D for the missing value, or split an amount in a ratio.
POST /api/v1/tools/ratio-calculatorMCP ratio_calculator
Readability scores for English text (Flesch reading ease, Flesch–Kincaid grade, Gunning fog, SMOG, Coleman–Liau, ARI) plus counts of long sentences, passive voice, adverbs and complex words.
POST /api/v1/tools/readability-checkerMCP readability_checker
Run text through a chain of PithLab operations in order (decode, format, convert, change case, sort, dedupe, hash…) and return each step's output.
POST /api/v1/tools/recipe-builderMCP recipe_builder
Follow a public URL's redirect chain hop by hop (up to 10 hops), returning each status, Location and headers, the final URL, and whether it loops.
POST /api/v1/tools/redirect-checkerMCP redirect_checkerRandom outputLive network check
Run a JavaScript regular expression against text: every match with its position and capture groups, an optional replacement result, and a plain-English explanation of the pattern. Runs are time-limited.
POST /api/v1/tools/regex-testerMCP regex_tester
Remove repeated lines from text, keeping the first occurrence of each and the original order.
POST /api/v1/tools/remove-duplicate-linesMCP remove_duplicate_lines
Remove blank lines from text, or collapse runs of blank lines into one.
POST /api/v1/tools/remove-empty-linesMCP remove_empty_lines
Compare buying a home with renting and investing the difference, year by year: net worth of each, the break-even year and who is ahead at the end. Ignores taxes on gains, tax relief and PMI.
POST /api/v1/tools/rent-vs-buy-calculatorMCP rent_vs_buy_calculator
Project retirement savings from current savings, monthly contributions (optionally rising each year) and an expected return, in nominal and today's money, with the monthly income from a safe-withdrawal rate.
POST /api/v1/tools/retirement-calculatorMCP retirement_calculator
PTR (reverse DNS) names for a public IPv4 or IPv6 address, with a forward-confirmed (FCrDNS) check.
POST /api/v1/tools/reverse-dns-lookupMCP reverse_dns_lookupRandom outputLive network check
Reverse text by characters (keeping emoji and accents intact), by word order, or by line order.
POST /api/v1/tools/reverse-textMCP reverse_text
Generate a robots.txt (default rules, per-crawler groups, AI crawler blocking, sitemaps), or test whether a crawler may fetch a URL under a robots.txt.
POST /api/v1/tools/robots-txt-generatorMCP robots_txt_generator
Test whether a URL path is allowed for a crawler under a site's robots.txt (fetched, or passed in), using Google's longest-match rules.
POST /api/v1/tools/robots-txt-testerMCP robots_txt_testerLive network check
Return on investment: gain or loss and ROI in percent, plus the annualised return (CAGR) when a holding period is given.
POST /api/v1/tools/roi-calculatorMCP roi_calculator
Convert a whole number to Roman numerals (1 to 3999, or up to 3,999,999 with vinculum overlines) or Roman numerals to a number. The direction is detected from the input.
POST /api/v1/tools/roman-numeral-converterMCP roman_numeral_converter
Convert pay between hourly, daily, weekly, biweekly, semi-monthly, monthly and annual figures for a given work schedule (gross, before tax).
POST /api/v1/tools/salary-calculatorMCP salary_calculator
Savings goal planner: the monthly deposit needed to reach a target by a deadline, or how long a given monthly deposit takes, with monthly interest.
POST /api/v1/tools/savings-goal-calculatorMCP savings_goal_calculator
Generate schema.org JSON-LD structured data (Article, FAQ, HowTo, Product, LocalBusiness, Organization, Person, Event, Breadcrumbs, WebSite, Recipe), checked against Google's required and recommended properties.
POST /api/v1/tools/schema-markup-generatorMCP schema_markup_generator
Evaluate a maths expression safely (no eval): + − × ÷ ^, brackets, factorial (!), percent, trig and inverse trig, hyperbolic, logs, roots, exp, abs, rounding, and the constants pi, e and tau.
POST /api/v1/tools/scientific-calculatorMCP scientific_calculator
Scan text (code, config, logs, .env files) for leaked secrets such as AWS keys, GitHub and Stripe tokens, private keys, JWTs and passwords in URLs. Findings carry line, column, severity and a masked preview, never the raw secret.
POST /api/v1/tools/secret-scannerMCP secret_scanner
Grade pasted HTTP response headers (A+ to F) for security: CSP, HSTS, framing, nosniff, Referrer-Policy, Permissions-Policy, cross-origin policies, cookies and information leaks. Nothing is fetched.
POST /api/v1/tools/security-headers-checkerMCP security_headers_checker
Find a site's security.txt (/.well-known/security.txt, then /security.txt) and validate it against RFC 9116, or validate content you pass in.
POST /api/v1/tools/security-txt-checkerMCP security_txt_checkerRandom outputLive network check
Fetch an XML sitemap or sitemap index (up to 5 MB each, 50 child sitemaps), count URLs and report invalid XML, lastmod, http, off-host and duplicate URLs.
POST /api/v1/tools/sitemap-checkerMCP sitemap_checkerRandom outputLive network check
Generate sitemap.xml from a list of URLs (with optional lastmod, changefreq and priority), validated against the sitemaps.org protocol.
POST /api/v1/tools/sitemap-generatorMCP sitemap_generator
Bedtimes for a wake-up time, or wake-up times for a bedtime, timed to whole 90-minute sleep cycles (6, 5, 4 or 3 cycles).
POST /api/v1/tools/sleep-calculatorMCP sleep_calculator
Turn a title into a URL slug.
POST /api/v1/tools/slug-generatorMCP slug_generator
Sort lines alphabetically, naturally (1, 2, 10), by length, or shuffle them, with options to reverse, de-duplicate and drop blank lines.
POST /api/v1/tools/sort-linesMCP sort_lines
Format or minify SQL.
POST /api/v1/tools/sql-formatterMCP sql_formatter
Connect to a public host over TLS and report whether its certificate is trusted, the protocol and cipher, and the chain with expiry dates and days left.
POST /api/v1/tools/ssl-checkerMCP ssl_checkerRandom outputLive network check
Escape or unescape a string for JSON, JavaScript, Java/C#, Python, regular expressions, CSV, SQL, POSIX shell or HTML attributes.
POST /api/v1/tools/string-escaperMCP string_escaper
Network, broadcast, mask, host range and host count for an IPv4 CIDR.
POST /api/v1/tools/subnet-calculatorMCP subnet_calculator
Total monthly and yearly cost of a list of subscriptions billed weekly, monthly, quarterly or yearly, with cost per use and the saving from cancelling some.
POST /api/v1/tools/subscription-cost-calculatorMCP subscription_cost_calculator
Basal metabolic rate (Mifflin–St Jeor) and total daily energy expenditure for an adult, with calorie targets to lose, maintain or gain weight and macro grams.
POST /api/v1/tools/tdee-calculatorMCP tdee_calculator
Clean pasted text: strip HTML to plain text, straighten smart quotes, plain dashes and ellipses, remove emoji or non-ASCII characters, Unicode-normalise and fix line endings.
POST /api/v1/tools/text-cleanerMCP text_cleaner
Compare two texts line by line (Myers diff) and return added, removed and unchanged lines, plus a unified-style text diff.
POST /api/v1/tools/text-diffMCP text_diff
Encrypt text with a password (AES-256-GCM, key from PBKDF2-HMAC-SHA256 with 600,000 iterations, random salt and IV) as one Base64 string, or decrypt such a string. Compatible with the PithLab Text Encryption tool.
POST /api/v1/tools/text-encryptionMCP text_encryptionRandom output
Convert text to its UTF-8 bytes as space-separated binary (8-bit) or hex groups, or decode binary/hex bytes back to text.
POST /api/v1/tools/text-to-binaryMCP text_to_binary
Hours worked between two clock times minus a break (crossing midnight if needed), or the total of a list of durations, as h/m, H:MM and decimal hours.
POST /api/v1/tools/time-duration-calculatorMCP time_duration_calculator
Convert a wall-clock date and time in one IANA time zone to other zones, DST-aware, with offsets and day shifts.
POST /api/v1/tools/time-zone-converterMCP time_zone_converter
Tip and total for a bill, split between people, optionally rounding each share up to a whole currency unit.
POST /api/v1/tools/tip-calculatorMCP tip_calculator
Convert TOML to JSON or JSON to TOML (TOML 1.0). TOML dates become ISO 8601 strings in JSON; notes explain anything that can't be represented exactly.
POST /api/v1/tools/toml-json-converterMCP toml_json_converter
Generate the current and next TOTP (RFC 6238) codes for a Base32 secret, as an authenticator app would, plus an otpauth:// URI.
POST /api/v1/tools/totp-generatorMCP totp_generator
Inspect every character in text: code point, name, category, script, UTF-8/UTF-16 bytes, escapes, and warnings for invisible, bidi-control and look-alike (homoglyph) characters. Can also escape the text or strip invisible characters.
POST /api/v1/tools/unicode-character-inspectorMCP unicode_character_inspector
Convert a value between units of length, mass, temperature, volume, area, speed, data, time, energy, pressure or fuel economy. Leave out `to` to get every unit in the category.
POST /api/v1/tools/unit-converterMCP unit_converter
Convert a Unix timestamp (seconds or milliseconds, detected automatically) to a date.
POST /api/v1/tools/unix-timestamp-converterMCP unix_timestamp_converter
Percent-encode or decode text for URLs.
POST /api/v1/tools/url-encoder-decoderMCP url_encoder_decoder
Split a URL into its parts with the WHATWG URL parser: protocol, credentials, host, port (explicit, default and effective), path segments, decoded query parameters and fragment. Nothing is fetched.
POST /api/v1/tools/url-parserMCP url_parser
Check a link for phishing red flags without visiting it: lookalike and punycode domains, brand names in subdomains, IP hosts, shorteners, risky TLDs and schemes, credentials in URLs. Returns a 0–100 score and a verdict. Offline heuristics, not a blocklist lookup.
POST /api/v1/tools/url-safety-checkerMCP url_safety_checker
Browser, engine, operating system, device and bot detection from a User-Agent string.
POST /api/v1/tools/user-agent-parserMCP user_agent_parser
Add UTM campaign parameters to a URL (replacing any existing ones, keeping other parameters and the #fragment), or parse the UTM parameters out of a tagged URL.
POST /api/v1/tools/utm-builderMCP utm_builder
Random version 4 UUIDs.
POST /api/v1/tools/uuid-generatorMCP uuid_generatorRandom output
Add VAT (or sales tax/GST) to a net price, or remove it from a gross, tax-inclusive price.
POST /api/v1/tools/vat-calculatorMCP vat_calculator
ISO 8601 week number, ISO week date, day of year and quarter for a date, or the Monday–Sunday dates of a given ISO week.
POST /api/v1/tools/week-number-calculatorMCP week_number_calculator
Spin a wheel of 2 to 200 entries: picks one entry uniformly at random with a cryptographic random source (the API returns the result, without the animation).
POST /api/v1/tools/wheel-spinnerMCP wheel_spinnerRandom output
Trim lines, collapse repeated spaces, expand tabs, join lines or remove all whitespace from text.
POST /api/v1/tools/whitespace-removerMCP whitespace_remover
Generate a Wi-Fi QR code (SVG) that phones scan to join a network, plus the WIFI: payload text.
POST /api/v1/tools/wifi-qr-code-generatorMCP wifi_qr_code_generator
Count words, characters, sentences and paragraphs, with reading time.
POST /api/v1/tools/word-counterMCP word_counter
Count how often each word (or two- and three-word phrase) appears in text, with optional English stop-word removal. Returns the top terms with counts and percentages.
POST /api/v1/tools/word-frequency-counterMCP word_frequency_counter
Current (or given) time in several IANA time zones, with date, UTC offset, day/night and the difference from a reference zone.
POST /api/v1/tools/world-clockMCP world_clock
Validate XML, then pretty-print it with consistent indentation or minify it. Errors report the line and column.
POST /api/v1/tools/xml-formatterMCP xml_formatter
Convert XML to JSON.
POST /api/v1/tools/xml-to-jsonMCP xml_to_json