camt053-mcp について
camt053-mcp は、銀行明細を扱う AI エージェント向けに camt053 ISO 20022 ライブラリを公開します。解析、検証、旧形式からの変換、返却理由による絞り込み、検証済み取消仕訳の生成に対応します。
主な機能
- 01camt.05x 明細の解析
- 02明細、レコード、識別子の検証
- 03MT940・MT942 メッセージの変換
- 04返却理由による取引明細の絞り込み
- 05検証済み取消 XML の生成
- 06Xero・QBO 向け仕訳データの出力
活用シーン
- 01受信した銀行明細の確認と検証
- 02旧形式の MT940・MT942 データの移行
- 03取消対象となる返却取引の特定
- 04明細を会計形式でエクスポート
MCP 対応
MCP サーバーは camt053.services を基盤に、型付きツール、プロンプト、リソースを提供します。stdio、streamable HTTP、SSE、認証付き HTTP に対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
24掲載時のツール一覧 · 今日に更新
このツールにパラメーターはありません。
詳細
camt053-mcp:ISO 20022銀行取引明細書向けMCPサーバー
camt053 ISO 20022銀行取引明細書ライブラリを、AIエージェントやアシスタント向けのツールとして提供するModel Context Protocolサーバーです —
メッセージの種類や返品理由の確認、入力スキーマの検査、記録や金融識別子の検証、受信した取引明細書の解析、検証済みの反対仕訳XMLの生成を、お好みのMCPクライアントからすべて実行できます。
最新リリース:v0.0.23:camt053スイート0.0.23(コア、ローダー、ライター、言語サーバー、およびこのサーバーを同一バージョンに統一)とともにリリースされました。GHSA-84m7-p3x7-pcfvの影響を受けた
mcpリリースを除外し、すべてのGitHub ActionをSHAで固定し、CIの複雑度ゲートを追加しました。stdio、ストリーム可能HTTP、SSE、または認証付きストリーム可能HTTP経由で24個のMCPツールを利用できます。
目次
- 概要
- ISO 20022 MCPスイート
- インストール
- クイックスタート
- トランスポート — 1つのコマンドラインからstdio、ストリーム可能HTTP(2026-07-28および2025-11-25)、SSE、認証付きHTTPを利用
- ツール
- プロンプト
- リソース
- ルールブックの検索
- ツールの使用
- camt053スイート
- camt053-mcpを使用しない場合
- 開発
- セキュリティ
- ドキュメント
- ライセンス
- コントリビューション
- 謝辞
概要
Model Context Protocol(MCP)は、AI エージェントやアシスタントが外部ツールを統一された方法で検出し、呼び出せるようにするオープン標準です。camt053-mcp は、camt053 ライブラリを一連のファーストクラスのエージェントツールに変換する MCP サーバーです。これにより、アシスタントはISO 20022 camt.05x 資金管理メッセージ(標準化された銀行から顧客への口座レポート、明細書、借方/貸方通知)を会話から直接読み取り、取消仕訳を作成できます。
主な機能は、1 回の操作で完了する取消仕訳のワークフローです。受信した camt.053 明細書を読み取り、返却理由コード(例:AC04 口座閉鎖)が付いた明細を見つけ、検証済みの取消仕訳を生成します。
各ツールは、CLI と REST API でも使用されている唯一の共有ファサード camt053.services を薄く型付けしてラップしたものです。そのため、すべてのインターフェースで同じ動作になります。ツールは JSON シリアライズ可能なデータを返し、エラー時には例外を発生させず、{"error": ...} ペイロードを返します。
- ウェブサイト: https://sebastienrousseau.github.io/camt053/
- ソースコード: https://github.com/sebastienrousseau/camt053-mcp
- バグ報告: https://github.com/sebastienrousseau/camt053-mcp/issues
このパッケージは、camt053.services レイヤーを共有する個別にインストール可能なパッケージ群である camt053 スイート の一部です。
camt053— コアライブラリ(CLI + REST API)camt053-mcp— このパッケージ。Model Context Protocol サーバーcamt053-lsp— エディター向けの Language Server Protocol サーバー
flowchart LR
A["MCP client<br/>(Claude Desktop, IDE, agent)"] -->|stdio| B["camt053-mcp"]
B -->|delegates to| C["camt053.services"]
C -->|parse + reverse + validate| D["ISO 20022 camt.053 XML"]
ISO 20022 MCP スイート
camt053-mcp は、連携するベンダー中立の 8 つの MCP サーバーからなる 銀行明細書分野の中核 です。これらのサーバーは、ISO 20022 の銀行明細書ワークフローと 2026 年 11 月の構造化住所への移行を総合的にカバーし、明細書の詳細分析、カタログ全体のルーティング、照合、複数形式の取り込み、住所の修正に対応します。スイート全体で依存関係の範囲が揃えられているため、単一の Python 環境に複数のサーバーを問題なく同時インストールできます。まず 1 つから始め、ワークフローの成長に合わせて追加してください。
| サーバー | 対象範囲 | 機能 | インストール | 使用する場面 |
|---|---|---|---|---|
camt053-mcp | ISO 20022 camt.053/camt.052 銀行取引明細:解析、検証、フィルタリング、逆変換;MT940/MT942 の移行;CBPR+ 対応状況の確認;仕訳エクスポート | 24 個の MCP ツール · 4 個のプロンプト · 3 個のリソース | pip install camt053-mcp | 銀行から顧客への取引明細を一貫して扱う場合 — このパッケージは、スイートの主力です |
iso20022-mcp | 統合ゲートウェイ:pain · pacs · camt · acmt ファミリー全体にルーティングされる search / describe / validate / generate / parse メタツール | 7 個のメタツール | pip install "iso20022-mcp[all]" | すべてのメッセージファミリーへの単一のエントリーポイントが必要な場合 |
reconcile-mcp | 予想される pain.001 支払いと、確認された camt.053 エントリを照合 — 完全一致、一部一致、一対多、多対一に対応し、すべての照合結果をスコア化して説明 | 7 個の MCP ツール | pip install reconcile-mcp | 説明可能な取引明細/支払い照合が必要な場合 |
structured-address-fix-mcp | 2026 年 11 月の構造化住所への移行に向けた ISO 20022 郵便住所の分類、評価、修正に加え、準備状況のスコアリング、決済プロファイルのリント、監査証跡(pacs.008/pain.001 の債務者および債権者の住所)を行う上位オーケストレーションレイヤー | 9 個の MCP ツール | pip install structured-address-fix-mcp | 2026 年 11 月 14 日に先立ち、債務者/債権者の住所を期限に間に合う状態にする必要がある場合 |
iso20022-readiness-suite-mcp | オーケストレーションゲートウェイ:検出 → 構造検証 → 決済プロファイルのリント → 準備状況のスコアリングに加え、自動修正と pacs.002 銀行応答シミュレーションを実行 — 基盤サーバー群を統括するメタクライアント | 4 個の MCP ツール | pip install iso20022-readiness-suite-mcp | スイート全体を対象とする上位の準備状況確認/オーケストレーション用エントリーポイントが必要な場合 |
iso20022-bank-profile-mcp | 銀行固有の決済プロファイル/ルールパック(CBPR+、SEPA_Instant、FedNow、Generic)を管理、検証、提供;プレミアムルールパックの利用権を制御 | 4 個の MCP ツール | pip install iso20022-bank-profile-mcp | 自組織の市場慣行に照らして支払いをリントする場合 |
iso20022-evidence-pack-mcp | 準備状況の検出結果、修正差分、シミュレーション応答をまとめ、封印済みの Ed25519 署名可能な監査証跡パックを作成 | 6 個の MCP ツール | pip install iso20022-evidence-pack-mcp | 改ざんを検知できる監査/認証用成果物が必要な場合 |
一言でまとめると、camt053-mcp は銀行取引明細分野の主力です
(最も充実した camt.05x 機能、stdio、ストリーミング可能な HTTP、SSE、認証付きストリーミング可能な HTTP に対応)。
iso20022-mcp は汎用メッセージツールキットです(カタログ全体を少数の動詞で扱えます)。
reconcile-mcp は照合ワークフローです(予想した入金は実際に届いたか?)。
bankstatementparser-mcp は取り込みレイヤーです(多様な形式を入力し、統一された取引形式で出力します)。
そして、structured-address-fix-mcp は郵便住所の専門ツールです(2026 年 11 月の移行までに、債務者/債権者の住所を期限に間に合う状態にします)。
このスイートには、ファミリーごとのサーバーも含まれます —
pain001-mcp
(クレジットトランスファーの開始)、
pacs008-mcp
(金融機関間のクレジットトランスファー)、および
acmt001-mcp
(口座管理) — これらには iso20022-mcp ゲートウェイからアクセスできます。
インストール
camt053-mcp は macOS、Linux、Windows で動作し、Python 3.10+
および pip が必要です。コアの camt053 ライブラリと MCP SDK
は自動的にインストールされます。
python -m pip install camt053-mcp
分離した仮想環境を使用する(推奨)
python -m venv venv
source venv/bin/activate # macOS/Linux
venv\Scripts\activate # Windows
python -m pip install -U camt053-mcp
10 分でインストールから MCP クライアントの設定、最初の会話まで行う
チュートリアルについては、docs/quickstart.mdを
ご覧ください。
stdio(FastMCP のデフォルトのトランスポート)でサーバーを起動します。
camt053-mcp
クライアントの設定に追加すれば、任意の MCP クライアント(Claude Desktop など)に 登録できます。
{
"mcpServers": {
"camt053": { "command": "camt053-mcp" }
}
}
エージェントは以下のツールを呼び出して、受信した明細を解析し、 必要に応じて検証済みの振替仕訳を生成できます。
共有型のマルチテナント環境にデプロイする場合、必須のベアラートークン認証と
リクエストごとに指定できるCamt053-Accountによるテナントのスコープ設定を備えた
ストリーミング可能な HTTPでもサーバーを提供できます。
CAMT053_MCP_TOKEN=<secret> camt053-mcp --transport=http --bind=0.0.0.0:8080
マルチテナント HTTP デプロイ およびデプロイの手引きをご覧ください。
トランスポート
1 つのコマンドラインで 4 種類のトランスポートを利用できます。
| コマンド | トランスポート | エンドポイント | プロトコルのリビジョン |
|---|---|---|---|
camt053-mcp | stdio | クライアントがプロセスを起動 | 2026-07-28、2025-11-25 |
camt053-mcp --transport streamable-http | ストリーミング可能な HTTP | http://127.0.0.1:8000/mcp | 同じエンドポイントで、2026-07-28(ステートレス、server/discover)および2025-11-25(initialize、Mcp-Session-Id)に対応。レスポンスはサーバー送信イベントとしてストリーミングされ、GETでサーバーからクライアントへのストリームを開きます |
camt053-mcp --transport sse | HTTP+SSE(2024-11-05) | http://127.0.0.1:8000/sseおよび/messages/ | 旧式のトランスポートを引き続き想定するクライアント向け |
camt053-mcp --transport http | 認証付きストリーミング可能な HTTP(transport.pyを参照) | http://127.0.0.1:8080/mcp(--bind) | ベアラートークンまたはOAuth 2.1、Camt053-Accountによるテナントのスコープ設定、監査チェーン |
--hostと--portは、streamable-httpおよびsseのバインドアドレスを変更します
(デフォルトは127.0.0.1と8000です)。この2つのトランスポートには
独自の認証機能がありません。ループバックにバインドするか、到達可能なアドレスに
バインドする前に、信頼できるゲートウェイの背後にサーバーを配置してください。
--transport httpは認証付きのオプションです。すべてのリリースは、両方の
プロトコル世代でscoutを使用した
ストリーミング可能な HTTP、およびMCP SDKクライアントを使用したSSEで検証されています。
ADR 0001をご覧ください。
{
"mcpServers": {
"camt053": { "url": "http://127.0.0.1:8000/mcp" }
}
}
ツール
すべてのツールは共有の camt053.services レイヤーに処理を委譲するため、CLI および REST API と同じように動作します。
list_message_types— サポート対象の 3 種類の camt.05x メッセージタイプを一覧表示しますlist_return_reasons— ISO の外部返却理由コードを一覧表示しますget_required_fields— メッセージタイプに必要な入力フィールドを取得しますget_input_schema— メッセージタイプの完全な入力 JSON Schema を取得しますvalidate_records— フラットなレコードをメッセージタイプに照らして検証しますvalidate_identifier— IBAN、BIC、または LEI を検証しますvalidate_statement— 明細書を XSD に照らして検証し、そのタイプを検出しますconvert_mt940_to_camt053— MT940 → camt.053 移行:従来の SWIFT MT940 明細書テキストを camt.053 構造に変換しますconvert_mt942— MT942 → camt.052 移行:従来の SWIFT MT942 中間取引レポートテキストを camt.052 構造に変換しますcheck_cbpr_readiness— 明細書内の CBPR+ 2026 年 11 月期限に関する問題を検出しますget_cbpr_cutover_date— CBPR+ の公式切替日(2026-11-16)を返しますcite_rulebook— 厳選された SEPA/CBPR+/HVPS+ ルールブックの条項を引用しますlist_rulebook_clauses— 利用可能なルールブックの引用を一覧表示します(任意で絞り込み可能)search_rulebook_vector— 条項 ID が分からない場合に、自然言語の類似性でルールブックの条項を検索します([vector]エクストラが必要です)export_journal— 明細書のエントリーを Xero のBankTransactionsまたは QBO のJournalEntryペイロードとしてエクスポートしますlist_export_journal_targets—export_journalがサポートする会計プラットフォームの対象を一覧表示しますclassify_entry— MCP Sampling を介して明細書のエントリーを分類します(クライアントの LLM を使用します)list_classify_entry_categories—classify_entryが使用するデフォルトカテゴリを一覧表示しますget_tenant_context— 呼び出しのマルチテナントスコープを報告します(HTTP トランスポートではCamt053-Accountヘッダー、stdio ではNone)parse_statement— 受信した camt.05x 明細書を解析してデータにしますdetect_statement_anomalies— 明細書から参照の重複、異常な手数料の差し引き、取引頻度の急増を検出します(決定論的なルールを使用し、モデルやネットワークは使用しません)list_entries— すべての明細書の全エントリーを一覧表示します(ページネーション対応)filter_entries— 返却理由コードを含むエントリーを返します(ページネーション対応)generate_reversal— 検証済みの取消仕訳 XML ドキュメントを生成します
ページネーション
list_entries と filter_entries は、任意の offset(デフォルトは 0)および
limit(デフォルトは None)パラメーターを受け付けます。limit を省略すると、
従来どおり全件を返します。limit を指定すると、代わりにページネーション対応の
エンベロープを返します。
{"total": 42, "offset": 10, "limit": 5, "entries": [/* ... */]}
負の offset または limit を指定すると、サーバーの他のエラー規約と同様に
{"error": ...} ペイロードを返します。
プロンプト
| プロンプト | 目的 |
|---|---|
reversal_preview | 安全な、生成前に確認を行う取消ワークフローをエージェントに案内します |
reconcile_against_pain001 | 記帳済みの明細書エントリーを元の pain.001 バッチと EndToEndId で照合し、例外を明らかにします |
find_duplicate_entries | 明細書内の完全一致および重複の疑いがあるエントリーを、信頼度と次のアクションのヒントとともに検出します |
match_to_invoice_set | 入金を売掛金請求書台帳と照合します(完全一致、送金情報、部分一致/複数請求書の各段階) |
reversal_preview は任意の reason_code(デフォルトは "AC04")を受け取り、
4 ステップのメッセージテンプレートを返します。明細書を解析し、filter_entries で
該当エントリーをプレビューし、担当者に確認してから、
generate_reversal を呼び出します。他の 3 つのプロンプトはパラメーターを受け取らず、
エージェントがそのまま再生できる、ユーザープロンプトとアシスタントの手順説明からなる
2 メッセージのテンプレートを返します。
リソース
リソースは、ツールを呼び出さずにエージェントが読み込める、読み取り専用の参照コンテキストを提供します。各リソースは JSON ペイロードを返します。
| リソース URI | 内容 |
|---|---|
camt053://return-reasons | ISO 外部返品理由カタログ — {"code", "name"} のリスト |
camt053://message-types | サポート対象の camt.05x メッセージタイプ — {"message_type", "name"} のリスト |
camt053://session/{session_id}/bank/{bic} | セッションと銀行ごとのテンプレート化されたコンテキスト:解析済みの BIC の国/種類、推奨される SEPA/CBPR+/HVPS+ ルールブックの条項、2026 年 11 月の移行日 |
どちらも共通の camt053.services レイヤーを使用しているため、対応する list_return_reasons/list_message_types ツールと同期が保たれます。エラー時には、シリアライズされた {"error": ...} ペイロードを返します。
ルールブック検索
cite_rulebook には、scheme、version、clause の ID が必要です。ルールの内容はわかっていても、その名称がわからない場合は、search_rulebook_vector で見つけられます。
search_rulebook_vector("structured address requirement", top_k=3)
{
"query": "structured address requirement",
"returned": 3,
"results": [
{
"scheme": "HVPS+",
"version": "2026",
"clause": "structured-address-alignment",
"title": "HVPS+ aligns with CBPR+ structured-address rule",
"score": 0.702729,
// ...
}
]
}
見つかった scheme/version/clause を cite_rulebook に渡すと、完全な引用を取得できます。
ニューラル埋め込みモデルではありません。 検索は決定論的な語彙ベクトルのコサイン検索です。各条項とクエリは、固定サイズの 256 次元の単語頻度ベクトルにハッシュ化されます。ステミングを使わず、単語全体に加えて文字の 3-gram と 4-gram を使用するため、address は addresses にも一致します。ベクトルは Python のソルト付き hash ではなく BLAKE2b でバケット化され、sqlite-vec で順位付けされます。知っておくべき影響は次の 3 点です。
- 同じクエリでは、どのプロセスでも、どの CI 実行でも、常に同じ順位が返されます。
- ダウンロードは行われず、クエリ時のネットワーク呼び出しもありません。
- 一致するのは表現であり、意味ではありません。条項と語彙を共有しないクエリでは、概念がどれほど関連していても見つかりません。
インデックス対象は厳選された要約のみです — cite_rulebook の背後にあるものと同じ要約です。外部の著作権保護対象のルールブック本文や、認証が必要なルールブック本文は保存も検索もされません。
インストール
sqlite-vec はオプションの追加機能として提供され、遅延インポートされるため、基本インストールでは何も追加されません。
python -m pip install 'camt053-mcp[vector]'
この機能がない場合、ツールは例外を発生させず、追加機能の名前を含む通常のエラーペイロードを返します。そのため、基本インストールでこれを呼び出したクライアントには、スタックトレースではなく利用可能なメッセージが返されます。
見落としやすい要件がもう 1 つあります。Python が SQLite のロード可能な拡張機能をサポートするようにビルドされている必要があります。 python.org の macOS インストーラーや一部の配布パッケージでは、この機能が無効になっています。その場合、sqlite-vec のインストール自体は問題なく完了しても、読み込みに失敗します。ツールはこれを検出し、確認すべきビルドフラグ(--enable-loadable-sqlite-extensions)を示します。Homebrew、uv、pyenv のビルドでは通常、この機能が有効になっています。
検索の設計と制限については、docs/vector-search.md を参照してください。
ツールの使用
トランスポートを使わず、FastMCP インスタンスから直接、プロセス内でツールを呼び出せます。これは、エージェントが stdio 経由で受け取るものと同じです。このスニペットの実行可能なバージョンは、examples/mcp_tools.py にあります。
import asyncio
from camt053_mcp.server import server
# A complete camt.053 statement with one entry returned AC04 (Closed Account).
statement_xml = """<?xml version="1.0" encoding="UTF-8"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:camt.053.001.14">
<BkToCstmrStmt>
<GrpHdr><MsgId>STMT-MSG-0001</MsgId><CreDtTm>2026-06-15T08:00:00</CreDtTm></GrpHdr>
<Stmt>
<Id>STMT-0001</Id><CreDtTm>2026-06-15T08:00:00</CreDtTm>
<Acct><Id><IBAN>GB29NWBK60161331926819</IBAN></Id><Ccy>EUR</Ccy></Acct>
<Bal><Tp><CdOrPrtry><Cd>CLBD</Cd></CdOrPrtry></Tp>
<Amt Ccy="EUR">10000.00</Amt><CdtDbtInd>CRDT</CdtDbtInd>
<Dt><Dt>2026-06-15</Dt></Dt></Bal>
<Ntry>
<NtryRef>NTRY-0001</NtryRef>
<Amt Ccy="EUR">1500.00</Amt><CdtDbtInd>CRDT</CdtDbtInd>
<Sts><Cd>BOOK</Cd></Sts>
<NtryDtls><TxDtls>
<RtrInf><Rsn><Cd>AC04</Cd></Rsn></RtrInf>
</TxDtls></NtryDtls>
</Ntry>
</Stmt>
</BkToCstmrStmt>
</Document>"""
async def main() -> None:
async def call(name, args):
result = await server.call_tool(name, args)
# mcp 2.x returns a CallToolResult (read .content); 1.x
# returns the content list, or a (content, meta) tuple.
content = getattr(result, "content", None)
if content is None:
# mcp 2.x returns a CallToolResult (read .content); 1.x
# returns the content list, or a (content, meta) tuple.
content = getattr(result, "content", None)
if content is None:
content = result[0] if isinstance(result, tuple) else result
return content[0].text if content else ""
# Validate an identifier.
print(await call("validate_identifier",
{"kind": "bic", "value": "NWBKGB2LXXX"}))
# -> {"kind": "bic", "value": "NWBKGB2LXXX", "valid": true}
# Page through the matching entries (paginated envelope).
print(await call("filter_entries",
{"xml": statement_xml, "reason_code": "AC04",
"offset": 0, "limit": 5}))
# -> {"total": 1, "offset": 0, "limit": 5, "entries": [...]}
# Generate a validated reversing-entry document for the AC04 entries.
xml = await call("generate_reversal",
{"xml": statement_xml, "reason_code": "AC04"})
print(xml[:46]) # -> <?xml version="1.0" encoding="UTF-8"?> ...
asyncio.run(main())
直接実行します。
python examples/mcp_tools.py
camt053 スイート
camt053-mcp は、camt053 ライブラリを中心に構築された、個別にインストール可能なパッケージ群の一つです。
お使いのスタックに必要なものを選んでください。
| パッケージ | 役割 |
|---|---|
camt053 | コアライブラリ+CLI+FastAPI REST API |
camt053-mcp | Model Context Protocol サーバー(このパッケージ) |
camt053-lsp | Language Server Protocol サーバー(エディター向け) |
camt053-writer-xlsx | 解析済み明細用の Excel .xlsx 書き込みツール |
camt053-loader-mt940 | SWIFT MT940 → camt.053 ローダー |
ここにある各ツールは、camt053.services を薄く型付けしてラップしたものです。
これは CLI、REST API、LSP が使用するものと同じファサードであり、4 つのインターフェースはすべて同じように動作します。
camt053-mcp を使わない方がよい場合
- MCP クライアントがない場合。 このサーバーは、MCP 対応ホスト(Claude Desktop、IDE プラグイン、エージェントフレームワーク)と組み合わせて初めて役立ちます。スクリプトや CI での利用には、camt053 CLI と REST API で同じ機能を利用でき、stdio プロトコルのオーバーヘッドもありません。
- MCP クライアントなしで、長時間稼働するデーモンとして実行する必要がある場合。 サーバーはストリーミング可能な HTTP トランスポート(
--transport=http)で継続的に実行できますが、各コンシューマーは引き続き MCP JSON-RPC を話す必要があります。通常の REST セマンティクスが必要な場合は、camt053 FastAPI サービスを使用してください。 - ストリーミング応答が必要な場合。 ツール呼び出しはストリームではなく、値全体を返します。大きな明細は複数の応答に分割して送信するのではなく、既存の
list_entries(xml, offset, limit)エンベロープでページ分割されます。 - ユーザーごとの OAuth フローを仲介してもらう必要がある場合。 HTTP トランスポートは呼び出し元を認証し(RFC 9728 メタデータを使用する OAuth 2.1 リソースサーバー、または開発モードでの静的ベアラートークン)、
Camt053-Accountテナントヘッダーでリクエストのスコープを設定しますが、認可サーバーは実行しません。IdP はご自身で用意してください。 - 送信用の pain.001 決済ファイルを生成する必要がある場合。 対象外です。
pain001-mcpを使用してください。
開発
camt053-mcp は Poetry と mise を使用します。
git clone https://github.com/sebastienrousseau/camt053-mcp.git && cd camt053-mcp
mise install
poetry install
poetry shell
Makefile は、CI と歩調を合わせた品質ゲートを統括します。
make check # all gates (REQUIRED before commit)
make test # pytest
make lint # ruff + black
make type-check # mypy --strict
セキュリティ
camt053-mcp は薄いラッパーです。各ツールは camt053.services に処理を委譲し、そこで多層防御(defusedxml + xml_guard のバイト数上限 + DOCTYPE / ENTITY の事前チェック)が実施されます。ツールは (ValueError, Camt053Error) を捕捉し、スイートの規約に従って {"error": ...} エンベロープを返します。生の例外が MCP クライアントに伝播することはありません。報告手順、サポート対象バージョン、サプライチェーン対策の全容については SECURITY.md に記載されています。脆弱性は公開 Issue ではなく、GitHub の非公開脆弱性報告を通じて報告してください。
ドキュメント
README.md— このファイルCHANGELOG.md— リリースノートSECURITY.md— 脆弱性開示+サポート対象バージョンSUPPORT.md— サポートを受ける方法MAINTAINERS.md— マージ権限を持つ人examples/— 実行可能なスクリプトglama.json— Glama ディレクトリマニフェストdocs/iso20022-mcp-servers-compared.md— ISO 20022 MCP サーバーの比較(2026)docs/BENCHMARKS.md— HTTP 負荷の実測ベンチマーク- Glama の掲載ページ:https://glama.ai/mcp/servers/sebastienrousseau/camt053-mcp
関連する MCP サーバー
ISO 20022 MCP Suite の一部です。銀行・金融サービス向け AI エージェントのための、Apache-2.0 ライセンスのオープンソース MCP サーバーです。
| サーバー | 目的 |
|---|---|
pain001-mcp | ISO 20022 pain.001 支払ファイル(v03–v12、pain.008、SEPA)を生成・検証し、ルールブックに基づいてチェックします |
pacs008-mcp | ISO 20022 pacs.008 FI-to-FI クレジット送金を生成・検証・解析し、スキームチェックを行います。2026年11月対応の住所リンティングも含みます |
acmt001-mcp | ISO 20022 acmt アカウント管理メッセージを生成・検証します |
noyalib-mcp | ロスレスな YAML 1.2 の解析、整形、検証(Rust、仕様準拠率100%) |
MCP レジストリ
mcp-name: io.github.sebastienrousseau/camt053-mcp
ライセンス
Apache License, Version 2.0 または MIT License のデュアルライセンスです。採用のために提出されたコントリビューションには、追加条件を設けず、上記のライセンスが適用されます。
コントリビューション
コントリビューションを歓迎します。コントリビューションの手順をご覧ください。コントリビューターの皆様に感謝します。
謝辞
ISO 20022 銀行取引明細ライブラリの camt053 と、Model Context Protocol の Python SDK を基盤として構築されています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。