关于 nestegg-calculators
nestegg-calculators 提供 90 多种无状态金融计算器,涵盖贷款、投资、债券、期权和税务。计算使用调用方提供的输入,不读取用户数据、实时价格或汇率查询,并可通过 JSON API 和 MCP 服务调用。
主要功能
- 0190 多种无状态金融计算器
- 02贷款与摊还计划计算
- 03投资、债券和期权计算
- 04包含德国工资税计算器
- 05提供带类型的 MCP 工具、资源和提示词
适用场景
- 01计算抵押贷款还款额与计划
- 02使用给定输入比较金融情景
- 03估算支持税年的德国税后工资
- 04在 AI Agent 工作流中调用金融计算
MCP 相关
Streamable HTTP MCP 服务将计算器作为工具、文档作为资源、预设工作流作为提示词提供。计算无状态且不存储输入;所需汇率等参数由调用方传入。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://nestegg.money/mcpclaude mcp add --transport http vladimirwrites-nestegg-calculators https://nestegg.money/mcp{"mcpServers":{"vladimirwrites-nestegg-calculators":{"type":"http","url":"https://nestegg.money/mcp"}}}在 Cursor 中打开{"servers":{"vladimirwrites-nestegg-calculators":{"type":"http","url":"https://nestegg.money/mcp"}}}在 VS Code 中打开{"mcpServers":{"vladimirwrites-nestegg-calculators":{"type":"http","url":"https://nestegg.money/mcp"}}}{"mcpServers":{"vladimirwrites-nestegg-calculators":{"serverUrl":"https://nestegg.money/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
99| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| mode | enum | 是 | 固定期限(计算还款额)或固定还款额(计算期限)。term | payment |
| rate | number | 是 | 年利率,以百分比表示(6 = 6%)。 |
| extra | array | 否 | 可选的按日期指定的额外本金还款。 |
| limit | number | 否 | detail=monthly 时每月行数上限(默认值和最大值均为 360;使用 nextOffset 翻页)。 |
| amount | number | 是 | 贷款本金。 |
| detail | enum | 否 | 输出大小。summary(默认值):总计 + 按年细分。monthly:完整还款计划(使用 offset/limit 分页)。summary | yearly | monthly |
| offset | number | 否 | detail=monthly 时月度还款计划的起始索引(默认值为 0)。 |
| payment | number | 否 | 月供,mode 为 'payment' 时使用。 |
| rateSteps | array | 否 | 可选的利率变更(例如 Zinsbindung 结束后)。分期金额保持不变;从每个日期起,未偿余额按新的年利率继续计息。 |
| startDate | string | 是 | 首次还款月份,使用 ISO 日期格式(YYYY-MM-DD)。 |
| termYears | number | 否 | 期限(年),mode 为 'term' 时使用。 |
| fixedUntil | string | 否 | 可选。利率在此 ISO 日期之前为确定值;此后还款计划为估算值。 |
详细介绍
nestegg.money
注重隐私、零知识的净资产与薪资追踪器。
在浏览器中加密。无需邮箱,无需密码,只需一个账号号码。
截图
概览
一款刻意保持简洁的零知识个人账本。单个 Cloudflare Worker 提供静态前端(无框架、无打包器)和三个小型 API 路由,并使用 D1 存储数据。登录方式类似 Mullvad,使用账号号码;数据在发送前会在浏览器中加密,因此服务器始终只存储密文。
功能
- 随时间变化:按年份显示净资产的堆叠柱状图,每种资产(或类别)使用一种颜色;存在负债时,还会显示净资产折线。
- 资产配置:以环形图展示最近一年的资产配置。
- 录入:点击某一年即可打开编辑器;每行代表一项资产(名称、币种、价值)。添加或移除资产、复制上一年数据、重命名年份。
- 类别:可以为资产添加类别标签(例如,将多项持仓归入“股票”)。编辑器会按类别分节显示,并列出小计;图表会将类别汇总为一个区块。
- 长期资产与贷款:汽车或房屋可以持续折旧或升值,并关联一笔带有实际还款计划的贷款——支持额外还款、固定利率期限,以及按还款额或贷款期限录入。资产净值会计入你持有它的每一年。
- 多币种:每行资产均有自己的币种;所有金额都会按 ECB 汇率(
/api/fx)换算为你选择的显示币种。过去年份使用当年的年末汇率。 - 股票代码/加密货币行:按股数 × 实时价格计算,通过
/api/price获取(Yahoo 代理)。过去年份使用当年的收盘价。发送给上游的只有公开代码,不会发送任何账号或用户标识符。 - 薪资:按人记录月薪(可选税前或税后),并支持记录变动事件(加薪、换工作)、双轴图表和从电子表格粘贴导入。
- 预算:粗略估算每月“剩余金额”——收入取自最近一个有薪资记录的月份,贷款还款额从资产中读取,另可录入经常性支出,并按类别分组,附带明细环形图。
- 预测与退休:向前预测净资产(缴款、增长、情景区间、FIRE 目标),并通过国家养老金(固定金额或德国 Rentenpunkte)模拟退休后的资产提取。
- 同步:零知识。账号号码会生成账号哈希(服务器唯一可见的信息)和 AES-GCM 密钥(绝不会离开浏览器)。多设备编辑会按记录合并,并以墓碑标记删除记录,以最新版本为准。 无法恢复——请妥善保管账号号码;导出 JSON 才是真正的备份。
- 分享链接:发布选定部分的只读快照,供顾问查看。每个分享都有自己的 AES-GCM 密钥,仅存于 URL 片段中;服务器存储的是无法关联的 ID 和密文。链接 30 天后过期,也可随时撤销。
- 双语:全站支持英语和德语——包括应用(个人资料中的语言选择器)、着陆页(
/和/de/),以及公开的 税前税后工资计算器 (英文版),可完全在浏览器中运行与应用完全相同的薪资计算引擎。
布局
nestegg.money/
├── src/ # the Worker: /api/fx, /api/price, /api/vault, /api/share,
│ # /api/calc/*, /mcp, /.well-known/mcp.json + page routing
├── public/
│ ├── index.html # marketing landing (generated; German at de/, see scripts/)
│ ├── dashboard.html # the app — loads one <script type="module" src="js/main.js">
│ ├── brutto-netto-rechner.html # public net-salary calculator (client-side, per-locale)
│ ├── i18n/ # runtime dictionaries (en, de)
│ ├── lib/ # finance-math: pure calculators incl. finance-math/de/
│ │ # (generated BMF PAP Lohnsteuer engines + statutory tables)
│ ├── css/ # base, landing, app styles
│ └── js/ # native ES modules (no bundler); layers point ui → io → domain
│ ├── domain/ # pure logic, no DOM/network: money, dates, schema, ids,
│ │ # loan, asset-value, model, forecast, retirement, merge, store
│ ├── io/ # effects: crypto (encrypt), storage (localStorage/sync/fetch)
│ ├── ui/ # DOM: dom, chart-kit, charts, networth, assets, salary, gate
│ └── main.js # entry point: cross-cutting wiring + boot
├── scripts/ # generators: per-locale pages, BMF PAP → JS, calculator docs
├── tests/ # node --test: domain math, calculators, MCP, i18n page sync
├── schema.sql # D1: one row per account (hash → encrypted blob)
└── wrangler.toml
Worker 会先运行(run_worker_first),这样它就能按主机名路由到着陆页或应用,并处理 /api/*;其余请求都会交给静态资源绑定处理。前端是纯 ES 模块依赖图——浏览器会直接加载,无需构建步骤。
部署
需要 Cloudflare 账户和 npm i -g wrangler(然后运行 wrangler login)。
- 运行
wrangler d1 create networth-db→ 将database_id复制到wrangler.toml。 - 运行
wrangler d1 execute networth-db --remote --file=schema.sql - 运行
wrangler deploy - 打开 URL,创建账户并保存数字。
本地开发:运行 wrangler dev(提供带实时 API 和本地 D1 的应用)。
使用 npm version patch|minor|major 发布新版本——version 钩子会将新版本号写入服务工作线程缓存名称(public/sw.js),以便客户端获取新构建。
测试(贷款/资产/预测/退休计算、migrate、多设备合并、加密):运行 npm test(执行 node --test tests/*.mjs——纯领域模块可直接导入,无需浏览器)。
计算器与 MCP
这些财务计算也以 99 个无状态计算器的形式开放,任何客户端(包括 AI Agent)都可以调用。它们是输入的纯函数:不涉及用户数据、实时价格或外汇查询(汇率由你传入),也无需身份验证。这是远程服务,因此你的输入会发送到服务端——但服务不会存储任何内容,也不会记录请求正文:每次调用都在内存中计算,随后即被丢弃。
德语计算器是唯一包含数据的一组:de-net-salary 通过官方 BMF Programmablaufplan 计算 2023–2026 纳税年度的精确 Netto(生成的引擎位于 public/lib/finance-math/de/,并已根据全部 1,008 个已发布的 Prüftabellen 数值完成验证);de-abgeltungsteuer、de-kindergeld、de-midijob 和 de-rentenpunkte 也使用同一份经过验证的法定表格。其他计算器均不针对特定国家。
- JSON API:
POST https://nestegg.money/api/calc/<name>(输入 JSON,输出 JSON)。GET /api/calc可列出所有计算器。参见public/docs/calculators.md。 - MCP 服务(Streamable HTTP):
https://nestegg.money/mcp——提供相同的计算器作为 MCP 工具,带有类型化的outputSchema、只读注释、作为resources/*的文档,以及作为prompts/*的预设工作流(mortgage-plan、fire-check、brutto-netto)。
在 MCP 客户端中安装:
claude mcp add --transport http nestegg https://nestegg.money/mcp
该服务也已发布到官方 MCP 注册表,名称为 io.github.VladimirWrites/nestegg-calculators(当 server.json 在 main 上发生变化时会自动重新发布);描述文件通过 /.well-known/mcp.json 提供,并提供了用于 Agent 发现的 llms.txt。
示例(Agent 默认保持响应简短,然后再深入查询):
> amortization { amount: 475000, rate: 3.75, mode: "payment", payment: 2869.8, startDate: "2024-04-01" }
→ { monthlyPayment, payments, totalInterest, payoffDate, yearly: [ …per-year… ] } // summary
> amortization { …same…, detail: "monthly", offset: 0, limit: 12 }
→ { schedule: [ …12 rows… ], scheduleTotal: 204, nextOffset: 12 } // paginated
说明
- 新账户会以当前年份和空白数据开始。点击年份可添加资产行,使用“+ Year”添加更多年份,或使用“Reset”重新开始。
- 在没有后端的普通预览中,应用会通过 localStorage 仅在本地运行,并使用备用汇率;部署后会启用同步、实时汇率和价格。
- 服务端无法读取你的数据,但能看到加密数据块的大小、同步时间和你的 IP——应用页脚对此有明确说明。
参与贡献
欢迎提交 Issue 和 Pull Request。领域逻辑(public/js/domain/)是纯逻辑,并有测试覆盖——提交 PR 前请运行 npm test,并为新增行为添加测试。ui/ 和 io/ 层很薄,面向浏览器;请勿将 DOM 操作放入 domain/。(package.json 中的版本必须与服务工作线程缓存名称一致——有测试会检查;如果提示不一致,请运行 npm run sync-version。)
许可证
根据 Apache License 2.0 授权。© 2026 Vladimir Jovanovic。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。