LeashIndex Get the report

Index / data

Textavia MCP

io-github-catorch-textavia-mcp declares 163 capabilities across 163 tools, with 2 critical issues.

100/100 exposureHigh exposure

Manifest recorded 2026-10-15 from tools/list answered by the npm package @textavia/mcp@0.1.2 (published to npm as @textavia/mcp, listed in the official MCP registry as io.github.catorch/textavia-mcp 0.1.2), run in an isolated container with no network access and no credentials. The date changes only when the manifest does. Not verified by a maintainer.

Issues

These describe what this server's manifest declares. A product can provide controls that MCP has no way to express — token revocation, an admin console, audit logs — and this page cannot see them. The absence of a declaration is not evidence that a control is absent.

critical · no-revocation · All 163 tools

163 of 163 tools declare no way for the customer to switch them off once granted. This applies to every tool because MCP has no field in which to declare a revocation mechanism; the product may provide one outside MCP that a manifest cannot show.

critical · irreversible-uncapped · 11 of 163 tools

11 tools are classified as irreversible and declare no limit.

high · no-expiry · All 163 tools

163 of 163 tools declare no expiry. This applies to every tool because MCP has no field in which to declare an expiry; the product may provide one outside MCP that a manifest cannot show.

high · no-audit-trail · All 163 tools

163 of 163 tools declare no record of their actions that the customer can read. This applies to every tool because MCP has no field in which to declare an audit requirement; the product may provide one outside MCP that a manifest cannot show.

high · uncapped-write · 134 of 163 tools

134 tools can modify data and declare no limit.

low · uncapped-read · 18 of 163 tools

18 tools can read data and declare no limit.

Declared capabilities

How each tool was read. declared means the server's own annotation said so — self-reported and unverified. inferred is from the tool's name. assumed means nothing indicated either way.

