Skip to main content
Glama
shreyash1231

MCP Banking Server

by shreyash1231

MCP Server - Python FastAPI

Overview

This is a MCP (Minimal Core Platform) Server implemented in Python using FastAPI. It simulates a basic banking system with endpoints for account management, deposits, withdrawals, balance inquiries, and transaction history.


Related MCP server: poke-bank

Hosted URL

https://mcp-server-m5d2.onrender.com


Cloud Provider

Render - Publicly accessible deployment.


Technology Stack

  • Python 3.13

  • FastAPI

  • Uvicorn

  • SQLAlchemy (SQLite/PostgreSQL compatible)

  • Pydantic

  • python-dotenv


Endpoints

1. Create Account

POST /account Creates a new bank account.

Request Body Example:

{
  "name": "John Doe",
  "email": "john@example.com"
}

Response Example:

{
  "name": "alex roy",
  "email": "example@gmail.com",
  "created_at": "2025-12-27T17:43:36",
  "balance": 0,
  "id": "05997aae-a545-4157-9118-99fd2ec7b4c7"
}

2. Deposit

POST /deposit/{account_id} Adds funds to an existing account.

Request Body Example:

{
  "amount": 500.0
}

Response Example:

{
  "account_id": "uuid",
  "balance": 500.0
}

3. Withdraw

POST /withdraw/{account_id} Removes funds from an existing account.

Request Body Example:

{
  "amount": 100.0
}

Response Example:

{
  "account_id": "uuid",
  "balance": 400.0
}

4. Balance Inquiry

GET /balance/{account_id} Retrieves the current balance of the account.

Response Example:

{
  "account_id": "uuid",
  "balance": 400.0
}

5. Transaction History

GET /transactions/{account_id} Returns recent transactions for the account.

Response Example:

[
  {
    "transaction_id": "uuid",
    "type": "deposit",
    "amount": 500.0,
    "timestamp": "2025-12-27T12:00:00"
  },
  {
    "transaction_id": "uuid",
    "type": "withdraw",
    "amount": 100.0,
    "timestamp": "2025-12-27T12:10:00"
  }
]

Database & ACID Properties

The MCP Server uses SQLAlchemy to interact with a relational database (SQLite by default). The database logic ensures the operations:

  • Isolation: Simultaneous transactions on different accounts are isolated; concurrent operations do not interfere.

  • Durability: Once a transaction is committed, it persists even if the server crashes.


Running Locally

Prerequisites

  • Python 3.13

  • pip

Install Dependencies

pip install -r requirements.txt

Start Server

uvicorn main:app --host 0.0.0.0 --port 8000

Visit http://127.0.0.1:8000/docs for Swagger UI.


ArmorIQ Scanning

  • Tested with ArmorIQ Sentry VS Code extension (Sentry-MCP-Endpoint-Scan, Sentry-Scan-WorkSpace-For-MCP-Security-Issue)

  • Tested with ArmorIQ Landing Page scanner

  • Endpoints are exposed publicly for the purpose of security scanning


GitHub Repository

https://github.com/shreyash1231/MCP-Server.git


F
license - not found
-
quality - not tested
D
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.

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/shreyash1231/MCP-Server'

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