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
fastmcp-example
Integrate Model Context Protocol (MCP) with LangChain and LangGraph to build AI agent workflows by exposing a variety of custom and pre-defined tools.
sec_mcptest
Demonstrates an MCP (Model Context Protocol) server to enable LLM clients (like Claude Desktop and LM Studio) to control a Streamlit dashboard that explores Singapore health facilities data.
MultiServer-Mcp
Demonstrates building and interacting with multiple Microservice-Compatible Protocol (MCP) servers for math and text processing using a LangChain MCP client for direct tool invocation.
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.