ToolRead asBasis
textavia.case_alternatingwrite assumed
textavia.case_camelwrite assumed
textavia.case_capitalizedwrite assumed
textavia.case_dotwrite assumed
textavia.case_inversewrite assumed
textavia.case_kebabwrite assumed
textavia.case_lowerwrite assumed
textavia.case_pascalwrite assumed
textavia.case_screaming_snakewrite assumed
textavia.case_sentencewrite assumed
textavia.case_slugwrite assumed
textavia.case_snakewrite assumed
textavia.case_titlewrite assumed
textavia.case_upperwrite assumed
textavia.cipher_caesarwrite assumed
textavia.cipher_morse_decodewrite assumed
textavia.cipher_morse_encodewrite assumed
textavia.cipher_nato_decodewrite assumed
textavia.cipher_nato_encodewrite assumed
textavia.cipher_rot13write assumed
textavia.csv_cleanwrite assumed
textavia.csv_dedupedelete inferred
textavia.csv_selectwrite assumed
textavia.csv_sortwrite assumed
textavia.csv_to_jsonwrite assumed
textavia.csv_to_markdown_tablewrite assumed
textavia.csv_to_tsvwrite assumed
textavia.csv_validateread inferred
textavia.html_escapewrite assumed
textavia.html_stripdelete inferred
textavia.html_to_markdownwrite assumed
textavia.html_unescapewrite assumed
textavia.json_to_csvwrite assumed
textavia.json_to_markdown_tablewrite assumed
textavia.json_to_yamlwrite assumed
textavia.markdown_stripdelete inferred
textavia.markdown_table_createwrite inferred
textavia.markdown_table_to_csvwrite assumed
textavia.markdown_table_to_jsonwrite assumed
textavia.markdown_to_htmlwrite assumed
textavia.toml_formatwrite assumed
textavia.toml_to_jsonwrite assumed
textavia.toml_to_yamlwrite assumed
textavia.toml_validateread inferred
textavia.xml_formatwrite assumed
textavia.xml_to_jsonwrite assumed
textavia.xml_validateread inferred
textavia.yaml_formatwrite assumed
textavia.yaml_to_jsonwrite assumed
textavia.yaml_to_tomlwrite assumed
textavia.yaml_validateread inferred
textavia.color_contrastwrite assumed
textavia.color_convertwrite assumed
textavia.cron_explainread inferred
textavia.cron_nextwrite assumed
textavia.hash_filewrite assumed
textavia.hash_md5write assumed
textavia.hash_sha1write assumed
textavia.hash_sha224write assumed
textavia.hash_sha256write assumed
textavia.hash_sha384write assumed
textavia.hash_sha512write assumed
textavia.json_formatwrite assumed
textavia.json_minifywrite assumed
textavia.json_queryread inferred
textavia.json_repairwrite assumed
textavia.json_sort_keyswrite assumed
textavia.json_stringifywrite assumed
textavia.json_to_tomlwrite assumed
textavia.json_to_typeswrite assumed
textavia.json_unstringifywrite assumed
textavia.json_validateread inferred
textavia.jwt_decodewrite assumed
textavia.dev_qrwrite assumed
textavia.regex_explainwrite assumed
textavia.regex_testwrite assumed
textavia.timestamp_from_datewrite assumed
textavia.timestamp_nowread inferred
textavia.timestamp_parsewrite assumed
textavia.timestamp_to_datewrite assumed
textavia.utm_buildwrite inferred
textavia.base64_basic_auth_decodewrite assumed
textavia.base64_css_data_uriwrite assumed
textavia.base64_data_urlwrite assumed
textavia.base64_data_url_to_fileread inferred
textavia.base64_decodewrite assumed
textavia.base64_detectwrite assumed
textavia.base64_encodewrite assumed
textavia.base64_from_hexwrite assumed
textavia.base64_gzip_checkwrite assumed
textavia.base64_gzip_decodewrite assumed
textavia.base64_gzip_encodewrite assumed
textavia.base64_normalizewrite assumed
textavia.base64_repairwrite assumed
textavia.base64_to_asciiwrite assumed
textavia.base64_to_hexwrite assumed
textavia.base64_validateread inferred
textavia.binary_decodewrite assumed
textavia.binary_encodewrite assumed
textavia.hex_decodewrite assumed
textavia.hex_encodewrite assumed
textavia.roman_from_numberwrite assumed
textavia.roman_to_numberwrite assumed
textavia.url_decodewrite assumed
textavia.url_encodewrite assumed
textavia.utf8_decodewrite assumed
textavia.utf8_encodewrite assumed
textavia.lines_compareread inferred
textavia.lines_countread inferred
textavia.lines_duplicateswrite assumed
textavia.lines_intersectwrite assumed
textavia.lines_remove_duplicatesdelete inferred
textavia.lines_remove_emptydelete inferred
textavia.lines_reversewrite assumed
textavia.lines_shufflewrite assumed
textavia.lines_sortwrite assumed
textavia.lines_subtractwrite assumed
textavia.lines_trimwrite assumed
textavia.lines_unionwrite assumed
textavia.lines_uniquedelete inferred
textavia.lorem_paragraphswrite assumed
textavia.lorem_sentenceswrite assumed
textavia.lorem_wordswrite assumed
textavia.numbers_sortwrite assumed
textavia.numbers_statsread inferred
textavia.random_booleanwrite assumed
textavia.random_choicewrite assumed
textavia.random_datewrite assumed
textavia.random_floatwrite assumed
textavia.random_integerwrite assumed
textavia.random_ipwrite assumed
textavia.random_letterwrite assumed
textavia.random_monthwrite assumed
textavia.random_numberwrite assumed
textavia.random_passwordwrite assumed
textavia.random_uuidwrite assumed
textavia.text_alternating_casewrite assumed
textavia.text_capitalizewrite assumed
textavia.text_cleanwrite assumed
textavia.text_diffwrite inferred
textavia.text_duplicate_wordswrite assumed
textavia.text_frequencywrite assumed
textavia.text_inverse_casewrite assumed
textavia.text_lowerwrite assumed
textavia.text_normalize_whitespacewrite assumed
textavia.text_plaindelete inferred
textavia.text_privacy_scrubsend inferred
textavia.text_remove_charsdelete inferred
textavia.text_remove_formattingdelete inferred
textavia.text_remove_line_breaksdelete inferred
textavia.text_repeatread inferred
textavia.text_replaceread inferred
textavia.text_reversewrite assumed
textavia.text_sentence_casewrite assumed
textavia.text_sentence_countread inferred
textavia.text_statsread inferred
textavia.text_syllablesread inferred
textavia.text_title_casewrite assumed
textavia.text_upperwrite assumed
textavia.unicode_inspectwrite assumed
textavia.unicode_normalizewrite assumed
textavia.words_sortwrite assumed
textavia.words_uniquewrite assumed
Answering this question about your own agent? The self-serve stack report applies the same reading to your own stack or server and gives you a dated document you can hand to a customer's security review. It is generated in your browser, with nobody to wait for. Buying one does not change this page, its score or its place in the index — see Independence.
Maintain this server? If this page misreads your manifest, or your server has changed, submit its current tools/list response and it will be re-scored and dated. Corrections are published alongside the original, not in place of it.