mcpField
C
camt053-mcp

camt053-mcp

ローカル
github.com/sebastienrousseau金融データ22 日前に更新

camt053-mcp について

camt053-mcp は、銀行明細を扱う AI エージェント向けに camt053 ISO 20022 ライブラリを公開します。解析、検証、旧形式からの変換、返却理由による絞り込み、検証済み取消仕訳の生成に対応します。

主な機能

  1. 01camt.05x 明細の解析
  2. 02明細、レコード、識別子の検証
  3. 03MT940・MT942 メッセージの変換
  4. 04返却理由による取引明細の絞り込み
  5. 05検証済み取消 XML の生成
  6. 06Xero・QBO 向け仕訳データの出力

活用シーン

  1. 01受信した銀行明細の確認と検証
  2. 02旧形式の MT940・MT942 データの移行
  3. 03取消対象となる返却取引の特定
  4. 04明細を会計形式でエクスポート

MCP 対応

MCP サーバーは camt053.services を基盤に、型付きツール、プロンプト、リソースを提供します。stdio、streamable HTTP、SSE、認証付き HTTP に対応します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"sebastienrousseau-camt053": {
"command": "uvx",
"args": [
"camt053-mcp"
]
}
}
}
起動コマンドuvx camt053-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypicamt053-mcp0.0.25

ツール

24

掲載時のツール一覧 · 今日に更新

このツールにパラメーターはありません。

詳細

camt053-mcp:ISO 20022銀行取引明細書向けMCPサーバー

camt053-mcp ロゴ

ビルド レジストリ ドキュメント OpenSSFスコアカード ライセンス:Apache-2.0 OR MIT Python 3.10以降 OpenSSFベストプラクティス Glama MCPサーバースコア

camt053-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ツールを利用できます。

目次

概要

Model Context Protocol(MCP)は、AI エージェントやアシスタントが外部ツールを統一された方法で検出し、呼び出せるようにするオープン標準です。camt053-mcp は、camt053 ライブラリを一連のファーストクラスのエージェントツールに変換する MCP サーバーです。これにより、アシスタントはISO 20022 camt.05x 資金管理メッセージ(標準化された銀行から顧客への口座レポート、明細書、借方/貸方通知)を会話から直接読み取り、取消仕訳を作成できます。

主な機能は、1 回の操作で完了する取消仕訳のワークフローです。受信した camt.053 明細書を読み取り、返却理由コード(例:AC04 口座閉鎖)が付いた明細を見つけ、検証済みの取消仕訳を生成します。

各ツールは、CLI と REST API でも使用されている唯一の共有ファサード camt053.services を薄く型付けしてラップしたものです。そのため、すべてのインターフェースで同じ動作になります。ツールは JSON シリアライズ可能なデータを返し、エラー時には例外を発生させず、{"error": ...} ペイロードを返します。

このパッケージは、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-mcpISO 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-mcp2026 年 11 月の構造化住所への移行に向けた ISO 20022 郵便住所の分類、評価、修正に加え、準備状況のスコアリング、決済プロファイルのリント、監査証跡(pacs.008/pain.001 の債務者および債権者の住所)を行う上位オーケストレーションレイヤー9 個の MCP ツールpip install structured-address-fix-mcp2026 年 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-mcpstdioクライアントがプロセスを起動2026-07-28、2025-11-25
camt053-mcp --transport streamable-httpストリーミング可能な HTTPhttp://127.0.0.1:8000/mcp同じエンドポイントで、2026-07-28(ステートレス、server/discover)および2025-11-25(initialize、Mcp-Session-Id)に対応。レスポンスはサーバー送信イベントとしてストリーミングされ、GETでサーバーからクライアントへのストリームを開きます
camt053-mcp --transport sseHTTP+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-reasonsISO 外部返品理由カタログ — {"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-mcpModel Context Protocol サーバー(このパッケージ)
camt053-lspLanguage Server Protocol サーバー(エディター向け)
camt053-writer-xlsx解析済み明細用の Excel .xlsx 書き込みツール
camt053-loader-mt940SWIFT 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 の非公開脆弱性報告を通じて報告してください。

ドキュメント

関連する MCP サーバー

ISO 20022 MCP Suite の一部です。銀行・金融サービス向け AI エージェントのための、Apache-2.0 ライセンスのオープンソース MCP サーバーです。

サーバー目的
pain001-mcpISO 20022 pain.001 支払ファイル(v03–v12、pain.008、SEPA)を生成・検証し、ルールブックに基づいてチェックします
pacs008-mcpISO 20022 pacs.008 FI-to-FI クレジット送金を生成・検証・解析し、スキームチェックを行います。2026年11月対応の住所リンティングも含みます
acmt001-mcpISO 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 を基盤として構築されています。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。