
Bankstatementparser Mcp
io.github.sebastienrousseau由 GitHub 账号 sebastienrousseau 发布v0.0.19更新于 Oct 24, 2026
MCP server for parsing bank statements (BAI2, MT940/MT942, CAMT.053, OFX) via stdio.
概览
本地 MCP 服务器,让助手识别、解析、校验并汇总 CAMT.053、pain.001、MT940、OFX/QFX 和 CSV 格式的银行对账单。
- 可以做什么
- 列出并识别对账单格式,包括只读的受支持格式与扩展名目录
- 将内联的对账单内容解析为结构化交易记录及摘要
- 以试运行方式校验对账单并返回结构化结果
- 仅返回对账单摘要,不含逐笔交易明细
- 提供引导式多步提示,带助手完成对账单的读取与核对
- 适用场景
- 当对账单以混合或旧式格式到达,且希望在对话中让助手读取、检查并汇总时适用。README 建议:若需批量解析磁盘上已有的文件,直接使用该库或命令行工具更合适。
- 运行要求
- 需要 Python 3.10 或更高版本,支持 macOS、Linux 和 Windows;从 PyPI 安装 bankstatementparser-mcp,并由 MCP 客户端通过 stdio 启动。可通过命令行参数启用可选的 streamable HTTP 或 SSE 传输。未声明任何账号、API 密钥或环境变量。
安装
在 SourceWeft 中
- 打开 控制台中的 Bankstatementparser Mcp,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
[bankstatementparser-mcp logo]
bankstatementparser-mcp
Model Context Protocol server exposing the bankstatementparser library as first-class agent tools for reading bank statements.
[Tests] [Coverage] [PyPI version] [Python versions] [PyPI downloads] [OpenSSF Scorecard] [License: Apache-2.0 OR MIT] [Glama MCP server score]
[bankstatementparser-mcp Demo]
Contents
Getting started
- What is bankstatementparser-mcp? — the problem it solves
- The ISO 20022 MCP Suite — the four coordinated servers and when to use each
- Install — PyPI, virtualenv, Docker
- Quick start — register with Claude Desktop in 30 seconds
- Transports — stdio, streamable HTTP (2026-07-28 and 2025-11-25) and SSE from one command line
Library reference
- Tools — the five tools, one resource, one prompt
- Using the tools — call them in-process from Python
Operational
- When not to use bankstatementparser-mcp — honest boundaries
- Development — gates, make targets
- Security — sandboxing posture
- Documentation — examples, guides
- Contributing — how to get changes in
- License — Apache-2.0
What is bankstatementparser-mcp?
The Model Context Protocol (MCP) is
an open standard that lets AI agents discover and call external tools in
a uniform way. bankstatementparser-mcp is the MCP server that turns the
bankstatementparser
library into first-class agent tools — so an assistant can read,
validate, and summarise bank statements in formats such as ISO 20022
CAMT.053, SWIFT MT940, OFX/QFX, and CSV directly from a conversation.
Every tool is a thin wrapper over the bankstatementparser parser core
(create_parser, detect_statement_format), so the results behave
identically to the CLI. Because an MCP client does not share the
server's filesystem, the tools take inline statement content (plus a
filename hint) and materialise it in a private temporary file for the
duration of a single call. Tools return JSON-serialisable data.
The ISO 20022 MCP Suite
bankstatementparser-mcp is the ingestion layer of eight coordinated,
vendor-neutral MCP servers that together cover the ISO 20022
bank-statement workflow and the November 2026 structured-address
cutover — statement depth, whole-catalogue routing, reconciliation,
multi-format ingestion, and address remediation. Dependency ranges are kept
aligned across the suite, so the servers co-install cleanly in a single
Python environment: start with one, add the rest as your workflow grows.
In one line each: camt053-mcp is the bank-statement flagship
(deepest camt.05x surface, stdio + authenticated streamable HTTP);
iso20022-mcp is the generic message toolkit (a handful of verbs
over the whole catalogue); reconcile-mcp is the reconciliation
workflow (did the money we expected actually arrive?);
bankstatementparser-mcp is the ingestion layer (many formats in,
one transaction shape out); and structured-address-fix-mcp is the
postal-address specialist (debtor/creditor addresses cliff-ready for the
Nov 2026 cutover).
Install
Requires Python 3.10 or later. Works on macOS, Linux, and Windows.
Using an isolated virtual environment (recommended)
Quick start
Register the server with any MCP client (Claude Desktop shown):
That's it. Restart the client and the tools are available to the agent.
By default the server speaks JSON-RPC over stdin/stdout — it is meant to be launched by an MCP client, not used interactively. For a shared deployment, see Transports.
Transports
One command line, three transports:
--host and --port change the bind address (defaults 127.0.0.1 and
8000). The HTTP transports carry no authentication of their own: bind
loopback, or put the server behind a gateway you trust before binding a
routable address. Every release is verified over streamable HTTP with
passmcp in both protocol
eras and over SSE with the MCP SDK client; see
ADR 0001.
Tools
All tools delegate to the bankstatementparser parser core, so they
behave identically to the library.
list_supported_formats— List every bank statement format the parser can readdetect_format— Detect which statement format an inline payload isparse_statement— Parse a statement into structured transactions plus a summaryvalidate_statement— Dry-run check whether a statement parses cleanlysummarize_statement— Return only the statement summary (no per-transaction rows)
Plus one resource and one prompt:
- Resource
bankstatementparser://formats— Read-only catalogue of supported formats and their file extensions - Prompt
analyze_statement— Guided multi-step prompt that walks an agent through reading and reconciling a statement
Supported formats: camt (ISO 20022 CAMT.053, .xml), pain001
(ISO 20022 pain.001, .xml), csv (.csv), ofx (.ofx), qfx
(.qfx), and mt940 (SWIFT MT940, .mt940 / .sta).
Using the tools
The tools are plain functions on the bankstatementparser_mcp.server
module, so you can call them in-process:
The resource and prompt are plain functions too: formats_resource
backs bankstatementparser://formats, and analyze_statement returns
the guided multi-step prompt.
See the examples/ folder for runnable walkthroughs,
including 04_resource_and_prompt.py.
When not to use bankstatementparser-mcp
- You're not driving an MCP-aware agent. Use the
bankstatementparserCLI or library directly — it exposes the same surface with less indirection. - You need to parse files already on disk in bulk. The library's CLI reads paths directly and avoids the inline-content round-trip the MCP tools use.
Development
bankstatementparser-mcp uses Poetry and
mise.
A Makefile orchestrates the quality gates (kept in lockstep with CI):
Current state (v0.0.28): 100% line + branch coverage against a 100%
enforced floor, mypy --strict clean, interrogate 100%.
Security
- No persistent filesystem writes from tools. Each call writes the inline content to a private temporary file that is deleted as soon as the call returns.
- Validation failures from
validate_statementare returned as structured{"is_valid": false, "error": ...}payloads — never as stack traces. - Dependencies are pinned via
poetry.lockand audited bypip-auditand Bandit in CI.
To report a vulnerability, please use GitHub private vulnerability reporting rather than a public issue.
Documentation
- Runnable examples:
examples/ - Release history: CHANGELOG.md
- MCP specification: modelcontextprotocol.io
Contributing
Contributions are welcome — see the
contributing instructions.
Thanks to all the
contributors
who have helped build bankstatementparser-mcp.
Related MCP Servers
The four core servers of the ISO 20022 MCP Suite are compared in The ISO 20022 MCP Suite above. The wider family — open-source, Apache-2.0 licensed MCP servers for banking and financial-services AI agents — also includes:
MCP Registry
mcp-name: io.github.sebastienrousseau/bankstatementparser-mcp
Ecosystem
bankstatementparser is part of a modular financial ecosystem. Optional companion packages provide specialized loaders, writers, AI agents, language servers, and transport protocol adapters:
License
Licensed under the Apache License, Version 2.0. Any contribution submitted for inclusion shall be licensed as above, without additional terms.
来源:README.md,提交 883f73b
工具
0版本历史
1- v0.0.19最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分