Textavia Mcp
About
Local-first MCP server exposing 163 Textavia developer utilities for JSON formatting and validation, Base64 encode/decode, CSV conversion, Markdown tables, regex testing, hashing, text cleanup, case conversion, random values, timestamps, privacy scrubbing, and developer conversio
Details
- Author
- Caravaca-Labs
- Downloads
- 321
- Categories
- Developer Tools
Jump to
- Exposes 163 tools for developer data tasks
- Supports JSON, Base64, CSV, Markdown tables, YAML, XML, HTML
- Offers regex testing, hashes, JWT decoding, and timestamps
- Includes random values, color helpers, and text cleanup
- Provides case conversion and privacy scrubbing
- Runs locally as a Node.js package
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Textavia McpCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Install the package globally with npm install -g @textavia/mcp, then add the MCP configuration to your MCP client's settings file using the command npx -y @textavia/mcp.
textavia.case_alternating
Alternate letter case. Supports stdin, positional text, and file input.
textavia.case_camel
Convert to camelCase. Supports stdin, positional text, and file input.
textavia.case_capitalized
Capitalize the first character, keep the rest. Supports stdin, positional text, and file input.
textavia.case_dot
Convert to dot.case. Supports stdin, positional text, and file input.
textavia.case_inverse
Invert the case of every letter. Supports stdin, positional text, and file input.
textavia.case_kebab
Convert to kebab-case. Supports stdin, positional text, and file input.
textavia.case_lower
Convert text to lowercase. Supports stdin, positional text, and file input.
textavia.case_pascal
Convert to PascalCase. Supports stdin, positional text, and file input.
textavia.case_screaming_snake
Convert to SCREAMING_SNAKE_CASE. Supports stdin, positional text, and file input.
textavia.case_sentence
Capitalize the first character only. Supports stdin, positional text, and file input.
textavia.case_slug
Convert to a URL slug. Supports stdin, positional text, and file input.
textavia.case_snake
Convert to snake_case. Supports stdin, positional text, and file input.
textavia.case_title
Capitalize the first letter of each word. Supports stdin, positional text, and file input.
textavia.case_upper
Convert text to uppercase. Supports stdin, positional text, and file input.
textavia.cipher_caesar
Shifts A-Z letters by --shift positions. Default shift is 3.
textavia.cipher_morse_decode
Decodes Morse words separated by slash characters.
textavia.cipher_morse_encode
Encodes alphanumeric text to Morse code.
textavia.cipher_nato_decode
Converts NATO phonetic words back to letters.
textavia.cipher_nato_encode
Converts A-Z letters to NATO phonetic words.
textavia.cipher_rot13
Applies the reversible ROT13 substitution cipher.
textavia.csv_clean
Parses CSV, trims every cell, drops fully empty rows, and writes deterministic CSV.
textavia.csv_dedupe
Removes duplicate CSV rows while preserving the first occurrence.
textavia.csv_select
Selects columns by header name from a simple delimited table.
textavia.csv_sort
Sorts CSV rows by a header column, preserving the header row.
textavia.csv_to_json
Converts a CSV file with a unique header row into an array of JSON objects.
textavia.csv_to_markdown_table
Converts CSV rows into a GitHub-flavored Markdown table using the first row as headers.
textavia.csv_to_tsv
Converts simple delimited rows from comma-separated to tab-separated.
textavia.csv_validate
Checks whether every CSV row has the same column count for a simple delimiter.
textavia.html_escape
Escapes ampersands, angle brackets, quotes, and apostrophes for HTML text nodes.
textavia.html_strip
Removes HTML tags and script/style blocks while preserving text content.
textavia.html_to_markdown
Converts common HTML block and inline tags to Markdown and strips unsupported tags.
textavia.html_unescape
Unescapes the named entities emitted by Textavia HTML escape.
textavia.json_to_csv
Converts a JSON object or array of objects to deterministic CSV with stable headers.
textavia.json_to_markdown_table
Converts a JSON object or array of objects to a GitHub-flavored Markdown table.
textavia.json_to_yaml
Serializes JSON-compatible data to Textavia’s deterministic YAML subset.
textavia.markdown_strip
Removes common Markdown markup while preserving readable text.
textavia.markdown_table_create
Creates a GitHub-flavored Markdown table from JSON object rows or CSV rows.
textavia.markdown_table_to_csv
Parses a GitHub-flavored Markdown table and emits deterministic CSV.
textavia.markdown_table_to_json
Parses a GitHub-flavored Markdown table and emits JSON objects keyed by header.
textavia.markdown_to_html
Converts a conservative Markdown subset to HTML without network access.
textavia.toml_format
Parses simple TOML and re-emits keys in sorted order.
textavia.toml_to_json
Converts simple key/value TOML to JSON.
textavia.toml_to_yaml
Converts simple TOML to a JSON-compatible YAML subset.
textavia.toml_validate
Validates simple key/value TOML used by Textavia conversion tools.
textavia.xml_format
Tokenizes XML tags and text, then writes a consistently indented XML document.
textavia.xml_to_json
Converts XML elements, text, and attributes to a deterministic JSON object.
textavia.xml_validate
Checks whether XML-like input has balanced tags using a conservative scanner.
textavia.yaml_format
Parses the built-in YAML subset and re-emits deterministic YAML.
textavia.yaml_to_json
Parses Textavia’s deterministic YAML subset and returns JSON-compatible data.
textavia.yaml_to_toml
Converts the built-in YAML subset to simple TOML.
textavia.yaml_validate
Validates YAML accepted by the built-in YAML to JSON converter.
textavia.color_contrast
Accepts two hex colors and reports contrast ratio plus WCAG AA/AAA pass booleans.
textavia.color_convert
Converts a 6-digit hex color to RGB and CSS rgb() output.
textavia.cron_explain
Explains standard five-field cron expressions using UTC field ranges.
textavia.cron_next
Computes upcoming UTC run times for a standard five-field cron expression.
textavia.hash_file
Convenience wrapper around the hash tools. Defaults to SHA256 and reads files byte-safely.
textavia.hash_md5
Hashes text, stdin, or a streaming file to a MD5 hex digest.
textavia.hash_sha1
Hashes text, stdin, or a streaming file to a SHA1 hex digest.
textavia.hash_sha224
Hashes text, stdin, or a streaming file to a SHA224 hex digest.
textavia.hash_sha256
Hashes text, stdin, or a streaming file to a SHA256 hex digest.
textavia.hash_sha384
Hashes text, stdin, or a streaming file to a SHA384 hex digest.
textavia.hash_sha512
Hashes text, stdin, or a streaming file to a SHA512 hex digest.
textavia.json_format
Parses and reformats JSON with configurable indentation. Supports --write and --backup.
textavia.json_minify
Parses and re-emits compact JSON with no whitespace.
textavia.json_query
Queries a JSON value with a simple dot path. Arrays use numeric path segments.
textavia.json_repair
Attempts conservative repairs such as removing trailing commas before parsing.
textavia.json_sort_keys
Parses JSON and re-emits it with recursively sorted object keys.
textavia.json_stringify
Converts raw text into a JSON string literal.
textavia.json_to_toml
Converts a flat JSON object with scalar or array values to TOML.
textavia.json_to_types
Generates a basic TypeScript interface from a representative JSON object.
textavia.json_unstringify
Parses a JSON string literal and outputs raw text.
textavia.json_validate
Reports whether JSON is valid and includes parse diagnostics on failure.
textavia.jwt_decode
Decodes JWT header and payload locally. Signature not verified.
textavia.dev_qr
Generates a standards-compliant QR code SVG for the input text. No network access is used.
textavia.regex_explain
Provides a concise structural summary of a JavaScript regular expression.
textavia.regex_test
Evaluates a JavaScript regex in a worker thread so catastrophic backtracking can be terminated.
textavia.timestamp_from_date
Parses a date string and returns the Unix epoch value.
textavia.timestamp_now
Returns the current ISO time and Unix epoch value.
textavia.timestamp_parse
Parses an ISO 8601 string or Unix number into ISO and Unix forms.
textavia.timestamp_to_date
Converts a Unix epoch value to an ISO and local date string.
textavia.utm_build
Adds utm_source, utm_medium, utm_campaign, utm_term, and utm_content to a base URL.
textavia.base64_basic_auth_decode
Decodes a Basic base64 user:password value. Decoded only; not verified.
textavia.base64_css_data_uri
Encodes text or file bytes as a data URL wrapped for CSS.
textavia.base64_data_url
Encodes bytes to a data URL or decodes a data URL to bytes (use --decode).
textavia.base64_data_url_to_file
Returns decoded bytes from a data URL; use --out to write the file.
textavia.base64_decode
Decodes a Base64 string to UTF-8 text by default, or raw bytes with --bytes.
textavia.base64_detect
Uses a conservative local heuristic to detect Base64-looking text.
textavia.base64_encode
Encodes UTF-8 text or raw bytes to a Base64 string. File input is read as bytes.
textavia.base64_from_hex
Converts a hexadecimal byte string to Base64.
textavia.base64_gzip_check
Decodes Base64 locally and checks for a gzip payload.
textavia.base64_gzip_decode
Utility companion for gzip-check; decodes and gunzips Base64 input.
textavia.base64_gzip_encode
Compresses UTF-8 text with gzip and emits Base64.
textavia.base64_normalize
Normalizes whitespace, URL-safe alphabet variants, and padding.
textavia.base64_repair
Repairs common copy/paste issues such as whitespace, missing padding, and URL-safe alphabet characters.
textavia.base64_to_ascii
Decodes Base64 bytes using ASCII encoding.
textavia.base64_to_hex
Decodes Base64 bytes and prints a hexadecimal string.
textavia.base64_validate
Reports whether the input is well-formed Base64.
textavia.binary_decode
Decodes whitespace-separated 8-bit binary groups into UTF-8 text.
textavia.binary_encode
Encodes UTF-8 text or file bytes into 8-bit binary groups.
textavia.hex_decode
Decodes a hex string to UTF-8 text by default, or bytes with --bytes.
textavia.hex_encode
Encodes UTF-8 text or file bytes to a hex string.
textavia.roman_from_number
Converts integers from 1 to 3999 into canonical Roman numerals.
textavia.roman_to_number
Parses canonical Roman numerals from I to MMMCMXCIX.
textavia.url_decode
Decodes a URL-encoded component or full URL.
textavia.url_encode
Encodes text for use in a URL component or full URL.
textavia.utf8_decode
Decodes space-separated UTF-8 hex bytes into text.
textavia.utf8_encode
Encodes text to space-separated UTF-8 hex bytes.
textavia.lines_compare
Compares --file (list A) against --other (list B) and reports items unique to each and shared.
textavia.lines_count
Reports the line count.
textavia.lines_duplicates
Reports each duplicate line once. Requires full input.
textavia.lines_intersect
Computes line intersection. Use --other or separate blocks with a line containing "---".
textavia.lines_remove_duplicates
Alias for unique that removes duplicate lines, preserving order.
textavia.lines_remove_empty
Drops lines that are empty after trimming.
textavia.lines_reverse
Reverses the order of input lines.
textavia.lines_shuffle
Randomly shuffles input lines locally.
textavia.lines_sort
Sorts lines with optional direction, numeric, and case-insensitive flags.
textavia.lines_subtract
Computes A minus B. Use --other or separate blocks with a line containing "---".
textavia.lines_trim
Trims surrounding whitespace from each line.
textavia.lines_union
Computes a first-seen union. Use --other or separate blocks with a line containing "---".
textavia.lines_unique
Removes duplicate lines, preserving first-seen order. Requires full input.
textavia.lorem_paragraphs
Generates placeholder lorem ipsum paragraphs.
textavia.lorem_sentences
Generates placeholder lorem ipsum sentences.
textavia.lorem_words
Generates placeholder lorem ipsum words.
textavia.numbers_sort
Parses whitespace/comma-separated numbers and sorts them.
textavia.numbers_stats
Reports count, min, max, sum, mean, and median.
textavia.random_boolean
Outputs true or false with equal probability.
textavia.random_choice
Chooses one or more random non-empty lines from the input.
textavia.random_date
Generates random ISO dates between --from and --to.
textavia.random_float
Alias-style float generator for decimal random values.
textavia.random_integer
Generates random integers between --min and --max.
textavia.random_ip
Generates random IPv4 addresses.
textavia.random_letter
Generates random lowercase letters.
textavia.random_month
Picks random month names.
textavia.random_number
Generates random floating point numbers between --min and --max.
textavia.random_password
Generates a secure password with configurable pools and length.
textavia.random_uuid
Generates RFC 4122 v4 UUIDs using node:crypto.
textavia.text_alternating_case
Alternates casing across letters in the input text.
textavia.text_capitalize
Capitalizes each word for a readable capitalized style.
textavia.text_clean
Collapses runs of whitespace into single spaces and trims the result.
textavia.text_diff
Reports added, removed, and unchanged lines. Use --other or separate blocks with a line containing "---".
textavia.text_duplicate_words
Reports case-insensitive words that appear more than once.
textavia.text_frequency
Produces a case-insensitive word frequency map.
textavia.text_inverse_case
Swaps uppercase and lowercase letters.
textavia.text_lower
Lowercases all characters. Supports stdin, positional text, and files.
textavia.text_normalize_whitespace
Collapses repeated whitespace into single spaces and trims the result.
textavia.text_plain
Removes markup tags and collapses whitespace.
textavia.text_privacy_scrub
Replaces emails, phone numbers, IPs, URLs, JWTs, basic auth, common API keys, and credit-card-like numbers with placeholders. Heuristic; review output before sharing.
textavia.text_remove_chars
Removes every character listed in --chars from the input.
textavia.text_remove_formatting
Removes zero-width characters, BOM, and non-printable control characters.
textavia.text_remove_line_breaks
Converts multi-line text into a single line with normalized spacing.
textavia.text_repeat
Repeats the input --count times with an optional separator.
textavia.text_replace
Replaces every occurrence of --search with --replacement.
textavia.text_reverse
Reverses text by grapheme cluster so emoji and combining marks are preserved.
textavia.text_sentence_case
Capitalizes the first character and lowercases the rest.
textavia.text_sentence_count
Counts sentences using the same heuristic as text stats.
textavia.text_stats
Computes counts and byte size for the input text.
textavia.text_syllables
Estimates syllable count using a heuristic vowel-group rule.
textavia.text_title_case
Title-cases the text.
textavia.text_upper
Uppercases all characters.
textavia.unicode_inspect
Reports each code point with its value, hex, name, and combining status.
textavia.unicode_normalize
Normalizes text to NFC, NFD, NFKC, or NFKD.
textavia.words_sort
Splits input into words and sorts them alphabetically.
textavia.words_unique
Splits input into words and preserves the first occurrence of each word.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"textavia mcp": {
"textavia": {
"command": "npx",
"args": [
"-y",
"@textavia/mcp"
]
}
}
}
}
McpServers
{
"textavia": {
"command": "npx",
"args": [
"-y",
"@textavia/mcp"
]
}
}
Textavia MCP
Textavia MCP is a local-first Model Context Protocol server for the Textavia developer toolkit. It exposes Textavia’s standard tool registry to MCP-compatible agents, allowing them to format, validate, convert, inspect, and clean developer data using a local Node.js package. Textavia MCP currently exposes 163 tools across JSON, Base64, CSV, Markdown tables, YAML, TOML, XML, HTML, regex testing, hashes, JWT decoding, timestamps, random values, color helpers, text cleanup, case conversion, and privacy scrubbing.Install
``bash
npm install -g @textavia/mcp
`
MCP config
Add Textavia MCP to your MCP configuration:
`json
{
"mcpServers": {
"textavia": {
"command": "npx",
"args": ["-y", "@textavia/mcp"]
}
}
}
``
Links
GitHub: https://github.com/Caravaca-Labs/textavia-cli npm: https://www.npmjs.com/package/@textavia/mcp Smithery: https://smithery.ai/servers/caravaca-labs/textaviaPopular tools and guides
JSON formatter: https://textavia.com/tools/json-formatter Base64 tools: https://textavia.com/tools/base64 Text cleaner: https://textavia.com/tools/text-cleaner Privacy scrubber: https://textavia.com/tools/privacy-scrubber Invisible text generator: https://textavia.com/tools/invisible-text-generator Glitch text converter: https://textavia.com/tools/glitch-text-converter Discord fonts generator: https://textavia.com/tools/discord-fonts-generator Underline text generator: https://textavia.com/tools/underline Stacked text generator: https://textavia.com/tools/stacked-text-generator Lorem ipsum generator: https://textavia.com/tools/lorem-ipsum-generator Upside down text generator: https://textavia.com/tools/upside-down Word cloud generator: https://textavia.com/tools/word-cloud-generator Aesthetic text generator: https://textavia.com/tools/aesthetic-text-generator- Random number generator guide: https://textavia.com/blog/random-number-generator-fair-picks
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





