个人财务数据MCP服务器

一个安全、本地优先的以色列银行和信用卡公司财务数据聚合器,通过TypeScript构建并利用israeli-bank-scrapers实现数据抓取,帮助用户跨多个来源聚合和分析财务交易,同时保持数据隐私和安全。

  • by shlomiuziel
  • TypeScript
  • 本地部署
  • 14 星标
  • 更新于
在 GitHub 查看 shlomiuziel/asher-mcp

使用说明

Asher-个人财务数据MCP服务器

更接近你自己的数据,类固醇!

以色列银行和信用卡公司的安全、本地首个金融数据聚合器,使用TypeScript构建,由 以色列银行劫匪.Asher可帮助您汇总和分析多个来源的财务交易,同时保护您的数据隐私和安全。 信息被抓取并存储在本地加密的SQLite数据库中。

特性

  • MCP服务器:实现模型上下文协议,便于与MCP主机(如Claude)集成
  • 广泛集成:支持以色列所有银行和信用卡公司 以色列银行劫匪.
  • 本地优先:您的财务数据永远不会离开您的机器
  • 加密:敏感数据在静止时加密
  • 命令行界面:通过命令行轻松设置和管理
  • TypeScript:考虑到型号安全

先决条件

  • Node.js 18+
  • npm

安装

  1. 克隆存储库:

    git clone https://github.com/shlomiuziel/asher-mcp.git
    cd asher-mcp
    
  2. 安装依赖项:

    npm install
    
  3. 构建项目:

    npm run build
    
  4. 可选的:在系统范围内安装 asher cli命令:

    npm install -g .
    
  5. 全局安装tsx(TypeScript Execute)(克劳德桌面集成所需):

    npm install -g tsx
    

数据库位置

数据库文件存储在以下位置,具体取决于您的操作系统:

  • macOS: ~/Library/Application Support/Asher/database.db
  • Linux: ~/.local/share/Asher/database.db
  • 窗户: %APPDATA%/Asher/database.db

首次运行和配置

  1. 准备一份 credentials.json 使用您的提供商凭据创建文件。 查看支持的提供商和凭据字段 这里.

  2. 获取您的凭证:

    asher ingest-creds -f credentials.json
    
    • 使用此命令根据需要更新凭据。删除可以手动完成(请参阅 scraper_credentials 桌子)。
    • 系统将提示您输入数据库的加密密钥(对于首次设置,您将重新输入以确认)。
  3. 在安装过程中,系统将提示您:

    • 启用通知(测试通知将有助于权限)
    • 可选地执行第一次抓取(建议避免由于大量数据而导致的延迟和可能的超时)
    • 配置Claude Desktop集成(可以直接启动 npm run configure:claude)

用法

MCP工具

Asher为MCP主机提供了几个工具:

  • fetchTransactions:获取最近的交易并将其存储在数据库中。
  • describeTable:获取表的详细信息(列、索引)。
  • listTables:列出数据库中的所有表。
  • getTableSchema:获取特定表的架构。
  • sqlQuery:对允许的表执行安全的SELECT查询(防止SQL注入和未经授权的访问)。
  • fetch-last-month-transactions:提取并汇总上个月的交易和费用。

其中包含一个示例提示,可帮助您生成详细的月度报告。

测试您的MCP服务器

您可以运行MCP检查器进行本地测试:

npm run start:mcp:inspector

安全

  • 所有敏感数据都是静态加密的。
  • 银行凭据使用您的加密密钥安全地存储在数据库中。
  • 应用程序遵循最小特权原则(chmod 600 在数据库文件上)。
  • 加密密钥是在运行时请求的,从不存储在磁盘上。

测试

运行所有测试:

npm test

许可证

该项目根据MIT许可证获得许可。请参阅 许可证 文件以获取详细信息。

⚠️ 重要免责声明

在使用本软件之前,请仔细阅读本免责声明。

该软件旨在帮助您分析财务数据,并使MCP主机可以访问这些数据。但是,使用本软件即表示您承认并同意以下内容:

  1. 不担保:本软件按“原样”提供,不提供任何形式的明示或暗示保证,包括但不限于适销性、特定用途适用性和不侵权保证。

  2. 金融数据安全:

    • 您全权负责您的银行凭证和财务数据的安全
    • 切勿与任何人共享您的凭据或加密密钥
    • 开发人员不对未经授权访问您的财务账户负责
  3. 使用风险自负:

    • 开发人员不对因使用本软件而导致的任何经济损失、数据丢失或其他损害负责
    • 始终通过官方银行渠道核实重要财务信息
    • 该软件可能与所有银行机构不兼容
  4. 无责任:在任何情况下,作者或版权持有人均不对因软件或软件的使用或其他交易而产生、产生或与之相关的任何索赔、损害赔偿或其他责任承担责任,无论是在合同、侵权或其他诉讼中。

  5. 第三方服务:此软件可能与第三方服务集成。开发人员不对这些第三方的行为、内容或政策负责。

使用本软件即表示您已阅读本免责声明并同意受其条款的约束。