Ledger CLI MCP服务器

一个用于与Ledger CLI交互的模型上下文协议服务器,通过标准化接口使AI助手能够查询和分析财务数据。

  • by minhyeoky
  • Python
  • 本地部署
  • 51 星标
  • 更新于
在 GitHub 查看 minhyeoky/mcp-server-ledger

使用说明

mcp服务器分类账:一个分类账CLI mcp服务器

概述

一种用于交互的模型上下文协议服务器 Ledger CLI,一个功能强大的复式记账系统,可从命令行访问。此服务器允许大型语言模型通过Ledger CLI工具查询和分析您的财务数据。

此MCP服务器通过标准化界面公开Ledger CLI的功能,使AI助手能够轻松帮助您完成财务报告、预算分析和会计任务。

特性

服务器提供以下映射到Ledger CLI命令的工具:

  1. ledger_balance

    • 使用强大的过滤选项显示帐户余额
    • 输入:查询模式、日期范围、显示选项
    • 退货:格式化余额报告
  2. ledger_register

    • 显示具有详细历史记录的交易登记簿
    • 输入:查询模式、日期范围、排序选项
    • 返回:格式化注册表报告
  3. ledger_accounts

    • 列出分类账文件中的所有账户
    • 输入:可选查询模式
    • 返回:匹配帐户列表
  4. ledger_payees

    • 列出交易中的所有收款人
    • 输入:可选查询模式
    • 返回:匹配的收款人列表
  5. ledger_commodities

    • 列出所有使用的商品(货币)
    • 输入:可选查询模式
    • 退货:匹配商品列表
  6. ledger_print

    • 以分类账格式打印交易记录
    • 输入:查询模式、日期范围
    • 返回:格式化分类账条目
  7. ledger_stats

    • 显示分类账文件的统计信息
    • 输入:可选查询模式
    • 返回:分类账的统计摘要
  8. ledger_budget

    • 显示预算分析
    • 输入:查询模式、日期范围、报告期
    • 返回:预算报告
  9. ledger_raw_command

    • 运行原始Ledger CLI命令
    • 输入:命令参数为字符串列表
    • 返回:命令输出为文本

先决条件

  • Ledger CLI 必须在PATH中安装并可用
  • 包含您财务数据的有效分类账文件

安装

使用Docker(推荐)

您还可以使用minhyeoky/mcp分类账存储库中的Docker镜像:

docker pull minhyeoky/mcp-ledger

将此添加到您的 claude_desktop_config.json:

"mcp-ledger": {
  "command": "docker",
  "args": [
    "run",
    "-v",
    "/path/to/your/ledger/file.ledger:/main.ledger",
    "-e",
    "LEDGER_FILE=/main.ledger",
    "-i",
    "--rm",
    "minhyeoky/mcp-ledger"
  ]
}

替换 /path/to/your/ledger/file.ledger 带有分类账文件的实际路径。

通过Smithery安装

通过以下方式自动安装Ledger CLI MCP Server for Claude Desktop 史密瑟里:

npx -y @smithery/cli install @minhyeoky/mcp-ledger --client claude

使用紫外线

安装和运行此服务器的最简单方法是 紫外线:

uv sync

配置

服务器需要您的分类账文件的路径。这可以通过以下方式提供:

  • 这 LEDGER_FILE 环境变量
  • 启动服务器时的命令行参数

与Claude Desktop一起使用

将此添加到您的 claude_desktop_config.json:

"mcpServers": {
  "ledger": {
    "command": "uv",
    "args": [
      "run",
      "--env-file",
      "/path/to/your/.env",  // Optional: to set LEDGER_FILE
      "--with",
      "mcp[cli]",
      "mcp",
      "run",
      "<repo_path>/main.py"  // Path to the main.py file in this repository
    ]
  }

}

使用示例

配置后,您可以向AI助手询问有关财务数据的问题:

  • “给我看看上个月的开支”
  • “我目前所有账户的余额是多少?”
  • “列出与亚马逊的所有交易”
  • “2023年我在杂货上花了多少钱?”
  • “显示我第一季度的预算绩效”

AI将通过服务器使用适当的Ledger CLI命令来获取信息。

调试

有关更详细的本地测试:

mcp dev main.py

发展

此服务器是使用 模型上下文协议Python SDK有关MCP以及如何开发MCP服务器的更多信息,请参阅 官方文件.

为该项目做出贡献:

  1. 克隆存储库
  2. 安装开发依赖项
  3. 进行更改
  4. 使用MCP检查器或通过与Claude Desktop集成进行测试

安全考虑

此服务器对您的财务数据运行Ledger CLI命令。虽然它包括防止命令注入的基本验证,但您应该:

  • 仅与受信任的客户端一起使用
  • 小心你暴露的文件路径
  • 执行前检查所有命令

许可证

此MCP服务器根据MIT许可证获得许可。您可以根据许可条款自由使用、修改和分发它。