Skip to main content
Glama
chang0911

丝路E投财务引擎 MCP 适配层

by chang0911

fast_calc_reports

Converts five financial TXT inputs into a 16-key annual report JSON with statements, ratios, IRR/MIRR diagnostics, funding gaps, and optional table batching to avoid truncation.

Instructions

财务测算:5类输入txt → 16键JSON(11张报表+指标+IRR/MIRR诊断+资金缺口)。_meta.years=年份轴;financial_ratios=行清单[序号,指标名,月口径,年口径];其余报表=年度矩阵{行名:{年份:数值}}。整体约50~60KB,若客户端响应上限50KB会被截断(尾部表丢失):可传 tables="表名1,表名2" 分批拉取(省流且截断自检),完整表名清单=invest_exp_fundraising/debt_repayment_schedule/cost_expense_stat/revenue_stat/tax_stat/profit_distribution_stat/cash_flow_stat/balance_sheet/project_invest_cash_flow/investor_cash_flow/financial_ratios;返回JSON末位 complete:true=完整,缺失即被截断(重拉或分批)。数字必须原样引用,禁止自行换算。irr_health/warnings 提示 IRR 未收敛失灵时,以年口径 IRR 与修正后 MIRR 为主判据。

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
filesYes5类txt:文件名→全文
tablesNo可选:分批拉取的表名清单,逗号分隔,带不带.txt均可(如 "revenue_stat,cost_expense_stat");合法表名=invest_exp_fundraising/debt_repayment_schedule/cost_expense_stat/revenue_stat/tax_stat/profit_distribution_stat/cash_flow_stat/balance_sheet/project_invest_cash_flow/investor_cash_flow/financial_ratios;返回JSON末位 complete:true=完整,缺失即被截断(重拉或分批)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does so richly: it discloses the ~50–60KB output size, the 50KB truncation failure mode, the complete:true sentinel for self-checking, the verbatim-number requirement (禁止自行换算), and the IRR-non-convergence caveat. These are behavioral traits beyond anything the schema provides.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Dense but front-loaded: purpose first, then output structure, then truncation/batching, then numeric-integrity rules. Every clause carries operational information, though the length is heavy and some output-structure detail could be trimmed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex financial-modeling tool with nested inputs, no output schema, and no annotations, the description supplies the output shape (_meta.years, financial_ratios row list, annual matrices), truncation handling, and result-interpretation guidance. Nothing essential to correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is already 100%, so baseline is 3, but the description adds real value by explaining WHY tables exists (truncation avoidance / 省流且截断自检) and reinforcing the comma-separated, .txt-optional format and the complete flag. It goes beyond restating the schema's parameter text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource with scope: 5类输入txt → 16键JSON(11张报表+指标+IRR/MIRR诊断+资金缺口). An agent can tell this apart from siblings like fast_calc_excel and fast_calc_solve without opening a schema, because the exact output composition is enumerated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear conditional guidance: if the client 50KB response limit truncates the payload, pass tables="..." to pull in batches. It also directs the agent to trust annual IRR and corrected MIRR when irr_health/warnings flag non-convergence. It does not, however, explicitly contrast itself with the sibling fast_calc_excel/fast_calc_solve tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.