Skip to main content
Glama
gabsgoms10

mcp-banking-tools

by gabsgoms10

🔌 mcp-banking-tools

Deterministic Financial Tooling Microservice: High-performance, production-grade Model Context Protocol (MCP) server built with FastMCP Python (SSE Mode), Threaded Database Connection Pooling, Bandit SAST Security Scanning, and Pytest Unit Testing, containerized and published to GitHub Container Registry (ghcr.io).


🎯 Executive Summary & Architectural Purpose

In autonomous AI agent systems, granting language models direct database access or relying on probabilistic text instructions is a catastrophic security risk.

mcp-banking-tools acts as the isolated deterministic execution bridge between AI Agents (via NVIDIA NeMo Guardrails) and the core financial ledger (PostgreSQL). Every action is encapsulated within type-safe, auditable tools enforcing strict integer-cents monetary precision (amount_cents: int).


Related MCP server: bank.mcp

🏛️ Strategic Architecture & DevSecOps Matrix

                                 [ Kubernetes Cluster (K3s) ]
                                 
  +-----------------------+      SSE (HTTP :8001)      +---------------------------------+
  |  NVIDIA NeMo Server   |  ----------------------->  |  mcp-banking-tools (FastMCP)    |
  |  / Agentic Framework  |                            |  - Threaded Connection Pool     |
  +-----------------------+                            +---------------------------------+
                                                                       |
                                                                       | SQL (TCP :5432)
                                                                       v
                                                       +---------------------------------+
                                                       |  PostgreSQL 16 Alpine           |
                                                       |  - characters (balances)        |
                                                       |  - blocked_pix_keys (BACEN)     |
                                                       |  - transactions (audit ledger)  |
                                                       +---------------------------------+

🛡️ Quality & DevSecOps Pipeline

Every push to main triggers a 2-stage GitHub Actions pipeline enforcing enterprise standards:

Tooling Layer

Technology

Engineering Guarantee

Linter & Formatter

Ruff & Black

100% PEP 8 compliant, ultra-fast Python code formatting.

Static Type Checker

Mypy

Enforces strict static typing on all tool parameters.

SAST Security Scanner

Bandit

Scans for SQL injection risks, hardcoded credentials, and unsafe sockets.

Automated Unit Tests

Pytest + pytest-mock

Validates tool logic, balance checks, and transaction edge cases.

Container Registry

GHCR (ghcr.io)

Multi-architecture builds (linux/amd64, linux/arm64) pushed to GitHub Container Registry.


🛠️ Provided FastMCP Tools Registry

1. get_account_balance(pix_key: str)

  • Description: Fetches real-time account balances (in cents and BRL) and risk profiles for test characters (Leo Vance, Maria Silva, Enterprise X Corp).

  • Return Contract: { "status": "success", "name": str, "pix_key": str, "balance_cents": int, "balance_brl": float, "risk_profile": str }

2. check_blocked_pix_key(pix_key: str)

  • Description: Queries the BACEN (Central Bank of Brazil) fraud registry table (blocked_pix_keys) for malicious PIX keys (fraudster@pix.com).

  • Return Contract: { "status": "blocked" | "clean", "is_fraud": bool, "pix_key": str, "reason": str }

3. transfer_pix(origin_pix_key: str, destination_pix_key: str, amount_cents: int)

  • Description: Executes an atomic, thread-safe PIX financial transfer between accounts.

  • Financial Precision: Enforces integer cents (amount_cents: int) to eliminate floating-point IEEE 754 rounding vulnerabilities. Applies FOR UPDATE row locking in PostgreSQL to prevent race conditions.


📖 Auxiliary Technical Documentation


🚀 Local Development & Testing

# 1. Install dependencies & quality tools
pip install -r requirements.txt

# 2. Run code quality checks
ruff check src/ tests/
black --check src/ tests/
mypy src/
bandit -r src/

# 3. Run unit tests
pytest -v tests/

# 4. Start FastMCP Server locally (SSE mode)
python -m src.server
F
license - not found
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    -
    quality
    D
    maintenance
    A production-ready banking server that provides account management, transactions (deposits/withdrawals), balance inquiries, and transaction history through MCP tools with API key authentication, idempotency support, and real-time WebSocket updates.
    Last updated
  • A
    license
    -
    quality
    B
    maintenance
    MCP server that turns bank transactions into a financial digest including cash-flow forecast, spending breakdown, fee detection, and receipt reconciliation, exposing deterministic engines as JSON-RPC tools.
    Last updated
    Apache 2.0
  • A
    license
    -
    quality
    D
    maintenance
    MCP server providing deterministic accounting tools for AI agents, including bank statement parsing, document classification, money math, and webhook verification.
    Last updated
    1
    Apache 2.0

View all related MCP servers

Related MCP Connectors

  • Brazilian fiscal MCP server - issue NF-e, NFC-e, NFS-e, CT-e, MDF-e and DC-e via SEFAZ.

  • A paid remote MCP for hosted MCP server, built to return verdicts, receipts, usage logs, and audit-r

  • Hosted MCP server for Mini Accountant: invoices, expenses, customers, analytics, tax estimates.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/gabsgoms10/mcp-banking-tools'

If you have feedback or need assistance with the MCP directory API, please join our Discord server