mcpField
M
mcp-server-ledger: A Ledger CLI MCP Server

mcp-server-ledger: A Ledger CLI MCP Server

本地服务
github.com/minhyeoky开发工具5153 周前更新

关于 mcp-server-ledger: A Ledger CLI MCP Server

mcp-server-ledger 是一个 MCP 服务,通过 Ledger CLI 让 LLM 查询和分析复式记账数据。它面向需要借助 AI 助手处理财务报表、预算和记账任务的用户。

主要功能

  1. 01封装 Ledger CLI 的余额、账目和交易命令
  2. 02提供账户、收款方和货币列表查询
  3. 03支持按查询条件和日期范围筛选
  4. 04提供预算分析工具
  5. 05提供 ledger_raw_command 直接执行原始命令

适用场景

  1. 01查询指定时间段内的支出情况
  2. 02检查各账户的当前余额
  3. 03分析预算执行情况

MCP 相关

该项目是一个 MCP 服务,将 Ledger CLI 的功能以工具形式暴露给 MCP 客户端调用。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"ledger": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"pull"
]
}
}
}
启动命令docker run -i --rm pull

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
ocipull

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MseeP.ai Security Assessment Badge

mcp-server-ledger:Ledger CLI MCP 服务

smithery badge

概述

这是一个用于与 Ledger CLI 交互的模型上下文协议服务。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

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

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

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

    • 运行原始 Ledger CLI 命令
    • 输入:以字符串列表形式提供的命令参数
    • 返回:命令输出文本

前提条件

  • 必须安装 Ledger CLI,并确保其位于 PATH 中
  • 有效的 Ledger 文件,其中包含您的财务数据

安装

使用 Docker(推荐)

您也可以使用 minhyeoky/mcp-ledger 仓库中的 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 安装

要通过 Smithery 自动为 Claude Desktop 安装 Ledger CLI MCP Server:

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

使用 uv 安装并运行此服务是最简单的方式:

uv sync

配置

此服务需要您的 Ledger 文件路径。可通过以下方式提供:

  • 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 助手询问有关财务数据的问题:

  • “显示我上个月的支出”
  • “我所有账户的当前余额是多少?”
  • “列出所有与 Amazon 相关的交易”
  • “我在 2023 年花了多少钱买杂货?”
  • “显示我第一季度的预算执行情况”

AI 将通过此服务使用相应的 Ledger CLI 命令获取信息。

调试

如需进行更详细的本地测试:

mcp dev main.py

开发

此服务使用 Model Context Protocol Python SDK 构建。有关 MCP 以及如何开发 MCP 服务的更多信息,请参阅官方文档。

如需为此项目做出贡献:

  1. 克隆代码仓库
  2. 安装开发依赖项
  3. 进行更改
  4. 使用 MCP inspector 测试,或与 Claude Desktop 集成进行测试

安全注意事项

此服务会在你的财务数据上运行 Ledger CLI 命令。虽然它包含基本验证以防止命令注入,但你仍应:

  • 仅与可信客户端配合使用
  • 谨慎选择要公开的文件路径
  • 在执行前检查所有命令

许可证

此 MCP 服务采用 MIT License 授权。你可以根据许可证条款自由使用、修改和分发。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。