String-LE
Extract every string in a codebase, with its position, so a person can read them
No editor in the loop? npx -y string-le-mcp runs the same engine as an MCP server, so an agent can call extract_strings with nothing else installed, and cargo install string-le puts the same check in a terminal. Every way to install it.

What String-LE does
Locale files, config files and CSV exports all bury their string values in structure. String-LE flattens that structure away: run one command and every string value in the document lands in a new editor, ready to paste into a translation tool or scan by eye. It parses JSON, YAML, CSV, TOML, INI and .env, and streams large CSVs rather than loading them whole.
What people use it for
i18n prep
Flatten locale files into a clean list of translatable values, without the key hierarchy in the way.
Config review
See every string value in a TOML, INI or .env file at a glance.
CSV mining
Pull one column, several, or all of them — large files stream rather than loading whole.
6 commands in the palette
Open the command palette and type the name. Nothing is bound to a shortcut by default — the editor's keymap is the user's, not ours.
string-le.extractStringsstring-le.postProcess.dedupestring-le.postProcess.sortstring-le.csv.toggleStreamingstring-le.openSettingsstring-le.helpInstall String-LE
VS Code
ext install nolindnaidoo.string-leOpen Quick Open (Cmd/Ctrl+P) and paste.
Cursor / VSCodium
cursor --install-extension OffensiveEdge.string-leVS Code forks pull from Open VSX, where the namespace is OffensiveEdge.
Zed
npx -y string-le-mcpWorks in Zed today — add the command above as a custom MCP server from the agent panel, and extract_strings appears in its tool list. There is no one-click listing in Zed's extension registry yet.
AI agents
npx -y string-le-mcpRuns String-LE's engine as an MCP server, so an agent can call extract_strings with no editor involved. VS Code 1.101+ needs nothing — the extension registers it for you.
Where it ships
One engine, 6 places to get it. The ids differ by registry — copy the one for the editor you use.
Zed
built from Rust in the tool repostring-leOpenno listing yet — this links Zed’s instructions for adding it by hand
Where String-LE lives
- VS Code Marketplacestring-le
- Open VSXfor Cursor and VSCodium
- npmstring-le-mcp
- GitHubsource, issues, changelog
- MCP registryio.github.nolindnaidoo/string-le
The other 15
Extract every hardcoded number in a codebase, so a person can check them
Extract every file path in a codebase, and say whether it still points at anything
Extract every color in a codebase, and say which ones are not in your palette
Extract every URL in a codebase, with its protocol and exact position
Extract every date and timestamp, and the exact instant each one resolves to
Extract every quantity with its unit, normalized, and refuse the ambiguous ones by name
Extract every UUID, ULID, NanoID, ObjectId and Snowflake, and decode the time inside
Extract every IP address, CIDR block and MAC, normalized and classified by scope
Find every regex in a codebase, and report which can be driven into catastrophic backtracking
Check whether a page is scrapeable before the scraper is written, and say when it cannot tell
Find where one dependency is constrained differently across a repository's manifests
Identify the i18n library a project uses, then audit its catalogs by that library's rules
Find hardcoded credentials in a codebase, and never print one into the report
Compare the dotenv files in a tree, and say which keys are missing from which
Find the Unicode that hides meaning — bidi controls, invisibles, homoglyphs, mixed scripts