关于 achlens
这是一个本地优先的 Python MCP 服务和命令行工具,用于检查合成 ACH 文件。它可验证记录、解释问题、遮蔽敏感字段并生成确定性的测试文件,不会传输数据或连接银行。
主要功能
- 01解析定长 ACH 记录
- 02验证结构和控制总计
- 03解释发现并修复控制值
- 04遮蔽敏感字段
- 05生成确定性的合成文件
适用场景
- 01在本地验证合成 ACH 文件
- 02检查解析记录和路由信息
- 03生成可重复的 ACH 测试样本
- 04修复派生控制值
MCP 相关
stdio MCP 服务提供验证、摘要、记录分页、控制项说明、路由检查、代码查询、合成文件生成和控制项修复。它可直接接收文件内容;也可配置为读取指定目录中的本地路径。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Achlens
Achlens 是一个本地优先的 Python MCP 服务和命令行工具,用于检查合成 ACH 文件。它会解析定宽记录、验证结构和控制总计、解释检查结果、屏蔽敏感字段、修复派生控制值,并生成确定性的测试文件。它绝不会传输 ACH 文件,也不会调用银行或网络服务。
仅使用合成数据。本项目不是银行网关、合规顾问或传输系统。
快速开始
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
在 Windows PowerShell 中,请使用显式的 ASCII 编码,因为 PowerShell 默认的 > 重定向可能会写入 UTF-16 输出,而这不是有效的 ACH 文本:
uvx achlens generate --sec PPD --entries 5 --seed 7 |
Set-Content -Encoding ascii synthetic.ach
通过 stdio 运行 MCP 服务:
uv run achlens serve
MCP 客户端设置
使用 uvx 安装已发布的软件包;它会通过 stdio 在本地启动服务,不会传输 ACH 文件。
VS Code 和 Copilot
在工作区中创建 .vscode/mcp.json:
{
"servers": {
"achlens": {
"type": "stdio",
"command": "uvx",
"args": ["achlens"]
}
}
}
Claude Desktop
将以下条目添加到 Claude Desktop 的 MCP 配置中的 mcpServers 对象:
{
"achlens": {
"command": "uvx",
"args": ["achlens"]
}
}
默认情况下,MCP 工具可直接接收 ACH 内容,但无法读取本地路径。若要启用对特定目录的只读访问,请在服务环境中将 ACHLENS_ALLOWED_ROOTS 设置为该目录。仅使用合成 ACH 数据。
MCP 服务提供验证、摘要、分页解析记录、控制项说明、路由检查、代码查询、合成数据生成和控制项修复功能。当前工具列表请参阅 docs/tools.md。
默认情况下,敏感字段会被屏蔽。配置 ACHLENS_ALLOWED_ROOTS 以启用 MCP 路径输入;否则请直接提供文件内容。有关数据和写入范围,请参阅 SECURITY.md。
开发
本项目使用 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
不使用 uv
CLI 和测试套件也支持直接使用 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
运行测试时,请在仓库根目录设置 PYTHONPATH=.,以确保可正确导入 fixture 和脚本。在 Windows PowerShell 中,请使用 $env:PYTHONPATH = "."; pytest。
切勿将真实支付数据、账号或 ACH 文件添加到此仓库。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。