Achlens

io.github.mscott9160-web由 GitHub 账号 mscott9160-web 发布v0.1.2更新于 Oct 24, 2026

Local-first MCP server and CLI for validating and generating synthetic ACH files.

已验证STDIO仅桌面金融开发者工具

概览

AI 生成的概览

本地优先的 MCP 服务器与命令行工具,用于校验、解释、脱敏并生成合成 ACH 文件,不进行任何银行或网络调用。

可以做什么
  • 校验 ACH 文件并汇总其内容
  • 分页查看解析后的定长记录,解释控制总计与路由校验结果
  • 查询 ACH 代码,并默认对敏感字段脱敏
  • 按种子生成可复现的合成 ACH 测试文件
  • 修复文件中派生的控制值
适用场景
适合在处理 ACH 支付文件格式时,让助手检查结构与控制总计、解释校验结果,或生成可复现的合成测试数据。面向开发与测试,而非真实支付处理。
运行要求
以本地 Python 进程通过 stdio 运行,可用 uvx(或 pip)从 PyPI 安装。未声明账号、API 密钥或环境变量。若要让服务器按路径读取文件,需设置 ACHLENS_ALLOWED_ROOTS,否则须直接传入文件内容。
安装前请注意
仅限合成数据使用;项目声明其不是银行网关、合规顾问或传输系统。敏感字段默认脱敏,但仍应避免输入真实账号或支付数据。控制值修复与生成会写出文件内容,使用前请检查输出。按路径访问受 ACHLENS_ALLOWED_ROOTS 限制。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Achlens,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Achlens

[PyPI] [Python] [License] [CI]

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

text
uv syncuv run achlens --helpuv run achlens validate tests/fixtures/golden/sample_valid.achuv 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:

powershell
uvx achlens generate --sec PPD --entries 5 --seed 7 |	Set-Content -Encoding ascii synthetic.ach

Run the MCP server over stdio:

text
uv run achlens serve

MCP Client Setup

Install the published package with uvx; it starts the server locally over stdio and does not transmit ACH files.

VS Code and Copilot

Create .vscode/mcp.json in your workspace:

json
{  "servers": {    "achlens": {      "type": "stdio",      "command": "uvx",      "args": ["achlens"]    }  }}

Claude Desktop

Add the following entry to the mcpServers object in Claude Desktop's MCP configuration:

json
{  "achlens": {    "command": "uvx",    "args": ["achlens"]  }}

By default, MCP tools accept ACH content directly but cannot read local paths. To allow read-only access to a specific directory, set ACHLENS_ALLOWED_ROOTS in the server environment to that directory. Use synthetic ACH data only.

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.

text
uv syncuv run achlens --helpPYTHONPATH=. uv run pytest -quv 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:

text
pip install -e . pytestachlens --helpachlens validate tests/fixtures/golden/sample_valid.achachlens generate --sec PPD --entries 5 --seed 7PYTHONPATH=. 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.

来源:README.md,提交 2887fbd

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.2最新Sep 16, 2026

评分

已满足适用检查项的 40%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

    请在仓库或注册中心条目中声明许可证。