Financial MCP Server
A production-ready Model Context Protocol (MCP) server that enables AI assistants (Claude Desktop, ChatGPT Desktop) to query financial data from three different sources.
Features
- Exchange Rates - Real-time currency conversion using public API
- Stock Market Data - Live stock quotes via Alpha Vantage API
- Transaction Database - CSV-based local database with sample financial data
- Dual Mode - Runs locally (Stdio) or as a Web Service (SSE)
🌐 Live Demo
You can connect to the hosted server directly without installing anything.
Option 1: Claude Desktop (Visual)
- Open similar dialog to "Add custom connector" (if available in your version).
- Name:
Financial Mcp Demo - URL:
https://financial-mcp.el-hamdani.com/sse
Option 2: OpenAI / ChatGPT (Actions)
- Click "New App" or "Add Action".
- Name:
Financial Mcp Demo - MCP Server URL:
https://financial-mcp.el-hamdani.com/sse - Authentication: None / None (Public API)
Option 3: Claude Desktop (Config File)
Add this to claude_desktop_config.json:
{
"mcpServers": {
"financial-mcp-demo": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-sse-client",
"https://financial-mcp.el-hamdani.com/sse"
]
}
}
}
Quick Start
Installation
npm install
npm run build
Configuration
Claude Desktop
Add to your Claude Desktop configuration:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"financial-data": {
"command": "node",
"args": ["/absolute/path/to/financial-mcp-server/dist/index.js"],
"env": {
"ALPHA_VANTAGE_API_KEY": "your_api_key_here"
}
}
}
}
Optional: Stock Market Data
To enable stock market tools, get a free API key from Alpha Vantage and add it to the configuration.
Available Tools
Exchange Rate Tools
| Tool | Description |
|---|---|
get_exchange_rate | Get exchange rate between two currencies |
convert_currency | Convert an amount from one currency to another |
get_multiple_rates | Get rates from one currency to multiple targets |
Stock Market Tools
| Tool | Description |
|---|---|
get_stock_quote | Get current stock quote for a symbol |
compare_stocks | Compare multiple stock quotes |
Transaction Tools
| Tool | Description |
|---|---|
query_transactions | Search and filter financial transactions |
get_spending_by_category | Get spending breakdown by category |
get_spending_by_department | Get spending breakdown by department |
compare_to_budget | Compare actual spending vs budget |
get_top_vendors | Get top vendors by spending |
Example Queries
Exchange Rates
- "What's the EUR to USD exchange rate?"
- "Convert 10,000 EUR to USD"
- "Show me rates from EUR to USD, GBP, JPY, CHF"
Transactions
- "What were our total expenses in Q4 2024?"
- "Show me all software purchases over 1,000 EUR"
- "Which department spent the most on travel?"
- "Are we over budget in any category?"
- "Who are our top 5 vendors?"
Stocks (requires API key)
- "What's Apple's current stock price?"
- "Compare Microsoft, Google, and Apple stocks"
Sample Data
The database includes 23 sample transactions across:
- Departments: Engineering, Sales, Marketing
- Categories: Software, Hardware, Travel, Marketing
- Time Period: Q4 2024 - Q1 2025
Project Structure
financial-mcp-server/
├── package.json
├── tsconfig.json
├── src/
│ ├── index.ts # Main server entry
│ ├── types.ts # TypeScript interfaces
│ ├── services/ # Data access layer
│ │ ├── exchangeRate.ts
│ │ ├── stockData.ts
│ │ └── database.ts
│ └── tools/ # MCP tool implementations
│ ├── exchangeRate.ts
│ ├── stockData.ts
│ └── transactions.ts
└── data/
├── transactions.csv
└── budgets.csv
Development
# Build
npm run build
# Watch mode
npm run watch
License
MIT
