支出追踪服务

一个基于FastMCP的支出追踪系统,支持通过MCP协议与AI模型交互,提供支出管理、分类汇总和SQLite数据库存储功能。

  • by MuhammadDastgeer
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 MuhammadDastgeer/First_Remote-_Mcp_Server_App

使用说明

费用追踪MCP服务器

一个基于FastMCP的服务器,通过模型上下文协议(MCP)集成人工智能来追踪个人支出。

描述

这个项目提供了一个费用追踪系统,该系统可以通过MCP工具与人工智能模型进行交互。它支持按类别和子类别添加、列出、汇总、编辑和删除费用条目。

特点/特性

  • 费用管理添加、列出、编辑和删除费用条目
  • 总结按类别和日期范围获取费用摘要
  • 类别组织预定义类别及其从(某处)加载的子类别 categories.json
  • SQLite 数据库使用SQLite进行持久化存储,存储位置为系统的临时目录
  • MCP集成提供用于人工智能模型交互的工具和资源

安装

  1. 克隆仓库:

    git clone <repository-url>
    cd remote-mcp
    
  2. 使用 uv 安装依赖项:

    uv sync
    

    如果你没有安装uv,请先进行安装:

    pip install uv
    

用法

运行MCP服务器:

python main.py

服务器将在 http://0.0.0.0:8000 默认情况下。

工具

添加费用

添加一个新的费用条目。

参数:

  • date (字符串):日期格式为 YYYY-MM-DD
  • amount (数字):费用金额
  • category (字符串):主要类别
  • subcategory (字符串,可选):子类别
  • note (字符串,可选):附加说明

列出费用

列出指定日期范围内的费用条目。

参数:

  • start_date (字符串):开始日期,格式为YYYY-MM-DD
  • end_date (字符串):结束日期,格式为YYYY-MM-DD

总结

在指定日期范围内按类别汇总费用。

参数:

  • start_date (字符串):开始日期,格式为YYYY-MM-DD
  • end_date (字符串):结束日期,格式为YYYY-MM-DD
  • category (字符串,可选):按特定类别过滤

编辑费用

编辑现有的费用条目。

参数:

  • expense_id (整数):要编辑的费用的ID
  • date (字符串,可选):新日期
  • amount (数字,可选):新金额
  • category (字符串,可选):新类别
  • subcategory (字符串,可选):新子类别
  • note (字符串,可选):新备注

删除费用

删除一项费用记录。

参数:

  • expense_id (整数):要删除的费用的ID

资源

类别

以JSON格式提供费用类别及其子类别。

URI(统一资源标识符): expense:///categories

MIME 类型: application/json

数据库

该应用程序使用SQLite进行数据存储。数据库文件创建在系统的临时目录中(tempfile.gettempdir()) 作为 expenses.db服务器启动时,数据库会自动初始化。

依赖项

  • fastmcp >= 2.12.4构建MCP服务器的框架
  • aiosqlite >= 0.21.0Python的异步SQLite驱动程序

许可证

[在此添加许可证信息]