Local implementation of the Model Context Protocol (MCP) server for simulating financial‑data interactions. It is intended for developers who need a secure, simplified environment for testing applications without connecting to live financial systems or user data.
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"finance-personal-assistant": {
"args": [
"mcp"
],
"command": "uvx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
This project provides a lightweight, local implementation of the Model Context Protocol (MCP) server for simulating financial‑data interactions. It is intended for developers who need a secure, simplified environment for testing applications without connecting to live financial systems or user data.
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
uvx 'mcp' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
Model Context Protocol (MCP) Python SDK does not enable DNS rebinding protection by default
### Description The Model Context Protocol (MCP) Python SDK does not enable DNS rebinding protection by default for HTTP-based servers. When an HTTP-based MCP server is run on localhost without authentication using `FastMCP` with streamable HTTP or SSE transport, and has not configured `TransportSecuritySettings`, a malicious website could exploit DNS rebinding to bypass same-origin policy restrictions and send requests to the local MCP server. This could allow an attacker to invoke tools or ac
MCP Python SDK vulnerability in the FastMCP Server causes validation error, leading to DoS
A validation error in the MCP SDK can cause an unhandled exception when processing malformed requests, resulting in service unavailability (500 errors) until manually restarted. Impact may vary depending on the deployment conditions, and presence of infrastructure-level resilience measures. Thank you to Rich Harang for reporting this issue.
MCP Python SDK has Unhandled Exception in Streamable HTTP Transport, Leading to Denial of Service
If a client deliberately triggers an exception after establishing a streamable HTTP session, this can lead to an uncaught ClosedResourceError on the server side, causing the server to crash and requiring a restart to restore service. Impact may vary depending on the deployment conditions, and presence of infrastructure-level resilience measures. Thank you to Rich Harang for reporting this issue.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in finance
Real-time financial market data: stocks, forex, crypto, commodities, and economic indicators
A Model Context Protocol server for building an investor agent
AI agents get on-chain identity, credentials, reputation, escrow, and persistent memory on XRPL.
Remote MCP server to integrate and validate self-hosted PayRam deployments.
MCP Security Weekly
Get CVE alerts and security updates for Finance Personal Assistant and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
This project provides a lightweight, local implementation of the Model Context Protocol (MCP) server for simulating financial‑data interactions. It is intended for developers who need a secure, simplified environment for testing applications without connecting to live financial systems or user data.
See README_UI for UI guide
| Capability | Description |
|---|---|
| Dummy Authentication | Login succeeds if the phone number exists as a directory in test_data_dir/. |
| Pre‑canned Financial Data | Static JSON files for net‑worth, credit report, bank & MF transactions, EPF. |
| Plug‑and‑Play Tools | Each JSON dataset is exposed as an MCP tool (see list below). |
| Quick setup | Zero external integrations—just clone, install, run. |
.
├── main_mcp.py # MCP server implementation (Python)
└── test_data_dir # Dummy data grouped by phone number
├── 1111111111
│ ├── fetch_net_worth.json
│ └── ...
└── 2222222222
├── fetch_credit_report.json
└── ...
pip install mcp mcp-inspector
python main_mcp.py
The server runs using stdio transport by default.
test_data_dir/.1111111111, 2222222222, 3333333333, … (see folders).| Tool Name | Purpose |
|---|---|
authenticate_user | Dummy login check |
fetch_net_worth | Net‑worth summary + assets/liabilities |
fetch_credit_report | Credit score & account details |
fetch_bank_transactions | Full bank‑statement style transaction list |
fetch_epf_details | EPF balance & employment history |
fetch_mf_transactions | Mutual‑fund buy/sell history |
All tools accept phone_number as their sole argument.
FastMCP ships with a lightweight developer UI that lets you explore any local MCP server, run tools, and inspect raw responses—all from the browser.
pip install fastmcp
From your project root:
fastmcp dev main_mcp.py
⚙️ This spins up main_mcp.py and the web UI in one command.
Already registered the server in mcp_servers.json? Simply run:
fastmcp dev
FastMCP will auto‑detect local-financial-mcp and start it.
The UI opens at http://localhost:4400 where you can:

2222222222).fetch_net_worth, fetch_credit_report, etc.The Dev UI acts purely as a client—you can keep it open while calling the same server from Langflow or the FastMCP CLI.
If you want another FastMCP‑aware application (or CLI) to auto‑launch this mock server, add the following stanza to its mcp_servers.json (or similar) file:
{
"servers": {
"local-financial-mcp": {
"transport": "stdio", // or "sse" if you expose an HTTP endpoint
"command": "python",
"args": ["main_mcp.py"],
"cwd": "<
... [View full README on GitHub](https://github.com/beprith/Finance-personal-assistant#readme)