mcp server
finance-mcp
Python MCP server exposing finance and market-data tools to Claude and other LLMs. Deployable to Vercel.
Set up
Runs on your computer. Pick your agent and operating system.
This project does not publish an install method we can turn into a config. Follow the README instead.
README
synced Oct 23, 2026Finance MCP Server - Vercel Deployment
This folder contains the Finance MCP Server configured for serverless deployment on Vercel.
📁 Structure
vercel-deployment/
├── api/
│ ├── index.py # Main Vercel handler
│ ├── app_tools.py # MCP tools registration
│ └── database.py # Database connection manager
├── vercel.json # Vercel configuration
├── requirements.txt # Python dependencies
├── .env.example # Environment variables template
└── README.md # This file
🚀 Quick Deployment
1. Install Vercel CLI
npm install -g vercel
2. Set Environment Variables
Create a .env file (copy from .env.example):
DATABASE_URL_PRIVATE="postgresql://user:pass@host/private?sslmode=require"
DATABASE_URL_PUBLIC="postgresql://user:pass@host/public?sslmode=require"
3. Deploy to Vercel
cd vercel-deployment
vercel
Follow the prompts:
- Set up and deploy? Y
- Which scope? Select your account
- Link to existing project? N (for first deployment)
- What's your project's name? finance-mcp-server
- In which directory is your code located? ./
- Want to override settings? N
4. Add Environment Variables to Vercel
After deployment, add your secrets:
# Add private database URL
vercel env add DATABASE_URL_PRIVATE
# Add public database URL
vercel env add DATABASE_URL_PUBLIC
Or add them via Vercel Dashboard:
- Go to your project settings
- Navigate to "Environment Variables"
- Add
DATABASE_URL_PRIVATEandDATABASE_URL_PUBLIC - Redeploy:
vercel --prod
🔧 Configuration
vercel.json
The vercel.json file configures:
- Python runtime for serverless functions
- Routing to handle MCP endpoints
- Environment variables references
Production Deployment
vercel --prod
Your MCP server will be available at:
https://your-project.vercel.app/mcp
📡 API Endpoints
Once deployed, your MCP server will be accessible at:
- Main MCP endpoint:
https://your-project.vercel.app/mcp - Health check:
https://your-project.vercel.app/
🔐 Security
- Never commit
.envfile - it's already in.gitignore - Use Vercel environment variables for production secrets
- Enable SSL - Vercel provides automatic HTTPS
- Database SSL - Ensure Neon databases use
?sslmode=require
🧪 Testing
Local Testing
# Install dependencies
pip install -r requirements.txt
# Run locally
python api/index.py
Server runs at http://localhost:8080
Test MCP Endpoint
curl https://your-project.vercel.app/mcp
📊 Features
All 19 financial tools are available:
Account Management
list_accounts- View all accountsget_account_balance- Get specific account balanceget_account_summary- Complete financial summary
Transaction Analysis
list_transactions- List with filterssearch_transactions- Search by merchantget_recurring_transactions- Detect recurring payments
Analytics
get_spending_by_category- Category breakdownget_monthly_trends- Income/expense trendsget_top_merchants- Top spending merchantsget_cashflow_summary- Income vs expenses
Budgeting
create_budget- Create new budgetlist_budgets- View all budgetsget_budget_status- Budget vs actual spending
Utilities
get_available_categories- List categoriesformat_currency- Format amountscalculate_net_worth- Calculate net worth
Security & Policies
get_tool_policy- Get tool access policylist_tool_policies- List all policiesvalidate_tool_access- Validate permissions
🔄 Updates
To update the deployment:
# Pull latest changes
git pull
# Navigate to vercel-deployment folder
cd vercel-deployment
# Redeploy
vercel --prod
📝 Logs
View logs in real-time:
vercel logs
Or view in Vercel Dashboard under your project's "Logs" section.
🐛 Troubleshooting
Import Errors
Make sure all Python files are in the api/ directory and dependencies are in requirements.txt.
Database Connection Issues
- Verify environment variables are set correctly in Vercel
- Check database URLs include
?sslmode=require - Ensure Neon databases are accessible
500 Server Errors
Check Vercel logs: vercel logs or in the dashboard
📚 Resources
📞 Support
For issues or questions:
- Check Vercel logs
- Review environment variables
- Test database connections
- Verify Python dependencies
Ready to deploy! 🚀