MCP费用跟踪器
基于FastMCP的服务器,用于管理个人开支,具有完整的CRUD操作和货币转换支持。设计用于与Claude Desktop或其他LLM客户端集成。
______________________________________________________________________
特性
- 增加支出 –记录费用,包括日期、金额、类别、子类别、描述和货币。
- 列表类别 –检索所有唯一类别及其子类别(可选)。
- 列出费用 –按金额、类别、子类别、日期范围或货币过滤费用。
- 更新费用 –使用ID更新现有支出记录。
- 删除费用 –按ID删除支出记录。
- 获取费用 –按ID获取单个支出记录。
- 货币兑换 –即时在支持的货币之间转换金额。
- 类别资源 –动态检索预定义的费用类别和子类别。
支持的货币
INR, AED, CAD, EUR, MYR, SEK, USD, AUD, CHF, GBP, JPY, PHP, SGD, ZAR, BRL, CNY, HKD, MXN, SAR, THB______________________________________________________________________
MCP检查员
数据库设置
- 启动SQLShell(psql)并以postgres身份登录
psql- 创建用户、数据库和权限。请更改密码。
-- Create the user
CREATE USER expense_user WITH PASSWORD 'your_password';
-- Create the database with this user as owner
CREATE DATABASE expense_db OWNER expense_user;
-- Connect to the new database
\c expense_db
-- Grant schema privileges (expense_user already owns the database, but this ensures they can create objects)
GRANT ALL PRIVILEGES ON SCHEMA public TO expense_user;
-- For future tables/sequences created by ANY user, grant access to expense_user
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON TABLES TO expense_user;
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON SEQUENCES TO expense_user;- 克隆存储库
git clone https://github.com/i0Ta07/MCP.ExpenseTracker- 安装uv和同步依赖项。
pip install uv
uv sync运行MCP服务器
- 创建.env文件。请确保更改密码。
DBNAME="expense_db"
USER="expense_user"
PASSWORD="your_password" - 使用MCP检查器运行
uv run fastmcp dev main/main.py与Claude整合
如果你想直接融入克劳德。不要创建.env文件,只需传递以下环境变量即可。在claude_desktop_config.json中添加以下配置。请确保更改密码。
{
"mcpServers": {
"Expense Tracker": {
"command": "uv",
"args": [
"run",
"--with",
"fastmcp,psycopg2-binary",
"fastmcp",
"run",
"Absolute/path/to/your/main.py/file"
],
"env": {
"DB_NAME": "expense_db",
"DB_USER": "expense_user",
"DB_PASSWORD": "your_password",
"DB_HOST": "localhost",
"DB_PORT": "5432"
}
}
}
}未来更新
- 添加经常性费用表。
- 为贷记或借记交易添加布尔列。
- 将整个代码从同步转换为异步。
- 添加身份验证,然后部署到云端。
- 添加摘要功能。
- 增加预算表(月度、季度、半年和年度)
- 为本地服务器配置Docker。
致谢
建于 FastMCP
