MCP Banking Server
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.
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.txtStart Server
uvicorn main:app --host 0.0.0.0 --port 8000Visit 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
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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