Textavia Mcp

by Caravaca-Labs

321 downloads
Not rated
GitHub

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

- 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:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Textavia Mcp
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. 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/textavia

Popular 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
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.