

Text Manipulation and Converter
Core Utility
Available ActionsEach successful request consumes credits as outlined below.
remove-line-breaks5crremove-extra-spaces5crsort-lines5crremove-duplicate-lines5cradd-quotes5crtabs-to-spaces5crspaces-to-tabs5crtrim-whitespace5crremove-empty-lines5crnormalize-whitespace5crindent-text5crdedent-text5crwrap-text5crunwrap-text5crreverse-lines5crchange-case5crreverse-text5crremove-accents5cralternate-case5crsmart-case-detect5crcount-lines5crcount-words5crcount-characters5cr
Details
Text Tools is a comprehensive text manipulation utility providing 23 operations across four categories: text manipulation, case conversion, special transformations, and counting. Text manipulation operations handle whitespace and line-level transformations. These include removing line breaks, collapsing extra spaces, sorting lines alphabetically (ascending or descending), removing duplicate lines while preserving order, adding quotes (single, double, or backtick) to each line, converting between tabs and spaces with configurable width (1–16), trimming whitespace from lines, removing empty lines, normalizing whitespace comprehensively, indenting and dedenting text, wrapping text at a specified column width (10–200), unwrapping text, and reversing line order. Case conversion supports 11 formats through a single action: camelCase, snake_case, PascalCase, kebab-case, SCREAMING_SNAKE_CASE, UPPERCASE, lowercase, Title Case, Sentence case, dot.case, and path/case. Special transformations include reversing text character-by-character, removing accents and diacritical marks (é becomes e), alternating case (aLtErNaTiNg), and detecting the case style of input text. Counting operations return line count, word count, and detailed character statistics including totals with and without spaces, letter count, digit count, and space count.
Use Cases
Converting variable names between programming language conventions, cleaning and normalizing imported data, meeting word or character count requirements, formatting text to specific column widths, sorting and deduplicating configuration lists, standardizing tabs versus spaces, generating quoted values for CSV or config files, creating URL slugs from Unicode text, detecting inconsistent naming conventions in codebases, preparing text for systems requiring ASCII-only input, batch formatting log files or text exports, removing accents for search indexing.
Actions(23)
remove-line-breaks5cr1 param(1 required)Convert multi-line text to a single line by replacing line breaks with spaces.
remove-line-breaks5cr1 param(1 required)Convert multi-line text to a single line by replacing line breaks with spaces.
textrequiredstringThe input text to process.
remove-extra-spaces5cr1 param(1 required)Collapse multiple consecutive spaces into a single space.
remove-extra-spaces5cr1 param(1 required)Collapse multiple consecutive spaces into a single space.
textrequiredstringThe input text to process.
sort-lines5cr2 params(1 required)Sort lines alphabetically in ascending or descending order.
sort-lines5cr2 params(1 required)Sort lines alphabetically in ascending or descending order.
textrequiredstringThe input text to process.
orderstringSort order: 'asc' for ascending (default), 'desc' for descending.
Values:
ascdesc
Default:
ascremove-duplicate-lines5cr1 param(1 required)Remove duplicate lines while preserving the order of first occurrences.
remove-duplicate-lines5cr1 param(1 required)Remove duplicate lines while preserving the order of first occurrences.
textrequiredstringThe input text to process.
add-quotes5cr2 params(1 required)Wrap each line in quotes of the specified type.
add-quotes5cr2 params(1 required)Wrap each line in quotes of the specified type.
textrequiredstringThe input text to process.
quote_typestringType of quote: 'single', 'double' (default), or 'backtick'.
Values:
singledoublebacktick
Default:
doubletabs-to-spaces5cr2 params(1 required)Convert tab characters to spaces with configurable tab width.
tabs-to-spaces5cr2 params(1 required)Convert tab characters to spaces with configurable tab width.
textrequiredstringThe input text to process.
tab_widthintegerNumber of spaces per tab (1-16, default: 4).
Default:
4Range: 1 - 16
spaces-to-tabs5cr2 params(1 required)Convert leading spaces to tab characters.
spaces-to-tabs5cr2 params(1 required)Convert leading spaces to tab characters.
textrequiredstringThe input text to process.
tab_widthintegerNumber of spaces per tab (1-16, default: 4).
Default:
4Range: 1 - 16
trim-whitespace5cr1 param(1 required)Remove leading and trailing whitespace from each line and the overall text.
trim-whitespace5cr1 param(1 required)Remove leading and trailing whitespace from each line and the overall text.
textrequiredstringThe input text to process.
remove-empty-lines5cr1 param(1 required)Remove all blank/empty lines from the text.
remove-empty-lines5cr1 param(1 required)Remove all blank/empty lines from the text.
textrequiredstringThe input text to process.
normalize-whitespace5cr1 param(1 required)Comprehensive cleanup: trim each line, remove empty lines, collapse multiple spaces.
normalize-whitespace5cr1 param(1 required)Comprehensive cleanup: trim each line, remove empty lines, collapse multiple spaces.
textrequiredstringThe input text to process.
indent-text5cr3 params(1 required)Add consistent indentation to every line of text.
indent-text5cr3 params(1 required)Add consistent indentation to every line of text.
textrequiredstringThe input text to process.
indent_charstringCharacter for indentation: 'space' (default) or 'tab'.
Values:
spacetab
Default:
spaceindent_countintegerNumber of indent characters per level (1-16, default: 4).
Default:
4Range: 1 - 16
dedent-text5cr1 param(1 required)Remove common leading whitespace from all lines.
dedent-text5cr1 param(1 required)Remove common leading whitespace from all lines.
textrequiredstringThe input text to process.
wrap-text5cr2 params(1 required)Wrap text to fit within a specified column width.
wrap-text5cr2 params(1 required)Wrap text to fit within a specified column width.
textrequiredstringThe input text to process.
widthintegerMaximum line width (10-200, default: 80).
Default:
80Range: 10 - 200
unwrap-text5cr1 param(1 required)Join all lines into a single line, removing line breaks.
unwrap-text5cr1 param(1 required)Join all lines into a single line, removing line breaks.
textrequiredstringThe input text to process.
reverse-lines5cr1 param(1 required)Reverse the order of lines (last line becomes first).
reverse-lines5cr1 param(1 required)Reverse the order of lines (last line becomes first).
textrequiredstringThe input text to process.
change-case5cr2 params(2 required)Convert text to a target case format. Supports 11 case types: camel (camelCase), snake (snake_case), pascal (PascalCase), kebab (kebab-case), screaming-snake (SCREAMING_SNAKE_CASE), upper (UPPERCASE), lower (lowercase), title (Title Case), sentence (Sentence case), dot (dot.case), path (path/case).
change-case5cr2 params(2 required)Convert text to a target case format. Supports 11 case types: camel (camelCase), snake (snake_case), pascal (PascalCase), kebab (kebab-case), screaming-snake (SCREAMING_SNAKE_CASE), upper (UPPERCASE), lower (lowercase), title (Title Case), sentence (Sentence case), dot (dot.case), path (path/case).
textrequiredstringThe input text to process.
case_typerequiredstringTarget case type for conversion.
Values:
camelsnakepascalkebabscreaming-snakeupperlowertitlesentencedotpath
reverse-text5cr1 param(1 required)Reverse the entire text character by character.
reverse-text5cr1 param(1 required)Reverse the entire text character by character.
textrequiredstringThe input text to process.
remove-accents5cr1 param(1 required)Strip accents and diacritical marks from characters.
remove-accents5cr1 param(1 required)Strip accents and diacritical marks from characters.
textrequiredstringThe input text to process.
alternate-case5cr1 param(1 required)Alternate between uppercase and lowercase for each character position.
alternate-case5cr1 param(1 required)Alternate between uppercase and lowercase for each character position.
textrequiredstringThe input text to process.
smart-case-detect5cr1 param(1 required)Detect the case style of input text. Returns: upper, lower, title, snake, kebab, dot, path, camel, pascal, mixed, or empty.
smart-case-detect5cr1 param(1 required)Detect the case style of input text. Returns: upper, lower, title, snake, kebab, dot, path, camel, pascal, mixed, or empty.
textrequiredstringThe input text to analyze.
count-lines5cr1 param(1 required)Count the number of lines in the text.
count-lines5cr1 param(1 required)Count the number of lines in the text.
textrequiredstringThe input text to count.
count-words5cr1 param(1 required)Count the number of words in the text.
count-words5cr1 param(1 required)Count the number of words in the text.
textrequiredstringThe input text to count.
count-characters5cr1 param(1 required)Return detailed character statistics: total characters, characters without spaces, letters, digits, spaces, and line count.
count-characters5cr1 param(1 required)Return detailed character statistics: total characters, characters without spaces, letters, digits, spaces, and line count.
textrequiredstringThe input text to analyze.
Frequently Asked Questions
How do I connect this tool to an external agent?
You can install the local MCP server by opening a terminal and running:
Install commands
npm install -g @agentpmt/mcp-router
agentpmt-setupThis will connect you to local agents like Claude Code, Windsurf, Grok Build, Cursor, etc.
Alternatively you can connect to the hosted version with this config block, no installation required:
Hosted MCP config
{
"mcpServers": {
"agentpmt": {
"type": "streamable-http",
"url": "https://api.agentpmt.com/mcp",
"headers": {
"Authorization": "Bearer <AGENTPMT_BEARER_TOKEN>",
"x-instance-metadata": "{\"client\":\"generic-mcp\",\"platform\":\"remote\"}"
}
}
}
}View MCP Connection Instructions for more details.
How does an external agent use this tool?
After the external agent is connected to an Agent Group that can use this tool, paste this prompt into the agent:
Agent prompt
Call the AgentPMT-Tool-Search-and-Execution tool with action 'get_schema' and tool_id 69489d03b54506f955d789e9 ("Text Manipulation and Converter"). Then call the same tool with action 'call_tool', tool_id 69489d03b54506f955d789e9, and the parameters needed for my request.
The agent should fetch the tool schema first, collect the required parameters for your request, and then call the tool through AgentPMT.





