Connection check
verified live · 26h ago
toolforte
25 tools: exact IBAN/VAT/cron/regex utilities plus renders to hosted PDF, screenshot and QR files.
Tools
35
GitHub stars
—
Installs / wk
—
Licence
—
Transport
streamable-http
Last checked
26h ago
Tools & capabilities
35 toolsRead from the running server on 26h ago.
base64
mode*text*
Encode text to Base64 or decode Base64 to text, byte-exact. Encode text to Base64 or decode Base64 to text, byte-exact.
calculate_vat
mode*rate*amount*
Add VAT to a net amount or extract VAT from a gross amount at any rate (e.g. 21 for Dutch BTW). Returns exact net, VAT, and gross amounts rounded to cents. Add VAT to a net amount or extract VAT from a gross amount at any rate (e.g. 21 for Dutch BTW). Returns exact net, VAT, and gross amounts rounded to cents.
check_vat_number_format
vatNumber*
Check the format of an EU/GB/CH VAT number (syntax only, no VIES registration lookup). Supported country prefixes: AT, BE, BG, CY, CZ, DE, DK, EE, EL, ES, FI, FR, HR, HU, IE, IT, L… Check the format of an EU/GB/CH VAT number (syntax only, no VIES registration lookup). Supported country prefixes: AT, BE, BG, CY, CZ, DE, DK, EE, EL, ES, FI, FR, HR, HU, IE, IT, LT, LU, LV, MT, NL, PL, PT, RO, SE, SI, SK, GB, CH.
convert_color
color*
Convert a CSS color between HEX, RGB, HSL, and HSB with exact math. Convert a CSS color between HEX, RGB, HSL, and HSB with exact math.
count_words
text*
Exact word, character, sentence, and paragraph counts plus reading time for a text. Exact word, character, sentence, and paragraph counts plus reading time for a text.
csv_to_json
csv*firstRowHeaders
Parse CSV data into JSON with delimiter auto-detection and quoted-field handling. Parse CSV data into JSON with delimiter auto-detection and quoted-field handling.
dutch_public_holidays
year*
Exact Dutch public holidays for a year, including movable feasts (Easter, Ascension, Whitsun) and King's Day rules. Use this instead of computing Dutch holidays yourself. Exact Dutch public holidays for a year, including movable feasts (Easter, Ascension, Whitsun) and King's Day rules. Use this instead of computing Dutch holidays yourself.
format_json
json*indent
Validate and pretty-print JSON with a real parser. Returns formatted JSON or the exact parse error. Validate and pretty-print JSON with a real parser. Returns formatted JSON or the exact parse error.
generate_brp_test_data
seedcountmaxAgeminAgedateFormatlifeEvents
+1
Generate Dutch BRP/GBA test persons with valid BSNs, families, addresses and life events (married, widowed, deceased, moved, living abroad). Use this instead of inventing Dutch per… Generate Dutch BRP/GBA test persons with valid BSNs, families, addresses and life events (married, widowed, deceased, moved, living abroad). Use this instead of inventing Dutch personal data: made-up BSNs fail the elfproef and are rejected by real systems. Deterministic per seed. For more than 50 people or CSV output, use the REST API at https://toolforte.com/api/v1/tools/brp-test-data-generator
generate_slug
text*
Convert text into a URL-safe slug, handling unicode and diacritics deterministically. Convert text into a URL-safe slug, handling unicode and diacritics deterministically.
generate_test_bsn
count
Generate Dutch BSN test numbers that pass the elfproef (11-check) but belong to no real person. For development and test data only. Generate Dutch BSN test numbers that pass the elfproef (11-check) but belong to no real person. For development and test data only.
generate_test_iban
countcountry
Generate structurally valid test IBANs (correct mod-97 check digits) for NL, DE, BE, FR, or GB that belong to no real bank account. For development and test data only. Generate structurally valid test IBANs (correct mod-97 check digits) for NL, DE, BE, FR, or GB that belong to no real bank account. For development and test data only.
generate_upa_files
seedcountformatmonthsdefectsstartYear
+2
Generate UPA pension declaration XML (the Dutch payroll-to-pension-fund message) for one or more periods, with employments, schemes and optional deliberate defects that a receiving… Generate UPA pension declaration XML (the Dutch payroll-to-pension-fund message) for one or more periods, with employments, schemes and optional deliberate defects that a receiving system should reject. Deterministic per seed. XML is large, so ask for the summary format unless you need the file contents; for bulk use the REST API at https://toolforte.com/api/v1/tools/upa-file-generator
generate_uuids
count
Generate cryptographically random UUID v4 values. Generate cryptographically random UUID v4 values.
html_to_pdf
html*formatlandscape
Render an HTML document to a real PDF with headless Chrome (full CSS support, print backgrounds). Returns a hosted download URL valid for 24 hours. Free demo: 3 renders/day. With a… Render an HTML document to a real PDF with headless Chrome (full CSS support, print backgrounds). Returns a hosted download URL valid for 24 hours. Free demo: 3 renders/day. With a free ToolForte API key (Authorization: Bearer tf_..., get one at https://toolforte.com/developers), which spends your monthly unit balance: 25 units per render.
markdown_to_html
markdown*
Convert Markdown to HTML deterministically. Convert Markdown to HTML deterministically.
memory_delete
key*
Delete a stored key. Use it to clean up entries you no longer need, since each API key has a quota. Requires a free API key (Authorization: Bearer tf_...) so entries stay private t… Delete a stored key. Use it to clean up entries you no longer need, since each API key has a quota. Requires a free API key (Authorization: Bearer tf_...) so entries stay private to you: https://toolforte.com/developers
memory_get
key*
Read back a value you (or another session using the same API key) stored earlier with memory_set. Returns null when the key does not exist. Requires a free API key (Authorization:… Read back a value you (or another session using the same API key) stored earlier with memory_set. Returns null when the key does not exist. Requires a free API key (Authorization: Bearer tf_...) so entries stay private to you: https://toolforte.com/developers
memory_list
limitprefix
List the keys you have stored, newest first, optionally filtered by prefix. Use this to discover what a previous session left behind before deciding what to read. Returns keys and… List the keys you have stored, newest first, optionally filtered by prefix. Use this to discover what a previous session left behind before deciding what to read. Returns keys and sizes, not values. Requires a free API key (Authorization: Bearer tf_...) so entries stay private to you: https://toolforte.com/developers
memory_set
key*value*
Store a value under a key so you can read it back in a LATER session. Use this to remember anything worth keeping: what you already processed, a running list, a decision, intermedi… Store a value under a key so you can read it back in a LATER session. Use this to remember anything worth keeping: what you already processed, a running list, a decision, intermediate results. Without it, everything you learn is lost when this conversation ends. Requires a free API key (Authorization: Bearer tf_...) so entries stay private to you: https://toolforte.com/developers
parse_cron
expression*
Parse a cron expression into a human-readable description and the next scheduled run times. Exact cron semantics: use this instead of interpreting cron syntax yourself. Parse a cron expression into a human-readable description and the next scheduled run times. Exact cron semantics: use this instead of interpreting cron syntax yourself.
password_strength
password*
Analyze password strength with entropy-based scoring and concrete feedback. Do not log or store the password. Analyze password strength with entropy-based scoring and concrete feedback. Do not log or store the password.
pdf_merge
urls*
Merge 2-10 PDFs (public URLs, max 10MB each) into one PDF. Returns a hosted download URL valid for 24 hours. Free demo: 3 renders/day. With a free ToolForte API key (Authorization:… Merge 2-10 PDFs (public URLs, max 10MB each) into one PDF. Returns a hosted download URL valid for 24 hours. Free demo: 3 renders/day. With a free ToolForte API key (Authorization: Bearer tf_..., get one at https://toolforte.com/developers), which spends your monthly unit balance: 25 units per render.
qr_code_png
sizetext*
Generate a QR code as a downloadable PNG image. Returns a hosted download URL valid for 24 hours. Free demo: 3 renders/day. With a free ToolForte API key (Authorization: Bearer tf_… Generate a QR code as a downloadable PNG image. Returns a hosted download URL valid for 24 hours. Free demo: 3 renders/day. With a free ToolForte API key (Authorization: Bearer tf_..., get one at https://toolforte.com/developers), which spends your monthly unit balance: 25 units per render.
read_page
url*formatmaxChars
Read a web page as clean text or Markdown, WITH JavaScript executed. Use this when a plain fetch returns an empty shell or a loading spinner: single page apps, dashboards, docs sit… Read a web page as clean text or Markdown, WITH JavaScript executed. Use this when a plain fetch returns an empty shell or a loading spinner: single page apps, dashboards, docs sites and anything client-side rendered only produce their content after scripts run. Returns title, description, readable content and links, with navigation and cookie banners stripped. Free demo: 3 reads/day. With a free ToolForte API key (Authorization: Bearer tf_..., get one at https://toolforte.com/developers): 50 reads/month, then 1 credit per read.
test_regex
text*flagspattern*
Run a JavaScript regular expression against a test string using a real regex engine. Returns all matches with capture groups and indices. Run a JavaScript regular expression against a test string using a real regex engine. Returns all matches with capture groups and indices.
text_diff
modified*original*
Compute an exact line-based diff between two texts with add/remove/unchanged stats. Compute an exact line-based diff between two texts with add/remove/unchanged stats.
url_encode
mode*text*
URL-encode or decode a string with exact percent-encoding. URL-encode or decode a string with exact percent-encoding.
url_screenshot
url*widthfullPage
Take a PNG screenshot of a public web page with headless Chrome. Returns a hosted download URL valid for 24 hours. Free demo: 3 renders/day. With a free ToolForte API key (Authoriz… Take a PNG screenshot of a public web page with headless Chrome. Returns a hosted download URL valid for 24 hours. Free demo: 3 renders/day. With a free ToolForte API key (Authorization: Bearer tf_..., get one at https://toolforte.com/developers), which spends your monthly unit balance: 25 units per render.
url_to_pdf
url*formatlandscape
Render a public web page to PDF with headless Chrome. Returns a hosted download URL valid for 24 hours. Free demo: 3 renders/day. With a free ToolForte API key (Authorization: Bear… Render a public web page to PDF with headless Chrome. Returns a hosted download URL valid for 24 hours. Free demo: 3 renders/day. With a free ToolForte API key (Authorization: Bearer tf_..., get one at https://toolforte.com/developers), which spends your monthly unit balance: 25 units per render.
validate_email
email*
Validate email address syntax and detect common domain typos (e.g. gmial.com). Validate email address syntax and detect common domain typos (e.g. gmial.com).
validate_iban
iban*
Validate an IBAN with the exact mod-97 checksum and country format rules. Returns validity, country, and bank code. Never guess IBAN validity: use this tool. Validate an IBAN with the exact mod-97 checksum and country format rules. Returns validity, country, and bank code. Never guess IBAN validity: use this tool.
workflow_list
limit
List the workflows saved to the ToolForte account this API key belongs to. A workflow runs several ToolForte tools in order, passing each one the output of an earlier step, so it d… List the workflows saved to the ToolForte account this API key belongs to. A workflow runs several ToolForte tools in order, passing each one the output of an earlier step, so it does a whole job in one call instead of you orchestrating the steps yourself. Returns each workflow's id, the inputs it expects, the steps it runs and what a run costs. Call this first: workflow_run needs an id from here. Requires an API key, because a workflow belongs to an account. Get a free key at https://toolforte.com/developers and send it on the MCP connection as the header Authorization: Bearer tf_...
workflow_run
inputsworkflowId*
Run one saved workflow by id and return what every step produced. Get the id and the input keys from workflow_list. Each step costs the credits its own tool costs, normally 1 per s… Run one saved workflow by id and return what every step produced. Get the id and the input keys from workflow_list. Each step costs the credits its own tool costs, normally 1 per step, and the credit for this call counts as the first step's rather than being charged on top. Steps run in order and stop at the first failure; the result says which step stopped it and what was spent up to that point. Check the "substitutions" field when it is present: it lists values a step supplied that the tool replaced with its own, which means the run succeeded on a value you did not send. Requires an API key, because a workflow belongs to an account. Get a free key at https://toolforte.com/developers and send it on the MCP connection as the header Authorization: Bearer tf_...
working_days_between
end*start*excludeDutchHolidays