MCP
by 080bct12alex
Overview
Building and deploying an MCP server for expense tracking that integrates with AI chatbots and custom clients, demonstrating core MCP concepts and multi-server client interaction.
Installation
uv run fastmcp run main.py --transport http --host 0.0.0.0 --port 8000Environment Variables
- OPENAI_API_KEY
- MANIM_EXECUTABLE
Security Notes
The remote expense tracker server lacks user authentication and authorization mechanisms. All operations (add_expense, list_expenses, summarize) apply to a single, shared database (expenses.db) without distinguishing between users. This poses a critical data privacy and integrity risk for a multi-user deployment, as any client can access or modify all financial data. SQL injection is mitigated by parameterized queries, and temporary directory usage for the database is a minor improvement.
Similar Servers
ai-mcp-server-client-fastmcp
Builds a local MCP server and LangChain AI agent to retrieve and analyze stock market financial data using YFinance.
MCP_Tutorials
This repository demonstrates the creation of MCP (Microservice-compatible Protocol) servers and clients using FastMCP and Langchain, exemplified by an expense tracker application.
mcp-explore
A Streamlit chat application integrating multiple MCP servers (local and remote) to orchestrate LLM tool calls.
mcp-langchain-client
Enables LLMs to interact with external tools from MCP servers through a LangChain-integrated client, offering both CLI and Streamlit web interfaces.