费用跟踪服务器

基于Model Context Protocol(MCP)的费用跟踪服务器,支持通过自然语言交互管理财务,包括记录、查看、分类和分析支出。

  • by shivamprasad1001
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 shivamprasad1001/expense-mcp-server

使用说明

费用跟踪MCP服务器

用于跟踪和管理费用的模型上下文协议(MCP)服务器。该服务器使AI助手能够通过自然语言交互帮助您管理财务。

概述

Expense MCP Server实现了模型上下文协议,为Claude Desktop、Cursor和其他MCP兼容客户端等AI工具提供费用跟踪功能。通过对话式人工智能跟踪支出、对支出进行分类,并深入了解您的财务习惯。

特性

  • 添加费用:记录费用,包括类别、金额和描述
  • 查看费用:按日期、类别或金额检索和过滤费用
  • 费用汇总:获取支出摘要和财务见解
  • 会员管理:跟踪多个成员或组的费用
  • 永久存储:所有数据都以JSON格式存储在本地

先决条件

  • Python 3.10或更高版本
  • uv(Python包管理器)

安装

1.安装uv

如果你还没有安装uv:

macOS/Linux:

curl -LsSf https://astral.sh/uv/install.sh | sh

视窗:

powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

2.克隆存储库

git clone https://github.com/shivamprasad1001/expense-mcp-server.git
cd expense-mcp-server

3.安装依赖项

uv sync

找到你的紫外线路径

为了避免配置错误,您需要您的绝对路径 uv 可执行。

macOS/Linux:

which uv

Windows(PowerShell):

where.exe uv

该命令将输出如下内容:

  • macOS: /Users/yourusername/.local/bin/uv 或 /opt/homebrew/bin/uv
  • Linux: /home/yourusername/.local/bin/uv
  • 窗户: C:\Users\YourUsername\.local\bin\uv.exe

配置

适用于克劳德桌面

将此配置添加到您的Claude Desktop配置文件中:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
视窗: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "expense-tracker": {
      "command": "/ABSOLUTE/PATH/TO/uv",
      "args": [
        "--directory",
        "/ABSOLUTE/PATH/TO/expense-mcp-server",
        "run",
        "expense-mcp-server"
      ]
    }
  }
}

示例(macOS):

{
  "mcpServers": {
    "expense-tracker": {
      "command": "/Users/johndoe/.local/bin/uv",
      "args": [
        "--directory",
        "/Users/johndoe/projects/expense-mcp-server",
        "run",
        "expense-mcp-server"
      ]
    }
  }
}

示例(Windows):

{
  "mcpServers": {
    "expense-tracker": {
      "command": "C:\\Users\\JohnDoe\\.local\\bin\\uv.exe",
      "args": [
        "--directory",
        "C:\\Users\\JohnDoe\\projects\\expense-mcp-server",
        "run",
        "expense-mcp-server"
      ]
    }
  }
}

对于光标

将此添加到您的Cursor MCP配置中 ~/.cursor/mcp.json:

{
  "mcpServers": {
    "expense-tracker": {
      "command": "/ABSOLUTE/PATH/TO/uv",
      "args": [
        "--directory",
        "/ABSOLUTE/PATH/TO/expense-mcp-server",
        "run",
        "expense-mcp-server"
      ]
    }
  }
}

对于其他MCP客户端

有关配置,请参阅MCP客户端的文档。通常,您需要指定:

  • 命令:绝对路径 uv (例如。, /Users/username/.local/bin/uv)
  • 参数: ["--directory", "/absolute/path/to/expense-mcp-server", "run", "expense-mcp-server"]

用法

配置后,重新启动您的AI助手(Claude Desktop/Cursor)以加载MCP服务器。然后,您可以通过自然语言与费用跟踪器进行交互:

交互示例

  • “加上50美元的杂货费”
  • “给我看看这个月的所有开支”
  • “我在餐馆花了多少钱?”
  • “我这周的总支出是多少?”
  • “增加25美元的交通费用”
  • “列出所有超过100美元的费用”
  • “添加名为John的新成员”
  • “显示所有成员及其费用”

可用工具

MCP服务器为AI助手提供以下工具:

  • add_expense:记录新的费用,包括金额、类别和描述
  • list_expenses:查看所有费用或按条件(日期、类别、金额)筛选
  • get_summary:获取支出摘要、总额和统计数据
  • add_member:添加新成员进行费用跟踪
  • list_members:查看所有成员
  • delete_expense:按ID删除费用
  • update_expense:修改现有费用

数据存储

所有费用数据都存储在本地 members.json 在项目目录中。此文件包含:

  • 会员信息
  • 带有时间戳的支出记录
  • 类别和元数据

数据隐私:您的所有数据都保留在本地计算机上。不会向外部服务器发送任何内容。

发展

项目结构

expense-mcp-server/
├── main.py              # Main MCP server implementation
├── members.json         # Data storage (created on first run)
├── pyproject.toml       # Project configuration
├── uv.lock             # Dependency lock file
└── README.md           # This file

以开发模式运行

# Navigate to project directory
cd expense-mcp-server

# Run the server
uv run expense-mcp-server

MCP检验员测试

您可以使用MCP检查器工具测试MCP服务器:

npx @modelcontextprotocol/inspector uv --directory /path/to/expense-mcp-server run expense-mcp-server

检查器提供了一个web界面来测试所有可用的工具和资源。

故障排除

常见问题

“找不到命令:uv”

  • 确保你已经安装了uv,并且它在你的PATH中
  • 在配置中使用紫外线的绝对路径(请参阅“查找紫外线路径”部分)

“没有名为'mcp'的模块”

  • 跑 uv sync 在项目目录中安装依赖项

更改未反映在Claude Desktop中

  • 配置更改后完全重新启动Claude Desktop
  • 检查Claude Desktop中的开发人员工具(查看>开发人员工具)是否有错误

服务器未启动

  • 验证配置中的所有路径都是绝对路径
  • 确保 members.json 文件可写
  • 检查Python版本 python --version (必须为3.10+)

贡献

欢迎投稿!请随时提交拉取请求。

  1. 复刻仓库
  2. 创建功能分支(git checkout -b feature/AmazingFeature)
  3. 提交您的更改(git commit -m 'Add some AmazingFeature')
  4. 推到分支(git push origin feature/AmazingFeature)
  5. 打开拉取请求

路线图

  • []添加预算跟踪和警报
  • []将费用导出到CSV/Excel
  • []支持多种货币
  • []经常性费用跟踪
  • []基于类别的分析和图表
  • []收据图像存储(带OCR)

许可证

这个项目是开源的,可以在MIT许可证下使用。

支持

如果您遇到任何问题或有疑问:

关于MCP

模型上下文协议(MCP)是一个开放协议,它规范了应用程序如何向大型语言模型(LLM)提供上下文。将MCP想象成AI的USB-C端口——它提供了一种将AI模型连接到不同数据源和工具的标准化方法。

了解更多信息,请访问 模型上下文协议.io.

作者

由...创建 湿婆拉达1001


重要:在MCP配置中始终使用绝对路径,以避免“找不到命令”错误。用实际的系统路径替换占位符路径。