io.github.mscott9160-web/achlens
Local-first MCP server and CLI for validating and generating synthetic ACH files.
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
achlensclaude mcp add achlens -- uvx achlens==0.1.2
{
"mcpServers": {
"achlens": {
"command": "uvx",
"args": [
"achlens==0.1.2"
]
}
}
}
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Achlens
Achlens is a local-first Python MCP server and CLI for inspecting synthetic ACH files. It parses fixed-width records, validates structure and control totals, explains findings, masks sensitive fields, repairs derived controls, and generates deterministic test files. It never transmits ACH files or makes bank/network calls.
Use synthetic data only. This project is not a bank gateway, compliance advisor, or transmission system.
Quick Start
uv sync
uv run achlens --help
uv run achlens validate tests/fixtures/golden/sample_valid.ach
uv run achlens generate --sec PPD --entries 5 --seed 7 > synthetic.ach
In Windows PowerShell, use an explicit ASCII encoding because PowerShell's
default > redirection can write UTF-16 output that is not valid ACH text:
uvx achlens generate --sec PPD --entries 5 --seed 7 |
Set-Content -Encoding ascii synthetic.ach
Run the MCP server over stdio:
uv run achlens serve
The MCP server exposes validation, summaries, parsed-record paging, control explanations, routing checks, code lookup, synthetic generation, and control repair. See docs/tools.md for the current tool surface.
Sensitive fields are masked by default. Configure ACHLENS_ALLOWED_ROOTS to
enable MCP path inputs; otherwise provide file content directly. See
SECURITY.md for the data and write boundaries.
Development
This project uses uv.
uv sync
uv run achlens --help
PYTHONPATH=. uv run pytest -q
uv run ruff check .
uv run ruff format --check .
uv run mypy --strict src
Without uv
The CLI and test suite also work with plain pip:
pip install -e . pytest
achlens --help
achlens validate tests/fixtures/golden/sample_valid.ach
achlens generate --sec PPD --entries 5 --seed 7
PYTHONPATH=. pytest
Set PYTHONPATH=. from the repository root when running tests so fixture and
script imports resolve. In Windows PowerShell, use
$env:PYTHONPATH = "."; pytest.
Never add real payment data, account numbers, or ACH files to this repository.
Frequently asked questions
What is io.github.mscott9160-web/achlens?
Local-first MCP server and CLI for validating and generating synthetic ACH files.
How do I install io.github.mscott9160-web/achlens?
It runs on your machine. In Claude Code: claude mcp add achlens -- uvx achlens==0.1.2. For other clients, paste the JSON configuration from this page into their MCP settings.
Does io.github.mscott9160-web/achlens need an API key?
Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.
Is io.github.mscott9160-web/achlens open source?
Its code is public on GitHub, but the repository does not declare a standard license.
Who maintains io.github.mscott9160-web/achlens?
It is published by mscott9160-web. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.