@rog0x/mcp-regex-tools
v1.0.1
Published
Regex and text processing tools for AI agents via MCP
Maintainers
Readme
mcp-regex-tools
Regex and text processing tools for AI agents via the Model Context Protocol (MCP).
Tools
| Tool | Description |
|------|-------------|
| regex_test | Test a regex pattern against text. Returns all matches with indices, captured groups, and named groups. |
| regex_replace | Find and replace using regex with support for capture group references ($1, $2, $&, $<name>). |
| regex_extract | Extract all matches of a pattern from text as a structured array. Optionally return only a specific capture group. |
| regex_explain | Parse a regex pattern and return a human-readable explanation of each component and flag. |
| text_transform | Apply common text transformations: camelCase, snake_case, kebab-case, PascalCase, UPPER, lower, title case, reverse, trim, deduplicate lines, sort lines, remove blank lines, count words/chars/lines. Chain multiple transforms in one call. |
Setup
npm install
npm run buildUsage with Claude Desktop
Add this to your Claude Desktop config file:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"regex-tools": {
"command": "node",
"args": ["D:/products/mcp-servers/mcp-regex-tools/dist/index.js"]
}
}
}Usage with Claude Code
claude mcp add regex-tools node D:/products/mcp-servers/mcp-regex-tools/dist/index.jsOr add to your .mcp.json:
{
"mcpServers": {
"regex-tools": {
"command": "node",
"args": ["D:/products/mcp-servers/mcp-regex-tools/dist/index.js"]
}
}
}Examples
Test a regex
regex_test({ pattern: "(\\d{4})-(\\d{2})-(\\d{2})", text: "Today is 2026-03-19 and tomorrow is 2026-03-20" })Replace with capture groups
regex_replace({ pattern: "(\\w+)\\s(\\w+)", replacement: "$2 $1", text: "hello world" })Extract matches
regex_extract({ pattern: "[\\w.]+@[\\w.]+", text: "Contact us at [email protected] or [email protected]" })Explain a regex
regex_explain({ pattern: "^(?:https?://)?(?:www\\.)?([\\w-]+)\\.\\w{2,}$", flags: "i" })Transform text
text_transform({ text: "hello world example", transforms: ["PascalCase"] })
text_transform({ text: "some text\nwith\nlines\nwith\nduplicates\nlines", transforms: ["deduplicate_lines", "sort_lines"] })License
MIT
