金融账户管理代理

一个简化的金融代理服务,用于管理用户账户,包括账单添加、支付、报告生成和未付款账单查询等功能。

  • by saida404
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 saida404/mcp-demo

使用说明

这是我的账户管理金融代理的超简化版本。 我选择了这个usecase,因为它接近我们要解决的问题。

技术栈:Python、FastMCP、SQLite

👉 要演示 Claude Desktop 与服务器的交互,请观看 YouTube 视频: 🔗 https://youtu.be/bnFNgY-5Q-c

项目结构:

        - database/ - rad sa lokalnom SQL bazom podataka, CRUD operacije
        - screenshots/ - slike interakcije Claud Desktop sa ovim serverom
        - resources/ - json fajlovi koje izlazu resursi
        - tools/ - logika koju koriste  tool funkcije                                 
                - tests/ - testovi za logiku alata
                - pomocne/ folder koji sadrzi pomocne funkcije 
                           (ucitavnje jsona, validacija mjeseca itd.)
        - main.py - FastMCP server, registracija toolsa i resursa.

工具:

  • add_racun_tool:如果该帐户尚未被添加到用户数据库,如果特定期间和帐户类型的帐户已经存在于代理通知数据库中,并且代理提供向帐户发布者发送电子邮件,则将该帐户添加到用户数据库。

      parametri: 
                 tip_racuna (string) -> vrsta računa (struja,voda,plin,komunalije,telefon,internet)
                 iznos (float) -> iznos računa
                 rok_uplate (string) -> rok plaćanja u formatu YYYY-MM-DD
                 mjesec (string) -> mjesec na koji se račun odnosi
                 godina (integer) -> godina na koju se odnosi
    
  • plati_racun_tool:支付(在这种简化的情况下更新)用户帐户

      parametri: 
                 tip_racuna (string)
                 mjesec(string) i godina (int)
    
  • report_tool:为用户、付款和未付账单以及总成本生成完整的月度报告

      parametri: 
                 mjesec (string)
                 godina (int)
    
  • 获取_未付账户工具:获取用户的所有未付账户列表

      parametri: bez parametara
    
  • send_mail_duplicate_tool:如果在将帐户添加到数据库时,该帐户类型已经在该期间到达,代理会通知用户,并询问他是否想向帐户发布者发送邮件,询问是否有错误。

         Parametri: 
             tip_racuna: str, 
             mjesec: str, 
             godina: int
    

启动 :

  1. 项目克隆: 克隆https://github.com/saida404/mcp-demo cd-mcp演示

  2. 创建和激活虚拟环境 python3-m venv-venv (Mac/Linux)->源venv/bin/activate (Windows)->venv\Scripts\activate

  3. 安装必要的工具 pip安装-r要求.txt

  4. 启动 MCP 服务器 python main.py

  5. 运行测试: pytest 或更详细的 pytest -v

该项目使用本地SQLite数据库进行开发和测试。 数据库不包含在仓库中,需要在项目启动前初始化。

架构 :

克劳德桌面(MCP客户端)=>Moj MCP服务器(FastMCP-Python)=>Lokalna SQLite baza

我的服务器为客户端输出以下原始值: 提示:账单_助理_提示 工具: add_racun_tool, pay_racun_tool, report_tool, dohvati_neplace_tool,posalji_mail_duplicat_tool 资源:placanje://ogranicenja, placanje://savjeti


Za每日进度更新pogledati notes_daily_progress.txt