opentax
Server Details
Verifiable US tax oracle for AI agents: cited, machine-checkable federal and state tax computation
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Available Tools
15 toolscalculate_business_taxAInspect
Compute US federal BUSINESS-ENTITY tax from the same cited corpus: check-the-box entity classification, Form 1120 corporate income tax (§ 179/168(k)/174A/163(j)/DRD/NOL, § 250, GBC/FTC/BEAT), S-corp entity taxes, corporate estimates, the § 4501 buyback excise, AET and PHC taxes. Individual returns → calculate_tax. Unknown keys are rejected; unmodeled territory refuses loudly with the reason.
| Name | Required | Description | Default |
|---|---|---|---|
| asOf | No | REQUIRED for computation: the law-in-force date — use the intended tax year's year-end (e.g. "2025-12-31" for TY2025). Omitting it is an error, never a default. | |
| target | No | rule to derive (default: us.federal.corp.entity_level_income_tax — the classification-aware entity income tax). Other targets: us.federal.corp.entity_classification, .taxable_income, .income_tax_after_credits, .beat, .estimated.quarterly_payment, .stock_buyback_excise, .accumulated_earnings_tax, .phc_tax, .s_corp_entity_taxes | |
| corpNCTI | No | TY2025: the § 951A GILTI inclusion (with its § 78 gross-up); TY2026+: net CFC tested income (NCTI, OBBBA). The § 250 deduction applies 50% (2025) / 40% (2026+). The inclusion itself is GROSS INCOME (§ 951A(a)) — it must also be in corpGrossIncome with its § 78 gross-up; this fact drives only the § 250 deduction and FTC basket. The per-CFC tested-income aggregation is not modeled. In dollars. | |
| corpFDDEI | No | TY2025: foreign-derived intangible income (FDII); TY2026+: foreign-derived deduction eligible income (FDDEI, OBBBA — QBAI abolished). The § 250 deduction applies 37.5% (2025) / 33.34% (2026+). In dollars. | |
| corpPHCIncome | No | Personal holding company income (§ 543: dividends, interest, royalties, annuities, certain rents). In dollars. | |
| llcMemberCount | No | Number of members (owners) of the LLC — one member defaults to disregarded-entity treatment, two or more to partnership (Treas. Reg. § 301.7701-3(b)(1)). | |
| qreCurrentYear | No | Qualified research expenses for the current year (§ 41(b); § 41(d) qualification attested). In dollars. | |
| corpGrossIncome | No | The corporation's gross income (§ 61), INCLUDING any dividends received, any § 951 subpart F and § 951A NCTI/GILTI inclusions with their § 78 gross-ups (§ 951A(a) is a gross-income INCLUSION — the § 250 deduction is computed separately from corpNCTI), and any § 245A-eligible foreign-sub dividends. In dollars. | |
| corpIsREITorRIC | No | The corporation is a real estate investment trust (§ 856) or regulated investment company (§ 851). REFUSES — their dividends-paid deduction and distribution requirements are not modeled. | |
| entityLegalForm | No | The business's state-law legal form: a limited liability company, or a state-law corporation (a per-se corporation under Treas. Reg. § 301.7701-2(b)(1)). | |
| corpCapitalGains | No | The corporation's capital gains for the year (§ 1211(a): losses offset only these; net gain is ordinary-rate income for a corporation). In dollars. | |
| corpPriorYearTax | No | Tax shown on the corporation's preceding-year return (§ 6655(d) prior-year prong; unavailable if that year showed zero tax or was short). In dollars. | |
| corpCapitalLosses | No | The corporation's capital losses for the year, including prior-year § 1212(a) carryovers being used (allowed only to the extent of capital gains). In dollars. | |
| corpDividendsPaid | No | Dividends paid during the year (the § 561 dividends-paid deduction for the accumulated-earnings computation). In dollars. | |
| corpTaxableIncome | No | The C corporation's taxable income BEFORE the § 250 deduction, if already computed — used as-is when provided. Leave at 0 to have the engine compute it from corpGrossIncome and the deduction components (charitable/DRD/NOL machinery). CONTRACT: the § 250 deduction is computed separately from corpFDDEI/corpNCTI and subtracted by the tax rule — an AS-FILED Form 1120 line 30 already nets out § 250, so when providing corpFDDEI/corpNCTI enter the pre-§ 250 amount here (line 30 plus the § 250 deduction as filed), never the net. In dollars. | |
| qreAvgPrior3Years | No | Average annual qualified research expenses over the 3 preceding years — 0 means no prior QREs (the 6% startup rate of § 41(c)(4)(B) applies). In dollars. | |
| corpSection179Cost | No | Cost of § 179 property the corporation elects to expense — including qualified real property (roofs, HVAC, fire/security systems on nonresidential real property, § 179(d)(1)(B)(ii)) that § 168(k) cannot reach. Must NOT also be in corpEquipmentPurchases; EXCLUDE passenger automobiles and sport utility vehicles (the § 280F caps and the § 179(b)(5) SUV cap are not modeled). In dollars. | |
| corpStockIssuedFMV | No | Fair market value of stock issued by the corporation during the taxable year (including to employees) — netted against repurchases under § 4501(c)(3). In dollars. | |
| sCorpGrossReceipts | No | The S corporation's gross receipts for the year (§ 1375). In dollars. | |
| corpFiscalYearFiler | No | The corporation uses a FISCAL taxable year (or files a § 443 short-period return). Fiscal and short years are not modeled — the OBBBA parameters (§ 250 rates, § 59A 10.5%, § 960(d) 90%, § 448(c) $32M, the § 170(b)(2) 1% floor) apply by the taxable year's BEGINNING date, and § 443(b) annualization / § 15 proration are not encoded. | |
| corpForeignResearch | No | FOREIGN research or experimental expenditures paid this year — capitalized and amortized over 15 years (§ 174; first-year deduction is 1/30 under the midpoint convention). In dollars. | |
| corpNOLCarryforward | No | Net operating loss carryforward available this year (§ 172: deduction limited to 80% of taxable income before the NOL; post-TCJA, no carrybacks). In dollars. | |
| employeeAnnualWages | No | One employee's annual wages, for the employer-side payroll-tax target (§ 3111 FICA + FUTA). In dollars. | |
| corpDomesticResearch | No | Domestic research or experimental expenditures — currently deductible under § 174A (OBBBA, permanent from 2025). In dollars. | |
| corpDrdOwnershipTier | No | Ownership of the dividend-paying corporation: under 20% (50% DRD), 20–80% (65% DRD), or 80%+ affiliated (100% DRD, § 243(a)(3)). | |
| corpForeignTaxesNCTI | No | Foreign taxes attributable to the § 951A basket (GILTI/NCTI) — the § 960(d) deemed-paid credit takes the 80% (2025) / 90% (2026+, OBBBA) allowance, no carryovers. In dollars. | |
| corpTIThrough3Months | No | Corporate taxable income for the first 3 months (§ 6655(e) annualization, installments 1-2). In dollars. | |
| corpTIThrough6Months | No | Corporate taxable income for the first 6 months (§ 6655(e) annualization, installment 3). In dollars. | |
| corpTIThrough9Months | No | Corporate taxable income for the first 9 months (§ 6655(e) annualization, installment 4). In dollars. | |
| corpDividendsReceived | No | Dividends received from other taxable domestic corporations (§ 243 DRD; must also be included in corpGrossIncome). Enter only dividends on stock meeting the § 246(c) holding period (held more than 45 days during the 91-day window around the ex-dividend date; 90/181 for certain preferred) — attested; § 1059 extraordinary-dividend basis reduction not modeled. In dollars. | |
| sCorpNetPassiveIncome | No | Passive investment income net of directly-connected deductions (§ 1375(b)(2)). In dollars. | |
| sCorpShareholderCount | No | Number of shareholders, counting married couples and § 1361(c)(1) family members as one (§ 1361(b)(1)(A): may not exceed 100). | |
| sCorpTaxableIncomeAsC | No | The S corporation's taxable income computed as if it were a C corporation (§§ 1374(b)(1)/1375(b)(1)(B) cap). In dollars. | |
| corpBaseErosionTestMet | No | The corporation's base erosion percentage is 3% or more (2% for banks/securities dealers) — one of the two § 59A applicable-taxpayer tests. BEAT applies only to $500M+ multinationals. | |
| corpEquipmentPurchases | No | Cost of qualified § 168(k) property acquired AND placed in service this year (acquired after January 19, 2025 — 100% bonus depreciation, OBBBA-permanent). EXCLUDE passenger automobiles (the § 280F luxury-auto caps are not modeled) and anything entered in corpSection179Cost. In dollars. | |
| corpIsLargeCorporation | No | The corporation had taxable income of $1,000,000 or more in any of the 3 preceding taxable years (§ 6655(g)(2) 'large corporation' — may not use the prior-year safe harbor). | |
| corpOrdinaryDeductions | No | Ordinary business deductions (salaries, rents, prior-year amortization, …) — everything EXCEPT charitable contributions, the dividends-received deduction, and NOLs, which have their own limited rules. Enter compensation already limited by § 162(m) (no deduction for a covered employee's remuneration over $1,000,000 at a publicly held corporation — not modeled, attested). In dollars. | |
| corpOwnedByFiveOrFewer | No | More than 50% of the stock's value was owned (directly or via § 544 attribution) by 5 or fewer individuals during the last half of the year (§ 542(a)(2)). | |
| filedForm2553SElection | No | The entity filed a timely Form 2553 S election under § 1362(a)(1) (for an eligible entity this also deems association classification, Reg. § 301.7701-3(c)(1)(v)(C)). | |
| generalBusinessCredits | No | Aggregate current-year § 38(b) general business credits (e.g. the § 41 research credit target's result) — limited under § 38(c). In dollars. | |
| corpAvgGrossReceipts3yr | No | 3-year-average annual gross receipts (§ 448(c) test: $31M for 2025, $32M for 2026 — at or below it the § 163(j) limit does not apply). In dollars. | |
| corpForeignTaxesGeneral | No | Creditable foreign income taxes in the § 904(d) GENERAL basket. In dollars. | |
| corpStockRepurchasedFMV | No | Fair market value of the corporation's own stock repurchased (§ 317(b) redemptions and economically similar transactions) during the taxable year, for the § 4501 excise. In dollars. | |
| corpIsCoveredCorporation | No | The corporation is a 'covered corporation' for the § 4501 stock-repurchase excise tax: a domestic corporation whose stock is traded on an established securities market (§ 4501(b)). | |
| corpSection245ADividends | No | Foreign-source portion of dividends received from specified 10-percent-owned foreign corporations, eligible for the § 245A participation-exemption DRD (100%). Must also be included in corpGrossIncome. Attested by entry: US-shareholder status, NOT a § 245A(e) hybrid dividend, and the § 246(c)(5) 365-day holding period met; no foreign tax credit is allowed for the deducted portion (§ 245A(d)) — keep these taxes out of the FTC inputs. In dollars. | |
| sCorpHasAccumulatedEandP | No | The S corporation has accumulated earnings and profits from C-corporation years at the close of the year (§ 1375 applies only then). | |
| corpAccumulatedEandPStart | No | Accumulated earnings and profits at the close of the PRECEDING year (§ 535(c)(2) minimum-credit offset). In dollars. | |
| corpIsPersonalServiceCorp | No | The corporation's principal function is services in health, law, engineering, architecture, accounting, actuarial science, performing arts, or consulting (§ 535(c)(2)(B): $150,000 minimum credit instead of $250,000). | |
| filedForm8832CorpElection | No | The entity filed a Form 8832 election to be classified as an association taxable as a corporation (Treas. Reg. § 301.7701-3(c)). | |
| corpBaseErosionTaxBenefits | No | Base erosion tax benefits for the year (§ 59A(c)(2)) — include the base-erosion percentage of any NOL deduction (§ 59A(c)(1)(B)). Added back to reach modified taxable income. In dollars. | |
| corpUndistributedPHCIncome | No | Undistributed personal holding company income (§ 545: taxable income adjusted, less federal taxes and the dividends-paid deduction). In dollars. | |
| sCorpRecognizedBuiltInGain | No | Net recognized built-in gain during the § 1374(d)(7) 5-year recognition period after a C-to-S conversion (0 if the period has passed or there was no conversion). In dollars. | |
| corpBusinessInterestExpense | No | Business interest expense (§ 163(j): limited to 30% of EBITDA-based ATI unless the § 448(c) gross-receipts test is met). In dollars. | |
| corpCharitableContributions | No | The corporation's charitable contributions — current-year gifts plus allowable prior-year § 170(d)(2) carryovers being used (both subject to the same ceiling and, from 2026, the OBBBA floor). In dollars. | |
| corpFilesConsolidatedReturn | No | The corporation joins a consolidated return (§§ 1501-1504) — intercompany eliminations and SRLY rules are not modeled, so this refuses. | |
| corpReasonableNeedsRetention | No | Earnings retained for the reasonable needs of the business (§§ 535(c)(1), 537 — documented needs; part of the accumulated earnings credit). In dollars. | |
| sCorpHasMultipleStockClasses | No | The corporation has more than one class of stock (§ 1361(b)(1)(D); differences in voting rights alone do not create a second class, § 1361(c)(4)). | |
| sCorpPassiveInvestmentIncome | No | The S corporation's passive investment income — royalties, rents, dividends, interest, annuities (§ 1375(b)(3)). In dollars. | |
| sCorpHasIneligibleShareholder | No | Any shareholder is ineligible under § 1361(b)(1)(B)–(C): a nonresident alien, or an entity other than an estate or eligible trust/exempt organization. | |
| corpForeignSourceIncomeGeneral | No | Foreign-source taxable income in the general basket (§ 904 limitation numerator; § 861 expense allocation attested). In dollars. | |
| corpAdjustedOrdinaryGrossIncome | No | Adjusted ordinary gross income (§ 543(b)(2)) — the 60% test base. In dollars. | |
| corpPortfolioDebtFinancedPercent | No | Average indebtedness percentage (0-100) of debt-financed portfolio stock (§ 246A) — reduces the 50%/65% DRD proportionally; 0 = not debt-financed. | |
| corpAvgAdjustedFinancialStatementIncome | No | 3-year-average adjusted financial statement income (§ 56A) — over $1 billion triggers the corporate AMT, which this engine refuses to approximate. In dollars. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description bears full responsibility for behavioral transparency. It mentions error behavior ('Unknown keys are rejected; unmodeled territory refuses loudly with the reason'), which is helpful. However, it does not explicitly state that the tool is read-only or has no side effects, though 'compute' strongly implies it. A clear statement about safety would push to 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that efficiently conveys the core purpose, scope, and error handling. It is front-loaded with the main action. A slight improvement would be breaking into multiple sentences for readability, but it remains clear and reasonably concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 63 parameters and no output schema, the description covers the tool's domain and error handling well but omits any indication of the output format or return value. For a complex tool, including what the user gets back (e.g., a tax computation result) would enhance completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description text does not add any parameter-specific details beyond what the schema already provides. It only describes overall tool behavior, so no extra value for parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's specific purpose: 'Compute US federal BUSINESS-ENTITY tax' and lists numerous explicit tax provisions. It directly distinguishes itself from the sibling tool 'calculate_tax' by noting that individual returns should use that tool, providing clear differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance: 'Individual returns → calculate_tax' tells the agent when not to use this tool. It also implies that business entities are the intended scope. This direct instruction helps avoid misapplication.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_fiduciary_taxAInspect
Compute US federal income tax for an ESTATE or TRUST (Form 1041): the § 1(e) compressed brackets and § 642(b) exemption. Input is taxable income before the exemption, after the §§ 651/661 distribution deduction. Retained capital gains refuse loudly (§ 1(h) trust breakpoints not modeled). Grantor trusts belong on the grantor's individual return via calculate_tax.
| Name | Required | Description | Default |
|---|---|---|---|
| asOf | No | REQUIRED for computation: the law-in-force date — use the intended tax year's year-end (e.g. "2025-12-31" for TY2025). Omitting it is an error, never a default. | |
| target | No | rule to derive (default: us.federal.fiduciary.income_tax). | |
| fiduciaryType | No | Form 1041 filer type for the § 642(b) exemption: estate ($600), simple trust required to distribute all income currently ($300), or complex trust ($100). Grantor trusts do not file their own tax — use the grantor's individual return. | |
| fiduciaryLongTermGains | No | Net long-term capital gain retained by the estate/trust. Any positive amount REFUSES — the § 1(h) preferential breakpoints for estates and trusts are not modeled. In dollars. | |
| fiduciaryIncomeBeforeExemption | No | The estate/trust's taxable income BEFORE the § 642(b) exemption but AFTER the §§ 651/661 income-distribution deduction (the DNI machinery is attested by this input). In dollars. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully discloses key behaviors: retained capital gains cause an error, omitting asOf is an error, and §1(h) breakpoints are not modeled. It also explains the computation assumptions (income before exemption, after DNI deduction). This is excellent transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at 5 sentences, front-loads the core purpose, and every sentence adds essential information. No redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters, no nested objects, and no output schema, the description covers the computation context, input requirements, limitations, and alternative tools. It is complete enough for an AI agent to correctly select and invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds meaningful context beyond schema: it explains the meaning of each parameter in the tax computation (e.g., fiduciaryIncomeBeforeExemption is after distribution deduction, fiduciaryLongTermGains cause refusal). It also provides the exemption amounts for each fiduciaryType, which are absent from schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it computes US federal income tax for estates and trusts (Form 1041) using specific code sections, and distinguishes from sibling tools by explicitly noting that grantor trusts should use calculate_tax. The verb 'compute' and resource 'US federal income tax for estate/trust' are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear when-to-use context: for estates and trusts, and explicitly excludes grantor trusts with an alternative tool name (calculate_tax). It also warns that retained capital gains will cause an error. However, it does not explicitly list all situations where the tool should not be used.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_taxAInspect
Compute US federal INDIVIDUAL income tax (or balance due if withholding is given) from a content-addressed corpus of cited rules. NEVER estimate tax yourself — call this, and report ONLY numbers returned by oracle calls made with the real facts (never hand-check or approximate a line the oracle can compute: your recalled parameters may be stale). Negative result = refund. Returns the answer, every assumption made, and hashes that let anyone re-verify the full derivation offline. Facts are grouped (filing, income, retirement, credits, …) — fill the groups that apply; unknown keys are rejected, and the engine names any missing fact the target needs. When source documents CONFLICT on a value, do not silently pick one: compute both branches, disclose the conflict and your choice; an interview/confirmation answer (rollover, conversion, taxable-amount screens) usually reflects taxpayer intent better than a payer form's box code — prefer it and disclose. That heuristic covers FACTS only: LEGAL classifications (qualifying child vs other dependent, filing status, SSTB) follow the statute's tests, not intake checkbox labels — a generic 'claim dependent credit' flag does not convert a qualifying child into an ODC dependent. TRANSCRIBE documented amounts as given even when they look anomalous (e.g. state withholding in a no-income-tax state): disclose the anomaly, never delete or 'correct' a documented number from outside knowledge. If you believe an oracle result is wrong, report the ORACLE's number and note your dissent — never substitute your own: the corpus is primary-source-verified and your recollection is not. Business entities → calculate_business_tax; estates/trusts → calculate_fiduciary_tax; § 152 dependency → determine_dependent.
| Name | Required | Description | Default |
|---|---|---|---|
| asOf | No | REQUIRED for computation: the law-in-force date — use the intended tax year's year-end (e.g. "2025-12-31" for TY2025). Omitting it is an error, never a default. | |
| state | No | state taxable income for the state tax targets (us.ca/us.va/us.il/us.ny/us.oh/us.nc/us.ga/us.md/us.mo/us.wi/us.mn income_tax; parameters via lookup_tax_parameter) | |
| filing | No | who is filing: status, age/blindness, dependency, student status | |
| income | No | wages, interest, capital gains, unemployment, foreign earned income | |
| target | No | rule to derive (default: net tax; balance due when payments_estimates.federalTaxWithheld is given). Determinations: us.federal.eligible.tips_deduction, us.federal.estimated.quarterly_payment, us.federal.estimated.safe_harbor_met | |
| credits | No | CTC/ODC counts, dependent care, saver's, adoption, education | |
| itemized | No | Schedule A: SALT, mortgage, medical, charitable | |
| documents | No | RAW document transcription (preferred over hand-mapped facts): W-2 boxes, 1099-R boxes/codes, SSA-1099 boxes, dependents' birth dates. SSA-1099s are first-class: box 5 sums into socialSecurityBenefits and box 6 into withholding, so the § 86 taxable-benefits worksheet runs on the transcribed total instead of a hand-mapped guess. The tool derives wages/withholding (incl. Form 8959 Part IV), box-3/5 wage coordination, dependent classifications, age facts, and early-distribution penalties deterministically — and errors if the same value is also passed as a hand-mapped fact. | |
| kiddie_tax | No | Form 8615 inputs for a child subject to § 1(g) | |
| retirement | No | social security, IRA/pension distributions, early-distribution penalty | |
| adjustments | No | IRA/HSA contributions, student-loan and car-loan interest | |
| investor_amt | No | AMT preferences (ISO spread) and § 1202 QSBS exclusion | |
| tips_overtime | No | § 224 tips and § 225 overtime deductions (OBBBA) | |
| healthcare_ptc | No | § 36B premium tax credit / Form 1095-A reconciliation | |
| rentals_passive | No | Schedule E rentals/royalties + § 469 passive-loss netting (Form 8582 via us.federal.passive_loss_allowed) | |
| self_employment | No | Schedule C / K-1, QBI inputs, SE deductions, home office | |
| household_employer | No | Schedule H nanny/household-employee taxes | |
| payments_estimates | No | withholding, prior-year safe harbor, annualized installments |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden — and it is exceptionally transparent. It discloses the output contract (answer, assumptions, verification hashes), unknown-key rejection, missing-fact naming, conflict handling (compute both branches, disclose choice), transcription fidelity (never correct anomalous documented numbers), and dissent policy. It even explains heuristics like preferring interview answers over payer-form codes and following statute tests over intake labels.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long but dense; nearly every sentence carries operational weight. It is front-loaded with the core directive and structured by topic (output contract, conflict handling, transcription policy, dissent). A tax engine merits this detail; a 4 reflects mild redundancy in repeated 'never substitute your own' warnings.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 18 nested parameter groups, no output schema, and no annotations, the description provides a complete operational contract: return contents, error behavior, handling of conflicts/missing data/anomalies, and sibling routing. The schema documents all parameters thoroughly, so the description need not repeat them. Nothing an agent needs to invoke the tool safely is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3, but the description adds substantial parameter-level semantics: it explains that facts are grouped, unknown keys are rejected, and the engine names missing facts. It details specific behaviors like how conflicting source values are handled. Combined with the schema's exhaustive per-parameter documentation, the semantic picture is complete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: compute US federal INDIVIDUAL income tax (with balance due when withholding is given) from a cited-rule corpus. It explicitly distinguishes itself from siblings by naming calculate_business_tax, calculate_fiduciary_tax, and determine_dependent. The scope is precise and immediately actionable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit when-to-use instructions: never estimate tax yourself, always call this tool, and report only numbers from oracle calls. It names alternatives and their triggers (business entities, estates/trusts, dependency determinations). No ambiguity remains about routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_filing_statusesAInspect
Compute the answer under every filing status for the same facts — e.g. to answer 'should we file jointly or separately?'. Statuses that need more facts report their error instead of guessing.
| Name | Required | Description | Default |
|---|---|---|---|
| facts | Yes | facts for the computation: either flat corpus fact ids (see list_input_facts) or the same group objects calculate_tax accepts (filing, income, retirement, …), plus optional target and asOf. Business/fiduciary/dependent facts are accepted flat. Unknown keys are rejected by name — nothing is ever silently dropped. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the tool computes for all statuses, returns errors for incomplete facts, and rejects unknown keys (from schema description). It does not explicitly state that the operation is read-only, but the context implies no side effects. Overall, good disclosure for a compute tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero filler. The first sentence states the core purpose, and the second clarifies error handling. Front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple parameter and no output schema, the description is sufficient for an agent to understand the tool's function. It covers purpose, error behavior, and parameter flexibility. Minor omission: no mention of the return format (e.g., a map of status to result/error), but overall complete for its complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a full description of the 'facts' parameter. The tool description adds extra context, noting that facts can be flat corpus IDs or group objects (like filing, income, retirement) accepted by calculate_tax, and that business/fiduciary/dependent facts are accepted flat. This enriches the schema description, earning a slightly higher score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool computes answers under every filing status for the same facts, with an explicit example ('should we file jointly or separately?'). This directly distinguishes it from sibling tools like calculate_tax, which likely process a single status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear use case (comparing statuses) and explains that statuses with insufficient facts report errors rather than guessing. However, it does not explicitly state when not to use the tool or mention alternatives, which would further guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_returnAInspect
Compute the COMPLETE Form 1040 bottom-line set in one call — the 17 lines that determine the return (1a, 9, 10, 11, 12e, 15, 16, 17 AMT, 19, 22, 23, 24, 25d, 27a, 28, 32, 33, 34/37), each whole-dollar rounded by the engine. Takes the SAME input as calculate_tax (prefer the documents block: transcribe W-2/1099-R/SSA-1099 boxes and dependent birth dates — SSA-1099s are first-class, box 5 and box 6 are summed for you; the tool derives ages, classifications, Part IV withholding, and penalties deterministically). Never assemble return lines by hand — this tool is the return. TRANSCRIPTION CONVENTIONS: (1) a PRIOR-YEAR Form 1040 in the file supplies CONTINUING conditions the current-year interview omits — the 'Someone can claim: You as a dependent' checkbox and the blindness boxes carry forward unless the current-year data contradicts them; (2) COMMUNITY PROPERTY: do NOT split income 50/50 between MFS spouses when they lived apart all year with no transfers (§ 66(a) allocates earned income to the earner) or when a written separation agreement ended the community — transcribe each document to its named earner; never invent a Form 8958 split the intake does not request; (3) bonus depreciation for assets placed in service 1/1-1/19/2025 is 40% (§ 168(k) pre-OBBBA phase-down; 100% only for property ACQUIRED after 1/19/2025).
| Name | Required | Description | Default |
|---|---|---|---|
| asOf | No | REQUIRED for computation: the law-in-force date — use the intended tax year's year-end (e.g. "2025-12-31" for TY2025). Omitting it is an error, never a default. | |
| state | No | state taxable income for the state tax targets (us.ca/us.va/us.il/us.ny/us.oh/us.nc/us.ga/us.md/us.mo/us.wi/us.mn income_tax; parameters via lookup_tax_parameter) | |
| filing | No | who is filing: status, age/blindness, dependency, student status | |
| income | No | wages, interest, capital gains, unemployment, foreign earned income | |
| target | No | rule to derive (default: net tax; balance due when payments_estimates.federalTaxWithheld is given). Determinations: us.federal.eligible.tips_deduction, us.federal.estimated.quarterly_payment, us.federal.estimated.safe_harbor_met | |
| credits | No | CTC/ODC counts, dependent care, saver's, adoption, education | |
| itemized | No | Schedule A: SALT, mortgage, medical, charitable | |
| documents | No | RAW document transcription (preferred over hand-mapped facts): W-2 boxes, 1099-R boxes/codes, SSA-1099 boxes, dependents' birth dates. SSA-1099s are first-class: box 5 sums into socialSecurityBenefits and box 6 into withholding, so the § 86 taxable-benefits worksheet runs on the transcribed total instead of a hand-mapped guess. The tool derives wages/withholding (incl. Form 8959 Part IV), box-3/5 wage coordination, dependent classifications, age facts, and early-distribution penalties deterministically — and errors if the same value is also passed as a hand-mapped fact. | |
| kiddie_tax | No | Form 8615 inputs for a child subject to § 1(g) | |
| retirement | No | social security, IRA/pension distributions, early-distribution penalty | |
| adjustments | No | IRA/HSA contributions, student-loan and car-loan interest | |
| investor_amt | No | AMT preferences (ISO spread) and § 1202 QSBS exclusion | |
| tips_overtime | No | § 224 tips and § 225 overtime deductions (OBBBA) | |
| healthcare_ptc | No | § 36B premium tax credit / Form 1095-A reconciliation | |
| rentals_passive | No | Schedule E rentals/royalties + § 469 passive-loss netting (Form 8582 via us.federal.passive_loss_allowed) | |
| self_employment | No | Schedule C / K-1, QBI inputs, SE deductions, home office | |
| household_employer | No | Schedule H nanny/household-employee taxes | |
| payments_estimates | No | withholding, prior-year safe harbor, annualized installments |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and delivers: whole-dollar rounding, deterministic derivation of ages/classifications/penalties, prior-year carry-forward of dependent/blindness checkboxes, community-property non-splitting rules, and the § 168(k) phase-down. Rich, specific behavioral context beyond what any annotation would provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose is front-loaded in the first sentence, and each block earns its place — the calculate_tax anchor, the hand-assembly prohibition, and three conventions that prevent real mis-entries. It is long, and the bonus-depreciation item is a niche rule included at the same weight as the general conventions, but nothing is filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool this complex (18 top-level params, nested objects, no output schema), the description covers the conceptual core: what the return set is, rounding behavior, input preference, and the three highest-risk transcription conventions. The main gap is the lack of any output-shape guidance given no output schema exists, but the input side is thoroughly anchored by the 100%-covered schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, and the description adds real value on top: 'Takes the SAME input as calculate_tax' tells the agent to reuse the sibling call's parameter shape, and the three transcription conventions (prior-year carry-forward, § 66(a) allocation, bonus-depreciation phase-down) govern how inputs must be handled. Some redundancy with the schema's documents-block text, but the added conventions push it above baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource — 'Compute the COMPLETE Form 1040 bottom-line set in one call' — and enumerates the exact 17 lines it produces. The calculate_tax comparison and the 'Never assemble return lines by hand — this tool is the return' directive make it easy to tell apart from the federal/state siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Orients the agent by saying the tool 'Takes the SAME input as calculate_tax' and explicitly tells it to prefer the documents block over hand-mapped facts. It stops short of a full when/when-not matrix (e.g., no explicit contrast with compute_state_return), but the 'this tool is the return' directive clearly marks when it should be invoked.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_state_returnAInspect
Compose a STATE return's printed-form line set deterministically (2025 IL-1040 / VA 760 / CA 540 / NY IT-201 / PA-40 / NJ-1040 / OH IT 1040 / NC D-400 / GA 500 / MD 502 / MO-1040 / WI Form 1 / MN M1 / SC1040 / AL Form 40 / OR-40 / OK Form 511 / CT-1040) — correct line NUMBERS from the printed forms and whole-dollar rounding, with the state tax computed by the oracle targets internally. NC and GA start from federalAGI: NC runs the AGI-tiered child deduction, the independent itemize-vs-standard selection, and the Bailey/military/SS auto-subtractions; GA FORCES itemizing for federal itemizers (pass gaFederalItemized), runs the per-spouse retirement exclusion and Low Income Credit targets, and caps total credits at the line 16 tax. PA is CLASS-BASED and NJ is CATEGORY-BASED: transcribe the pa*/nj* class-or-category fields (PA: Box 16 compensation, per-spouse loss classes; NJ: the line 15-26 category nets — a category loss is suppressed per the printed rule, and the composer runs the pension-exclusion, Worksheet H deduction-vs-credit, EITC/CTC/CDCC targets itself) — federalAGI is NOT the PA or NJ base. OH starts from federal AGI: pass federalAGI + ohBusinessIncome and the composer runs the Business Income Deduction, MAGI-tiered exemptions, and the Schedule of Credits ordering (retirement/senior/CDCC/exemption credits before the joint filing credit's line-11 base). Workflow: run compute_return first for the federal substrate, compute any state-specific components the citations describe (additions, subtractions, credits without targets — disclose each), then call this ONCE and report its line set VERBATIM. Never hand-assemble state line numbers: transposed lines on correct dollars are the dominant state error mode. ALWAYS pass taxableSocialSecurity and unemploymentCompensation when nonzero (VA/CA/NY subtractions are applied by the composer). ALWAYS transcribe the intake's state-specific block (e.g. ca_tax_return.ca_form540_schca: AB 5 employee-classification additions; va_sch_a fields; county/use-tax questions) — those fields drive composer inputs. For VA MFJ, pass vaYourVagi/vaSpouseVagi (the separate-VAGI worksheet) so the composer can run the Spouse Tax Adjustment worksheet itself. For MD, pass mdSubdivision (the mandatory county tax — line 28), mdEicQualifyingChild for the 50%/100%/45% EIC routing, and mdNetCapitalGainSubject from an agent-completed Form 502CG when FAGI exceeds $350,000; the composer runs the pension-exclusion, exemption-chart, CTC, poverty-credit, and local EIC/poverty worksheets itself. Maryland part-year returns (Form 502 line 12 proration) are not composed. For MO, split each income item per spouse (moFagiYou/moFagiSpouse etc. — Missouri combined returns compute a SEPARATE chart tax per spouse), pass the line 9/10 federal-tax amounts per the printed lists, and remember the NEW TY2025 100% capital-gains subtraction (moCapitalGainYou/Spouse); Kansas City/St. Louis 1% earnings taxes are separate city returns the composer does not produce. For WI, pass wiScheduleIAdjustments (IRC frozen at 12/31/2022 — post-2022 federal changes convert on Schedule I), wiCapitalGainSubtraction from Schedule WD (30%/60% LTCG exclusion), and note the Act 15 SB-16 retirement subtraction FORFEITS every credit — the composer enforces the forfeiture; compute both ways before electing it. For MN, remember the IRC is frozen at May 1, 2023 (2025 OBBBA items convert on Schedule M1NC → mnAdditions/mnSubtractions), pass mnSsAlternativeMethod when AGI exceeds the SS threshold (the composer takes the greater), mnAmt whenever M1MT preferences exist, and mnNetInvestmentIncome for the 1% NIIT; M1C/M1REF credit schedules are transcribed buckets. For SC, the base is FEDERAL TAXABLE INCOME — pass scFederalTaxableIncome (Form 1040 line 15 verbatim; a negative amount is preserved via subtraction line r), NOT federalAGI; pass scNetLtcgAfterLosses for the 44% LTCG deduction (net LT gains against ALL capital losses first), the per-person retirement/military/age-65 fields (military retirement is 100% deductible and REDUCES the same person's other two deductions — the composer handles the interplay), and federalEITC (the composer adds the 125% NONREFUNDABLE SC EITC into line 13 itself — never also put it in nonrefundableCredits); the 2025 state-tax addback for federal itemizers goes in scAdditions. For AL, the composer builds Alabama AGI from transcribed lines (alWages = W-2 Box 16, alOtherIncome, alTaxableRetirement* for the Schedule RS 65+ $6,000 exclusion — still $6,000 in 2026, HB388 died) — federalAGI is NOT the base; pass alFederalTaxPlusNiit (1040 line 22 + Form 8960) and alFederalRefundableCredits (EIC+ACTC+AOC+adoption+2439) for the UNLIMITED line 12 federal tax deduction, and remember overtime earned Jan-Jun 2025 is exempt and already out of Box 16. For OR, pass the federal-tax-worksheet components (orFederal1040Line22, orFederalPtc from 8962 line 24, orFederalAoc/orFederalRefundableAdoption — the EITC/ACTC are NOT subtracted) for the AGI-capped line 10 subtraction, taxableSocialSecurity (subtracted in full), or2024TaxLiability for the 9.863% kicker, and the Kids Credit inputs (orKidsUnder6 + addbacks); OBBBA tips/overtime/vehicle-interest are CLAIMED for Oregon via OR-ASC codes 390/391/392 in orSubtractions but added back for the Kids Credit test. For OK, pass federalAGI (line 1) plus the Schedule 511-A pieces (taxableSocialSecurity is subtracted in FULL automatically; okMilitaryRetirement/okCsrsRetirement/okRailroadRetirement are 100% subtractions; okGovRetirement*/okOtherRetirement* run the per-person $10,000 exclusion), okOutOfStateIncome (triggers the Schedule 511-E proration of deductions and exemptions), okFederalItemized + the Schedule 511-D inputs (federal itemizers MUST itemize for Oklahoma; $17,000 cap excludes medical/charity), exemptions + okSpecialExemptions65 (the 65+ exemption has FAGI limits), okFederalChildCareCredit/okFederalChildTaxCredit (greater of 20%/5%, $100,000 FAGI cliff), the Form 538-S inputs (okStrEligible attested, okGrossHouseholdIncome = ALL household income incl. nontaxable), and the Form 511-EIC inputs (okEicEligible attested under 2020 rules; okEicEarnedIncome2025 and, optionally, okEicEarnedIncome2024 + okEicAgi2024 — the composer computes both years from the printed 2020 table and keeps the larger, then 5%). Remember the joint 4.75% bracket starts at $14,400, not the $12,200 surveys print. For CT, the whole tax is a schedule on CONNECTICUT AGI (exemption, rates, 2% add-back, recapture, credit percentage — Tables A-E) computed by us.ct.income_tax from line 5; pass federalAGI plus the Schedule 1 pieces (taxableSocialSecurity with ctSsTotalBenefits/ctSsProvisionalExcess for the line 41 worksheet; ctPensionAnnuityIncome/ctIraDistributions for line 48b; ctMilitaryRetirement, ctTeachersRetirement, ctChetContributions), the Schedule 3 property tax inputs (ctPropertyTaxResidence/ctPropertyTaxAuto1/ctPropertyTaxAuto2 — the composer caps at $300, phases out by CT AGI, and limits to line 10), Schedule 2 other-jurisdiction inputs, and federalEITC + ctEitcQualifyingChild (40% + $250, refundable). QSS uses the MFJ column everywhere.
| Name | Required | Description | Default |
|---|---|---|---|
| asOf | Yes | year-end date, e.g. 2025-12-31 — REQUIRED | |
| caAmt | No | OVERRIDE for Form 540 line 61 — prefer caIsoPreference + caAmtTaxesAddback so the composer builds Schedule P AMTI and evaluates us.ca.amt itself; a passed caAmt wins. | |
| ctAmt | No | CT-1040 line 9: Connecticut alternative minimum tax from Form CT-6251 line 23 (required when federal AMT was paid — agent-computed, transcribed) | |
| mnAmt | No | M1 line 11: Schedule M1MT alternative minimum tax (6.75% broadened base, agent-computed — REQUIRED whenever AMT preference items exist; disclose) | |
| njSrp | No | NJ-1040 line 53c Shared Responsibility Payment (Worksheet L/Schedule NJ-HCC, hand-computed from coverage months; composer zeroes it below the filing threshold) | |
| wages | No | federal line 1a wages (NY IT-201 line 1) | |
| caBhst | No | us.ca.bhst result (pass the oracle target's answer) — Form 540 line 62 Behavioral Health Services Tax (R&TC § 17043, 1% of CA taxable income over $1,000,000); added into line 64 total tax when nonzero. | |
| caYCTC | No | us.ca.yctc result (pass the oracle target's answer) | |
| ctLate | No | return/payment is late — the composer applies the 10% late payment penalty to line 26 (line 27); pass ctLateInterest for line 28 | |
| useTax | No | consumer use / sales-use tax owed on the return | |
| alWages | No | Form 40 line 5b: W-2 BOX 16 state wages from ALL states (Schedule W-2 col I+J; Alabama state wages often EXCEED federal Box 1 — deferrals are AL-taxable). Overtime earned Jan 1-Jun 30, 2025 is exempt and already EXCLUDED from Box 16 (W-2 Box 14 'EX OT WAGES'). Falls back to the shared wages input. | |
| njWages | No | NJ-1040 line 15: W-2 BOX 16 state wages total (falls back to the shared wages input; NJ taxes cafeteria/125 benefits and some items federal Box 1 excludes) | |
| additions | No | total state additions to federal AGI (e.g. NY 414(h) A-104 + IRC-125 A-101; VA Schedule ADJ line 2 codes). GATE RULE: coded addition/subtraction line-item arrays sitting under a false 'do you have additions/subtractions' boolean are inactive template rows (especially $1-$4 placeholder amounts) — transcribe $0 for them and disclose; the gate controls for these arrays | |
| alIs65You | No | primary taxpayer was 65 or older — enables their $6,000 retirement exclusion (NOTE: still $6,000 for 2026; the reported $12,000 increase was HB388, which died May 2025) | |
| caCalEITC | No | us.ca.caleitc result (pass the oracle target's answer) | |
| filingHoh | No | ||
| moFagiYou | No | MO-1040 line 1Y: the PRIMARY taxpayer's share of federal AGI — Missouri combined returns SPLIT total FAGI between spouses per the AGI worksheet (each spouse's own income; joint items allocated). Defaults to the full federalAGI when omitted (one-income couple). | |
| njPension | No | NJ-1040 line 20a TAXABLE pension/annuity/IRA distributions (NJ three-year rule / general rule basis recovery already applied; Social Security and Railroad Retirement are exempt and never entered) | |
| okPenalty | No | OK line 41a: delinquent payment penalty (5% of line 39 minus line 19 after the original due date) | |
| okStrIs65 | No | taxpayer or spouse 65 or older by December 31 — raises the sales tax relief limit to $50,000 | |
| orPenalty | No | OR-40 line 43: penalty AND interest for filing or paying late (one combined printed line — 5% late-pay penalty, +20% over 3 months late, 100% for 3 consecutive unfiled years, plus the late-payment interest) | |
| scIs65You | No | primary taxpayer was 65 or older by December 31 — raises the retirement cap to $10,000 and enables the $15,000 age-65 deduction (line q-1, reduced by the retirement + military deductions claimed) | |
| dependents | No | dependent count (CA dependent exemption credits; NY $1,000 exemptions) | |
| exemptions | No | personal + dependent exemption COUNT (self + spouse + dependents) | |
| federalAGI | No | federal Form 1040 line 11 (from compute_return, verbatim). REQUIRED for il/va/ca/ny/or/ok/ct — the composer refuses without it. NOT used by PA (class-based: pass the pa* class fields instead). | |
| mdMw506nrs | No | MD line 42: tax withheld on Form MW506NRS (nonresident real property sale) | |
| mnItemized | No | Schedule M1SA Minnesota itemized deductions AFTER M1SA's own 3%/10%/80% limitation — the composer takes the larger of this or the computed standard deduction (MFS: standard barred when the spouse itemizes; pass mnMfsSpouseItemizes) | |
| mnStdBoxes | No | 65-or-older (born before January 2, 1961) and blind boxes for you/spouse — each adds $2,000 (single/HOH) or $1,550 (married statuses) to the standard deduction | |
| njExcessDi | No | NJ-1040 line 60 excess disability insurance withheld (over $380.42; NJ-2450) | |
| njRentPaid | No | rent paid on the NJ principal residence (tenants) — the composer enters 18% of it on line 40a | |
| njScorpNet | No | NJ-1040 line 22 net pro rata share of S corporation income (NJ-K-1; negative suppressed) | |
| okInterest | No | OK line 41b: delinquent payment interest (1.25% per month from the original due date) | |
| orInterest | No | OR-40 line 44: interest on UNDERPAYMENT OF ESTIMATED TAX from Form OR-10 (boxes 44a/44b) — late-payment interest goes in line 43 instead | |
| orStdBoxes | No | OR-40 boxes 17a-d: count of 65-or-older (born before January 2, 1961... turned 65 by January 1, 2026) and blind boxes for you/spouse — each adds $1,200 (single/HOH) or $1,000 (other statuses) to the standard deduction | |
| paGambling | No | PA-40 line 8: gambling and lottery winnings net of wager costs (noncash PA Lottery prizes exempt; cash prizes taxable) | |
| paInterest | No | PA-40 line 2: PA-taxable interest (gross class — no expenses; includes commercial-annuity interest taxable as PA interest) | |
| vaYourVagi | No | PRIMARY taxpayer's separate VAGI (MFJ only — the 760 instructions' 'Worksheet for Determining Separate Virginia Adjusted Gross Income': own wages/SE/pensions, own share of joint items 50/50, own age deduction and subtractions). Enables the composer's Spouse Tax Adjustment worksheet (Form 760 line 17). vaYourVagi + vaSpouseVagi must equal line 9 VAGI. | |
| alDonations | No | Form 40 line 34: Schedule DC donation check-offs total (reduces the refund) | |
| alPenalties | No | Form 40 line 31: Schedule ATP Part II penalties (estimated-tax penalty Form 2210AL etc.) — added to an amount owed, or SUBTRACTED from the refund per the printed line 35 formula | |
| ctPteCredit | No | CT-1040 line 20c: pass-through entity tax credit from Schedule CT-PE line 1 (refundable; attach the schedule) | |
| federalEITC | No | federal EIC, line 27a (from compute_return) | |
| filingJoint | No | ||
| mdItemizing | No | taxpayer itemized FEDERALLY and elects Maryland itemized deductions — the composer computes 17a−17b−17c (with the H.B. 352 7.5% phase-out over $200,000/$100,000-MFS FAGI) and still takes the standard deduction if larger (Maryland allows either) | |
| mnAdditions | No | M1 line 2: Schedule M1M line 10 + M1MB line 9 additions (non-MN municipal bond interest, federal bonus-depreciation/§ 179 addbacks, positive M1NC adjustments — Minnesota's IRC is frozen at May 1, 2023, so 2025 OBBBA items convert on Schedule M1NC) | |
| moItemizing | No | taxpayer itemized FEDERALLY and wants Missouri itemized deductions — the composer computes MO-A Part 2 (federal itemized + payroll-tax addback − net state income taxes) and takes the LARGER of that or the standard deduction unless moRequiredToItemize | |
| njArcherMsa | No | Archer MSA contributions (federal Form 8853; NJ has NO HSA deduction — never enter HSA amounts) | |
| njCojCredit | No | NJ-1040 line 44 credit for income taxes paid to other jurisdictions (Schedule NJ-COJ, hand-computed; composer caps at the line 43 tax). NO credit for Pennsylvania-reciprocal WAGES (the PA/NJ agreement) — Philadelphia wage tax DOES qualify. | |
| njDividends | No | NJ-1040 line 17 dividends | |
| njExcessFli | No | NJ-1040 line 61 excess family leave insurance withheld (over $545.82; NJ-2450) | |
| njWwcCredit | No | NJ-1040 line 62 Wounded Warrior Caregivers Credit (Schedule NJ-WWC; gross income ≤ $100,000 MFJ/HOH/QSS, ≤ $50,000 single/MFS) | |
| okDonations | No | OK line 36: Schedule 511-H donations from the refund (CASA programs, Wildlife Diversity Fund — $2/$5/other) | |
| orAdditions | No | OR-40 line 8: Schedule OR-ASC line A5 additions (non-Oregon municipal interest, federal-state depreciation differences, 529 recapture) | |
| paDividends | No | PA-40 line 3: PA-taxable dividends INCLUDING mutual-fund capital-gain distributions (PA classifies them as dividends, not gains) | |
| scAdditions | No | SC1040 line 2 total additions (lines a-e: the state income/sales tax deducted in federal itemized deductions MUST be added back on line a; out-of-state rental/business losses; non-SC municipal bond interest; expenses on reserve/subsistence income). CRITICAL for TY2025: SC REJECTED OBBBA conformity (IRC conformity frozen at December 31, 2024) — line e must ADD BACK every OBBBA deduction in federal taxable income (tips exclusion, overtime premium, the $6,000 senior deduction, car-loan interest, OBBBA business items). | |
| vaItemizing | No | taxpayer itemized federally (VA requires the same election, Va. Code § 58.1-322.03(1)) — enables the VA Schedule A computation from the component inputs below; Form 760 line 10 replaces the line 11 standard deduction | |
| wiDonations | No | Form 1 line 24: Schedule 3 fund donations total | |
| alDependents | No | Form 40 line 14 dependent count — Alabama's OWN relationship list (§ 40-18-19: child/stepchild/parent/grandparent/sibling/in-laws/blood uncle-aunt-nephew-niece with over-50% support; NOT federal § 152) — $1,000/$500/$300 each by AL AGI (us.al.dependent_exemption); falls back to the shared dependents input | |
| alIs65Spouse | No | spouse was 65 or older — enables their own $6,000 exclusion | |
| filingStatus | No | REQUIRED in practice: the federal filing status — drives the state bracket schedule, standard deduction column, and exemption structure. The filingJoint/filingHoh/filingHohOrQss booleans are legacy aliases; when filingStatus is present it wins. | |
| gaLic65Count | No | Low Income Credit Worksheet line 3: 1 if filer or spouse is 65+, 2 if both | |
| gaUetPenalty | No | Form 500 line 42: Form 500 UET estimated tax penalty | |
| jurisdiction | Yes | ||
| mdPensionYou | No | primary taxpayer's qualifying § 401(a)/403/457(b) pension in FAGI for the Worksheet 13A pension exclusion — ONLY if 65+/totally disabled (or spouse totally disabled); IRAs/SEP/Keogh never qualify. The composer evaluates us.md.pension_exclusion per spouse. | |
| mnDependents | No | dependents on Schedule M1DQC — $5,200 each (2025), phased 2% per $2,500 ceil-step of AGI over $358,550 MFJ/QSS, $239,050 single, $298,800 HOH, $179,275 MFS (gone once the excess passes $122,500/$61,250-MFS); $0 for dependent-claimed filers | |
| mo529Deposit | No | MO-1040 line 52: refund deposited to a Missouri 529 (MOST) account (minimum $25, Form 5632) | |
| moFagiSpouse | No | MO-1040 line 1S: the spouse's share of federal AGI (combined returns). 1Y + 1S must equal the federal AGI. A NEGATIVE share triggers the 12 CSR 10-2.710 zeroing the composer applies (negative spouse $0, other spouse the netted joint FAGI; both $0 when combined FAGI is negative). | |
| moNrPayments | No | MO-1040 lines 39+40: MO-2NR/MO-2ENT nonresident partner/entertainer payments | |
| ncCharitable | No | NC Schedule A: IRC § 170 charitable contributions allowed for the year (no NC dollar cap) | |
| ncTaxCredits | No | D-400 line 16: D-400TC total (other-state credit worksheet, historic rehab) — hand-computed; the composer caps at the line 15 tax. NC has NO EITC and NO child/dependent care credit. | |
| njBaitCredit | No | NJ-1040 line 63 pass-through Business Alternative Income Tax credit (PTE-K-1) | |
| njBlindCount | No | line 8 count (0-2): filer/spouse blind or disabled — $1,000 each | |
| okEicAgi2024 | No | Form 511-EIC line 17 (Tax Year 2024 column): 2024 federal AGI — REQUIRED with okEicEarnedIncome2024 (the composer skips the 2024 column without it, since the line 19 AGI look-up cannot run) | |
| okUsInterest | No | OK Schedule 511-A line 1: interest on U.S. government obligations included in federal AGI (not FNMA/GNMA) | |
| orFederalAoc | No | American Opportunity Credit (1040 line 29) — subtracted in the federal tax worksheet | |
| orFederalPtc | No | premium tax credit from Form 8962 LINE 24 (the full allowable credit regardless of advance payments) — subtracted. NOTE: the EITC and additional child tax credit are NOT subtracted. | |
| orKidsUnder6 | No | dependents age 5 or younger at the end of 2025 (max 5 count) — $1,050 each Oregon Kids Credit (us.or.kids_credit, refundable, MFS denied). A child claimed only via a RELEASED dependent exemption does not count. | |
| scDependents | No | SC line w dependent count (must equal the federal return's) — $4,930 each for 2025 (us.sc.dependent_exemption); falls back to the shared dependents input | |
| scIs65Spouse | No | spouse was 65 or older by December 31 (lines p-2/q-2) | |
| scLumpSumTax | No | SC1040 line 7: tax on lump-sum distribution (SC4972, agent-computed, attached) | |
| subtractions | No | total state subtractions OTHER than the automatic ones (taxable social security / unemployment have their own inputs below; e.g. NY S-136 alimony paid, IL retirement subtraction) | |
| vaFamilyVagi | No | Schedule ADJ line 10 total family VAGI (you + spouse + dependents' VAGI) for the Credit for Low-Income Individuals poverty test; defaults to line 9 VAGI when omitted | |
| vaSpouseVagi | No | spouse's separate VAGI for the STA worksheet (Form 760 line 17 box; MFJ only) | |
| wi2441Credit | No | Schedule WI-2441 line 14 — Wisconsin's additional child and dependent care credit (its own recomputation; transcribe the schedule's result) | |
| wiAge65Boxes | No | count of 65-or-older boxes (taxpayer/spouse) — $250 each on line 10b (Wisconsin has no blindness exemption; the $700 line 10a exemptions come from the shared `exemptions` count) | |
| wiMarriedHoh | No | the Form 1 'Head of household, married' checkbox applies — shares the MFS $150 school property tax credit cap | |
| alAdjustments | No | Form 40 line 9 / Part II total (per-spouse IRA deduction, Keogh/SEP, early-withdrawal penalty, alimony paid, adoption expenses, MOVING EXPENSES (Alabama kept them), SE health insurance, College Counts 529/PACT, small-employer health premiums, wind/flood retrofit, catastrophe savings, HSA, First/Second-Chance Home Buyer, firefighter insurance, ABLE) | |
| alOtherIncome | No | Form 40 Part I lines 1-3 and 5-7 total EXCLUDING retirement (alimony received, business income/loss, gains — the 1/1/2025+ precious-metal-bullion gain is EXEMPT, rents/royalties/partnerships, farm; negative allowed). Retirement goes in the alTaxableRetirement* fields for the Schedule RS exclusion. | |
| ctUseTaxTable | No | compute line 6 the way the DRS printed tax tables do (CT AGI ≤ $102,000: schedule at the $50 row midpoint, one rounding) instead of the Tax Calculation Schedule's line-level rounding — both are allowed by the form; default is the schedule | |
| gaNolUtilized | No | Form 500 line 15b: Georgia NOL utilized (Schedule 4; cannot exceed line 15a or the 80% limitation — composer caps at 15a) | |
| ilK12Expenses | No | IL qualified K-12 education expenses (before the $250 floor) | |
| md502crPartBB | No | MD line 31: local tax credit from Form 502CR Part BB line 1 | |
| mdCtcChildren | No | Maryland CTC qualified children (dependents under 6, or over 5 and under 17 with a disability) — the composer evaluates us.md.ctc ($500/child, phased out $50 per $1,000 of FAGI over $15,000, $0 above $24,000; refundable via 502CR Part CC into line 45) | |
| mdSubdivision | No | REQUIRED for MD: the taxing county where the filer resided on the LAST day of the tax year (Form 502 political-subdivision box) — one of baltimore_city, allegany, anne_arundel, baltimore_county, calvert, caroline, carroll, cecil, charles, dorchester, frederick, garrett, harford, howard, kent, montgomery, prince_georges, queen_annes, st_marys, somerset, talbot, washington, wicomico, worcester, nonresident. Drives the mandatory local tax (line 28: flat 2.25%-3.30%; Anne Arundel bracketed with its own printed table; Frederick tiered on the WHOLE income with real cliffs). | |
| mnStateRefund | No | M1 line 6: state income tax refund from federal Schedule 1 line 1 (its own subtraction line) | |
| moFederalTax9 | No | MO-1040 line 9 'Tax from federal return': federal 1040 line 22 MINUS lines 27a and 29, MINUS Schedule 2 Part 1 line 3, MINUS Schedule 3 Part 2 line 9 — never withholding; the EIC must be subtracted | |
| moSsExemptYou | No | the primary's MO-A Section C exemption: their TAXABLE Social Security/SSD (1040 line 6b share), 100% exempt — pass ONLY if 62+ by December 31 (the MO-1040 age box) or on Social Security Disability (attested) | |
| njAlimonyPaid | No | NJ-1040 line 32 court-ordered alimony PAID (still deductible for NJ; never child support) | |
| njBusinessNet | No | NJ-1040 line 18 net profits from business (Schedule NJ-BUS-1 Part I; negative allowed — the composer suppresses a net category loss per the printed rule) | |
| njFederalCdcc | No | the federal Form 2441 child and dependent care credit — enables the line 64 NJ CDCC (us.nj.cdcc: 50%→10% of it by NJ taxable income, $150,000 cap) | |
| njGamblingNet | No | NJ-1040 line 24 net gambling winnings (losses net WITHIN the category; NJ Lottery prizes of $10,000 or less are exempt) | |
| njMfsSameHome | No | MFS and both spouses maintained the SAME main home — halves the property-tax deduction cap ($7,500) and credit ($25) | |
| njNjclassPaid | No | NJ-1040 line 37b NJCLASS loan principal+interest paid (composer caps at $2,500) | |
| njOtherIncome | No | NJ-1040 line 26 other income | |
| njSeniorCount | No | line 7 count (0-2): filer/spouse 65 or older (born 1960 or earlier for TY2025) — $1,000 each | |
| njTuitionPaid | No | NJ-1040 line 37c NJ-institution tuition paid (composer caps at $10,000) | |
| ohEicOverride | No | OVERRIDE: us.oh.eic oracle answer — wins over the composer's 30%-of-federalEITC line 13 computation | |
| okAmendedPaid | No | OK line 30 (amended return only): amount paid with the original return plus additional payments after it was filed | |
| okEicEligible | No | Form 511-EIC eligibility under the FEDERAL 2020 rules attested: work-valid SSNs, not married filing separately, investment income $3,650 or less, and with no qualifying child age 25-64 and not a dependent — enables the Oklahoma EIC (line 28) | |
| okMilitaryPay | No | OK Schedule 511-C line 1: active-duty, Reserve, and National Guard military pay included in federal AGI (100% excluded) | |
| okPtrEligible | No | Form 538-H gates attested: 65 or older OR totally disabled, head of a household (owner who maintained the home — the 538-H definition, not the filing status), domiciled in Oklahoma the entire year — enables the property tax relief credit (line 24; also needs gross household income ≤ $12,000) | |
| okStrDisabled | No | taxpayer or spouse has a physical disability constituting a substantial handicap to employment (proof attached) — raises the sales tax relief limit to $50,000 | |
| okStrEligible | No | Form 538-S gates attested: Oklahoma resident (domiciled) the ENTIRE year, no TANF in any month, not a DOC inmate during the year after a felony conviction, not living in Oklahoma under a visa, and the return is filed by the due date — enables the sales tax relief credit (line 25) | |
| or529Deposits | No | OR-40 line 51: Oregon 529 deposits from Schedule OR-529 (reduce the refund) | |
| orPtePayments | No | OR-40 line 36: estimated payments from Schedule OR-K-1 line 20 (PTE owner payments via Form OR-19) | |
| orStateRefund | No | OR-40 line 12: OREGON state income tax refund from federal Schedule 1 line 1 (never other states' or local refunds) | |
| paBusinessNet | No | PA-40 line 4, TAXPAYER's own net business/profession/farm income or LOSS (negative allowed; within-class netting of the taxpayer's own activities only — a loss never crosses classes or spouses) | |
| paEstateTrust | No | PA-40 line 7: estate/trust income (PA Schedule J; an estate or trust cannot distribute a loss — never negative) | |
| paPropertyNet | No | PA-40 line 5, taxpayer's own net gain/loss from sale/exchange/disposition of property (negative allowed; no carryover) | |
| caHsaDeduction | No | federal HSA deduction (Form 8889 line 13) — California does not conform to § 223: the composer ADDS it back for CA | |
| ctLateInterest | No | CT-1040 line 28: late payment interest — 1% of line 26 per month or fraction of a month from the due date (agent-computed) | |
| filingHohOrQss | No | ||
| gaIndCrCredits | No | Form 500 line 20: IND-CR Summary total OTHER than the CDCC (the composer adds us.ga.cdcc itself from gaFederalCdccAllowed) | |
| ilChildUnder12 | No | IL CTC gate: a QUALIFYING CHILD (§ 152(c) lineage — child/stepchild/foster/sibling or their descendants) under age 12. A qualifying-relative/ODC-only dependent does NOT satisfy this even if under 12; leave false. | |
| ilEitcOverride | No | us.il.eitc oracle target's answer (35 ILCS 5/212(a)(vi), (b-5), (b-10): 20% of the federal EITC recomputed WITHOUT the § 32(c)(1)(A)(ii) childless age gate) — WINS over the generic 20%-of-federalEITC line-29 computation when present. MUST be used (not merely optional) for a taxpayer age 18-24 or 65+ with NO qualifying children: federalEITC alone is correctly $0 for that population under federal law, so line 29 = 20% x federalEITC would wrongly zero out Illinois' decoupled credit — pass us.il.eitc's computed answer instead. Safe to pass for every IL EITC claimant (agrees with the generic computation outside the decoupled population). | |
| mdEarnedIncome | No | MD line 1b earned income (wages + net SE profit, no loss netting) — the poverty level credit base (us.md.poverty_level_credit) and the local poverty credit (19C) | |
| mdStateRefunds | No | MD line 8: taxable state/local income tax refunds included in federal AGI (subtraction) | |
| mnSubtractions | No | M1 line 7 subtractions (M1M line 40 + M1MB line 22) EXCLUDING the composer-computed Social Security subtraction: U.S. government interest, K-12 education expenses, charitable over $500 for non-itemizers (50% of the excess), bonus-depreciation recovery, M1R age-65+/disabled, M1QPEN public pension, military items, the new 2025 items (coerced debt, consumer enforcement, foreign service, SEIU stipends) | |
| moAdditionsYou | No | MO-A Part 1 line 7Y: the primary's additions (non-Missouri state/local bond interest, PTE/NOL addbacks, nonqualified 529/ABLE distributions, food pantry, nonresident property tax) | |
| moLtcDeduction | No | MO-1040 line 16: qualified long-term care insurance premiums (12+ month policies, net of federally deducted amounts, per the worksheet) | |
| njEitcOverride | No | OVERRIDE: us.nj.eitc oracle answer — wins over the composer's 40%-of-federalEITC / $260 computation | |
| njHezDeduction | No | NJ-1040 line 34 Health Enterprise Zone deduction (TB-56) | |
| njVeteranCount | No | line 9 count (0-2): filer/spouse honorably-discharged veterans — $6,000 each | |
| ohAge65OrOlder | No | filer (or spouse) was 65 or older at year end — $50 senior citizen credit (once per return; NOT available if the lump sum distribution credit was ever taken) | |
| orKickerDonate | No | filer elects to donate the ENTIRE kicker to the State School Fund (irrevocable after the due date) — line 32 becomes $0 and box 55 is checked | |
| orSubtractions | No | OR-40 line 13: Schedule OR-ASC line B7 subtractions — including the OBBBA-conforming tips/overtime/passenger-vehicle-interest deductions (codes 390/391/392: Oregon lets you claim the same amounts as federal), US government interest, the federal pension percentage subtraction, OR-HOME first-time home buyer savings, tier 2 Railroad Retirement. Do NOT include Social Security (automatic via taxableSocialSecurity). | |
| scCareChildren | No | count of qualifying care children/dependents — 2+ raises the SC CDCC cap from $210 to $420 | |
| scCareExpenses | No | federal Form 2441 child/dependent care EXPENSES (not the credit) — SC line 11 pays 7%, max $210/$420 (us.sc.cdcc); DENIED to married filing separately | |
| scI290Payments | No | SC1040 line 19: nonresident real estate withholding paid on Form I-290 | |
| vaAgeDeduction | No | OVERRIDE ONLY — pass vaAgeQualifyingFull/vaAgeQualifyingTested instead and the composer computes the age deduction itself (including the AFAGI social-security exclusion agents routinely miss). When splitting an odd joint total between spouses (Form 760 lines 4a/4b), the odd dollar goes to the SPOUSE. | |
| ageOrBlindBoxes | No | count of age-65+/blind boxes checked (taxpayer/spouse, per box) | |
| alAtpOtherTaxes | No | Schedule ATP Part I taxes OTHER than the use tax (which uses the shared useTax input): catastrophe-savings recapture (+2.5%), etc. | |
| caIsoPreference | No | ISO exercise spread AMT preference (§ 56(b)(3) as modified by R&TC § 17062) — with caAmtTaxesAddback this lets the composer BUILD Schedule P AMTI itself (AMTI = line 19 taxable income + taxes deducted in the CA itemized deduction + this preference; standard deduction added back instead when not itemizing) and evaluate us.ca.amt internally; caAmt (a precomputed answer) wins if both are given | |
| caRentersCredit | No | us.ca.renters_credit result (pass the oracle target's answer) — nonrefundable, joins the exemption credits in the line-48 subtraction from tax. | |
| cityWithholding | No | NY line 73 NYC withholding | |
| ctEitcJointFagi | No | Schedule CT-EITC line 13: the JOINT federal AGI when the filer filed jointly federally but must file married-filing-separately for Connecticut — the composer prorates the 40% credit by federalAGI (this spouse's separate AGI, line 12) ÷ this amount to four decimals | |
| gaExclusionTier | No | primary taxpayer's GA retirement-exclusion tier: 62-64 during any part of the year or permanently/totally disabled ($35,000 cap) vs 65+ ($65,000 cap) (us.ga.retirement_exclusion) | |
| gaLicExemptions | No | Low Income Credit Worksheet line 2: self + spouse + natural/legally adopted children (never other dependents or unborn) (us.ga.low_income_credit) | |
| mdContributions | No | MD lines 35-39: voluntary fund contributions total (reduces the refund) | |
| mdHouseholdSize | No | persons in the family/household from the federal return — enables the poverty level credit computation (2025 guideline $15,650 + $5,500 each additional person) | |
| mdPensionSpouse | No | spouse's qualifying pension for their own 13A column (same gates) | |
| mdRangerPension | No | MD line 10b: Retired Forest/Park/Wildlife Ranger pension exclusion (Worksheet 13E, agent-computed, disclosed) | |
| mnOtherTaxes14a | No | M1 line 14a: M1HOME/M1529 recapture, M1LS lump-sum tax, and the Schedule NIIT amount if computed outside the composer | |
| mnRrTier1Offset | No | Tier 1 Railroad Retirement benefits already subtracted on M1M line 17 — the SS worksheet (steps 25-29) reduces the simplified-method subtraction by this amount (no double subtraction) | |
| moHcsmDeduction | No | MO-1040 line 17: health care sharing ministry contributions not deducted federally | |
| moOtherTaxesYou | No | MO-1040 line 34Y: 10% of the Federal Form 4972 lump-sum distribution tax, and/or recapture of the low income housing credit (Form 8611) — the printed checkboxes. (Form 4970 trust accumulation amounts are a SUBTRACTION, not a line 34 tax.) | |
| ncScorpPayments | No | D-400 line 21d: NC tax paid by an S corporation on the filer's behalf | |
| njExcessUiWfSwf | No | NJ-1040 line 59 excess UI/WF/SWF withheld (two+ employers over $184.02; Form NJ-2450) | |
| okAdditionalTax | No | OK line 14b: HSA non-qualified withdrawal 10% additional tax (box 2), Oklahoma Affordable Housing credit recapture (box 3), or IRC § 965(h) installment (box 4) | |
| okForm578Credit | No | OK line 27: refundable credit for electricity generated by zero-emission facilities from Form 578 (85% of face; transcribed) | |
| okStrExemptions | No | Form 538-S Box D qualified exemptions (yourself + spouse + federally-claimed dependents who were Oklahoma residents all year; the 65+/blind boxes NEVER count) — $40 each; defaults to the shared `exemptions` count | |
| scContributions | No | SC1040 line 28: check-off contributions total (I-330 attached; reduces the refund) | |
| scLatePenalties | No | SC1040 line 32: late filing/late payment penalties and interest | |
| scTuitionCredit | No | SC1040 line 21: REFUNDABLE tuition tax credit (Form I-319: 50% of qualifying SC-institution tuition within the form's limits — agent-computed with disclosure, form attached) | |
| vaItemizedOther | No | VA Sch A other itemized deductions | |
| wiBothSpouses67 | No | both spouses 67+ on December 31 (joint returns) — raises the SB-16 cap to $48,000 | |
| extensionPayment | No | payment made with an extension request. VA 760 line 22 (its own line, never folded into the estimated-payments line). NY IT-201 line 75 is the COMBINED line — 'estimated tax payments and amount paid with Form IT-370' — so for NY this is added into the same line as estimatedPayments, not kept separate. | |
| gaDependentCount | No | Form 500 line 7c total dependents (7a qualified + 7b unborn-with-heartbeat; never self/spouse) — $4,000 each (us.ga.dependent_exemption) | |
| moCapitalGainYou | No | the primary's share of federally reported capital gains (Form 1040 line 7a) — the composer subtracts 100% (MO-A line 18, H.B. 594, NEW for TY2025; a negative amount enters as $0) | |
| moSsExemptSpouse | No | the spouse's Section C SS/SSD exemption on the same gates | |
| ncUseTaxEstimate | No | use the printed no-receipts consumer use tax table (keyed to line 14 taxable income, us.nc.use_tax) instead of the useTax input | |
| njAbcaAdjustment | No | NJ-1040 line 35 Alternative Business Calculation Adjustment (Schedule NJ-BUS-2 line 11 — the only cross-category loss softener, 20-year carryforward) | |
| njChildrenUnder6 | No | count of line 10/11 dependents age 5 or younger on 12/31 (born 2020 or later for TY2025) — the line 65 NJ Child Tax Credit multiplier ($1,000→$200 each by taxable income ≤ $80,000; MFS ineligible) | |
| njDispositionNet | No | NJ-1040 line 19 net gains from disposition of property (Schedule NJ-DOP; NO capital-gain preference, NO loss carryover; negative allowed — suppressed) | |
| njGoldStarCredit | No | NJ-1040 line 47 Gold Star Family Counseling Credit (hours × TRICARE rate) | |
| njPartnershipNet | No | NJ-1040 line 21 distributive share of partnership income (NJK-1; negative suppressed) | |
| njRentRoyaltyNet | No | NJ-1040 line 23 net rents/royalties/patents/copyrights (negative suppressed) | |
| nycTaxableIncome | No | NYC taxable income (IT-201 line 47) if NYC resident | |
| ohBusinessIncome | No | OH Schedule of Business Income Part 1 line 10: total business income (Schedule B/C/D/E/F + guaranteed payments to 20%+ owners + § 4797) — the composer runs the $250,000/$125,000 Business Income Deduction and the flat-3% line 6/8b arithmetic from it | |
| ohResidentCredit | No | OH Schedule of Credits line 39 resident credit for taxes paid other states (Ohio IT RC, hand-computed) | |
| okCsrsRetirement | No | OK Schedule 511-A line 3: Federal Civil Service Retirement System benefits paid in lieu of Social Security (100% excluded; CSA/CSF 1099-R claim number required — FERS does not qualify except the CSRS component or the FERS annuity supplement) | |
| okFederalCharity | No | federal Schedule A line 14 gifts to charity — exempt from the $17,000 Oklahoma cap | |
| okFederalMedical | No | federal Schedule A line 4 medical and dental (after the 7.5% floor) — exempt from the $17,000 Oklahoma cap | |
| okUseTaxEstimate | No | filer kept no records of out-of-state purchases and elects the printed Use Tax Table estimate on federal AGI for line 19 (us.ok.use_tax — the 2025 table; for a TY2026 return the estimate REFUSES until the 2026 packet publishes, pass useTax instead) — otherwise pass useTax (worksheet amount) or nothing (certify no use tax is due) | |
| orSpouseItemizes | No | MFS only: the other spouse itemizes — the Oregon standard deduction becomes $0 | |
| orYoungestUnder3 | No | the youngest dependent was younger than 3 at year end — raises the Oregon EIC from 9% to 12% of the federal EITC (us.or.eic) | |
| paRentRoyaltyNet | No | PA-40 line 6, taxpayer's own net rents/royalties/patents/copyrights (short-term rentals under 30 days are BUSINESS income, line 4) | |
| paResidentCredit | No | PA-40 line 22: resident credit for tax paid other states (Schedule G-L; not for reciprocal-state compensation: IN/MD/NJ/OH/VA/WV). Subtracts BEFORE Tax Forgiveness — the composer handles the ordering. | |
| scActiveTradeTax | No | SC1040 line 8: I-335 flat 3% tax on active trade or business income (agent-computed; the electing income must also appear in scSubtractionsOther as the line l subtraction) | |
| scCatastropheTax | No | SC1040 line 9: tax on excess Catastrophe Savings Account withdrawals | |
| stateWithholding | No | state income tax withheld (IL line 25 / VA 19a / CA 71 / NY 72). CONVENTIONS: IL line 25 sums state withholding from EVERY document (W-2s + all 1099s). NY line 72 = W-2 box 17 NYS withholding PLUS NY-coded state withholding from 1099s whose PAYER has an in-state (NY) address; NY-coded withholding printed by an OUT-OF-STATE-addressed payer is NOT included; disclose any excluded amount in notes. VA 19a = the PRIMARY taxpayer's withholding from EVERY document type (W-2, 1099, VK-1 — Form 760 line 19 instructions name all three; the payer's address does NOT matter for VA, unlike NY); a jointly-issued document's state withholding splits 50/50 between 19a/19b with the odd dollar to the primary. | |
| vaRefundableEitc | No | OVERRIDE ONLY — the composer now computes the Form 760 line 23 credit itself from federalEITC + the eligibility inputs below. If passed, this refundable amount wins over the computed selection. | |
| wiFarmlandCredit | No | Form 1 line 31: farmland preservation credit (Schedules FC/FC-A, transcribed) | |
| wiOtherPenalties | No | Form 1 line 26 other penalties (see instructions p.25) | |
| wiVeteransCredit | No | Form 1 line 34: eligible veterans and surviving spouses property tax credit | |
| yonkersSurcharge | No | us.ny.yonkers_surcharge result (pass the oracle target's answer) — 16.75% of the Yonkers worksheet's netted base (nyYonkersBase). Added into line 62's total and printed on its own line (IT-201 LINE 55, not 54 — line 54 is MCTMT) when nonzero. | |
| caAmtTaxesAddback | No | taxes actually included in the CA itemized deduction (property taxes etc. surviving the Schedule CA SALT adjustments) — the Schedule P line 2 addback used when the composer builds AMTI from caIsoPreference; $0 when not itemizing (the composer adds back the standard deduction instead) | |
| ctSsTotalBenefits | No | federal Social Security Benefits Worksheet line 1 (total benefits, SSA-1099 box 5) — with taxableSocialSecurity and ctSsProvisionalExcess the composer runs the CT Social Security Benefit Adjustment Worksheet (line 41) when federal AGI is at or above $75,000 (single/MFS) or $100,000 (MFJ/QSS/HOH); below the threshold the full taxable amount is subtracted automatically | |
| estimatedPayments | No | state estimated payments ONLY (extension payments and prior-year credited overpayments have their own lines where the form provides them) | |
| gaFederalItemized | No | Form 500 line 12a: federal Schedule A total. Supplying this FORCES Georgia itemizing ('Leave Line 11 blank if you itemize deductions on your Federal return') — a federal standard-deduction filer must omit it. | |
| ilPropertyTaxPaid | No | IL property tax on principal residence, net of business-use portion | |
| ilTeacherExpenses | No | IL Schedule 1299-C educator materials expenses | |
| mdBusinessCredits | No | MD line 25: business tax credits (Form 500CR — e-file only; transcribed) | |
| mdFederalItemized | No | MD line 17a: total federal itemized deductions (federal Schedule A line 17) | |
| mdInterestCharges | No | MD line 51: Form 502UP interest / late-filing interest | |
| mdSsRrBenefitsYou | No | primary taxpayer's TOTAL Social Security + Railroad Retirement benefits (taxable or not) — reduces the $41,200 cap in the primary's 13A column | |
| mnPenaltyInterest | No | M1 line 28: late-filing/late-payment penalty and interest (agent-computed per the instructions) | |
| moAdditionsSpouse | No | MO-A Part 1 line 7S: the spouse's additions | |
| moFederalItemized | No | MO-A Part 2 line 1: total federal itemized deductions (federal Schedule A total) plus any approved cultural contributions (literary/musical/scholastic/artistic donations, § 143.141) | |
| moOtherDeductions | No | MO-1040 lines 21-24 bucket: beginning farmer, transport facility, foster parent deductions (agent-transcribed) | |
| moSubtractionsYou | No | MO-A subtractions for the primary EXCLUDING the composer-computed capital gain (line 18) and business income deduction (line 17): exempt federal-obligation interest, state refund, military retirement (100%), railroad retirement, 529/ABLE contributions ($8,000/taxpayer), qualified health insurance premiums, depreciation adjustments, agriculture disaster relief | |
| ncMedicalExpenses | No | NC Schedule A line 7a: medical/dental expenses BEFORE the floor — the composer subtracts 7.5% of federal AGI | |
| ncRealEstateTaxes | No | NC Schedule A: real estate property taxes (NC allows NO income/sales tax deduction) — inside the $20,000 combined cap | |
| njAlimonyReceived | No | NJ-1040 line 25 alimony received (NJ did not adopt the TCJA repeal — still NJ income) | |
| njDomesticPartner | No | registered NJ domestic partner claimed as a line 6 regular exemption (+$1,000) | |
| njMedicalExpenses | No | unreimbursed medical expenses (Worksheet F line 1) — the composer applies the 2%-of-line-29 floor | |
| njPensionEligible | No | line 28a gate: filer (or spouse if joint) was 62+ OR blind/disabled per Social Security guidelines on the last day of the year — enables the pension exclusion (us.nj.pension_exclusion) | |
| njTaxableInterest | No | NJ-1040 line 16a taxable interest (NJ-exempt: federal obligations, NJ municipal bonds — exclude here, report on 16b) | |
| nyHouseholdCredit | No | NYS household credit from table 2 (us.ny.parameters citation) | |
| ohInterestPenalty | No | IT 1040 line 11 interest penalty on underpayment of estimated tax (Ohio IT/SD 2210) | |
| okBlindExemptions | No | count of legally-blind boxes (taxpayer/spouse) — $1,000 each, added to the shared `exemptions` count (self + spouse + dependents) | |
| okFederalItemized | No | taxpayer ITEMIZED on the federal return — Oklahoma then REQUIRES Oklahoma itemized deductions (Schedule 511-D) even if smaller than the standard deduction; a federal standard-deduction filer must take the Oklahoma standard deduction | |
| okPropertyTaxPaid | No | Form 538-H line 15: 2025 real estate (ad valorem) taxes paid on the homestead (no personal property taxes) — credit = amount over 1% of gross household income, max $200 | |
| okStrHasDependent | No | filer can claim a dependent — raises the sales tax relief gross household income limit from $20,000 to $50,000 | |
| orKidsLossAddback | No | Kids Credit worksheet Part B: federal losses + OR-ASC loss-subtraction codes beyond the $20,000 allowance, plus ALL excluded foreign earned income — added back to qualifying income | |
| paNrk1Withholding | No | PA-40 line 17: nonresident tax withheld from PA Schedule(s) NRK-1 | |
| refundableCredits | No | state refundable credits, e.g. the NY credit block: ESCC + NYS EIC + IT-216 + NYC EIC + NYC school tax + NYC child care (WITHOUT their own oracle target, self-computed per the us.ny.parameters citation and disclosed) PLUS us.ny.it214 (the Real Property Tax Credit, which DOES have an oracle target as of TY2025 v5 — pass its computed answer here, not a hand-derived percentage of rent) | |
| scSubsistenceDays | No | SC line s: days as a full-time federal/state/local law enforcement officer, firefighter, or EMS worker — $16/day subsistence allowance | |
| vaItemizedMedical | No | VA Sch A line 1: total medical/dental expenses BEFORE any floor (VA applies its own 10%-of-FAGI floor — Virginia deconforms from the federal 7.5% floor) | |
| wiFederalEicForWi | No | the federal EIC AS COMPUTED UNDER WISCONSIN'S IRC (Schedule I Part III recomputation when Part I adjustments exist) — defaults to the shared federalEITC when omitted | |
| wiHomesteadCredit | No | Form 1 line 33: homestead credit (Schedule H/H-EZ circuit breaker, agent-computed, refundable) | |
| wiRepaymentCredit | No | Form 1 line 32: repayment of income previously taxed credit | |
| alCampaignCheckoff | No | Form 40 line 20: $1/$2 Alabama Democratic/Republican party checkoffs — these ADD to the tax due (not fund-neutral like the federal checkoff) | |
| claimedAsDependent | No | someone else can claim this taxpayer as a dependent (carry the prior-year 1040 'Someone can claim: You as a dependent' checkbox forward as a continuing condition unless the current-year interview contradicts it). IL: zeroes the line 10 exemption allowance when base income exceeds the exemption amount. VA: limits the standard deduction to earned income. | |
| ctIraDistributions | No | Form 1040 line 4b taxable IRA distributions other than Roth — 75% (TY2025) / 100% (TY2026) enters the pension and annuity subtraction | |
| ctPropertyTaxAuto1 | No | CT Schedule 3 line 61: property tax paid on one privately owned or leased (term over one year) motor vehicle | |
| ctPropertyTaxAuto2 | No | CT Schedule 3 line 62: a second vehicle — MFJ / QSS ONLY (the composer ignores it for other statuses with a note) | |
| gaOtherStateCredit | No | Form 500 line 18: other state(s) tax credit (printed worksheet, hand-computed; other-state return copy required) | |
| gaOtherWithholding | No | Form 500 line 25: GA tax withheld on G2-A / G2-FL / G2-LP / G2-RP statements (never W-2/1099 amounts — those go in the shared stateWithholding for line 24) | |
| gaRetirementIncome | No | primary taxpayer's UNEARNED retirement income for the exclusion (pensions, interest, dividends, net rents, capital gains, royalties, military retirement; joint property at 50%; NEVER Social Security — that subtracts automatically) | |
| mdHomebuyerPenalty | No | MD line 51a: first-time homebuyer savings account 10% withdrawal penalty | |
| mdRecapturedCredit | No | MD line 21a: recaptured credit from Form 502CR Part DD line 1 | |
| moOtherTaxesSpouse | No | MO-1040 line 34S | |
| moPublicPensionYou | No | the primary's PUBLIC-source pension (federal/state/local government, 1040 line 5b share) — the composer runs MO-A Part 3 Section A (min(pension, $47,633) less their Section C exemption). Military retirement goes in moSubtractionsYou instead (100%, MO-A line 10). | |
| ncBaileyRetirement | No | NC Schedule S line 20: Bailey settlement retirement benefits (NC/local government or US government incl. military retirees with 5+ years of creditable service as of Aug 12, 1989; state 401(k)/457 contributed before that date) — fully deducted; enclose the 1099-R | |
| ncMortgageInterest | No | NC Schedule A: qualified mortgage interest — the composer applies the $20,000 combined cap with real estate taxes and takes itemized only when it beats the standard deduction | |
| njEitcAgeDecoupled | No | flat-$260 NJEITC attested: 18+, no qualifying child, met all federal EIC requirements except age, not claimed as a dependent (NJ eliminated both federal age limits) | |
| njSpecialExclusion | No | line 28b Special Exclusion attested: filer (and spouse if joint) will NEVER be eligible for Social Security/Railroad Retirement because the employer did not participate — adds $6,000 (MFJ/HOH/QSS) / $3,000 (single/MFS) | |
| nycHouseholdCredit | No | NYC household credit from table 5 | |
| ohRetirementIncome | No | retirement income received on account of retirement still INCLUDED in Ohio AGI, both spouses combined (NOT Social Security/railroad/uniformed-services amounts — those are deducted and never qualify) — drives the retirement income credit (max $200) | |
| ok529Contributions | No | OK Schedule 511-C line 3: Oklahoma 529 College Savings Plan / OklahomaDream 529 contributions (incl. carryforwards and contributions through April 15) — the composer caps at $10,000 ($20,000 joint) | |
| okGovRetirementYou | No | OK Schedule 511-A line 5, TAXPAYER: Oklahoma-government / U.S. civil service retirement in the taxpayer's own name (OPERS, TRS, police, fire, judges, county/municipal systems) — excluded up to $10,000 per person (us.ok.retirement_exclusion) | |
| okHomeschoolCredit | No | OK line 29: Parental Choice Tax Credit for homeschool expenses from Form 591-D (refundable) — the composer caps at $1,000 × okHomeschoolStudents when the count is given | |
| okOtherAdjustments | No | OK Schedule 511-C lines 2, 4-6 total: disability modification expenses, foster care (≤ $5,000), Parental Choice payments, and the misc codes (MSA/HSA, ag processing, organ donation ≤ $10,000, poll-worker leave, homebuyer savings $5,000/$10,000, ABLE $10,000/$20,000, etc.) — transcribed | |
| okOtherStateCredit | No | OK line 16: Form 511-TX credit for tax paid to another state on PERSONAL-SERVICES income (agent-computed per the form's proportion; capped at the remaining tax by the composer) | |
| okOutOfStateIncome | No | OK Form 511 line 4: income from real or tangible personal property or BUSINESS activity in another state (partnership/S-corp shares included) — NEVER wages, interest, dividends, pensions, unemployment, or gambling. When > 0 the composer prorates deductions and exemptions on Schedule 511-E and leaves lines 10-11 blank. | |
| or2024TaxLiability | No | the filer's 2024 total Oregon personal income tax liability (after the other-state credit, before all other credits/payments — 2024 OR-40 line 24 tax-before-credits MINUS the Schedule OR-ASC code 802/815 credit for taxes paid to another state, per Table 8 / Kicker worksheet Part A) — the composer computes the 9.863% kicker (us.or.kicker). Requires the 2024 return filed before the 2025 return. Prorate by 2024 Oregon-AGI share if the filing status changed (worksheet Parts B/C). | |
| orCreditRecaptures | No | OR-40 line 22: tax recaptures from Schedule OR-ASC line C5 | |
| orKidsObbbaAddback | No | Kids Credit worksheet line 2: tips/overtime/vehicle-interest subtractions claimed (OR-ASC codes 390/391/392) — ADDED BACK to qualifying income | |
| pa529Contributions | No | Schedule O code T: § 529 contributions, ALREADY capped at $19,000 per beneficiary per taxpayer-spouse (2025); no deduction for rollovers/beneficiary changes | |
| paScheduleDcCredit | No | PA-40 line 23 component: the Child and Dependent Care Enhancement credit — pass us.pa.cdcc's computed answer (= 100% of the federal Form 2441 line 9a tentative credit; refundable) | |
| scDependentsUnder6 | No | SC line t: dependents under age 6 on December 31 — the SAME $4,930 again each (on top of their line w exemption) | |
| scOtherWithholding | No | SC1040 line 20: other SC withholding from 1099s (W-2 amounts go in the shared stateWithholding for line 16) | |
| vaItemizedCasualty | No | VA Sch A casualty/theft losses (protected from the overall limitation) | |
| vaItemizedGambling | No | VA Sch A gambling losses (§ 165(d), limited to winnings; protected from the overall limitation) | |
| wiOtherStateCredit | No | Form 1 line 20: net income tax paid to another state (Schedule OS, agent-computed) | |
| wiRentHeatIncluded | No | 2025 rent on the principal Wisconsin residence with heat INCLUDED (line 16a; 2.4% via the printed table's $100-row midpoints) | |
| yonkersWithholding | No | NY line 74 Yonkers withholding (W-2 box 19 with a Yonkers locality) | |
| alAppliedToNextYear | No | Form 40 line 33: overpayment applied to 2026 estimated tax | |
| alInterestDividends | No | Form 40 line 6: interest and dividend income (Schedule B attached if over $1,500) | |
| ctAbleContributions | No | CT Schedule 1 line 48d: contributions to ABLE accounts — the composer caps at $5,000 ($10,000 MFJ/QSS) | |
| ctAppliedToNextYear | No | CT-1040 line 23: overpayment applied to 2026 estimated tax (irrevocable) | |
| ctChetContributions | No | CT Schedule 1 line 48: contributions to Connecticut Higher Education Trust (CHET) 529 accounts made during the year plus allowed carryforward — the composer caps at $5,000 ($10,000 MFJ/QSS); the excess carries forward five years | |
| gaMilitaryExclusion | No | GA military retirement exclusion for under-62 retirees (Schedule 1 page 3 worksheet: $17,500 + additional $17,500 when GA earned income exceeds $17,500 — hand-computed, per qualifying spouse) | |
| mdChildCareExpenses | No | MD line 9: child and dependent care EXPENSES from federal Form 2441 line 6 — an income subtraction in Maryland (separate from any 502CR Part B credit); the composer caps it at $3,000 ($6,000 when mdChildCareTwoOrMoreDependents) | |
| mnAppliedToNextYear | No | M1 line 30: refund applied to 2026 estimated tax | |
| mnMfsSpouseItemizes | No | MFS only: the other spouse claims Minnesota itemized deductions — bars the standard deduction (the composer then requires mnItemized) | |
| moAppliedToNextYear | No | MO-1040 line 50: overpayment applied to 2026 estimated tax | |
| moBusinessIncomeYou | No | the primary's MISSOURI-SOURCE net business income per the p.16 worksheet (Schedule C line 31 + Schedule E line 32 + Schedule F/4835 profits, losses netted, MINUS agricultural disaster relief payments already on MO-A line 16; $0 if net loss) — the composer takes the 20% § 143.022 deduction (MO-A line 17Y) | |
| moCapitalGainSpouse | No | the spouse's share of federal capital gains for the 100% subtraction | |
| moEnterpriseZoneYou | No | MO-1040 line 28Y: enterprise zone / rural empowerment zone income modification | |
| moOtherFederalTax10 | No | MO-1040 line 10 'Other federal tax': Schedule 2 Part 1 line 3 + Part 2 lines 8/14/15 + recapture in line 21 + Schedule 3 Part 1 line 1 (attach 4255/8611/8828 for recapture) | |
| moPayrollTaxAddback | No | MO-A Part 2 lines 2-7 total: the 2025 employee Social Security tax (capped $10,918 per spouse), Railroad Retirement Tier I+II (capped $17,327 per spouse, net of employer refunds), Medicare tax (with Form 8959 adjustments), and self-employment tax (Schedule 2 line 4 − Schedule 1 line 15 + Form 8959 line 13) — Missouri ADDS payroll taxes into itemized deductions | |
| moPrivatePensionYou | No | the primary's PRIVATE-source taxable pension/annuity/IRA/401(k) (1040 lines 4b+5b share) — Section B caps each spouse at $6,000 and phases out by income | |
| moPropertyTaxCredit | No | MO-1040 line 43: Form MO-PTS property tax credit (refundable circuit breaker — actual property tax up to $1,100 owners / 20%-of-rent up to $750 renters, from the printed chart; net household income gates $30,000 owners / $27,200 renters; agent-computed from MO-PTS with disclosure) | |
| moRequiredToItemize | No | the filer was REQUIRED to itemize federally (e.g. MFS with an itemizing spouse) — Missouri then requires itemizing even when the standard deduction is larger | |
| moResidentCreditYou | No | MO-1040 line 31Y: Form MO-CR credit for taxes paid to other states (agent-computed; the composer caps at line 30Y) | |
| njCollegeDependents | No | line 12 count: dependents under 22 attending college full-time (five months, half support) — $1,000 each ON TOP of the $1,500 line 10/11 exemption (use the shared dependents input for the $1,500 count) | |
| njPensionExcludable | No | NJ-1040 line 20b excludable (previously-taxed) pension/annuity/IRA amounts — display only | |
| njPropertyTaxesPaid | No | NJ-1040 line 40a: property taxes due and paid on the principal residence (homeowners; after Worksheet G proration). Tenants: use njRentPaid instead and the composer applies the 18% conversion. | |
| njSeHealthInsurance | No | self-employed health insurance deduction (Worksheet F line 5) | |
| njTaxExemptInterest | No | NJ-1040 line 16b tax-exempt interest (reported, never taxed) | |
| ohNonresidentCredit | No | OH Schedule of Credits line 38 nonresident credit (Ohio IT NRC, hand-computed) | |
| okAppliedToNextYear | No | OK line 35: overpayment applied to 2026 estimated tax (original return only) | |
| orAppliedToNextYear | No | OR-40 line 48: refund applied to 2026 estimated tax | |
| orFederal1040Line22 | No | federal Form 1040 LINE 22 (tax after nonrefundable credits) — the federal tax subtraction worksheet's line 1 (from compute_return, verbatim) | |
| orRegularExemptions | No | regular exemption count: 'yourself' + 'spouse' credit boxes (6a/6b) + dependents (6c) — $256 each, $0 cliff above $100,000 federal AGI (single/MFS) or $200,000 (others) | |
| orTaxMethodOverride | No | OR-40 line 20 alternate-method tax: farm income averaging (OR-FIA-40, box 20a), farm capital gain (Worksheet FCG, box 20b), or the IRREVOCABLE Oregon PTE reduced rate (OR-PTE-FY, box 20c) — agent-computed; wins over the table/chart tax | |
| paAbleContributions | No | Schedule O code A: PA ABLE contributions, capped at the federal gift-tax exclusion ($19,000 for 2025) | |
| paGrossCompensation | No | PA-40 line 1a: W-2 BOX 16 total (NOT Box 1 — 401(k)/elective deferrals are PA-taxable; eligible retirement distributions are exempt and excluded). Falls back to the shared wages input when omitted (composer discloses). Include taxable early-distribution amounts under the cost-recovery method. | |
| paPenaltiesInterest | No | PA-40 line 27: penalties and interest incl. estimated-underpayment penalty (REV-1630) | |
| paScheduleOcCredits | No | PA-40 line 23 component: Schedule OC restricted credits total (transcribed; no oracle target) | |
| paSpouseBusinessNet | No | PA-40 line 4, SPOUSE's own net business income or loss (kept separate: PA never nets one spouse's loss against the other's income) | |
| paSpousePropertyNet | No | PA-40 line 5, spouse's own net property gain/loss | |
| scAppliedToNextYear | No | SC1040 line 27: amount of the line 24 overpayment credited to 2026 estimated tax | |
| scSubtractionsOther | No | SC subtraction lines f/g/h/j/k/l/m/n/v total (state tax refund, total-and-permanent disability retirement, out-of-state non-personal-service income, volunteer firefighter/EMS/police $6,000 (2025), Future Scholar 529 (unlimited), ACTIVE TRADE OR BUSINESS income electing the I-335 3% flat tax (line l — must pair with scActiveTradeTax), US government interest, nontaxable Guard/Reserve pay, other) — EXCLUDING the composer-computed lines i/o/p/q/r/s/t/u/w | |
| vaAgeQualifyingFull | No | count of filers (taxpayer/spouse) born ON OR BEFORE January 1, 1939 — each gets the UNCONDITIONAL $12,000 age deduction (no income test) | |
| vaYourAgeBlindBoxes | No | STA worksheet Part 1 line 2: PRIMARY taxpayer's 65+/blind box count (0-2) — per-spouse exemption = boxes x $800 + $930 | |
| wiAppliedToNextYear | No | Form 1 line 42: overpayment applied to 2026 estimated tax | |
| wiPropertyTaxesPaid | No | property taxes on the principal residence (line 16b; 12% via the printed $25-wide-row table — a different granularity from the $100-row rent tables) — combined 16a+16b credit caps at $300 ($150 MFS or married-HOH); not claimable with the line 34 veterans credit | |
| wiScheduleUInterest | No | Form 1 line 44: Schedule U underpayment interest | |
| alFederalTaxPlusNiit | No | federal Form 1040 LINE 22 tax PLUS Form 8960 line 17 NIIT — the line 12 worksheet's gross federal tax (from compute_return, verbatim; NEVER the W-2 federal withholding) | |
| alItemizedDeductions | No | Alabama Schedule A total — differs from federal: FICA/Medicare/SE taxes ARE deductible, medical floor is 4% of AGI, NO federal income tax here (it's line 12), NEW 2025 vehicle-loan interest ≤$10,000 phased out $200 per $1,000 ceil-step of AGI over $100,000/$200,000-MFJ. The composer takes the larger of this or the AGI-phased standard deduction. | |
| alScheduleCpPayments | No | Form 40 line 26: payments from Schedule CP, Section B line 1 (composite payments) | |
| caAb5NetLossAddition | No | net losses from businesses where the worker is an employee for California (intake ca_form540_schca.add_net_loss) — the federal Schedule C loss is disallowed for CA: Schedule CA BUSINESS addition, col C | |
| caItemizedDeductions | No | CA itemized deduction total (Schedule CA Part II, line 29) — agent-computed per Schedule CA's own itemized rules WITH disclosure (differs from the federal Schedule A: no SALT cap, mortgage/medical add-backs, etc.). Form 540 line 18 takes the GREATER of this or the CA standard deduction; omit to use the standard deduction only. | |
| ctClaimOfRightCredit | No | CT-1040 line 20b: claim of right credit from Form CT-1040 CRC line 6 (repayment over $3,000 under IRC § 1341; refundable) | |
| ctMilitaryRetirement | No | CT Schedule 1 line 44: military retirement pay included in federal AGI (retired armed forces / National Guard member or survivor-option beneficiary; NOT a former spouse's court-ordered share) — 100% subtracted; also excluded from ctPensionAnnuityIncome | |
| ctRailroadRetirement | No | CT Schedule 1 line 43: Tier 1 and Tier 2 Railroad Retirement benefits, supplemental annuities, and RRB unemployment/sickness benefits included in federal AGI (excluding any Tier 1 already covered by the line 41 Social Security adjustment) — subtracted; also excluded from ctPensionAnnuityIncome | |
| ctTeachersRetirement | No | CT Schedule 1 line 45: income from the Connecticut Teachers' Retirement System (Form 1099-R from the Teachers' Retirement Board) — the composer subtracts 50%; a teacher under the pension AGI threshold may instead include it in ctPensionAnnuityIncome (never both) | |
| gaFederalCdccAllowed | No | federal Form 2441 line 11 allowed credit — GA IND-CR 202 pays 50% of it (us.ga.cdcc) | |
| mdEicQualifyingChild | No | the filer has at least one EIC qualifying child — with married filers this routes line 22 to 50% of the federal EIC (Worksheet 18A) and line 44 to the 45% refundable worksheet (21A); childless single/HOH/QSS filers instead get 100% refundable (18A.1). Also drives the Form 502 EIC checkboxes. | |
| mdSsRrBenefitsSpouse | No | spouse's TOTAL SS/RR benefits for their 13A column | |
| moActiveDutyMilitary | No | MO-1040 line 18: active duty military income deduction (100%, incl. annual training and — NEW 2025 — National Guard/reserve signing bonuses) | |
| moSubtractionsSpouse | No | the spouse's MO-A subtractions on the same terms | |
| moTrustFundDonations | No | MO-1040 line 51: trust fund donations total (51a-51l) | |
| ncMilitaryRetirement | No | NC Schedule S line 21: military retirement pay / SBP payments for members with 20+ years of service OR Chapter 61 medical retirement — never severance, never double-claimed with Bailey | |
| ncQualifyingChildren | No | D-400 line 10a: count of qualifying children for whom the federal § 24 child tax credit was ALLOWED (under 17; ODC-only dependents never count) — drives the AGI-tiered child deduction (us.nc.child_deduction) | |
| nonrefundableCredits | No | state NONREFUNDABLE credits without an oracle target — capped at the state tax due by the composer (an excess never creates a refund). VA: do NOT put the low-income credit or any VA EITC election here — passing it forces a legacy capped path; instead pass federalEITC (+ vaFamilyVagi if testing the low-income credit) and the composer computes and SELECTS the Form 760 line 23 credit itself (TY2025 refundable VA EITC = 20% of federal EIC, uncapped — it dominates whenever federal EITC > 0). IL: pass ICR raw inputs instead where fields exist. | |
| ohFederalCdccAllowed | No | federal Form 2441 line 11 (liability-limited allowed credit) — the Ohio CDCC pays 25% of it when MAGI is $20,000-$39,999 | |
| ohOtherCreditsPreJfc | No | OH Schedule of Credits lines 3+5+7+8 (lump sum retirement, lump sum distribution, displaced worker training, campaign contribution) — transcribed; they subtract BEFORE the joint filing credit's line-11 base | |
| okHomeschoolStudents | No | OK line 29: number of eligible homeschool students claimed (one Form 591-D each) | |
| okMilitaryRetirement | No | OK Schedule 511-A line 4: military retirement benefits included in federal AGI (100% excluded) | |
| okOtherRetirementYou | No | OK Schedule 511-A line 6, TAXPAYER: other qualified plan / IRA / 403(b) / 457 / lump-sum retirement income — the $10,000 per-person cap is shared with line 5 | |
| okRailroadRetirement | No | OK Schedule 511-A line 7: U.S. Railroad Retirement Board benefits included in federal AGI (excluded) | |
| orItemizedDeductions | No | Schedule OR-A line 23 OREGON itemized deductions (Oregon's own computation — never the federal Schedule A total). The composer takes the larger of this and the standard deduction. | |
| scConsumerProtection | No | SC line u: identity-theft/consumer protection services purchased after a security breach notification — the composer caps at $300 (individual) / $1,000 (joint or with dependents) | |
| scNetLtcgAfterLosses | No | net LONG-TERM capital gain held over one year, AFTER netting ALL capital losses (short-term included — the printed example nets an ST loss against the LT gain first) — the composer takes the 44% deduction (line i) | |
| vaItemizedCharitable | No | VA Sch A charitable contributions (federal Schedule A amount) | |
| vaItemizedOtherTaxes | No | VA Sch A line 6 other taxes (foreign income tax etc.) | |
| vaItemizedSalesTaxes | No | VA Sch A line 5a when the general SALES tax election was made federally — capped at the Virginia SALT cap ($40,000; $20,000 MFS for TY2025) | |
| wiItemizedComponents | No | Form 1 Schedule 1 lines 1-4 total: federal Schedule A medical + interest (EXCLUDING out-of-state second homes, boat residences, and U.S.-security carrying interest) + charity + casualty — the composer takes 5% of the excess over the line 8 standard deduction | |
| wiRetirement67Income | No | qualified-plan/IRA retirement income of the 67+ individual(s) for the NEW 2025 Act 15 subtraction (SB line 16, $24,000/$48,000 cap) — CAUTION: claiming it FORFEITS every credit on lines 13-20, 30-35, and Schedule CR (the composer enforces this); compare both ways before passing | |
| ctEitcQualifyingChild | No | at least one qualifying child listed on federal Schedule EIC (Schedule CT-EITC lines 4-5) — adds the flat $250 to the 40% Connecticut EITC (PA 25-168, TY2025+) | |
| ctHistoricHomesCredit | No | CT-1040 line 20d: Historic Homes Rehabilitation Tax Credit voucher amount (refundable) | |
| ctSsProvisionalExcess | No | federal Social Security Benefits Worksheet line 9 (provisional income over the $25,000/$32,000 base) — or line 7 for a married-filing-separately filer who lived with the spouse — CT worksheet line B | |
| gaItemizedAdjustments | No | Form 500 line 12b: state income taxes in the federal Schedule A total plus the disallowed-SALT proration when the $10,000/$5,000 cap bound (printed formula, hand-computed) | |
| gaSpouseExclusionTier | No | spouse's GA retirement-exclusion tier (each spouse qualifies separately; never shared) | |
| mnAdvanceCtcRepayment | No | M1 line 14b: repayment of 2025 ADVANCE Child Tax Credit payments elected on the 2024 return (reconciliation, NEW for 2025) | |
| mnNetInvestmentIncome | No | Schedule NIIT Minnesota net investment income (federal 8960 concept minus class 2a agricultural-land gains) — the composer evaluates us.mn.niit (1% over $1,000,000) into line 14a | |
| mnSsAlternativeMethod | No | the M1M Worksheet ALTERNATIVE-method Social Security subtraction (steps 9-28, agent-computed, NET of the Tier 1 RR offset) — the composer takes the GREATER of this and the oracle simplified method when AGI exceeds the full-subtraction threshold (2025 alternative maxes: $5,840 MFJ/QSS, $4,560 single/HOH, $2,920 MFS) | |
| mnUnderpaymentPenalty | No | M1 line 27: Schedule M15 underpayment penalty | |
| moNetStateIncomeTaxes | No | MO-A Part 2 line 11: state/local income taxes from Schedule A line 5a MINUS Kansas City/St. Louis earnings taxes (which stay deductible) — or the Part 2 worksheet result when SALT exceeded $40,000/$20,000-MFS or FAGI exceeded $500,000/$250,000-MFS | |
| moPublicPensionSpouse | No | the spouse's public-source pension for their Section A column | |
| moUnderpaymentPenalty | No | MO-1040 line 55: Form MO-2210 underpayment penalty (90% / 66⅔%-farmer safe harbors) | |
| ncPartnershipPayments | No | D-400 line 21c: NC tax paid by a partnership on the filer's behalf | |
| njNjbestContributions | No | NJ-1040 line 37a NJBEST 529 contributions (composer caps at $10,000; all three 37a-c require gross income ≤ $200,000) | |
| okEicEarnedIncome2024 | No | Form 511-EIC line 15 (Tax Year 2024 column): the PRIOR year's total earned income — Oklahoma lets the filer use 2024 or 2025 earned income; when given (with okEicAgi2024) the composer computes both columns and keeps the larger (line 20). Omit if the filer had no 2024 Oklahoma filing requirement. | |
| okEicEarnedIncome2025 | No | Form 511-EIC line 15 (Tax Year 2025 column): total earned income — 1040 line 1z wages less excluded Medicaid waiver payments, plus elected nontaxable combat pay, plus net self-employment earnings (Schedule SE line 3 + 4b + 5a − line 13, statutory employee Schedule C line 1). The composer looks it up in the printed 2020 EIC table (us.ok.eic_2020_rules) with federalAGI as line 17. | |
| okFederalSaltDeducted | No | state and local income OR sales taxes from Schedule A line 5a to the extent included in line 5e after the SALT cap (Schedule 511-D line 2 add-back) | |
| okGovRetirementSpouse | No | OK Schedule 511-A line 5, SPOUSE: the spouse's own government retirement (separate $10,000 cap) | |
| okSpecialExemptions65 | No | count of 65-or-older boxes (taxpayer/spouse, 0-2) — $1,000 each ONLY when federal AGI less Roth conversions is at or under $15,000 single / $25,000 joint / $12,500 MFS / $19,000 HOH (not listed for QSS — the composer denies it and discloses) | |
| orCarryforwardCredits | No | OR-40 line 30: Schedule OR-ASC line E9 carryforward credits used this year (capped at the remaining tax by the composer) | |
| orCharitableCheckoffs | No | OR-40 line 49: Schedule OR-DONATE charitable checkoffs (reduce the refund) | |
| orExcessAptcRepayment | No | excess advance premium tax credit repayment (1040 Schedule 2 line 1a) — SUBTRACTED in the worksheet (floor 0) | |
| orInstallmentInterest | No | OR-40 line 21: interest on installment-sale deferred tax liability (9% annual rate for 2025) | |
| paEligibilityAddbacks | No | Schedule SP Section III nontaxable add-backs (gifts, inheritances, insurance proceeds, non-PA income, nontaxable military pay, excluded home-sale gain, educational assistance, outside cash support). NOT Social Security, eligible retirement benefits, child support, or workers' comp. | |
| paMsaHsaContributions | No | Schedule O codes M/H: MSA + HSA contributions at the federally-allowed amounts | |
| paSpDependentChildren | No | Schedule SP dependent CHILDREN count (child/stepchild/adopted; grandchild of a grandparent; foster child of a foster parent — never other relatives) claimable as federal dependents; each adds $9,500 to the Tax Forgiveness eligibility-income threshold | |
| paStudentLoanInterest | No | Schedule O code S: student loan interest PAID (new deduction for 2025; the composer caps at $2,500 — pass the uncapped amount) | |
| scRetirementIncomeYou | No | primary taxpayer's qualified retirement income (401(k)/403(b)/457, IRA, Keogh — EXCLUDING military retirement, which goes in scMilitaryRetirementYou) — the composer caps at $3,000 under 65 / $10,000 at 65+ (line p-1; us.sc.retirement_deduction) | |
| scUnderpaymentPenalty | No | SC1040 line 33: underpayment of estimated tax penalty (SC2210 attached) | |
| taxableSocialSecurity | No | federally TAXABLE social security (Form 1040 line 6b, from compute_return). REQUIRED whenever nonzero: VA (760 line 5 subtraction), CA (Schedule CA line 6 col B), and NY (IT-201 line 27) all subtract it — the composer applies the subtraction automatically; do NOT also fold it into the generic subtractions total. | |
| vaAgeQualifyingTested | No | count of filers born January 2, 1939 - January 1, 1961 (65+ for 2025 but income-tested): the composer computes $12,000 each, reduced dollar-for-dollar by AFAGI over $50,000 single / $75,000 married — where AFAGI = federal AGI MINUS the federally taxable social security (the SS exclusion is the step agents miss; Va. Code § 58.1-322.03(2)) | |
| vaSpouseAgeBlindBoxes | No | STA worksheet Part 1 line 2: spouse's 65+/blind box count (0-2) | |
| vaSpouseTaxAdjustment | No | OVERRIDE ONLY — the composer now computes the VA Spouse Tax Adjustment worksheet itself when vaYourVagi/vaSpouseVagi are provided. If passed, this amount wins. | |
| wiBlindWorkerExpenses | No | blind worker transportation services qualifying expenses (Form 1 line 15 credits 50%) | |
| wiRentHeatNotIncluded | No | rent with heat NOT included (line 16a; 3.0% table) | |
| alTaxableRetirementYou | No | primary taxpayer's OTHERWISE-TAXABLE retirement income (IRA/401(k)/SEP/Keogh/403(b) distributions after basis recovery) — defined-BENEFIT pensions, Social Security, Railroad Retirement, military, and US/AL government retirement are 100% EXEMPT and never entered. The composer applies the 65+ $6,000 Schedule RS exclusion (us.al.retirement_exclusion). | |
| caDepreciationAddition | No | CA depreciation-difference addition: federal depreciation (with § 168(k) bonus, which California NEVER conforms to) minus CA depreciation (plain MACRS on the same asset). Positive = CA income addition (Schedule CA col C on the business/rents line). Compute per-asset and disclose. | |
| ctCharityContributions | No | CT-1040 line 24a: contributions of the refund to designated charities from Schedule 5 line 70 (limited to the refund; irrevocable) | |
| ctPensionAnnuityIncome | No | Form 1040 line 5b taxable pensions and annuities MINUS military retirement pay, Railroad Retirement, and Connecticut teachers' retirement (the composer runs the Pension and Annuity Worksheet: 100% of this + 75% of ctIraDistributions in TY2025, × the federal-AGI phase-out decimal → Schedule 1 line 48b) | |
| ctPropertyTaxResidence | No | CT Schedule 3 line 60: property tax paid in the year to a Connecticut town on the PRIMARY RESIDENCE (bills due and paid in the year, incl. prepaid installments; no late payments, interest or fees) | |
| ctUnderpaymentInterest | No | CT-1040 line 29: interest on underpayment of estimated tax from Form CT-2210 (applies when line 14 less withholding and PE credit is $1,000 or more; leave blank to let DRS bill it) | |
| mnWildlifeContribution | No | M1 line 18: Nongame Wildlife Fund contribution (reduces the refund) | |
| moBusinessIncomeSpouse | No | the spouse's net business income for the 20% deduction (17S) | |
| moEnterpriseZoneSpouse | No | MO-1040 line 28S | |
| moInactiveDutyMilitary | No | MO-1040 line 19: inactive duty (drill) military income deduction | |
| moPrivatePensionSpouse | No | the spouse's private-source pension for Section B | |
| moResidentCreditSpouse | No | MO-1040 line 31S (capped at 30S) | |
| ncUnderpaymentInterest | No | D-400 line 26e: interest on the underpayment of estimated income tax (Form D-422) | |
| ncUsObligationInterest | No | NC Schedule S line 18: interest from US obligations (Treasuries, savings bonds) included in FAGI — fully deducted | |
| njUnderpaymentInterest | No | NJ-1040 line 52 interest on underpayment of estimated tax (Form NJ-2210) | |
| ohFederalCdccTentative | No | federal Form 2441 line 9c (tentative credit before the federal liability limit) — the Ohio CDCC pays 100% of it when MAGI < $20,000 | |
| okFederalItemizedTotal | No | federal Schedule A line 17 total itemized deductions (Schedule 511-D line 1) | |
| okGrossHouseholdIncome | No | Forms 538-S / 538-H: TOTAL gross household income of everyone in the household, taxable or not — wages incl. nontaxable W-2 amounts, interest, dependents' income, full Social Security incl. Medicare premiums, pensions/IRAs, alimony, unemployment, EIC received, public assistance, child support, workers' comp, gross rents/business receipts; NOT deferred 401(k)/IRA contributions or gifts | |
| okRothConversionIncome | No | Roth IRA conversion income included in federal AGI — excluded from AGI for the special 65+ exemption limits only (attach Form 8606) | |
| okUnderpaymentInterest | No | OK line 40: underpayment-of-estimated-tax interest from Form OW-8-P (none when the income tax liability is under $1,000; when there is also an overpayment the composer nets it against the refund per the printed instruction) | |
| orDisabilityExemptions | No | severe-disability boxes (6a/6b) + children with a qualifying disability (6d) — $256 each, $0 cliff above $100,000 federal AGI for EVERY filing status | |
| paSpouseRentRoyaltyNet | No | PA-40 line 6, spouse's own net rent/royalty amount | |
| paUnreimbursedExpenses | No | PA-40 line 1b: Schedule UE unreimbursed employee business expenses (a compensation-class expense, never a line-10 deduction) | |
| scFederalTaxableIncome | No | REQUIRED for SC: federal Form 1040 line 15 TAXABLE income (from compute_return, verbatim) — the SC1040 line 1 starting point (NOT federal AGI). A NEGATIVE amount is allowed: the composer enters $0 on line 1 and preserves the loss on subtraction line r per the printed instructions. | |
| spouseStateWithholding | No | VA line 19b spouse withholding (spouse's own W-2/1099/VK-1 boxes + spouse's half of jointly-issued documents' withholding, odd dollar to the primary) | |
| wiScheduleIAdjustments | No | Form 1 line 2: Schedule I net adjustment (may be negative) converting federal AGI to Wisconsin's IRC — Wisconsin conforms to the Code as of December 31, 2022, so post-2022 federal changes (incl. the 2025 OBBBA) need Schedule I conversion per its instructions | |
| mdNetCapitalGainSubject | No | Form 502CG line 9: net capital gain subject to the H.B. 352 2% surtax (line 1c gain minus the six exempt classes — primary-residence sale under $1.5M, retirement-plan assets, livestock, easement land, trade-or-business property, nonprofit affordable housing). The composer zeroes it (with a note) unless FAGI exceeds $350,000. | |
| mnDependentEarnedIncome | No | dependent-claimed filer's earned income for the dependent standard-deduction worksheet (lesser of the table amount or max($1,250, earned + $350)) | |
| ncClaimOfRightRepayment | No | NC Schedule A line 8: claim-of-right repayments over $3,000 (deducted in full) | |
| njOrganDonationExpenses | No | NJ-1040 line 36 organ/bone-marrow donation expenses (composer caps at $10,000) | |
| njPensionEligibleAmount | No | joint returns where only ONE spouse is 62+/disabled: that spouse's share of line 20a (the exclusion never covers the ineligible spouse's pension). Defaults to all of line 20a. | |
| okEicQualifyingChildren | No | EIC qualifying children under the 2020 federal rules (0, 1, 2, or 3+) | |
| okFederalChildTaxCredit | No | federal child tax credit PLUS additional child tax credit allowed (1040 line 19 + line 28, Schedule 8812) — Oklahoma allows 5% (line 15, greater-of test). Line 19 includes the $500 § 24(h)(4) other-dependent credit; the packet names only the CTC/ACTC — include it (it is part of § 24) and disclose when present | |
| okNaturalDisasterCredit | No | OK line 26: Natural Disaster Tax Credit from Form 576 (refundable; transcribed) | |
| okOtherRetirementSpouse | No | OK Schedule 511-A line 6, SPOUSE: the spouse's own other retirement income | |
| orDependentEarnedIncome | No | dependent-claimed filer's earned income — the standard deduction is limited to max($1,350, earned + $450), capped at the Table 5 amount | |
| scMilitaryRetirementYou | No | primary taxpayer's military retirement income — 100% deductible since TY2022 (line p-4); per the printed worksheet it REDUCES the same person's retirement-deduction CAP and age-65 deduction (instructions Example 5: $16,000 military at 65+ leaves $0 on lines p-1 and q-1) — the composer handles the interplay | |
| vaScheduleAdjDeductions | No | Schedule ADJ line 9 total deductions (deduction CODES like 105 continuing-teacher-education, 199 other) — prints on Form 760 line 13; these are DEDUCTIONS from VAGI, never income subtractions on line 7 | |
| wiDependentEarnedIncome | No | a dependent-claimed filer's earned income for the Standard Deduction Worksheet for Dependents (deduction = smaller of the table amount or max($1,350, earned + $450)) | |
| wiEicQualifyingChildren | No | federal-EIC qualifying children — Wisconsin EIC = 4%/11%/34% of the federal credit for 1/2/3+ children (NO childless credit; MFS ineligible; full-year residents only) | |
| caAb5GrossIncomeAddition | No | gross income from businesses where the worker is classified as an EMPLOYEE for California (AB 5/Dynamex reclassification; the intake's ca_form540_schca.add_gross_income field) — Schedule CA WAGE addition, col C | |
| caHsaTaxableDistribution | No | HSA distribution amount taxed federally (Form 8889 line 16) — not income for California: the composer SUBTRACTS it for CA | |
| ctChetRefundContribution | No | CT-1040 line 24: overpayment contributed to CHET accounts from Schedule CT-CHET line 4 (irrevocable) | |
| gaEligibleItemizerCredit | No | Form 500 line 19: Georgia Eligible Itemizer Tax Credit (NEW 2025; up to $300 per taxpayer, itemizers with 183+ GA days or resident at year end) — TRANSCRIBE the worksheet-computed amount, never assume the full $300; composer caps at $300/$600 | |
| gaRetirementEarnedIncome | No | primary taxpayer's earned income — at most $5,000 counts inside the exclusion (Schedule 1 worksheet) | |
| gaSpouseRetirementIncome | No | spouse's unearned retirement income for the exclusion | |
| moWftcInvestmentOver4400 | No | Form MO-WFTC question 3: investment income exceeds $4,400 — denies the credit. The MO credit follows EIC law FROZEN as of January 1, 2021 (MO-1040 instructions p.10), so this is the indexed pre-ARPA limit; compute investment income the pre-2021 way (taxable AND tax-exempt interest, dividends, positive net capital gain per the MO-WFTC instructions), NOT the current federal $11,950 gate. | |
| okFarmIncomeAveragingTax | No | OVERRIDE for line 14a: Form 573 farm income averaging tax (box 1) — agent-computed; replaces the table tax | |
| okFederalChildCareCredit | No | federal child and dependent care credit allowed (Schedule 3 line 2 / Form 2441) — Oklahoma allows 20% (line 15, greater-of test; $100,000 federal AGI cliff) | |
| orPoliticalContributions | No | 2025 cash contributions to qualified Oregon political parties/candidates/PACs — the composer caps at $50 ($100 joint) and denies above $75,000/$150,000 federal AGI | |
| orPoliticalPartyCheckoff | No | OR-40 line 50: political party $3 checkoff from the refund | |
| scRetirementIncomeSpouse | No | spouse's qualified retirement income for line p-2 (each spouse's own cap; joint returns) | |
| unemploymentCompensation | No | unemployment compensation included in federal AGI (Schedule 1 line 7). REQUIRED whenever nonzero: VA fully subtracts it (Va. Code § 58.1-322.02(9), Schedule ADJ) and CA excludes it (Schedule CA line 7 col B) — the composer subtracts automatically for those states; do NOT also fold it into the generic subtractions total. IL and NY tax it (no subtraction). | |
| wiCapitalGainSubtraction | No | Schedule SB line 5 capital gain/loss subtraction from Schedule WD (30% net long-term gain exclusion, 60% farm assets; capital loss limit $3,000/$1,500-MFS since TY2023; simple mutual-fund/REIT distributions may take 30% directly) | |
| alTaxableRetirementSpouse | No | spouse's otherwise-taxable retirement income (Schedule RS Part III) | |
| ctOtherJurisdictionIncome | No | CT Schedule 2 line 53: income included in Connecticut AGI that was also taxed by ONE qualifying jurisdiction (another state, DC, or their political subdivisions — from the Schedule 2 Worksheet column 2); the composer computes lines 54-58 (ratio to four decimals ≤ 1.0000 × (line 6 − line 11), limited to the tax actually paid). Attach the other return. | |
| mdItemizedStateLocalTaxes | No | MD line 17b: state and local INCOME taxes claimed in the federal Schedule A (plus preservation-easement contributions claimed as a credit) — subtracted from 17a | |
| njOtherRetirementEligible | No | line 28b Worksheet D gate: filer is 62 or older (the composer auto-computes the unclaimed exclusion when earned income ≤ $3,000 and line 27 ≤ $100,000) | |
| njShelteredWorkshopCredit | No | NJ-1040 line 46 Sheltered Workshop Tax Credit (GIT-317) | |
| okAmendedPriorOverpayment | No | OK line 32 (amended return only): overpayment shown on the original / prior amended return or as previously adjusted | |
| orFederalOtherIncomeTaxes | No | other INCOME taxes from Schedule 2 lines 8, 16, 17 (income-tax recaptures only — never SE tax, SS/Medicare tip tax, household employment taxes, penalties, or excise) | |
| vaItemizedRealEstateTaxes | No | VA Sch A line 5b real estate taxes — NOT subject to the SALT cap for Virginia | |
| alFederalRefundableCredits | No | the line 12 worksheet's refundable-credit subtraction: 1040 line 27a EIC + line 28 ACTC + line 29 AOC + line 30 refundable adoption + Schedule 3 Part II line 13a Form 2439 credits | |
| caEducatorExpensesDeducted | No | federal educator-expense deduction claimed (§ 62(a)(2)(D)) — California does NOT conform: the composer ADDS it back on Schedule CA (line 11 col C). Pass the federal amount actually deducted (both spouses' combined). | |
| caTaxableEarlyDistribution | No | retirement-plan early distribution amount subject to the FEDERAL § 72(t) additional tax — California imposes its own 2.5% additional tax on the same base (R&TC § 17085(c)(1), FTB 3805P); the composer computes 2.5% and prints it on Form 540 line 63 | |
| ctOtherJurisdictionTaxPaid | No | CT Schedule 2 line 57: income tax actually paid to that qualifying jurisdiction | |
| mdTwoIncomeLesserSpouseNet | No | Worksheet 13D line 6: the LESSER-income spouse's net Maryland income (their FAGI share + additions share − subtractions share) — the composer caps it at $1,200 for line 14 (joint returns only) | |
| njConservationContribution | No | NJ-1040 line 33 qualified conservation contribution (NJ land, federal amount) | |
| njOrganDonorEmployerCredit | No | NJ-1040 line 48 employer of organ/bone-marrow donor credit (25% of salary, up to 30 days) | |
| njOtherRetirementExclusion | No | OVERRIDE: hand-computed Worksheet D line 9 unclaimed exclusion (required for the $100,001-$150,000 percentage tiers) | |
| scMilitaryRetirementSpouse | No | spouse's military retirement income (line p-5) | |
| vaItemizedMortgageInterest | No | VA Sch A home mortgage interest and points (federal Schedule A amount) | |
| moStandardDeductionOverride | No | dependent-claimed filers: the federal DEPENDENT standard deduction limit (greater of $1,350 or earned income + $450, capped at the full amount) — replaces the composer's full standard deduction | |
| orFederalRefundableAdoption | No | refundable adoption credit (1040 line 30) — subtracted | |
| priorYearOverpaymentCredited | No | prior-year state overpayment applied toward this year's estimated tax. VA 760 line 21 (its own printed line — never fold into line 20 estimated payments). Other states: folded into the estimated-payments line. | |
| scLowerQualifiedEarnedIncome | No | the LESSER-earning spouse's SC qualified earned income per the Two Wage Earner worksheet (earned income minus attributable federal adjustments) — line 12 credit = 0.7% capped at $50,000 base / $350 credit; MFJ only (us.sc.two_wage_earner_credit) | |
| vaItemizedInvestmentInterest | No | VA Sch A investment interest (protected from the overall limitation) | |
| wiFederalRetirementPenalties | No | the FEDERAL penalties on IRAs/retirement plans/MSAs etc. — Wisconsin charges 33% of them on line 25 ('x .33' printed) | |
| wiLowerQualifiedEarnedIncome | No | the LESSER-earning spouse's Schedule 2 line 5 qualified earned income (earned income minus the listed federal Schedule 1 adjustments) — married couple credit = 3% up to $480 (joint returns, both spouses employed) | |
| alFederalTaxDeductionOverride | No | OVERRIDE for Form 40 line 12: the RATIOED federal tax for joint-federal/separate-Alabama returns (by each spouse's FAGI share) or part-year residents (AL-AGI/FAGI ratio) — wins over the composer's oracle computation | |
| ohBothSpousesQualifyingIncome | No | joint filing credit gate: EACH spouse has $500+ of qualifying income included in Ohio AGI (not interest/dividends/capital gains/rents, and not BID-deducted business income or deducted Social Security/retirement) | |
| orFederalTaxLiabilityOverride | No | OVERRIDE for the worksheet line 10 result (amended federal returns, foreign income tax, 1040-NR, recapture situations — Publication OR-17 worksheets); the Table 4 AGI cap still applies via the oracle | |
| gaSpouseRetirementEarnedIncome | No | spouse's earned income for the exclusion worksheet | |
| mdChildCareTwoOrMoreDependents | No | two or more care dependents — raises the MD line 9 expense cap from $3,000 to $6,000 | |
| vaItemizedPersonalPropertyTaxes | No | VA Sch A line 5c personal property taxes — NOT subject to the SALT cap for Virginia | |
| vaItemizedStateLocalIncomeTaxes | No | VA Sch A line 5a when INCOME taxes are claimed (mutually exclusive with sales taxes) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral transparency burden and meets it: it reveals determinism, whole-dollar rounding, oracle-target internals, state-specific bases (federal AGI vs PA/NJ class/category vs SC federal taxable income), automatic subtractions, and composer-enforced caps/forfeitures. It also warns against hand-assembling line numbers and explains interactions such as the military-retirement reduction of other SC deductions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely long, but it is organized by jurisdiction with the general workflow and ALWAYS rules up front, and nearly every sentence carries a distinct state-specific rule or limitation. It is not scannable by a human, but it avoids tautology and repetition; the density is justified by 463 parameters and 18 jurisdictions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description still tells the agent what is produced (a deterministic printed-form line set), how to use it, and what not to compose. It covers state-specific base rules, required inputs, automatic computations, caps, and exclusions for all 18 jurisdictions, making it sufficient for correct invocation despite the enormous parameter surface.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 99%, so the baseline is 3; the description adds real value by routing the agent to the right parameters per jurisdiction and stating when they are required (e.g., taxableSocialSecurity/unemploymentCompensation whenever nonzero, scFederalTaxableIncome for SC). It does not need to redefine individual schema-documented parameters, but it does supply cross-parameter workflow guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Identifies a specific action—deterministically composing a state return's printed-form line set—and enumerates the 18 jurisdictions. It distinguishes itself from siblings by directing the agent to 'run compute_return first for the federal substrate,' making clear it is the state-layer composer, not a federal or generic calculation tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit workflow: run compute_return first, compute state-specific components, call this tool once, and report the line set verbatim. It supplies per-state input requirements (e.g., pass vaYourVagi/vaSpouseVagi for VA MFJ, mdSubdivision for MD), and names unsupported cases (Maryland part-year returns, Kansas City/St. Louis 1% earnings taxes) so the agent knows when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
determine_dependentAInspect
Determine whether ONE candidate person is the taxpayer's § 152 dependent — qualifying child or qualifying relative, including multiple-support agreements and the divorced-parents release — as a proof-backed yes/no with citations. Feed the result into calculate_tax's credits group (qualifyingChildren / otherDependents).
| Name | Required | Description | Default |
|---|---|---|---|
| asOf | No | REQUIRED for computation: the law-in-force date — use the intended tax year's year-end (e.g. "2025-12-31" for TY2025). Omitting it is an error, never a default. | |
| depAge | No | Candidate's age at the end of the year (§ 152(c)(3)). | |
| target | No | rule to derive (default: us.federal.dependent.is_dependent). Other targets: us.federal.dependent.qualifying_child, us.federal.dependent.qualifying_relative | |
| depGrossIncome | No | Candidate's gross income for the year (§ 152(d)(1)(B) limit: $5,200 TY2025 / $5,300 TY2026). In dollars. | |
| depFilesJointReturn | No | Candidate files a joint return with a spouse (other than a refund-only claim) (§ 152(c)(1)(E)). | |
| depIsFullTimeStudent | No | Candidate was a full-time student for at least 5 months (§ 152(f)(2)). | |
| depRelationshipChild | No | Candidate is the taxpayer's child, stepchild, foster child, sibling, step-sibling, or a descendant of any of them (§ 152(c)(2)). | |
| depDivorcedParentsRule | No | § 152(e) applies to the candidate child: the parents are divorced, separated, or lived apart the last 6 months of the year; the child received over half their support from the parents and was in their custody over half the year. | |
| depPermanentlyDisabled | No | Candidate is permanently and totally disabled (§ 152(c)(3)(B)). | |
| depYoungerThanTaxpayer | No | Candidate is younger than the taxpayer (§ 152(c)(3)(A)). | |
| depRelationshipRelative | No | Candidate bears a § 152(d)(2) relationship to the taxpayer (parent, grandparent, sibling, in-law, etc.) or lived in the household all year. | |
| taxpayerIsCustodialParent | No | The taxpayer is the custodial parent (the parent with whom the child resided the greater number of nights, § 152(e)(4)(A)). | |
| hasMultipleSupportAgreement | No | A § 152(d)(3) multiple-support agreement is in place for the candidate: the group together provided over half the support, no one person provided over half, each member could otherwise claim the candidate, and every other over-10% contributor signed a Form 2120 waiver. | |
| custodialParentReleasedClaim | No | The custodial parent signed a written declaration (Form 8332) releasing the claim to the child for this year (§ 152(e)(2)). | |
| depIsQualifyingChildOfAnother | No | Candidate is the qualifying child of the taxpayer or any other taxpayer (§ 152(d)(1)(D)). | |
| depProvidedOwnSupportOverHalf | No | Candidate provided more than half of their own support (§ 152(c)(1)(D)). | |
| taxpayerProvidedOverHalfSupport | No | The taxpayer provided more than half of the candidate's support (§ 152(d)(1)(C)). | |
| depLivedWithTaxpayerOverHalfYear | No | Candidate had the same principal residence as the taxpayer for more than half the year (§ 152(c)(1)(B)). | |
| taxpayerProvidedOver10PercentSupport | No | The taxpayer contributed over 10 percent of the candidate's support (§ 152(d)(3)(D) — the support test under a multiple-support agreement). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. The description states it returns a 'proof-backed yes/no with citations,' but does not disclose behavioral traits such as side effects, required inputs, error handling, or any limitations. For a tool with 19 parameters and no output schema, more behavioral context is needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core purpose and scope, followed by usage guidance. Every sentence adds value, and there is no wasted verbiage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (19 parameters, no output schema), the description explains what the tool does and how to use the result, but does not fully cover the return format beyond 'yes/no with citations' or guide on parameter usage. The schema descriptions handle parameter details, but the description could be more complete by elaborating on the output structure and input expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter already has a description. The tool description does not add any parameter-level details beyond what the schema provides. Baseline is 3, and the description does not compensate for any gaps or add extra meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states what the tool does: determine if a candidate is a dependent under §152, specifying 'qualifying child or qualifying relative' and mentioning special cases like multiple-support agreements and divorced-parents release. It also states the output is a 'proof-backed yes/no with citations' and provides guidance to feed into calculate_tax. This is specific and distinguishes from sibling tools like calculate_tax.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for checking dependency status before tax calculation by saying 'Feed the result into calculate_tax's credits group.' It provides clear context when to use it, but does not explicitly state when not to use it or mention alternatives among siblings like verify_fact or verify_tax_claim, which might handle similar claims.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
explain_ruleAInspect
Get a tax rule's statutory citation, verbatim excerpt, validity window, parameters, and dependencies. Use to quote the actual law behind an answer.
| Name | Required | Description | Default |
|---|---|---|---|
| ruleId | Yes | e.g. "us.federal.standard_deduction" — list via calculate_tax proof or corpus |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It fully discloses the return fields (citation, excerpt, validity window, parameters, dependencies), which implies a read-only, non-destructive operation. It does not mention prerequisites or side effects, but given the tool's explanatory nature, this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at two sentences. The first sentence front-loads the purpose and outputs, and the second provides the usage context. No extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (1 required parameter, no output schema, no enums, no nesting), the description adequately covers the tool's purpose, outputs, and use case. It does not mention error conditions, but that is not necessary for a straightforward explanatory tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema coverage is 100% with a helpful description for ruleId (example value and source). The description adds value by explaining what the tool returns, which helps the agent understand how the parameter contributes to the output. Since coverage is high, the description meaningfully supplements the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states what the tool does: 'Get a tax rule's statutory citation, verbatim excerpt, validity window, parameters, and dependencies.' It also specifies the use case: 'Use to quote the actual law behind an answer.' This distinguishes it from siblings like search_tax_rules (finding rules) and calculate_tax (computing taxes).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear context for when to use the tool ('to quote the actual law behind an answer'), but does not explicitly mention when not to use it or compare with siblings. However, the context is sufficient for an agent to infer appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_tax_cliffsBInspect
Find exact dollar amounts where one more cent of an input costs MORE than a cent of tax (marginal rate over 100%) — e.g. the EITC investment-income kill switch, CTC phase-out steps. Every probe is a real evaluation.
| Name | Required | Description | Default |
|---|---|---|---|
| vary | Yes | money fact to vary, e.g. "wages" or "taxableInterest" | |
| facts | Yes | facts for the computation: either flat corpus fact ids (see list_input_facts) or the same group objects calculate_tax accepts (filing, income, retirement, …), plus optional target and asOf. Business/fiduciary/dependent facts are accepted flat. Unknown keys are rejected by name — nothing is ever silently dropped. | |
| toDollars | Yes | ||
| fromDollars | Yes | ||
| stepDollars | No | coarse scan step, default 1000 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided. The description mentions 'every probe is a real evaluation,' suggesting actual tax calculations, but does not disclose performance, side effects, authentication needs, or rate limits. Lacks rich behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with a parenthetical, no fluff, and front-loads the core purpose. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and moderate complexity, the description fails to explain what the tool returns, how the facts object is structured, or the scanning logic beyond 'real evaluation.' Incomplete for agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 60%, but the tool description adds no additional meaning beyond schema. The parameters (vary, facts, fromDollars, toDollars, stepDollars) are not elaborated. For example, stepDollars default is only in schema. Description does not compensate for uncovered parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool finds exact dollar amounts where marginal tax rate exceeds 100% (tax cliffs), with specific examples like EITC and CTC. It distinctively identifies unique functionality among siblings, which are mostly calculation or fact tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for finding tax cliffs but provides no explicit guidance on when to use or avoid this tool versus alternatives like calculate_tax or search_tax_rules. No when-not-to guidelines.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
is_tipped_occupationAInspect
Determine whether a job is on the Treasury Tipped Occupation list (Treas. Reg. § 1.224-1, final Apr 2026) for the § 224 'no tax on tips' deduction. Fuzzy-matches the job name; returns the official listing (name, TTC code, category) or a definitive 'not listed'.
| Name | Required | Description | Default |
|---|---|---|---|
| job | Yes | e.g. "bartender", "software engineer", "DJ" |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the fuzzy-matching nature and the return value (official listing or 'not listed'). It does not mention side effects or permissions, but as a read-only query, this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences. It front-loads the purpose and regulatory reference, then details the behavior. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (one parameter, no output schema), the description is complete. It explains the input and output sufficiently. No additional context like rate limits is expected for such a tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with examples. The description adds value by explaining fuzzy matching on the job name, which goes beyond the schema's static description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: checking if a job is on the Treasury Tipped Occupation list for the §224 deduction. It specifies the regulation, the fuzzy-matching behavior, and the output format, distinguishing it from sibling tools that focus on calculations or other lookups.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to use the tool (to determine tip deduction eligibility) and implies it's a lookup. It does not explicitly mention when not to use it or list alternatives, but the context of sibling tools provides implicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_input_factsAInspect
Discover every input the tax corpus understands: id, type, whether required, and its documented default. Call this if unsure what information to collect from the user.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It describes the output as listing inputs, which is clear, but does not disclose potential side effects, authentication needs, or performance considerations. For a read-only listing, this is adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first defines purpose and output, second gives usage guidance. No redundant or vague language. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no parameters and no output schema, but the description fully explains its function and return contents. It tells the agent to use it for user data collection, providing complete context for a simple listing tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so baseline is 4. The description adds meaning by specifying what attributes are returned (id, type, required, default), which helps the agent understand the tool's output beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool discovers every input the tax corpus understands, listing specific attributes (id, type, required, default). This distinguishes it from sibling tools that calculate, verify, or search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly advises to call this when unsure what information to collect from the user, providing a direct usage context. It could be improved by mentioning when not to use it, but the guidance is strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_tax_parameterAInspect
Look up the current-law dollar amounts behind a question ('standard deduction', 'CTC phase-out threshold', 'tips deduction cap') with their statutory citations and validity windows. Use this to fact-check ANY tax number before stating it — your training data likely predates the OBBBA.
| Name | Required | Description | Default |
|---|---|---|---|
| asOf | No | ||
| query | Yes | plain-English search, e.g. 'standard deduction' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description discloses that it returns current-law amounts, statutory citations, and validity windows. It also warns about outdated training data, which is helpful. It does not mention error handling or read-only nature, but the intended behavior is clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: the first clearly defines purpose and output, the second provides usage guidance. Every sentence is valuable and there is no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple lookup tool with 2 parameters and no output schema, the description covers what it returns (citations, windows) and when to use it. It lacks details on what happens for missing queries or the exact format of citations, but it is largely sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50% (query has description, asOf only has pattern). The description adds value by explaining query as 'plain-English search' with an example. However, the asOf parameter lacks semantic explanation beyond the date pattern, leaving ambiguity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool looks up current-law dollar amounts behind specific tax questions, provides examples like 'standard deduction' and 'CTC phase-out threshold', and explicitly says it returns statutory citations and validity windows. This distinguishes it from sibling tools like verify_fact or search_tax_rules.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly advises to 'fact-check ANY tax number before stating it' because training data may be outdated. It implies the primary use case but does not explicitly mention when not to use it or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_tax_rulesAInspect
Full-text search over the encoded tax-law corpus ('kiddie tax', 'NIIT threshold', 'california renters credit'). Returns matching rules: id, title, statutory citation, effective window, and a verbatim excerpt of the law text. A hit means the engine computes this; zero hits means it is outside the corpus — say so rather than guessing. Follow up with explain_rule for a hit's full formula, or lookup_tax_parameter for its dollar amounts.
| Name | Required | Description | Default |
|---|---|---|---|
| asOf | No | ||
| limit | No | ||
| query | Yes | plain-English search, e.g. 'kiddie tax' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description effectively conveys the read-only search behavior, what a hit means, and the return format. However, it does not mention any rate limits, authentication needs, or performance characteristics, leaving minor gaps in behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two succinct sentences followed by a single directive sentence. All information is front-loaded and relevant, with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (3 parameters, no output schema), the description provides sufficient context: purpose, return fields, interpretation of results, and links to sibling tools. It is complete enough for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 33% (only query described). The description adds a plain-English example for the query parameter but does not clarify the purpose or format of asOf and limit. The baseline compensation is minimal, leaving these parameters under-documented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it performs full-text search over a tax-law corpus, provides example queries, and details the return fields (id, title, citation, window, excerpt). It distinguishes itself from sibling tools by specifying follow-up tools like explain_rule.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells the agent to interpret zero hits as meaning the query is outside the corpus and not to guess. Also directs to use explain_rule or lookup_tax_parameter for further details, providing clear actionable guidance on when to use which tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_factAInspect
Fact-check a claimed dollar amount about tax law ('the 2026 MFJ standard deduction is $32,200', 'CTC is $2,000 per child') against the corpus. Returns verified / refuted (with the correct value and citation) / unknown. Never states a verdict it cannot ground.
| Name | Required | Description | Default |
|---|---|---|---|
| asOf | No | ||
| query | Yes | what the amount is, e.g. 'standard deduction' | |
| filingStatus | No | ||
| claimedAmount | Yes | dollars, e.g. 50000 or "1234.56" |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It clearly states return values (verified/refuted with correct value and citation, unknown) and the grounding constraint, providing good transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. Front-loaded with verb and resource, then return types and behavioral rule. Efficient and to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has 4 params, no output schema. Description explains purpose, output types, and a behavioral rule. Missing details on optional parameters (asOf, filingStatus) and how they affect results, leaving some gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50% (2 of 4 params have descriptions). The description adds no extra meaning to parameters like 'asOf' or 'filingStatus' beyond examples. It does not compensate for missing schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fact-checks a claimed dollar amount about tax law, with examples. It distinguishes from sibling 'verify_tax_claim' but not explicitly, and is specific about the resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for fact-checking dollar amounts but lacks explicit when-to-use or alternatives. It includes a behavioral rule ('Never states a verdict it cannot ground') but no guidance on when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_tax_claimAInspect
Verify a claimed tax amount (yours, a user's, or another tool's) against the law. Returns verdict 'verified' or 'refuted' with the correct value. Use this as a self-check before presenting any tax number. Put asOf (and target, if any) INSIDE the facts object — e.g. facts: {..., "asOf": "2025-12-31"} — otherwise the claim is checked under today's law.
| Name | Required | Description | Default |
|---|---|---|---|
| facts | Yes | facts for the computation: either flat corpus fact ids (see list_input_facts) or the same group objects calculate_tax accepts (filing, income, retirement, …), plus optional target and asOf. Business/fiduciary/dependent facts are accepted flat. Unknown keys are rejected by name — nothing is ever silently dropped. | |
| claimedAmount | Yes | the amount to verify (negative = refund) | |
| toleranceDollars | No | default 1 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses the return values (verdict and correct value), the fact that unknown keys are rejected (not silently dropped), and implies that without 'asOf', the law as of today is used. This is sufficient for safe invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise: two sentences and a usage note. Every sentence adds value, and the critical placement rule is front-loaded. No redundant or vague phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (3 params, nested objects, 14 siblings), the description covers purpose, usage, parameter semantics, and behavioral constraints. It lacks details on error handling or invalid facts, but overall is sufficient for an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. The description adds meaning beyond schema: explains that 'facts' can be flat IDs or group objects, notes 'negative = refund' for claimedAmount, and gives default toleranceDollars=1. It also clarifies that 'asOf' and 'target' must be inside facts, enhancing parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Verify a claimed tax amount against the law.' It explicitly specifies the return values ('verified' or 'refuted' with correct value) and distinguishes itself from sibling tools like verify_fact by targeting tax claims specifically. The scope (yours, a user's, or another tool's) is also clarified.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly advises: 'Use this as a self-check before presenting any tax number,' providing clear context. It also gives critical placement instructions for 'asOf' and 'target' inside the facts object. However, it does not explicitly state when not to use this tool or compare it to alternatives like verify_fact.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
3 tool updates
- Changed
calculate_tax13 fields changed- added
Input schema / properties / state / properties / ctAgiAdded value: +{ + "description": "Connecticut adjusted gross income (Form CT-1040 line 5 = federal AGI + Schedule 1 additions − subtractions) — the single key to the whole Tax Calculation Schedule: Table A exemption, Table B rates, the Table C 2% add-back, Table D recapture, and the Table E credit percentage (us.ct.income_tax, us.ct.personal_exemption), and to the property tax credit phase-out (us.ct.property_tax_credit). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctEitcJointFagiAdded value: +{ + "description": "The joint federal AGI (Form 1040 line 11; Schedule CT-EITC line 13) when the Connecticut return is married filing separately but the federal return was joint — the proration denominator (us.ct.eitc). 0 = no proration. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctEitcQualifyingChildAdded value: +{ + "description": "Filer listed at least one qualifying child on federal Schedule EIC (Schedule CT-EITC lines 4-5) — adds the flat $250 (PA 25-168 § 371, TY2025+) to the Connecticut EITC (us.ct.eitc).", + "type": "boolean" +} - added
Input schema / properties / state / properties / ctEitcSeparateFagiAdded value: +{ + "description": "For a joint FEDERAL filer who must file married-filing-separately for Connecticut: this spouse's separate federal AGI (Schedule CT-EITC line 12) — the 40% credit is multiplied by separate ÷ joint federal AGI to four decimals, not more than 1.0000 (us.ct.eitc). Leave 0 (with ctEitcJointFagi 0) when no proration applies. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctFederalAgiAdded value: +{ + "description": "Federal adjusted gross income (Form CT-1040 line 1 = federal Form 1040 line 11a, as the 2025 CT form prints it) — keys the Social Security adjustment thresholds ($75,000 single/MFS; $100,000 MFJ/QSS/HOH) and the pension/annuity/IRA phase-out (us.ct.social_security_adjustment, us.ct.pension_annuity_subtraction). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctFederalEicAdded value: +{ + "description": "Federal earned income credit claimed and allowed (Form 1040 line 27a; Schedule CT-EITC line 8) — us.ct.eitc pays 40% of it plus $250 with a qualifying child. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctIraDistributionsAdded value: +{ + "description": "Taxable IRA distributions other than Roth (Form 1040 line 4b) — 75% enters the Pension and Annuity Worksheet line 2 for TY2025, 100% for TY2026 (us.ct.pension_annuity_subtraction). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctPensionAnnuityIncomeAdded value: +{ + "description": "Taxable pensions and annuities (Form 1040 line 5b) MINUS military retirement pay, Tier 1/Tier 2 Railroad Retirement, and Connecticut Teachers' Retirement income (each subtracted on its own Schedule 1 line) — the 100% component of the Pension and Annuity Worksheet line 2 (us.ct.pension_annuity_subtraction). Exclude disability pensions before minimum retirement age and corrective distributions. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctPropertyTaxPaidAdded value: +{ + "description": "Qualifying Connecticut property tax paid during the year on the primary residence and eligible motor vehicle(s) (Schedule 3 line 63: one vehicle for single/MFS/HOH, two for MFJ/QSS; bills due and paid in the year; no late payments, interest, or fees) — us.ct.property_tax_credit caps it at $300 and phases it out by Connecticut AGI. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctSsProvisionalExcessAdded value: +{ + "description": "Federal Social Security Benefits Worksheet line 9 — the excess of provisional income over the § 86(c) base amount ($25,000 / $32,000) — or line 7 for a married-filing-separately filer who lived with the spouse (line B of the Connecticut worksheet; us.ct.social_security_adjustment). May be zero or negative (then no adjustment). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctSsTotalBenefitsAdded value: +{ + "description": "Total Social Security benefits received (federal Social Security Benefits Worksheet line 1 = Form SSA-1099 box 5 total) — line A of the Connecticut Social Security Benefit Adjustment Worksheet (us.ct.social_security_adjustment). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctTaxableSsAdded value: +{ + "description": "Federally taxable Social Security benefits (Form 1040 line 6b; federal worksheet line 18) — line E of the Connecticut worksheet; fully subtracted below the AGI threshold (us.ct.social_security_adjustment). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctUseTaxTableAdded value: +{ + "description": "Use the DRS printed tax tables' method (Connecticut AGI at or under $102,000: the schedule evaluated at the $50 row midpoint, rounded once) instead of the Tax Calculation Schedule with its line-level whole-dollar rounding — Form CT-1040 line 6 allows either (us.ct.income_tax). Above $102,000 the schedule is used regardless.", + "type": "boolean" +}
- Changed
compute_return13 fields changed- added
Input schema / properties / state / properties / ctAgiAdded value: +{ + "description": "Connecticut adjusted gross income (Form CT-1040 line 5 = federal AGI + Schedule 1 additions − subtractions) — the single key to the whole Tax Calculation Schedule: Table A exemption, Table B rates, the Table C 2% add-back, Table D recapture, and the Table E credit percentage (us.ct.income_tax, us.ct.personal_exemption), and to the property tax credit phase-out (us.ct.property_tax_credit). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctEitcJointFagiAdded value: +{ + "description": "The joint federal AGI (Form 1040 line 11; Schedule CT-EITC line 13) when the Connecticut return is married filing separately but the federal return was joint — the proration denominator (us.ct.eitc). 0 = no proration. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctEitcQualifyingChildAdded value: +{ + "description": "Filer listed at least one qualifying child on federal Schedule EIC (Schedule CT-EITC lines 4-5) — adds the flat $250 (PA 25-168 § 371, TY2025+) to the Connecticut EITC (us.ct.eitc).", + "type": "boolean" +} - added
Input schema / properties / state / properties / ctEitcSeparateFagiAdded value: +{ + "description": "For a joint FEDERAL filer who must file married-filing-separately for Connecticut: this spouse's separate federal AGI (Schedule CT-EITC line 12) — the 40% credit is multiplied by separate ÷ joint federal AGI to four decimals, not more than 1.0000 (us.ct.eitc). Leave 0 (with ctEitcJointFagi 0) when no proration applies. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctFederalAgiAdded value: +{ + "description": "Federal adjusted gross income (Form CT-1040 line 1 = federal Form 1040 line 11a, as the 2025 CT form prints it) — keys the Social Security adjustment thresholds ($75,000 single/MFS; $100,000 MFJ/QSS/HOH) and the pension/annuity/IRA phase-out (us.ct.social_security_adjustment, us.ct.pension_annuity_subtraction). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctFederalEicAdded value: +{ + "description": "Federal earned income credit claimed and allowed (Form 1040 line 27a; Schedule CT-EITC line 8) — us.ct.eitc pays 40% of it plus $250 with a qualifying child. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctIraDistributionsAdded value: +{ + "description": "Taxable IRA distributions other than Roth (Form 1040 line 4b) — 75% enters the Pension and Annuity Worksheet line 2 for TY2025, 100% for TY2026 (us.ct.pension_annuity_subtraction). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctPensionAnnuityIncomeAdded value: +{ + "description": "Taxable pensions and annuities (Form 1040 line 5b) MINUS military retirement pay, Tier 1/Tier 2 Railroad Retirement, and Connecticut Teachers' Retirement income (each subtracted on its own Schedule 1 line) — the 100% component of the Pension and Annuity Worksheet line 2 (us.ct.pension_annuity_subtraction). Exclude disability pensions before minimum retirement age and corrective distributions. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctPropertyTaxPaidAdded value: +{ + "description": "Qualifying Connecticut property tax paid during the year on the primary residence and eligible motor vehicle(s) (Schedule 3 line 63: one vehicle for single/MFS/HOH, two for MFJ/QSS; bills due and paid in the year; no late payments, interest, or fees) — us.ct.property_tax_credit caps it at $300 and phases it out by Connecticut AGI. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctSsProvisionalExcessAdded value: +{ + "description": "Federal Social Security Benefits Worksheet line 9 — the excess of provisional income over the § 86(c) base amount ($25,000 / $32,000) — or line 7 for a married-filing-separately filer who lived with the spouse (line B of the Connecticut worksheet; us.ct.social_security_adjustment). May be zero or negative (then no adjustment). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctSsTotalBenefitsAdded value: +{ + "description": "Total Social Security benefits received (federal Social Security Benefits Worksheet line 1 = Form SSA-1099 box 5 total) — line A of the Connecticut Social Security Benefit Adjustment Worksheet (us.ct.social_security_adjustment). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctTaxableSsAdded value: +{ + "description": "Federally taxable Social Security benefits (Form 1040 line 6b; federal worksheet line 18) — line E of the Connecticut worksheet; fully subtracted below the AGI threshold (us.ct.social_security_adjustment). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ctUseTaxTableAdded value: +{ + "description": "Use the DRS printed tax tables' method (Connecticut AGI at or under $102,000: the schedule evaluated at the $50 row midpoint, rounded once) instead of the Tax Calculation Schedule with its line-level whole-dollar rounding — Form CT-1040 line 6 allows either (us.ct.income_tax). Above $102,000 the schedule is used regardless.", + "type": "boolean" +}
- Changed
compute_state_return29 fields changed- added
Input schema / properties / ctAbleContributionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT Schedule 1 line 48d: contributions to ABLE accounts — the composer caps at $5,000 ($10,000 MFJ/QSS)" +} - added
Input schema / properties / ctAmtAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT-1040 line 9: Connecticut alternative minimum tax from Form CT-6251 line 23 (required when federal AMT was paid — agent-computed, transcribed)" +} - added
Input schema / properties / ctAppliedToNextYearAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT-1040 line 23: overpayment applied to 2026 estimated tax (irrevocable)" +} - added
Input schema / properties / ctCharityContributionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT-1040 line 24a: contributions of the refund to designated charities from Schedule 5 line 70 (limited to the refund; irrevocable)" +} - added
Input schema / properties / ctChetContributionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT Schedule 1 line 48: contributions to Connecticut Higher Education Trust (CHET) 529 accounts made during the year plus allowed carryforward — the composer caps at $5,000 ($10,000 MFJ/QSS); the excess carries forward five years" +} - added
Input schema / properties / ctChetRefundContributionAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT-1040 line 24: overpayment contributed to CHET accounts from Schedule CT-CHET line 4 (irrevocable)" +} - added
Input schema / properties / ctClaimOfRightCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT-1040 line 20b: claim of right credit from Form CT-1040 CRC line 6 (repayment over $3,000 under IRC § 1341; refundable)" +} - added
Input schema / properties / ctEitcJointFagiAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Schedule CT-EITC line 13: the JOINT federal AGI when the filer filed jointly federally but must file married-filing-separately for Connecticut — the composer prorates the 40% credit by federalAGI (this spouse's separate AGI, line 12) ÷ this amount to four decimals" +} - added
Input schema / properties / ctEitcQualifyingChildAdded value: +{ + "description": "at least one qualifying child listed on federal Schedule EIC (Schedule CT-EITC lines 4-5) — adds the flat $250 to the 40% Connecticut EITC (PA 25-168, TY2025+)", + "type": "boolean" +} - added
Input schema / properties / ctHistoricHomesCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT-1040 line 20d: Historic Homes Rehabilitation Tax Credit voucher amount (refundable)" +} - added
Input schema / properties / ctIraDistributionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 1040 line 4b taxable IRA distributions other than Roth — 75% (TY2025) / 100% (TY2026) enters the pension and annuity subtraction" +} - added
Input schema / properties / ctLateAdded value: +{ + "description": "return/payment is late — the composer applies the 10% late payment penalty to line 26 (line 27); pass ctLateInterest for line 28", + "type": "boolean" +} - added
Input schema / properties / ctLateInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT-1040 line 28: late payment interest — 1% of line 26 per month or fraction of a month from the due date (agent-computed)" +} - added
Input schema / properties / ctMilitaryRetirementAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT Schedule 1 line 44: military retirement pay included in federal AGI (retired armed forces / National Guard member or survivor-option beneficiary; NOT a former spouse's court-ordered share) — 100% subtracted; also excluded from ctPensionAnnuityIncome" +} - added
Input schema / properties / ctOtherJurisdictionIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT Schedule 2 line 53: income included in Connecticut AGI that was also taxed by ONE qualifying jurisdiction (another state, DC, or their political subdivisions — from the Schedule 2 Worksheet column 2); the composer computes lines 54-58 (ratio to four decimals ≤ 1.0000 × (line 6 − line 11), limited to the tax actually paid). Attach the other return." +} - added
Input schema / properties / ctOtherJurisdictionTaxPaidAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT Schedule 2 line 57: income tax actually paid to that qualifying jurisdiction" +} - added
Input schema / properties / ctPensionAnnuityIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 1040 line 5b taxable pensions and annuities MINUS military retirement pay, Railroad Retirement, and Connecticut teachers' retirement (the composer runs the Pension and Annuity Worksheet: 100% of this + 75% of ctIraDistributions in TY2025, × the federal-AGI phase-out decimal → Schedule 1 line 48b)" +} - added
Input schema / properties / ctPropertyTaxAuto1Added value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT Schedule 3 line 61: property tax paid on one privately owned or leased (term over one year) motor vehicle" +} - added
Input schema / properties / ctPropertyTaxAuto2Added value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT Schedule 3 line 62: a second vehicle — MFJ / QSS ONLY (the composer ignores it for other statuses with a note)" +} - added
Input schema / properties / ctPropertyTaxResidenceAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT Schedule 3 line 60: property tax paid in the year to a Connecticut town on the PRIMARY RESIDENCE (bills due and paid in the year, incl. prepaid installments; no late payments, interest or fees)" +} - added
Input schema / properties / ctPteCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT-1040 line 20c: pass-through entity tax credit from Schedule CT-PE line 1 (refundable; attach the schedule)" +} - added
Input schema / properties / ctRailroadRetirementAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT Schedule 1 line 43: Tier 1 and Tier 2 Railroad Retirement benefits, supplemental annuities, and RRB unemployment/sickness benefits included in federal AGI (excluding any Tier 1 already covered by the line 41 Social Security adjustment) — subtracted; also excluded from ctPensionAnnuityIncome" +} - added
Input schema / properties / ctSsProvisionalExcessAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "federal Social Security Benefits Worksheet line 9 (provisional income over the $25,000/$32,000 base) — or line 7 for a married-filing-separately filer who lived with the spouse — CT worksheet line B" +} - added
Input schema / properties / ctSsTotalBenefitsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "federal Social Security Benefits Worksheet line 1 (total benefits, SSA-1099 box 5) — with taxableSocialSecurity and ctSsProvisionalExcess the composer runs the CT Social Security Benefit Adjustment Worksheet (line 41) when federal AGI is at or above $75,000 (single/MFS) or $100,000 (MFJ/QSS/HOH); below the threshold the full taxable amount is subtracted automatically" +} - added
Input schema / properties / ctTeachersRetirementAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT Schedule 1 line 45: income from the Connecticut Teachers' Retirement System (Form 1099-R from the Teachers' Retirement Board) — the composer subtracts 50%; a teacher under the pension AGI threshold may instead include it in ctPensionAnnuityIncome (never both)" +} - added
Input schema / properties / ctUnderpaymentInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "CT-1040 line 29: interest on underpayment of estimated tax from Form CT-2210 (applies when line 14 less withholding and PE credit is $1,000 or more; leave blank to let DRS bill it)" +} - added
Input schema / properties / ctUseTaxTableAdded value: +{ + "description": "compute line 6 the way the DRS printed tax tables do (CT AGI ≤ $102,000: schedule at the $50 row midpoint, one rounding) instead of the Tax Calculation Schedule's line-level rounding — both are allowed by the form; default is the schedule", + "type": "boolean" +} - changed
Input schema / properties / federalAGI / descriptionPrevious value: -"federal Form 1040 line 11 (from compute_return, verbatim). REQUIRED for il/va/ca/ny/or/ok — the composer refuses without it. NOT used by PA (class-based: pass the pa* class fields instead)."New value: +"federal Form 1040 line 11 (from compute_return, verbatim). REQUIRED for il/va/ca/ny/or/ok/ct — the composer refuses without it. NOT used by PA (class-based: pass the pa* class fields instead)." - changed
Input schema / properties / jurisdiction / enumPrevious value: -[ - "il", - "va", - "ca", - "ny", - "pa", - "nj", - "oh", - "nc", - "ga", - "md", - "mo", - "wi", - "mn", - "sc", - "al", - "or", - "ok" -]New value: +[ + "il", + "va", + "ca", + "ny", + "pa", + "nj", + "oh", + "nc", + "ga", + "md", + "mo", + "wi", + "mn", + "sc", + "al", + "or", + "ok", + "ct" +]
3 tool updates
- Changed
calculate_tax28 fields changed- added
Input schema / properties / state / properties / okAgiAdded value: +{ + "description": "Oklahoma adjusted gross income (Form 511 line 7) — the proration numerator when it is below federal AGI (Schedules 511-F and 511-G: credit x line 7 / line 1, not more than 100%). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okBasicExemptionsAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Count of Oklahoma exemptions with NO income test: 'yourself' + 'spouse' regular boxes, legally-blind boxes, and dependents (Form 511 page 1) — $1,000 each (us.ok.exemptions). A filer claimable as someone's dependent enters 0 for 'yourself'." +} - added
Input schema / properties / state / properties / okEic2020AmountAdded value: +{ + "description": "The federal earned income credit computed under 2020 rules on Form 511-EIC line 20 (the larger of the 2024 and 2025 columns — each is us.ok.eic_2020_rules) — us.ok.eic pays 5% of it, prorated by Oklahoma AGI over federal AGI. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okEicAgiAdded value: +{ + "description": "Federal AGI (Form 1040 line 11) for the SAME year as okEicEarnedIncome — Form 511-EIC line 17: when it reaches the table's phase-out row ($8,800 no children / $19,350 with children; $14,700 / $25,250 married filing jointly) the credit is the SMALLER of the table amounts at earned income and at AGI (us.ok.eic_2020_rules). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okEicEarnedIncomeAdded value: +{ + "description": "Total earned income on Form 511-EIC line 15 (wages less excluded Medicaid waiver payments, plus elected nontaxable combat pay, plus net self-employment earnings) for the year being computed — Oklahoma lets the filer use 2025 OR 2024 earned income (us.ok.eic_2020_rules; run once per year and keep the larger). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okEicEligibleAdded value: +{ + "description": "Filer meets the FEDERAL 2020-law EIC requirements Oklahoma freezes to (68 O.S. § 2357.43): work-valid SSNs, not married filing separately, investment income $3,650 or less, and — with no qualifying child — age 25 to 64 and not a dependent (us.ok.eic_2020_rules). Unattested = $0.", + "type": "boolean" +} - added
Input schema / properties / state / properties / okEicQualifyingChildrenAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Number of EIC qualifying children under the 2020 federal rules (0, 1, 2, or 3-or-more — the table caps at 3) for us.ok.eic_2020_rules." +} - added
Input schema / properties / state / properties / okFederalAgiAdded value: +{ + "description": "Federal adjusted gross income (Form 511 line 1 = Form 1040 line 11) — keys the $100,000 child care/child tax credit cliff and the Schedule 511-F/511-G proration denominators (us.ok.child_care_child_tax_credit, us.ok.eic), the special 65+ exemption income limits (us.ok.exemptions, after removing Roth conversion income), and the use tax table (us.ok.use_tax). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okFederalCharityAdded value: +{ + "description": "Gifts to charity deducted on federal Schedule A line 14 (Schedule 511-D lines 5 and 10) — exempt from Oklahoma's $17,000 itemized cap (us.ok.itemized_deductions). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okFederalChildCareCreditAdded value: +{ + "description": "Federal credit for child and dependent care expenses allowed (Form 2441 / Schedule 3 line 2) — Oklahoma allows 20% of it (us.ok.child_care_child_tax_credit, the greater-of test). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okFederalChildTaxCreditAdded value: +{ + "description": "Federal child tax credit PLUS additional child tax credit allowed (Form 1040 line 19 + line 28 from Schedule 8812) — Oklahoma allows 5% of the total (us.ok.child_care_child_tax_credit, the greater-of test). NOTE: line 19 also carries the $500 § 24(h)(4) credit for other dependents; the packet names only the CTC and ACTC — the ODC is part of § 24 (\"the child tax credit allowed under the IRC\"), so include it but disclose when one is present. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okFederalItemizedTotalAdded value: +{ + "description": "Federal Schedule A line 17 total itemized deductions (Schedule 511-D line 1) — the starting point for Oklahoma itemized deductions (us.ok.itemized_deductions). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okFederalMedicalAdded value: +{ + "description": "Medical and dental expenses deducted on federal Schedule A line 4 (Schedule 511-D lines 4 and 9) — exempt from Oklahoma's $17,000 itemized cap (us.ok.itemized_deductions). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okFederalSaltDeductedAdded value: +{ + "description": "State and local income OR general sales taxes from federal Schedule A line 5a to the extent actually included in line 5e after the SALT cap (Schedule 511-D line 2) — Oklahoma adds them back (us.ok.itemized_deductions). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okGovRetirementSpouseAdded value: +{ + "description": "SPOUSE's Oklahoma-government or federal civil service retirement benefits included in federal AGI (Schedule 511-A line 5) — the $10,000 limit is per individual, in that person's name (us.ok.retirement_exclusion). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okGovRetirementYouAdded value: +{ + "description": "TAXPAYER's Oklahoma-government or federal civil service retirement benefits included in federal AGI (Schedule 511-A line 5 systems: OPERS, TRS, OLERS, firefighters, police, judges, county/municipal systems, US civil service other than CSRS-in-lieu-of-SS) — excluded up to $10,000 per person (us.ok.retirement_exclusion). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okGrossHouseholdIncomeAdded value: +{ + "description": "Total GROSS household income of everyone in the household, taxable or not (Form 538-S Part 3 line 14: wages incl. nontaxable W-2 amounts, interest, dependents' income, full Social Security incl. Medicare, pensions, alimony, unemployment, EIC received, public assistance, child support, workers' comp, gross rents/business receipts; NOT deferred 401(k)/IRA contributions) — the $20,000/$50,000 sales tax relief limits (us.ok.sales_tax_relief_credit) and the $12,000 property tax relief limit (us.ok.property_tax_relief_credit). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okOtherRetirementSpouseAdded value: +{ + "description": "SPOUSE's other qualifying retirement income included in federal AGI (Schedule 511-A line 6) — same per-person $10,000 combined limit (us.ok.retirement_exclusion). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okOtherRetirementYouAdded value: +{ + "description": "TAXPAYER's other qualifying retirement income included in federal AGI (Schedule 511-A line 6: IRC 401 plans, 457 plans, 408 IRAs/SEPs, 403(a)/(b) annuities, 402(e) lump sums) — excluded up to $10,000 per person MINUS the same person's line 5 exclusion (us.ok.retirement_exclusion). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okPropertyTaxPaidAdded value: +{ + "description": "Ad valorem property taxes paid on the homestead occupied during the year (Form 538-H) — the property tax relief credit is the amount paid, capped at $200 (us.ok.property_tax_relief_credit). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okPtrEligibleAdded value: +{ + "description": "Filer is 65 or older OR totally disabled, is the head of a household, and was an Oklahoma resident domiciled in the state for the ENTIRE preceding calendar year (Form 538-H / Form 511 line 24) — the property tax relief credit also requires gross household income of $12,000 or less (us.ok.property_tax_relief_credit). Unattested = $0.", + "type": "boolean" +} - added
Input schema / properties / state / properties / okRothConversionIncomeAdded value: +{ + "description": "Income from converting a traditional IRA to a Roth IRA that is included in federal AGI — excluded from federal AGI ONLY for the special 65+ exemption income limits (68 O.S. § 2358(E)(1)(c); Form 511 exemption instructions). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okSpecialExemptions65Added value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Count of Oklahoma SPECIAL exemption boxes (taxpayer and/or spouse 65 or older at year end, 0-2) — $1,000 each ONLY when federal AGI (less Roth conversion income) is at or under $15,000 single / $25,000 joint / $12,500 MFS / $19,000 head of household (us.ok.exemptions)." +} - added
Input schema / properties / state / properties / okStrDisabledAdded value: +{ + "description": "Filer or spouse has a physical disability constituting a substantial handicap to employment (proof required with Form 538-S) — raises the sales tax relief gross household income limit to $50,000 (us.ok.sales_tax_relief_credit).", + "type": "boolean" +} - added
Input schema / properties / state / properties / okStrEligibleAdded value: +{ + "description": "Filer meets the Form 538-S gates: Oklahoma resident (domiciled) for the ENTIRE year, not an inmate in DOC custody during the year after a felony conviction, received no TANF in any month, not living in Oklahoma under a visa, and the return is filed by the due date (us.ok.sales_tax_relief_credit). Unattested = $0.", + "type": "boolean" +} - added
Input schema / properties / state / properties / okStrExemptionsAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Qualified exemptions for the sales tax relief credit (Form 538-S Box D: yourself, spouse, and each federally-claimed dependent who was an Oklahoma resident all year; a deceased taxpayer/spouse or a TANF recipient does not count) — $40 each (us.ok.sales_tax_relief_credit)." +} - added
Input schema / properties / state / properties / okStrHasDependentAdded value: +{ + "description": "Filer can claim an exemption for a dependent — raises the sales tax relief gross household income limit from $20,000 to $50,000 (us.ok.sales_tax_relief_credit).", + "type": "boolean" +} - added
Input schema / properties / state / properties / okStrIs65Added value: +{ + "description": "Filer or spouse is 65 or older by December 31 of the tax year — raises the sales tax relief gross household income limit to $50,000 (us.ok.sales_tax_relief_credit).", + "type": "boolean" +}
- Changed
compute_return28 fields changed- added
Input schema / properties / state / properties / okAgiAdded value: +{ + "description": "Oklahoma adjusted gross income (Form 511 line 7) — the proration numerator when it is below federal AGI (Schedules 511-F and 511-G: credit x line 7 / line 1, not more than 100%). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okBasicExemptionsAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Count of Oklahoma exemptions with NO income test: 'yourself' + 'spouse' regular boxes, legally-blind boxes, and dependents (Form 511 page 1) — $1,000 each (us.ok.exemptions). A filer claimable as someone's dependent enters 0 for 'yourself'." +} - added
Input schema / properties / state / properties / okEic2020AmountAdded value: +{ + "description": "The federal earned income credit computed under 2020 rules on Form 511-EIC line 20 (the larger of the 2024 and 2025 columns — each is us.ok.eic_2020_rules) — us.ok.eic pays 5% of it, prorated by Oklahoma AGI over federal AGI. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okEicAgiAdded value: +{ + "description": "Federal AGI (Form 1040 line 11) for the SAME year as okEicEarnedIncome — Form 511-EIC line 17: when it reaches the table's phase-out row ($8,800 no children / $19,350 with children; $14,700 / $25,250 married filing jointly) the credit is the SMALLER of the table amounts at earned income and at AGI (us.ok.eic_2020_rules). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okEicEarnedIncomeAdded value: +{ + "description": "Total earned income on Form 511-EIC line 15 (wages less excluded Medicaid waiver payments, plus elected nontaxable combat pay, plus net self-employment earnings) for the year being computed — Oklahoma lets the filer use 2025 OR 2024 earned income (us.ok.eic_2020_rules; run once per year and keep the larger). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okEicEligibleAdded value: +{ + "description": "Filer meets the FEDERAL 2020-law EIC requirements Oklahoma freezes to (68 O.S. § 2357.43): work-valid SSNs, not married filing separately, investment income $3,650 or less, and — with no qualifying child — age 25 to 64 and not a dependent (us.ok.eic_2020_rules). Unattested = $0.", + "type": "boolean" +} - added
Input schema / properties / state / properties / okEicQualifyingChildrenAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Number of EIC qualifying children under the 2020 federal rules (0, 1, 2, or 3-or-more — the table caps at 3) for us.ok.eic_2020_rules." +} - added
Input schema / properties / state / properties / okFederalAgiAdded value: +{ + "description": "Federal adjusted gross income (Form 511 line 1 = Form 1040 line 11) — keys the $100,000 child care/child tax credit cliff and the Schedule 511-F/511-G proration denominators (us.ok.child_care_child_tax_credit, us.ok.eic), the special 65+ exemption income limits (us.ok.exemptions, after removing Roth conversion income), and the use tax table (us.ok.use_tax). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okFederalCharityAdded value: +{ + "description": "Gifts to charity deducted on federal Schedule A line 14 (Schedule 511-D lines 5 and 10) — exempt from Oklahoma's $17,000 itemized cap (us.ok.itemized_deductions). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okFederalChildCareCreditAdded value: +{ + "description": "Federal credit for child and dependent care expenses allowed (Form 2441 / Schedule 3 line 2) — Oklahoma allows 20% of it (us.ok.child_care_child_tax_credit, the greater-of test). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okFederalChildTaxCreditAdded value: +{ + "description": "Federal child tax credit PLUS additional child tax credit allowed (Form 1040 line 19 + line 28 from Schedule 8812) — Oklahoma allows 5% of the total (us.ok.child_care_child_tax_credit, the greater-of test). NOTE: line 19 also carries the $500 § 24(h)(4) credit for other dependents; the packet names only the CTC and ACTC — the ODC is part of § 24 (\"the child tax credit allowed under the IRC\"), so include it but disclose when one is present. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okFederalItemizedTotalAdded value: +{ + "description": "Federal Schedule A line 17 total itemized deductions (Schedule 511-D line 1) — the starting point for Oklahoma itemized deductions (us.ok.itemized_deductions). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okFederalMedicalAdded value: +{ + "description": "Medical and dental expenses deducted on federal Schedule A line 4 (Schedule 511-D lines 4 and 9) — exempt from Oklahoma's $17,000 itemized cap (us.ok.itemized_deductions). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okFederalSaltDeductedAdded value: +{ + "description": "State and local income OR general sales taxes from federal Schedule A line 5a to the extent actually included in line 5e after the SALT cap (Schedule 511-D line 2) — Oklahoma adds them back (us.ok.itemized_deductions). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okGovRetirementSpouseAdded value: +{ + "description": "SPOUSE's Oklahoma-government or federal civil service retirement benefits included in federal AGI (Schedule 511-A line 5) — the $10,000 limit is per individual, in that person's name (us.ok.retirement_exclusion). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okGovRetirementYouAdded value: +{ + "description": "TAXPAYER's Oklahoma-government or federal civil service retirement benefits included in federal AGI (Schedule 511-A line 5 systems: OPERS, TRS, OLERS, firefighters, police, judges, county/municipal systems, US civil service other than CSRS-in-lieu-of-SS) — excluded up to $10,000 per person (us.ok.retirement_exclusion). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okGrossHouseholdIncomeAdded value: +{ + "description": "Total GROSS household income of everyone in the household, taxable or not (Form 538-S Part 3 line 14: wages incl. nontaxable W-2 amounts, interest, dependents' income, full Social Security incl. Medicare, pensions, alimony, unemployment, EIC received, public assistance, child support, workers' comp, gross rents/business receipts; NOT deferred 401(k)/IRA contributions) — the $20,000/$50,000 sales tax relief limits (us.ok.sales_tax_relief_credit) and the $12,000 property tax relief limit (us.ok.property_tax_relief_credit). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okOtherRetirementSpouseAdded value: +{ + "description": "SPOUSE's other qualifying retirement income included in federal AGI (Schedule 511-A line 6) — same per-person $10,000 combined limit (us.ok.retirement_exclusion). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okOtherRetirementYouAdded value: +{ + "description": "TAXPAYER's other qualifying retirement income included in federal AGI (Schedule 511-A line 6: IRC 401 plans, 457 plans, 408 IRAs/SEPs, 403(a)/(b) annuities, 402(e) lump sums) — excluded up to $10,000 per person MINUS the same person's line 5 exclusion (us.ok.retirement_exclusion). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okPropertyTaxPaidAdded value: +{ + "description": "Ad valorem property taxes paid on the homestead occupied during the year (Form 538-H) — the property tax relief credit is the amount paid, capped at $200 (us.ok.property_tax_relief_credit). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okPtrEligibleAdded value: +{ + "description": "Filer is 65 or older OR totally disabled, is the head of a household, and was an Oklahoma resident domiciled in the state for the ENTIRE preceding calendar year (Form 538-H / Form 511 line 24) — the property tax relief credit also requires gross household income of $12,000 or less (us.ok.property_tax_relief_credit). Unattested = $0.", + "type": "boolean" +} - added
Input schema / properties / state / properties / okRothConversionIncomeAdded value: +{ + "description": "Income from converting a traditional IRA to a Roth IRA that is included in federal AGI — excluded from federal AGI ONLY for the special 65+ exemption income limits (68 O.S. § 2358(E)(1)(c); Form 511 exemption instructions). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / okSpecialExemptions65Added value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Count of Oklahoma SPECIAL exemption boxes (taxpayer and/or spouse 65 or older at year end, 0-2) — $1,000 each ONLY when federal AGI (less Roth conversion income) is at or under $15,000 single / $25,000 joint / $12,500 MFS / $19,000 head of household (us.ok.exemptions)." +} - added
Input schema / properties / state / properties / okStrDisabledAdded value: +{ + "description": "Filer or spouse has a physical disability constituting a substantial handicap to employment (proof required with Form 538-S) — raises the sales tax relief gross household income limit to $50,000 (us.ok.sales_tax_relief_credit).", + "type": "boolean" +} - added
Input schema / properties / state / properties / okStrEligibleAdded value: +{ + "description": "Filer meets the Form 538-S gates: Oklahoma resident (domiciled) for the ENTIRE year, not an inmate in DOC custody during the year after a felony conviction, received no TANF in any month, not living in Oklahoma under a visa, and the return is filed by the due date (us.ok.sales_tax_relief_credit). Unattested = $0.", + "type": "boolean" +} - added
Input schema / properties / state / properties / okStrExemptionsAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Qualified exemptions for the sales tax relief credit (Form 538-S Box D: yourself, spouse, and each federally-claimed dependent who was an Oklahoma resident all year; a deceased taxpayer/spouse or a TANF recipient does not count) — $40 each (us.ok.sales_tax_relief_credit)." +} - added
Input schema / properties / state / properties / okStrHasDependentAdded value: +{ + "description": "Filer can claim an exemption for a dependent — raises the sales tax relief gross household income limit from $20,000 to $50,000 (us.ok.sales_tax_relief_credit).", + "type": "boolean" +} - added
Input schema / properties / state / properties / okStrIs65Added value: +{ + "description": "Filer or spouse is 65 or older by December 31 of the tax year — raises the sales tax relief gross household income limit to $50,000 (us.ok.sales_tax_relief_credit).", + "type": "boolean" +}
- Changed
compute_state_return52 fields changed- changed
Input schema / properties / federalAGI / descriptionPrevious value: -"federal Form 1040 line 11 (from compute_return, verbatim). REQUIRED for il/va/ca/ny/or — the composer refuses without it. NOT used by PA (class-based: pass the pa* class fields instead)."New value: +"federal Form 1040 line 11 (from compute_return, verbatim). REQUIRED for il/va/ca/ny/or/ok — the composer refuses without it. NOT used by PA (class-based: pass the pa* class fields instead)." - changed
Input schema / properties / jurisdiction / enumPrevious value: -[ - "il", - "va", - "ca", - "ny", - "pa", - "nj", - "oh", - "nc", - "ga", - "md", - "mo", - "wi", - "mn", - "sc", - "al", - "or" -]New value: +[ + "il", + "va", + "ca", + "ny", + "pa", + "nj", + "oh", + "nc", + "ga", + "md", + "mo", + "wi", + "mn", + "sc", + "al", + "or", + "ok" +] - added
Input schema / properties / ok529ContributionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK Schedule 511-C line 3: Oklahoma 529 College Savings Plan / OklahomaDream 529 contributions (incl. carryforwards and contributions through April 15) — the composer caps at $10,000 ($20,000 joint)" +} - added
Input schema / properties / okAdditionalTaxAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK line 14b: HSA non-qualified withdrawal 10% additional tax (box 2), Oklahoma Affordable Housing credit recapture (box 3), or IRC § 965(h) installment (box 4)" +} - added
Input schema / properties / okAmendedPaidAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK line 30 (amended return only): amount paid with the original return plus additional payments after it was filed" +} - added
Input schema / properties / okAmendedPriorOverpaymentAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK line 32 (amended return only): overpayment shown on the original / prior amended return or as previously adjusted" +} - added
Input schema / properties / okAppliedToNextYearAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK line 35: overpayment applied to 2026 estimated tax (original return only)" +} - added
Input schema / properties / okBlindExemptionsAdded value: +{ + "description": "count of legally-blind boxes (taxpayer/spouse) — $1,000 each, added to the shared `exemptions` count (self + spouse + dependents)", + "type": "integer" +} - added
Input schema / properties / okCsrsRetirementAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK Schedule 511-A line 3: Federal Civil Service Retirement System benefits paid in lieu of Social Security (100% excluded; CSA/CSF 1099-R claim number required — FERS does not qualify except the CSRS component or the FERS annuity supplement)" +} - added
Input schema / properties / okDonationsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK line 36: Schedule 511-H donations from the refund (CASA programs, Wildlife Diversity Fund — $2/$5/other)" +} - added
Input schema / properties / okEicAgi2024Added value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 511-EIC line 17 (Tax Year 2024 column): 2024 federal AGI — REQUIRED with okEicEarnedIncome2024 (the composer skips the 2024 column without it, since the line 19 AGI look-up cannot run)" +} - added
Input schema / properties / okEicEarnedIncome2024Added value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 511-EIC line 15 (Tax Year 2024 column): the PRIOR year's total earned income — Oklahoma lets the filer use 2024 or 2025 earned income; when given (with okEicAgi2024) the composer computes both columns and keeps the larger (line 20). Omit if the filer had no 2024 Oklahoma filing requirement." +} - added
Input schema / properties / okEicEarnedIncome2025Added value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 511-EIC line 15 (Tax Year 2025 column): total earned income — 1040 line 1z wages less excluded Medicaid waiver payments, plus elected nontaxable combat pay, plus net self-employment earnings (Schedule SE line 3 + 4b + 5a − line 13, statutory employee Schedule C line 1). The composer looks it up in the printed 2020 EIC table (us.ok.eic_2020_rules) with federalAGI as line 17." +} - added
Input schema / properties / okEicEligibleAdded value: +{ + "description": "Form 511-EIC eligibility under the FEDERAL 2020 rules attested: work-valid SSNs, not married filing separately, investment income $3,650 or less, and with no qualifying child age 25-64 and not a dependent — enables the Oklahoma EIC (line 28)", + "type": "boolean" +} - added
Input schema / properties / okEicQualifyingChildrenAdded value: +{ + "description": "EIC qualifying children under the 2020 federal rules (0, 1, 2, or 3+)", + "type": "integer" +} - added
Input schema / properties / okFarmIncomeAveragingTaxAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OVERRIDE for line 14a: Form 573 farm income averaging tax (box 1) — agent-computed; replaces the table tax" +} - added
Input schema / properties / okFederalCharityAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "federal Schedule A line 14 gifts to charity — exempt from the $17,000 Oklahoma cap" +} - added
Input schema / properties / okFederalChildCareCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "federal child and dependent care credit allowed (Schedule 3 line 2 / Form 2441) — Oklahoma allows 20% (line 15, greater-of test; $100,000 federal AGI cliff)" +} - added
Input schema / properties / okFederalChildTaxCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "federal child tax credit PLUS additional child tax credit allowed (1040 line 19 + line 28, Schedule 8812) — Oklahoma allows 5% (line 15, greater-of test). Line 19 includes the $500 § 24(h)(4) other-dependent credit; the packet names only the CTC/ACTC — include it (it is part of § 24) and disclose when present" +} - added
Input schema / properties / okFederalItemizedAdded value: +{ + "description": "taxpayer ITEMIZED on the federal return — Oklahoma then REQUIRES Oklahoma itemized deductions (Schedule 511-D) even if smaller than the standard deduction; a federal standard-deduction filer must take the Oklahoma standard deduction", + "type": "boolean" +} - added
Input schema / properties / okFederalItemizedTotalAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "federal Schedule A line 17 total itemized deductions (Schedule 511-D line 1)" +} - added
Input schema / properties / okFederalMedicalAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "federal Schedule A line 4 medical and dental (after the 7.5% floor) — exempt from the $17,000 Oklahoma cap" +} - added
Input schema / properties / okFederalSaltDeductedAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "state and local income OR sales taxes from Schedule A line 5a to the extent included in line 5e after the SALT cap (Schedule 511-D line 2 add-back)" +} - added
Input schema / properties / okForm578CreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK line 27: refundable credit for electricity generated by zero-emission facilities from Form 578 (85% of face; transcribed)" +} - added
Input schema / properties / okGovRetirementSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK Schedule 511-A line 5, SPOUSE: the spouse's own government retirement (separate $10,000 cap)" +} - added
Input schema / properties / okGovRetirementYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK Schedule 511-A line 5, TAXPAYER: Oklahoma-government / U.S. civil service retirement in the taxpayer's own name (OPERS, TRS, police, fire, judges, county/municipal systems) — excluded up to $10,000 per person (us.ok.retirement_exclusion)" +} - added
Input schema / properties / okGrossHouseholdIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Forms 538-S / 538-H: TOTAL gross household income of everyone in the household, taxable or not — wages incl. nontaxable W-2 amounts, interest, dependents' income, full Social Security incl. Medicare premiums, pensions/IRAs, alimony, unemployment, EIC received, public assistance, child support, workers' comp, gross rents/business receipts; NOT deferred 401(k)/IRA contributions or gifts" +} - added
Input schema / properties / okHomeschoolCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK line 29: Parental Choice Tax Credit for homeschool expenses from Form 591-D (refundable) — the composer caps at $1,000 × okHomeschoolStudents when the count is given" +} - added
Input schema / properties / okHomeschoolStudentsAdded value: +{ + "description": "OK line 29: number of eligible homeschool students claimed (one Form 591-D each)", + "type": "integer" +} - added
Input schema / properties / okInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK line 41b: delinquent payment interest (1.25% per month from the original due date)" +} - added
Input schema / properties / okMilitaryPayAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK Schedule 511-C line 1: active-duty, Reserve, and National Guard military pay included in federal AGI (100% excluded)" +} - added
Input schema / properties / okMilitaryRetirementAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK Schedule 511-A line 4: military retirement benefits included in federal AGI (100% excluded)" +} - added
Input schema / properties / okNaturalDisasterCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK line 26: Natural Disaster Tax Credit from Form 576 (refundable; transcribed)" +} - added
Input schema / properties / okOtherAdjustmentsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK Schedule 511-C lines 2, 4-6 total: disability modification expenses, foster care (≤ $5,000), Parental Choice payments, and the misc codes (MSA/HSA, ag processing, organ donation ≤ $10,000, poll-worker leave, homebuyer savings $5,000/$10,000, ABLE $10,000/$20,000, etc.) — transcribed" +} - added
Input schema / properties / okOtherRetirementSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK Schedule 511-A line 6, SPOUSE: the spouse's own other retirement income" +} - added
Input schema / properties / okOtherRetirementYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK Schedule 511-A line 6, TAXPAYER: other qualified plan / IRA / 403(b) / 457 / lump-sum retirement income — the $10,000 per-person cap is shared with line 5" +} - added
Input schema / properties / okOtherStateCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK line 16: Form 511-TX credit for tax paid to another state on PERSONAL-SERVICES income (agent-computed per the form's proportion; capped at the remaining tax by the composer)" +} - added
Input schema / properties / okOutOfStateIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK Form 511 line 4: income from real or tangible personal property or BUSINESS activity in another state (partnership/S-corp shares included) — NEVER wages, interest, dividends, pensions, unemployment, or gambling. When > 0 the composer prorates deductions and exemptions on Schedule 511-E and leaves lines 10-11 blank." +} - added
Input schema / properties / okPenaltyAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK line 41a: delinquent payment penalty (5% of line 39 minus line 19 after the original due date)" +} - added
Input schema / properties / okPropertyTaxPaidAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 538-H line 15: 2025 real estate (ad valorem) taxes paid on the homestead (no personal property taxes) — credit = amount over 1% of gross household income, max $200" +} - added
Input schema / properties / okPtrEligibleAdded value: +{ + "description": "Form 538-H gates attested: 65 or older OR totally disabled, head of a household (owner who maintained the home — the 538-H definition, not the filing status), domiciled in Oklahoma the entire year — enables the property tax relief credit (line 24; also needs gross household income ≤ $12,000)", + "type": "boolean" +} - added
Input schema / properties / okRailroadRetirementAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK Schedule 511-A line 7: U.S. Railroad Retirement Board benefits included in federal AGI (excluded)" +} - added
Input schema / properties / okRothConversionIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Roth IRA conversion income included in federal AGI — excluded from AGI for the special 65+ exemption limits only (attach Form 8606)" +} - added
Input schema / properties / okSpecialExemptions65Added value: +{ + "description": "count of 65-or-older boxes (taxpayer/spouse, 0-2) — $1,000 each ONLY when federal AGI less Roth conversions is at or under $15,000 single / $25,000 joint / $12,500 MFS / $19,000 HOH (not listed for QSS — the composer denies it and discloses)", + "type": "integer" +} - added
Input schema / properties / okStrDisabledAdded value: +{ + "description": "taxpayer or spouse has a physical disability constituting a substantial handicap to employment (proof attached) — raises the sales tax relief limit to $50,000", + "type": "boolean" +} - added
Input schema / properties / okStrEligibleAdded value: +{ + "description": "Form 538-S gates attested: Oklahoma resident (domiciled) the ENTIRE year, no TANF in any month, not a DOC inmate during the year after a felony conviction, not living in Oklahoma under a visa, and the return is filed by the due date — enables the sales tax relief credit (line 25)", + "type": "boolean" +} - added
Input schema / properties / okStrExemptionsAdded value: +{ + "description": "Form 538-S Box D qualified exemptions (yourself + spouse + federally-claimed dependents who were Oklahoma residents all year; the 65+/blind boxes NEVER count) — $40 each; defaults to the shared `exemptions` count", + "type": "integer" +} - added
Input schema / properties / okStrHasDependentAdded value: +{ + "description": "filer can claim a dependent — raises the sales tax relief gross household income limit from $20,000 to $50,000", + "type": "boolean" +} - added
Input schema / properties / okStrIs65Added value: +{ + "description": "taxpayer or spouse 65 or older by December 31 — raises the sales tax relief limit to $50,000", + "type": "boolean" +} - added
Input schema / properties / okUnderpaymentInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK line 40: underpayment-of-estimated-tax interest from Form OW-8-P (none when the income tax liability is under $1,000; when there is also an overpayment the composer nets it against the refund per the printed instruction)" +} - added
Input schema / properties / okUsInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OK Schedule 511-A line 1: interest on U.S. government obligations included in federal AGI (not FNMA/GNMA)" +} - added
Input schema / properties / okUseTaxEstimateAdded value: +{ + "description": "filer kept no records of out-of-state purchases and elects the printed Use Tax Table estimate on federal AGI for line 19 (us.ok.use_tax — the 2025 table; for a TY2026 return the estimate REFUSES until the 2026 packet publishes, pass useTax instead) — otherwise pass useTax (worksheet amount) or nothing (certify no use tax is due)", + "type": "boolean" +}
3 tool updates
- Changed
calculate_tax11 fields changed- added
Input schema / properties / state / properties / or2024TaxLiabilityAdded value: +{ + "description": "The 2024 total Oregon personal income tax liability: 2024 OR-40 line 24 tax-before-credits MINUS the Schedule OR-ASC code 802/815 credit for taxes paid to another state (Kicker worksheet Part A — NOT line 31, which is after the exemption and other credits) — us.or.kicker pays 9.863% of it on the 2025 return. Requires the 2024 return filed before the 2025 return. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / orAgiAdded value: +{ + "description": "Federal adjusted gross income (Form OR-40 line 7) — keys the federal tax subtraction Table 4 phase-out (us.or.federal_tax_subtraction) and the exemption credit cliffs (us.or.exemption_credit: $100,000 single/MFS, $200,000 others; disability exemptions $100,000 for all). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / orDependentEarnedIncomeAdded value: +{ + "description": "A dependent-claimed filer's earned income for Oregon's dependent standard-deduction limit (larger of $1,350 or earned + $450, capped at the Table 5 amount). Only used when isClaimedAsDependent. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / orDisabilityExemptionsAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Oregon severe-disability exemption boxes (6a/6b) plus children with a qualifying disability (line 6d) — $256 each, $0 above $100,000 federal AGI for EVERY filing status (us.or.exemption_credit)." +} - added
Input schema / properties / state / properties / orFederalEicAdded value: +{ + "description": "The federal earned income credit (Form 1040 line 27a) — us.or.eic pays 9% of it (12% when the youngest dependent is under 3). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / orFederalTaxLiabilityAdded value: +{ + "description": "The Oregon federal tax liability worksheet line 10 result: 1040 line 22 minus excess-APTC repayment (floor 0), plus Schedule 2 lines 8/16/17 income taxes, minus AOC + refundable adoption + Form 8962 line 24 PTC (floor 0 — the EITC and ACTC are NOT subtracted) — us.or.federal_tax_subtraction caps it at $8,500/$4,250-MFS with the Table 4 AGI phase-out. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / orKidsQualifyingIncomeAdded value: +{ + "description": "Oregon Kids Credit worksheet line 4 qualifying income: OR-40 line 15 income-after-subtractions + OR-ASC code 390/391/392 (tips/overtime/vehicle-interest) addbacks + the Part B loss-and-exclusion addback (losses beyond $20,000 and all excluded foreign earned income) — us.or.kids_credit phases out $26,550-$31,550. May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / orKidsUnder6Added value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Dependents age 5 or younger at the end of 2025 for the Oregon Kids Credit — $1,050 each, capped at 5 children by us.or.kids_credit (refundable; MFS denied; released-exemption children do not count)." +} - added
Input schema / properties / state / properties / orRegularExemptionsAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Oregon regular exemption count (OR-40 boxes 6a/6b 'regular' + line 6c dependents) — $256 each for 2025, $0 above the $100,000/$200,000 federal AGI cliff (us.or.exemption_credit)." +} - added
Input schema / properties / state / properties / orStdBoxesAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Count of Oregon standard-deduction boxes 17a-d (you/spouse turned 65 by January 1, 2026, and/or blind) — each adds $1,200 (single/HOH) or $1,000 (other statuses) (us.or.standard_deduction)." +} - added
Input schema / properties / state / properties / orYoungestUnder3Added value: +{ + "description": "The filer's youngest dependent was younger than 3 at the end of the tax year — raises the Oregon EIC percentage from 9% to 12% of the federal EITC (us.or.eic, Table 9).", + "type": "boolean" +}
- Changed
compute_return11 fields changed- added
Input schema / properties / state / properties / or2024TaxLiabilityAdded value: +{ + "description": "The 2024 total Oregon personal income tax liability: 2024 OR-40 line 24 tax-before-credits MINUS the Schedule OR-ASC code 802/815 credit for taxes paid to another state (Kicker worksheet Part A — NOT line 31, which is after the exemption and other credits) — us.or.kicker pays 9.863% of it on the 2025 return. Requires the 2024 return filed before the 2025 return. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / orAgiAdded value: +{ + "description": "Federal adjusted gross income (Form OR-40 line 7) — keys the federal tax subtraction Table 4 phase-out (us.or.federal_tax_subtraction) and the exemption credit cliffs (us.or.exemption_credit: $100,000 single/MFS, $200,000 others; disability exemptions $100,000 for all). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / orDependentEarnedIncomeAdded value: +{ + "description": "A dependent-claimed filer's earned income for Oregon's dependent standard-deduction limit (larger of $1,350 or earned + $450, capped at the Table 5 amount). Only used when isClaimedAsDependent. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / orDisabilityExemptionsAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Oregon severe-disability exemption boxes (6a/6b) plus children with a qualifying disability (line 6d) — $256 each, $0 above $100,000 federal AGI for EVERY filing status (us.or.exemption_credit)." +} - added
Input schema / properties / state / properties / orFederalEicAdded value: +{ + "description": "The federal earned income credit (Form 1040 line 27a) — us.or.eic pays 9% of it (12% when the youngest dependent is under 3). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / orFederalTaxLiabilityAdded value: +{ + "description": "The Oregon federal tax liability worksheet line 10 result: 1040 line 22 minus excess-APTC repayment (floor 0), plus Schedule 2 lines 8/16/17 income taxes, minus AOC + refundable adoption + Form 8962 line 24 PTC (floor 0 — the EITC and ACTC are NOT subtracted) — us.or.federal_tax_subtraction caps it at $8,500/$4,250-MFS with the Table 4 AGI phase-out. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / orKidsQualifyingIncomeAdded value: +{ + "description": "Oregon Kids Credit worksheet line 4 qualifying income: OR-40 line 15 income-after-subtractions + OR-ASC code 390/391/392 (tips/overtime/vehicle-interest) addbacks + the Part B loss-and-exclusion addback (losses beyond $20,000 and all excluded foreign earned income) — us.or.kids_credit phases out $26,550-$31,550. May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / orKidsUnder6Added value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Dependents age 5 or younger at the end of 2025 for the Oregon Kids Credit — $1,050 each, capped at 5 children by us.or.kids_credit (refundable; MFS denied; released-exemption children do not count)." +} - added
Input schema / properties / state / properties / orRegularExemptionsAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Oregon regular exemption count (OR-40 boxes 6a/6b 'regular' + line 6c dependents) — $256 each for 2025, $0 above the $100,000/$200,000 federal AGI cliff (us.or.exemption_credit)." +} - added
Input schema / properties / state / properties / orStdBoxesAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Count of Oregon standard-deduction boxes 17a-d (you/spouse turned 65 by January 1, 2026, and/or blind) — each adds $1,200 (single/HOH) or $1,000 (other statuses) (us.or.standard_deduction)." +} - added
Input schema / properties / state / properties / orYoungestUnder3Added value: +{ + "description": "The filer's youngest dependent was younger than 3 at the end of the tax year — raises the Oregon EIC percentage from 9% to 12% of the federal EITC (us.or.eic, Table 9).", + "type": "boolean" +}
- Changed
compute_state_return36 fields changed- changed
Input schema / properties / federalAGI / descriptionPrevious value: -"federal Form 1040 line 11 (from compute_return, verbatim). REQUIRED for il/va/ca/ny — the composer refuses without it. NOT used by PA (class-based: pass the pa* class fields instead)."New value: +"federal Form 1040 line 11 (from compute_return, verbatim). REQUIRED for il/va/ca/ny/or — the composer refuses without it. NOT used by PA (class-based: pass the pa* class fields instead)." - changed
Input schema / properties / jurisdiction / enumPrevious value: -[ - "il", - "va", - "ca", - "ny", - "pa", - "nj", - "oh", - "nc", - "ga", - "md", - "mo", - "wi", - "mn", - "sc", - "al" -]New value: +[ + "il", + "va", + "ca", + "ny", + "pa", + "nj", + "oh", + "nc", + "ga", + "md", + "mo", + "wi", + "mn", + "sc", + "al", + "or" +] - added
Input schema / properties / or2024TaxLiabilityAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the filer's 2024 total Oregon personal income tax liability (after the other-state credit, before all other credits/payments — 2024 OR-40 line 24 tax-before-credits MINUS the Schedule OR-ASC code 802/815 credit for taxes paid to another state, per Table 8 / Kicker worksheet Part A) — the composer computes the 9.863% kicker (us.or.kicker). Requires the 2024 return filed before the 2025 return. Prorate by 2024 Oregon-AGI share if the filing status changed (worksheet Parts B/C)." +} - added
Input schema / properties / or529DepositsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OR-40 line 51: Oregon 529 deposits from Schedule OR-529 (reduce the refund)" +} - added
Input schema / properties / orAdditionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OR-40 line 8: Schedule OR-ASC line A5 additions (non-Oregon municipal interest, federal-state depreciation differences, 529 recapture)" +} - added
Input schema / properties / orAppliedToNextYearAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OR-40 line 48: refund applied to 2026 estimated tax" +} - added
Input schema / properties / orCarryforwardCreditsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OR-40 line 30: Schedule OR-ASC line E9 carryforward credits used this year (capped at the remaining tax by the composer)" +} - added
Input schema / properties / orCharitableCheckoffsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OR-40 line 49: Schedule OR-DONATE charitable checkoffs (reduce the refund)" +} - added
Input schema / properties / orCreditRecapturesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OR-40 line 22: tax recaptures from Schedule OR-ASC line C5" +} - added
Input schema / properties / orDependentEarnedIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "dependent-claimed filer's earned income — the standard deduction is limited to max($1,350, earned + $450), capped at the Table 5 amount" +} - added
Input schema / properties / orDisabilityExemptionsAdded value: +{ + "description": "severe-disability boxes (6a/6b) + children with a qualifying disability (6d) — $256 each, $0 cliff above $100,000 federal AGI for EVERY filing status", + "type": "integer" +} - added
Input schema / properties / orExcessAptcRepaymentAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "excess advance premium tax credit repayment (1040 Schedule 2 line 1a) — SUBTRACTED in the worksheet (floor 0)" +} - added
Input schema / properties / orFederal1040Line22Added value: +{ + "$ref": "#/properties/federalAGI", + "description": "federal Form 1040 LINE 22 (tax after nonrefundable credits) — the federal tax subtraction worksheet's line 1 (from compute_return, verbatim)" +} - added
Input schema / properties / orFederalAocAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "American Opportunity Credit (1040 line 29) — subtracted in the federal tax worksheet" +} - added
Input schema / properties / orFederalOtherIncomeTaxesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "other INCOME taxes from Schedule 2 lines 8, 16, 17 (income-tax recaptures only — never SE tax, SS/Medicare tip tax, household employment taxes, penalties, or excise)" +} - added
Input schema / properties / orFederalPtcAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "premium tax credit from Form 8962 LINE 24 (the full allowable credit regardless of advance payments) — subtracted. NOTE: the EITC and additional child tax credit are NOT subtracted." +} - added
Input schema / properties / orFederalRefundableAdoptionAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "refundable adoption credit (1040 line 30) — subtracted" +} - added
Input schema / properties / orFederalTaxLiabilityOverrideAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OVERRIDE for the worksheet line 10 result (amended federal returns, foreign income tax, 1040-NR, recapture situations — Publication OR-17 worksheets); the Table 4 AGI cap still applies via the oracle" +} - added
Input schema / properties / orInstallmentInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OR-40 line 21: interest on installment-sale deferred tax liability (9% annual rate for 2025)" +} - added
Input schema / properties / orInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OR-40 line 44: interest on UNDERPAYMENT OF ESTIMATED TAX from Form OR-10 (boxes 44a/44b) — late-payment interest goes in line 43 instead" +} - added
Input schema / properties / orItemizedDeductionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Schedule OR-A line 23 OREGON itemized deductions (Oregon's own computation — never the federal Schedule A total). The composer takes the larger of this and the standard deduction." +} - added
Input schema / properties / orKickerDonateAdded value: +{ + "description": "filer elects to donate the ENTIRE kicker to the State School Fund (irrevocable after the due date) — line 32 becomes $0 and box 55 is checked", + "type": "boolean" +} - added
Input schema / properties / orKidsLossAddbackAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Kids Credit worksheet Part B: federal losses + OR-ASC loss-subtraction codes beyond the $20,000 allowance, plus ALL excluded foreign earned income — added back to qualifying income" +} - added
Input schema / properties / orKidsObbbaAddbackAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Kids Credit worksheet line 2: tips/overtime/vehicle-interest subtractions claimed (OR-ASC codes 390/391/392) — ADDED BACK to qualifying income" +} - added
Input schema / properties / orKidsUnder6Added value: +{ + "description": "dependents age 5 or younger at the end of 2025 (max 5 count) — $1,050 each Oregon Kids Credit (us.or.kids_credit, refundable, MFS denied). A child claimed only via a RELEASED dependent exemption does not count.", + "type": "integer" +} - added
Input schema / properties / orPenaltyAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OR-40 line 43: penalty AND interest for filing or paying late (one combined printed line — 5% late-pay penalty, +20% over 3 months late, 100% for 3 consecutive unfiled years, plus the late-payment interest)" +} - added
Input schema / properties / orPoliticalContributionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "2025 cash contributions to qualified Oregon political parties/candidates/PACs — the composer caps at $50 ($100 joint) and denies above $75,000/$150,000 federal AGI" +} - added
Input schema / properties / orPoliticalPartyCheckoffAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OR-40 line 50: political party $3 checkoff from the refund" +} - added
Input schema / properties / orPtePaymentsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OR-40 line 36: estimated payments from Schedule OR-K-1 line 20 (PTE owner payments via Form OR-19)" +} - added
Input schema / properties / orRegularExemptionsAdded value: +{ + "description": "regular exemption count: 'yourself' + 'spouse' credit boxes (6a/6b) + dependents (6c) — $256 each, $0 cliff above $100,000 federal AGI (single/MFS) or $200,000 (others)", + "type": "integer" +} - added
Input schema / properties / orSpouseItemizesAdded value: +{ + "description": "MFS only: the other spouse itemizes — the Oregon standard deduction becomes $0", + "type": "boolean" +} - added
Input schema / properties / orStateRefundAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OR-40 line 12: OREGON state income tax refund from federal Schedule 1 line 1 (never other states' or local refunds)" +} - added
Input schema / properties / orStdBoxesAdded value: +{ + "description": "OR-40 boxes 17a-d: count of 65-or-older (born before January 2, 1961... turned 65 by January 1, 2026) and blind boxes for you/spouse — each adds $1,200 (single/HOH) or $1,000 (other statuses) to the standard deduction", + "type": "integer" +} - added
Input schema / properties / orSubtractionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OR-40 line 13: Schedule OR-ASC line B7 subtractions — including the OBBBA-conforming tips/overtime/passenger-vehicle-interest deductions (codes 390/391/392: Oregon lets you claim the same amounts as federal), US government interest, the federal pension percentage subtraction, OR-HOME first-time home buyer savings, tier 2 Railroad Retirement. Do NOT include Social Security (automatic via taxableSocialSecurity)." +} - added
Input schema / properties / orTaxMethodOverrideAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OR-40 line 20 alternate-method tax: farm income averaging (OR-FIA-40, box 20a), farm capital gain (Worksheet FCG, box 20b), or the IRREVOCABLE Oregon PTE reduced rate (OR-PTE-FY, box 20c) — agent-computed; wins over the table/chart tax" +} - added
Input schema / properties / orYoungestUnder3Added value: +{ + "description": "the youngest dependent was younger than 3 at year end — raises the Oregon EIC from 9% to 12% of the federal EITC (us.or.eic)", + "type": "boolean" +}
3 tool updates
- Changed
calculate_tax7 fields changed- added
Input schema / properties / state / properties / alAgiAdded value: +{ + "description": "Alabama adjusted gross income (Form 40 line 10) — keys the AGI-phased standard deduction chart (us.al.standard_deduction) and the dependent exemption tiers (us.al.dependent_exemption: $1,000 to $50,000, $500 to $100,000, $300 above). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / alDependentsAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Alabama dependent count (Form 40 line 14 / Schedule DS) under Alabama's OWN relationship-and-support definition (§ 40-18-19 list + over-50% support; NOT federal § 152) — us.al.dependent_exemption pays $1,000/$500/$300 each by Alabama AGI." +} - added
Input schema / properties / state / properties / alFederalRefundableCreditsAdded value: +{ + "description": "The Alabama line 12 worksheet's refundable-credit subtraction: federal EIC (1040 line 27a) + Additional CTC (line 28) + American Opportunity Credit (line 29) + refundable adoption credit (line 30) + Form 2439 credits (Schedule 3 Part II line 13a). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / alFederalTaxPlusNiitAdded value: +{ + "description": "Federal Form 1040 LINE 22 tax PLUS Form 8960 line 17 Net Investment Income Tax — the gross federal tax for Alabama's unlimited federal income tax deduction worksheet (us.al.federal_tax_deduction). NEVER the W-2 federal withholding. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / alIs65Added value: +{ + "description": "The person whose Alabama retirement exclusion is being computed was 65 or older — gates the $6,000 Schedule RS exclusion (us.al.retirement_exclusion). Still $6,000 for TY2026 (HB388's $12,000 increase DIED May 2025).", + "type": "boolean" +} - added
Input schema / properties / state / properties / alOvertimePremiumAdded value: +{ + "description": "One taxpayer's overtime PREMIUM (the amount above the base rate — W-2 Box 12 code TT) for the TY2026-2028 Alabama overtime premium deduction (us.al.overtime_premium_deduction, Act 2026-604, capped $1,000 per taxpayer). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / alTaxableRetirementAdded value: +{ + "description": "One person's OTHERWISE-TAXABLE Alabama retirement income (IRA/401(k)/SEP/Keogh/403(b) distributions after basis recovery — defined-benefit pensions, Social Security, military, and US/AL government retirement are fully exempt and never enter) for the Schedule RS 65+ exclusion (us.al.retirement_exclusion, up to $6,000). Per person. In dollars.", + "type": [ + "number", + "string" + ] +}
- Changed
compute_return7 fields changed- added
Input schema / properties / state / properties / alAgiAdded value: +{ + "description": "Alabama adjusted gross income (Form 40 line 10) — keys the AGI-phased standard deduction chart (us.al.standard_deduction) and the dependent exemption tiers (us.al.dependent_exemption: $1,000 to $50,000, $500 to $100,000, $300 above). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / alDependentsAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Alabama dependent count (Form 40 line 14 / Schedule DS) under Alabama's OWN relationship-and-support definition (§ 40-18-19 list + over-50% support; NOT federal § 152) — us.al.dependent_exemption pays $1,000/$500/$300 each by Alabama AGI." +} - added
Input schema / properties / state / properties / alFederalRefundableCreditsAdded value: +{ + "description": "The Alabama line 12 worksheet's refundable-credit subtraction: federal EIC (1040 line 27a) + Additional CTC (line 28) + American Opportunity Credit (line 29) + refundable adoption credit (line 30) + Form 2439 credits (Schedule 3 Part II line 13a). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / alFederalTaxPlusNiitAdded value: +{ + "description": "Federal Form 1040 LINE 22 tax PLUS Form 8960 line 17 Net Investment Income Tax — the gross federal tax for Alabama's unlimited federal income tax deduction worksheet (us.al.federal_tax_deduction). NEVER the W-2 federal withholding. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / alIs65Added value: +{ + "description": "The person whose Alabama retirement exclusion is being computed was 65 or older — gates the $6,000 Schedule RS exclusion (us.al.retirement_exclusion). Still $6,000 for TY2026 (HB388's $12,000 increase DIED May 2025).", + "type": "boolean" +} - added
Input schema / properties / state / properties / alOvertimePremiumAdded value: +{ + "description": "One taxpayer's overtime PREMIUM (the amount above the base rate — W-2 Box 12 code TT) for the TY2026-2028 Alabama overtime premium deduction (us.al.overtime_premium_deduction, Act 2026-604, capped $1,000 per taxpayer). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / alTaxableRetirementAdded value: +{ + "description": "One person's OTHERWISE-TAXABLE Alabama retirement income (IRA/401(k)/SEP/Keogh/403(b) distributions after basis recovery — defined-benefit pensions, Social Security, military, and US/AL government retirement are fully exempt and never enter) for the Schedule RS 65+ exclusion (us.al.retirement_exclusion, up to $6,000). Per person. In dollars.", + "type": [ + "number", + "string" + ] +}
- Changed
compute_state_return20 fields changed- added
Input schema / properties / alAdjustmentsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 40 line 9 / Part II total (per-spouse IRA deduction, Keogh/SEP, early-withdrawal penalty, alimony paid, adoption expenses, MOVING EXPENSES (Alabama kept them), SE health insurance, College Counts 529/PACT, small-employer health premiums, wind/flood retrofit, catastrophe savings, HSA, First/Second-Chance Home Buyer, firefighter insurance, ABLE)" +} - added
Input schema / properties / alAppliedToNextYearAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 40 line 33: overpayment applied to 2026 estimated tax" +} - added
Input schema / properties / alAtpOtherTaxesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Schedule ATP Part I taxes OTHER than the use tax (which uses the shared useTax input): catastrophe-savings recapture (+2.5%), etc." +} - added
Input schema / properties / alCampaignCheckoffAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 40 line 20: $1/$2 Alabama Democratic/Republican party checkoffs — these ADD to the tax due (not fund-neutral like the federal checkoff)" +} - added
Input schema / properties / alDependentsAdded value: +{ + "description": "Form 40 line 14 dependent count — Alabama's OWN relationship list (§ 40-18-19: child/stepchild/parent/grandparent/sibling/in-laws/blood uncle-aunt-nephew-niece with over-50% support; NOT federal § 152) — $1,000/$500/$300 each by AL AGI (us.al.dependent_exemption); falls back to the shared dependents input", + "type": "integer" +} - added
Input schema / properties / alDonationsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 40 line 34: Schedule DC donation check-offs total (reduces the refund)" +} - added
Input schema / properties / alFederalRefundableCreditsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the line 12 worksheet's refundable-credit subtraction: 1040 line 27a EIC + line 28 ACTC + line 29 AOC + line 30 refundable adoption + Schedule 3 Part II line 13a Form 2439 credits" +} - added
Input schema / properties / alFederalTaxDeductionOverrideAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OVERRIDE for Form 40 line 12: the RATIOED federal tax for joint-federal/separate-Alabama returns (by each spouse's FAGI share) or part-year residents (AL-AGI/FAGI ratio) — wins over the composer's oracle computation" +} - added
Input schema / properties / alFederalTaxPlusNiitAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "federal Form 1040 LINE 22 tax PLUS Form 8960 line 17 NIIT — the line 12 worksheet's gross federal tax (from compute_return, verbatim; NEVER the W-2 federal withholding)" +} - added
Input schema / properties / alInterestDividendsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 40 line 6: interest and dividend income (Schedule B attached if over $1,500)" +} - added
Input schema / properties / alIs65SpouseAdded value: +{ + "description": "spouse was 65 or older — enables their own $6,000 exclusion", + "type": "boolean" +} - added
Input schema / properties / alIs65YouAdded value: +{ + "description": "primary taxpayer was 65 or older — enables their $6,000 retirement exclusion (NOTE: still $6,000 for 2026; the reported $12,000 increase was HB388, which died May 2025)", + "type": "boolean" +} - added
Input schema / properties / alItemizedDeductionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Alabama Schedule A total — differs from federal: FICA/Medicare/SE taxes ARE deductible, medical floor is 4% of AGI, NO federal income tax here (it's line 12), NEW 2025 vehicle-loan interest ≤$10,000 phased out $200 per $1,000 ceil-step of AGI over $100,000/$200,000-MFJ. The composer takes the larger of this or the AGI-phased standard deduction." +} - added
Input schema / properties / alOtherIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 40 Part I lines 1-3 and 5-7 total EXCLUDING retirement (alimony received, business income/loss, gains — the 1/1/2025+ precious-metal-bullion gain is EXEMPT, rents/royalties/partnerships, farm; negative allowed). Retirement goes in the alTaxableRetirement* fields for the Schedule RS exclusion." +} - added
Input schema / properties / alPenaltiesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 40 line 31: Schedule ATP Part II penalties (estimated-tax penalty Form 2210AL etc.) — added to an amount owed, or SUBTRACTED from the refund per the printed line 35 formula" +} - added
Input schema / properties / alScheduleCpPaymentsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 40 line 26: payments from Schedule CP, Section B line 1 (composite payments)" +} - added
Input schema / properties / alTaxableRetirementSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "spouse's otherwise-taxable retirement income (Schedule RS Part III)" +} - added
Input schema / properties / alTaxableRetirementYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "primary taxpayer's OTHERWISE-TAXABLE retirement income (IRA/401(k)/SEP/Keogh/403(b) distributions after basis recovery) — defined-BENEFIT pensions, Social Security, Railroad Retirement, military, and US/AL government retirement are 100% EXEMPT and never entered. The composer applies the 65+ $6,000 Schedule RS exclusion (us.al.retirement_exclusion)." +} - added
Input schema / properties / alWagesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 40 line 5b: W-2 BOX 16 state wages from ALL states (Schedule W-2 col I+J; Alabama state wages often EXCEED federal Box 1 — deferrals are AL-taxable). Overtime earned Jan 1-Jun 30, 2025 is exempt and already EXCLUDED from Box 16 (W-2 Box 14 'EX OT WAGES'). Falls back to the shared wages input." +} - changed
Input schema / properties / jurisdiction / enumPrevious value: -[ - "il", - "va", - "ca", - "ny", - "pa", - "nj", - "oh", - "nc", - "ga", - "md", - "mo", - "wi", - "mn", - "sc" -]New value: +[ + "il", + "va", + "ca", + "ny", + "pa", + "nj", + "oh", + "nc", + "ga", + "md", + "mo", + "wi", + "mn", + "sc", + "al" +]
3 tool updates
- Changed
calculate_tax9 fields changed- added
Input schema / properties / state / properties / scAgiAdded value: +{ + "description": "Federal adjusted gross income for the TY2026 South Carolina Income Adjusted Deduction phase-out (us.sc.income_adjusted_deduction: reduced by deduction x excess-over-$40,000/$60,000/$80,000 divided by $55,000/$82,500/$110,000, the reduction floored to $10s; H.4216). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / scCareChildrenAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Count of qualifying children/dependents for the South Carolina Child and Dependent Care Credit — 2 or more raises the us.sc.cdcc cap from $210 to $420." +} - added
Input schema / properties / state / properties / scCareExpensesAdded value: +{ + "description": "Federal Form 2441 child and dependent care EXPENSES (the expense amount, not the federal credit) — us.sc.cdcc pays 7% of it, capped $210/$420 (denied to married filing separately). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / scDependentsAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "South Carolina dependent count for the exemption being computed (us.sc.dependent_exemption, $4,930 each for 2025): pass the FULL federal dependent count for the SC1040 line w exemption, or the under-age-6 count for the additional line t deduction (evaluate the target once per line)." +} - added
Input schema / properties / state / properties / scIs65Added value: +{ + "description": "The person whose South Carolina retirement deduction is being computed was 65 or older by December 31 — raises the us.sc.retirement_deduction cap from $3,000 to $10,000 (and gates the separate $15,000 age-65 deduction).", + "type": "boolean" +} - added
Input schema / properties / state / properties / scLowerQualifiedEarnedIncomeAdded value: +{ + "description": "The LESSER-earning spouse's South Carolina qualified earned income per the Two Wage Earner Credit worksheet (SC earned income minus the federal adjustments attributable to it) — us.sc.two_wage_earner_credit pays 0.7% of it capped at $50,000 (max $350; married filing jointly only). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / scMilitaryRetirementDeductionAdded value: +{ + "description": "The SAME person's military retirement deduction (SC1040 line p-4/p-5, 100% since TY2022) — the printed worksheet REDUCES the us.sc.retirement_deduction CAP ($3,000/$10,000) by this amount before limiting to qualified retirement income (instructions Example 5). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / scQualifiedRetirementIncomeAdded value: +{ + "description": "One person's qualified retirement income for the South Carolina retirement deduction (401(k)/403(b)/457, IRA, Keogh — EXCLUDING military retirement, which is 100% deducted separately and reduces this deduction) — us.sc.retirement_deduction caps it at $3,000 (under 65) / $10,000 (65+). Per person; evaluate each spouse separately. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / scRetirementDeductionsClaimedAdded value: +{ + "description": "The SAME person's South Carolina retirement deduction (line p-1/p-2) PLUS military retirement deduction (line p-4/p-5) already claimed — us.sc.age65_deduction reduces the $15,000 age-65 deduction by this amount per the printed worksheet. In dollars.", + "type": [ + "number", + "string" + ] +}
- Changed
compute_return9 fields changed- added
Input schema / properties / state / properties / scAgiAdded value: +{ + "description": "Federal adjusted gross income for the TY2026 South Carolina Income Adjusted Deduction phase-out (us.sc.income_adjusted_deduction: reduced by deduction x excess-over-$40,000/$60,000/$80,000 divided by $55,000/$82,500/$110,000, the reduction floored to $10s; H.4216). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / scCareChildrenAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Count of qualifying children/dependents for the South Carolina Child and Dependent Care Credit — 2 or more raises the us.sc.cdcc cap from $210 to $420." +} - added
Input schema / properties / state / properties / scCareExpensesAdded value: +{ + "description": "Federal Form 2441 child and dependent care EXPENSES (the expense amount, not the federal credit) — us.sc.cdcc pays 7% of it, capped $210/$420 (denied to married filing separately). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / scDependentsAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "South Carolina dependent count for the exemption being computed (us.sc.dependent_exemption, $4,930 each for 2025): pass the FULL federal dependent count for the SC1040 line w exemption, or the under-age-6 count for the additional line t deduction (evaluate the target once per line)." +} - added
Input schema / properties / state / properties / scIs65Added value: +{ + "description": "The person whose South Carolina retirement deduction is being computed was 65 or older by December 31 — raises the us.sc.retirement_deduction cap from $3,000 to $10,000 (and gates the separate $15,000 age-65 deduction).", + "type": "boolean" +} - added
Input schema / properties / state / properties / scLowerQualifiedEarnedIncomeAdded value: +{ + "description": "The LESSER-earning spouse's South Carolina qualified earned income per the Two Wage Earner Credit worksheet (SC earned income minus the federal adjustments attributable to it) — us.sc.two_wage_earner_credit pays 0.7% of it capped at $50,000 (max $350; married filing jointly only). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / scMilitaryRetirementDeductionAdded value: +{ + "description": "The SAME person's military retirement deduction (SC1040 line p-4/p-5, 100% since TY2022) — the printed worksheet REDUCES the us.sc.retirement_deduction CAP ($3,000/$10,000) by this amount before limiting to qualified retirement income (instructions Example 5). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / scQualifiedRetirementIncomeAdded value: +{ + "description": "One person's qualified retirement income for the South Carolina retirement deduction (401(k)/403(b)/457, IRA, Keogh — EXCLUDING military retirement, which is 100% deducted separately and reduces this deduction) — us.sc.retirement_deduction caps it at $3,000 (under 65) / $10,000 (65+). Per person; evaluate each spouse separately. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / scRetirementDeductionsClaimedAdded value: +{ + "description": "The SAME person's South Carolina retirement deduction (line p-1/p-2) PLUS military retirement deduction (line p-4/p-5) already claimed — us.sc.age65_deduction reduces the $15,000 age-65 deduction by this amount per the printed worksheet. In dollars.", + "type": [ + "number", + "string" + ] +}
- Changed
compute_state_return28 fields changed- changed
Input schema / properties / jurisdiction / enumPrevious value: -[ - "il", - "va", - "ca", - "ny", - "pa", - "nj", - "oh", - "nc", - "ga", - "md", - "mo", - "wi", - "mn" -]New value: +[ + "il", + "va", + "ca", + "ny", + "pa", + "nj", + "oh", + "nc", + "ga", + "md", + "mo", + "wi", + "mn", + "sc" +] - added
Input schema / properties / scActiveTradeTaxAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "SC1040 line 8: I-335 flat 3% tax on active trade or business income (agent-computed; the electing income must also appear in scSubtractionsOther as the line l subtraction)" +} - added
Input schema / properties / scAdditionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "SC1040 line 2 total additions (lines a-e: the state income/sales tax deducted in federal itemized deductions MUST be added back on line a; out-of-state rental/business losses; non-SC municipal bond interest; expenses on reserve/subsistence income). CRITICAL for TY2025: SC REJECTED OBBBA conformity (IRC conformity frozen at December 31, 2024) — line e must ADD BACK every OBBBA deduction in federal taxable income (tips exclusion, overtime premium, the $6,000 senior deduction, car-loan interest, OBBBA business items)." +} - added
Input schema / properties / scAppliedToNextYearAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "SC1040 line 27: amount of the line 24 overpayment credited to 2026 estimated tax" +} - added
Input schema / properties / scCareChildrenAdded value: +{ + "description": "count of qualifying care children/dependents — 2+ raises the SC CDCC cap from $210 to $420", + "type": "integer" +} - added
Input schema / properties / scCareExpensesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "federal Form 2441 child/dependent care EXPENSES (not the credit) — SC line 11 pays 7%, max $210/$420 (us.sc.cdcc); DENIED to married filing separately" +} - added
Input schema / properties / scCatastropheTaxAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "SC1040 line 9: tax on excess Catastrophe Savings Account withdrawals" +} - added
Input schema / properties / scConsumerProtectionAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "SC line u: identity-theft/consumer protection services purchased after a security breach notification — the composer caps at $300 (individual) / $1,000 (joint or with dependents)" +} - added
Input schema / properties / scContributionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "SC1040 line 28: check-off contributions total (I-330 attached; reduces the refund)" +} - added
Input schema / properties / scDependentsAdded value: +{ + "description": "SC line w dependent count (must equal the federal return's) — $4,930 each for 2025 (us.sc.dependent_exemption); falls back to the shared dependents input", + "type": "integer" +} - added
Input schema / properties / scDependentsUnder6Added value: +{ + "description": "SC line t: dependents under age 6 on December 31 — the SAME $4,930 again each (on top of their line w exemption)", + "type": "integer" +} - added
Input schema / properties / scFederalTaxableIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "REQUIRED for SC: federal Form 1040 line 15 TAXABLE income (from compute_return, verbatim) — the SC1040 line 1 starting point (NOT federal AGI). A NEGATIVE amount is allowed: the composer enters $0 on line 1 and preserves the loss on subtraction line r per the printed instructions." +} - added
Input schema / properties / scI290PaymentsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "SC1040 line 19: nonresident real estate withholding paid on Form I-290" +} - added
Input schema / properties / scIs65SpouseAdded value: +{ + "description": "spouse was 65 or older by December 31 (lines p-2/q-2)", + "type": "boolean" +} - added
Input schema / properties / scIs65YouAdded value: +{ + "description": "primary taxpayer was 65 or older by December 31 — raises the retirement cap to $10,000 and enables the $15,000 age-65 deduction (line q-1, reduced by the retirement + military deductions claimed)", + "type": "boolean" +} - added
Input schema / properties / scLatePenaltiesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "SC1040 line 32: late filing/late payment penalties and interest" +} - added
Input schema / properties / scLowerQualifiedEarnedIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the LESSER-earning spouse's SC qualified earned income per the Two Wage Earner worksheet (earned income minus attributable federal adjustments) — line 12 credit = 0.7% capped at $50,000 base / $350 credit; MFJ only (us.sc.two_wage_earner_credit)" +} - added
Input schema / properties / scLumpSumTaxAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "SC1040 line 7: tax on lump-sum distribution (SC4972, agent-computed, attached)" +} - added
Input schema / properties / scMilitaryRetirementSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "spouse's military retirement income (line p-5)" +} - added
Input schema / properties / scMilitaryRetirementYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "primary taxpayer's military retirement income — 100% deductible since TY2022 (line p-4); per the printed worksheet it REDUCES the same person's retirement-deduction CAP and age-65 deduction (instructions Example 5: $16,000 military at 65+ leaves $0 on lines p-1 and q-1) — the composer handles the interplay" +} - added
Input schema / properties / scNetLtcgAfterLossesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "net LONG-TERM capital gain held over one year, AFTER netting ALL capital losses (short-term included — the printed example nets an ST loss against the LT gain first) — the composer takes the 44% deduction (line i)" +} - added
Input schema / properties / scOtherWithholdingAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "SC1040 line 20: other SC withholding from 1099s (W-2 amounts go in the shared stateWithholding for line 16)" +} - added
Input schema / properties / scRetirementIncomeSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "spouse's qualified retirement income for line p-2 (each spouse's own cap; joint returns)" +} - added
Input schema / properties / scRetirementIncomeYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "primary taxpayer's qualified retirement income (401(k)/403(b)/457, IRA, Keogh — EXCLUDING military retirement, which goes in scMilitaryRetirementYou) — the composer caps at $3,000 under 65 / $10,000 at 65+ (line p-1; us.sc.retirement_deduction)" +} - added
Input schema / properties / scSubsistenceDaysAdded value: +{ + "description": "SC line s: days as a full-time federal/state/local law enforcement officer, firefighter, or EMS worker — $16/day subsistence allowance", + "type": "integer" +} - added
Input schema / properties / scSubtractionsOtherAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "SC subtraction lines f/g/h/j/k/l/m/n/v total (state tax refund, total-and-permanent disability retirement, out-of-state non-personal-service income, volunteer firefighter/EMS/police $6,000 (2025), Future Scholar 529 (unlimited), ACTIVE TRADE OR BUSINESS income electing the I-335 3% flat tax (line l — must pair with scActiveTradeTax), US government interest, nontaxable Guard/Reserve pay, other) — EXCLUDING the composer-computed lines i/o/p/q/r/s/t/u/w" +} - added
Input schema / properties / scTuitionCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "SC1040 line 21: REFUNDABLE tuition tax credit (Form I-319: 50% of qualifying SC-institution tuition within the form's limits — agent-computed with disclosure, form attached)" +} - added
Input schema / properties / scUnderpaymentPenaltyAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "SC1040 line 33: underpayment of estimated tax penalty (SC2210 attached)" +}
3 tool updates
- Changed
calculate_tax7 fields changed- changed
Input schema / properties / state / descriptionPrevious value: -"state taxable income for the state tax targets (us.ca/us.va/us.il/us.ny/us.oh/us.nc/us.ga/us.md/us.mo/us.wi income_tax; parameters via lookup_tax_parameter)"New value: +"state taxable income for the state tax targets (us.ca/us.va/us.il/us.ny/us.oh/us.nc/us.ga/us.md/us.mo/us.wi/us.mn income_tax; parameters via lookup_tax_parameter)" - added
Input schema / properties / state / properties / mnAgiAdded value: +{ + "description": "Federal adjusted gross income (Minnesota Form M1 line 1) — keys the standard-deduction limitation (us.mn.standard_deduction: 3%/10% reduction over $238,950, 80% floor), the dependent-exemption phase-out (us.mn.exemptions), and the Social Security subtraction thresholds (us.mn.social_security_subtraction). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mnDependentEarnedIncomeAdded value: +{ + "description": "A dependent-claimed filer's earned income for the Minnesota dependent standard-deduction worksheet (deduction = lesser of the table amount or max($1,250, earned + $350)). Only used when isClaimedAsDependent. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mnDependentsAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Number of dependents claimed on Minnesota Schedule M1DQC — $5,200 each for 2025 (us.mn.exemptions, phased 2% per $2,500 ceil-step of AGI over the filing-status threshold)." +} - added
Input schema / properties / state / properties / mnNetInvestmentIncomeAdded value: +{ + "description": "Minnesota net investment income per Schedule NIIT (the federal Form 8960 concept minus class 2a agricultural-land gains) — us.mn.niit charges 1% of the amount over $1,000,000 (TY2024+, Minn. Stat. § 290.033). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mnStdBoxesAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Count of Minnesota standard-deduction boxes checked (you/spouse 65-or-older — born before January 2, 1961 — and/or blind): each adds $2,000 (single/HOH) or $1,550 (MFJ/QSS/MFS) to the 2025 base (us.mn.standard_deduction)." +} - added
Input schema / properties / state / properties / mnTaxableSsAdded value: +{ + "description": "Federally taxable Social Security benefits (Form 1040 line 6b) for the Minnesota Social Security subtraction (us.mn.social_security_subtraction — simplified method; compute the M1M alternative method separately and take the greater when AGI exceeds the full-subtraction threshold). In dollars.", + "type": [ + "number", + "string" + ] +}
- Changed
compute_return7 fields changed- changed
Input schema / properties / state / descriptionPrevious value: -"state taxable income for the state tax targets (us.ca/us.va/us.il/us.ny/us.oh/us.nc/us.ga/us.md/us.mo/us.wi income_tax; parameters via lookup_tax_parameter)"New value: +"state taxable income for the state tax targets (us.ca/us.va/us.il/us.ny/us.oh/us.nc/us.ga/us.md/us.mo/us.wi/us.mn income_tax; parameters via lookup_tax_parameter)" - added
Input schema / properties / state / properties / mnAgiAdded value: +{ + "description": "Federal adjusted gross income (Minnesota Form M1 line 1) — keys the standard-deduction limitation (us.mn.standard_deduction: 3%/10% reduction over $238,950, 80% floor), the dependent-exemption phase-out (us.mn.exemptions), and the Social Security subtraction thresholds (us.mn.social_security_subtraction). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mnDependentEarnedIncomeAdded value: +{ + "description": "A dependent-claimed filer's earned income for the Minnesota dependent standard-deduction worksheet (deduction = lesser of the table amount or max($1,250, earned + $350)). Only used when isClaimedAsDependent. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mnDependentsAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Number of dependents claimed on Minnesota Schedule M1DQC — $5,200 each for 2025 (us.mn.exemptions, phased 2% per $2,500 ceil-step of AGI over the filing-status threshold)." +} - added
Input schema / properties / state / properties / mnNetInvestmentIncomeAdded value: +{ + "description": "Minnesota net investment income per Schedule NIIT (the federal Form 8960 concept minus class 2a agricultural-land gains) — us.mn.niit charges 1% of the amount over $1,000,000 (TY2024+, Minn. Stat. § 290.033). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mnStdBoxesAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Count of Minnesota standard-deduction boxes checked (you/spouse 65-or-older — born before January 2, 1961 — and/or blind): each adds $2,000 (single/HOH) or $1,550 (MFJ/QSS/MFS) to the 2025 base (us.mn.standard_deduction)." +} - added
Input schema / properties / state / properties / mnTaxableSsAdded value: +{ + "description": "Federally taxable Social Security benefits (Form 1040 line 6b) for the Minnesota Social Security subtraction (us.mn.social_security_subtraction — simplified method; compute the M1M alternative method separately and take the greater when AGI exceeds the full-subtraction threshold). In dollars.", + "type": [ + "number", + "string" + ] +}
- Changed
compute_state_return19 fields changed- changed
Input schema / properties / jurisdiction / enumPrevious value: -[ - "il", - "va", - "ca", - "ny", - "pa", - "nj", - "oh", - "nc", - "ga", - "md", - "mo", - "wi" -]New value: +[ + "il", + "va", + "ca", + "ny", + "pa", + "nj", + "oh", + "nc", + "ga", + "md", + "mo", + "wi", + "mn" +] - added
Input schema / properties / mnAdditionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "M1 line 2: Schedule M1M line 10 + M1MB line 9 additions (non-MN municipal bond interest, federal bonus-depreciation/§ 179 addbacks, positive M1NC adjustments — Minnesota's IRC is frozen at May 1, 2023, so 2025 OBBBA items convert on Schedule M1NC)" +} - added
Input schema / properties / mnAdvanceCtcRepaymentAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "M1 line 14b: repayment of 2025 ADVANCE Child Tax Credit payments elected on the 2024 return (reconciliation, NEW for 2025)" +} - added
Input schema / properties / mnAmtAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "M1 line 11: Schedule M1MT alternative minimum tax (6.75% broadened base, agent-computed — REQUIRED whenever AMT preference items exist; disclose)" +} - added
Input schema / properties / mnAppliedToNextYearAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "M1 line 30: refund applied to 2026 estimated tax" +} - added
Input schema / properties / mnDependentEarnedIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "dependent-claimed filer's earned income for the dependent standard-deduction worksheet (lesser of the table amount or max($1,250, earned + $350))" +} - added
Input schema / properties / mnDependentsAdded value: +{ + "description": "dependents on Schedule M1DQC — $5,200 each (2025), phased 2% per $2,500 ceil-step of AGI over $358,550 MFJ/QSS, $239,050 single, $298,800 HOH, $179,275 MFS (gone once the excess passes $122,500/$61,250-MFS); $0 for dependent-claimed filers", + "type": "integer" +} - added
Input schema / properties / mnItemizedAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Schedule M1SA Minnesota itemized deductions AFTER M1SA's own 3%/10%/80% limitation — the composer takes the larger of this or the computed standard deduction (MFS: standard barred when the spouse itemizes; pass mnMfsSpouseItemizes)" +} - added
Input schema / properties / mnMfsSpouseItemizesAdded value: +{ + "description": "MFS only: the other spouse claims Minnesota itemized deductions — bars the standard deduction (the composer then requires mnItemized)", + "type": "boolean" +} - added
Input schema / properties / mnNetInvestmentIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Schedule NIIT Minnesota net investment income (federal 8960 concept minus class 2a agricultural-land gains) — the composer evaluates us.mn.niit (1% over $1,000,000) into line 14a" +} - added
Input schema / properties / mnOtherTaxes14aAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "M1 line 14a: M1HOME/M1529 recapture, M1LS lump-sum tax, and the Schedule NIIT amount if computed outside the composer" +} - added
Input schema / properties / mnPenaltyInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "M1 line 28: late-filing/late-payment penalty and interest (agent-computed per the instructions)" +} - added
Input schema / properties / mnRrTier1OffsetAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Tier 1 Railroad Retirement benefits already subtracted on M1M line 17 — the SS worksheet (steps 25-29) reduces the simplified-method subtraction by this amount (no double subtraction)" +} - added
Input schema / properties / mnSsAlternativeMethodAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the M1M Worksheet ALTERNATIVE-method Social Security subtraction (steps 9-28, agent-computed, NET of the Tier 1 RR offset) — the composer takes the GREATER of this and the oracle simplified method when AGI exceeds the full-subtraction threshold (2025 alternative maxes: $5,840 MFJ/QSS, $4,560 single/HOH, $2,920 MFS)" +} - added
Input schema / properties / mnStateRefundAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "M1 line 6: state income tax refund from federal Schedule 1 line 1 (its own subtraction line)" +} - added
Input schema / properties / mnStdBoxesAdded value: +{ + "description": "65-or-older (born before January 2, 1961) and blind boxes for you/spouse — each adds $2,000 (single/HOH) or $1,550 (married statuses) to the standard deduction", + "type": "integer" +} - added
Input schema / properties / mnSubtractionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "M1 line 7 subtractions (M1M line 40 + M1MB line 22) EXCLUDING the composer-computed Social Security subtraction: U.S. government interest, K-12 education expenses, charitable over $500 for non-itemizers (50% of the excess), bonus-depreciation recovery, M1R age-65+/disabled, M1QPEN public pension, military items, the new 2025 items (coerced debt, consumer enforcement, foreign service, SEIU stipends)" +} - added
Input schema / properties / mnUnderpaymentPenaltyAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "M1 line 27: Schedule M15 underpayment penalty" +} - added
Input schema / properties / mnWildlifeContributionAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "M1 line 18: Nongame Wildlife Fund contribution (reduces the refund)" +}
3 tool updates
- Changed
calculate_tax10 fields changed- changed
Input schema / properties / state / descriptionPrevious value: -"state taxable income for the state tax targets (us.ca/us.va/us.il/us.ny/us.oh/us.nc/us.ga/us.md/us.mo income_tax; parameters via lookup_tax_parameter)"New value: +"state taxable income for the state tax targets (us.ca/us.va/us.il/us.ny/us.oh/us.nc/us.ga/us.md/us.mo/us.wi income_tax; parameters via lookup_tax_parameter)" - added
Input schema / properties / state / properties / wiBothSpouses67Added value: +{ + "description": "BOTH spouses on a joint Wisconsin return were at least 67 on December 31 — raises the Act 15 retirement subtraction cap from $24,000 to $48,000 regardless of which spouse received the income.", + "type": "boolean" +} - added
Input schema / properties / state / properties / wiFederalEicForWiAdded value: +{ + "description": "The federal earned income credit AS COMPUTED UNDER WISCONSIN'S IRC (Schedule I Part III recomputation when Part I adjustments exist; otherwise Form 1040 line 27) — the us.wi.eic base. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / wiIncomeAdded value: +{ + "description": "Wisconsin income (Form 1 line 7 = federal AGI as adjusted by Schedule I, plus Schedule AD additions, minus Schedule SB subtractions) — drives the sliding standard deduction (us.wi.standard_deduction). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / wiLowerQualifiedEarnedIncomeAdded value: +{ + "description": "The LESSER-earning spouse's qualified earned income from Form 1 Schedule 2 line 5 (earned income minus the listed federal Schedule 1 adjustments and any Wisconsin disability exclusion) — us.wi.married_couple_credit takes 3% up to $480. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / wiPropertyTaxesPaidAdded value: +{ + "description": "2025 property taxes paid on the principal Wisconsin residence (Form 1 line 16b) — credited at 12% via the printed table; the combined 16a+16b credit caps at $300 ($150 MFS). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / wiQualifyingChildrenAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Number of federal-EIC qualifying children for the Wisconsin earned income credit (us.wi.eic: 1 → 4%, 2 → 11%, 3+ → 34% of the federal credit; zero children → no Wisconsin credit)." +} - added
Input schema / properties / state / properties / wiRentHeatIncludedAdded value: +{ + "description": "2025 rent paid on the principal Wisconsin residence where HEAT WAS INCLUDED in rent (Form 1 line 16a) — credited at 2.4% via the printed table's $100-row midpoints (us.wi.school_property_tax_credit). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / wiRentHeatNotIncludedAdded value: +{ + "description": "2025 rent paid where heat was NOT included (Form 1 line 16a) — credited at 3.0% via the printed table. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / wiRetirementIncome67Added value: +{ + "description": "Federally taxable qualified-plan/IRA retirement income of the 67+ individual(s) NOT already subtracted on Schedule SB lines 12-15 — the NEW 2025 Act 15 subtraction (us.wi.retirement_subtraction_67, $24,000/$48,000 cap). CAUTION: claiming it forfeits every Form 1 credit (lines 13-20, 30-35, Schedule CR). In dollars.", + "type": [ + "number", + "string" + ] +}
- Changed
compute_return10 fields changed- changed
Input schema / properties / state / descriptionPrevious value: -"state taxable income for the state tax targets (us.ca/us.va/us.il/us.ny/us.oh/us.nc/us.ga/us.md/us.mo income_tax; parameters via lookup_tax_parameter)"New value: +"state taxable income for the state tax targets (us.ca/us.va/us.il/us.ny/us.oh/us.nc/us.ga/us.md/us.mo/us.wi income_tax; parameters via lookup_tax_parameter)" - added
Input schema / properties / state / properties / wiBothSpouses67Added value: +{ + "description": "BOTH spouses on a joint Wisconsin return were at least 67 on December 31 — raises the Act 15 retirement subtraction cap from $24,000 to $48,000 regardless of which spouse received the income.", + "type": "boolean" +} - added
Input schema / properties / state / properties / wiFederalEicForWiAdded value: +{ + "description": "The federal earned income credit AS COMPUTED UNDER WISCONSIN'S IRC (Schedule I Part III recomputation when Part I adjustments exist; otherwise Form 1040 line 27) — the us.wi.eic base. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / wiIncomeAdded value: +{ + "description": "Wisconsin income (Form 1 line 7 = federal AGI as adjusted by Schedule I, plus Schedule AD additions, minus Schedule SB subtractions) — drives the sliding standard deduction (us.wi.standard_deduction). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / wiLowerQualifiedEarnedIncomeAdded value: +{ + "description": "The LESSER-earning spouse's qualified earned income from Form 1 Schedule 2 line 5 (earned income minus the listed federal Schedule 1 adjustments and any Wisconsin disability exclusion) — us.wi.married_couple_credit takes 3% up to $480. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / wiPropertyTaxesPaidAdded value: +{ + "description": "2025 property taxes paid on the principal Wisconsin residence (Form 1 line 16b) — credited at 12% via the printed table; the combined 16a+16b credit caps at $300 ($150 MFS). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / wiQualifyingChildrenAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Number of federal-EIC qualifying children for the Wisconsin earned income credit (us.wi.eic: 1 → 4%, 2 → 11%, 3+ → 34% of the federal credit; zero children → no Wisconsin credit)." +} - added
Input schema / properties / state / properties / wiRentHeatIncludedAdded value: +{ + "description": "2025 rent paid on the principal Wisconsin residence where HEAT WAS INCLUDED in rent (Form 1 line 16a) — credited at 2.4% via the printed table's $100-row midpoints (us.wi.school_property_tax_credit). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / wiRentHeatNotIncludedAdded value: +{ + "description": "2025 rent paid where heat was NOT included (Form 1 line 16a) — credited at 3.0% via the printed table. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / wiRetirementIncome67Added value: +{ + "description": "Federally taxable qualified-plan/IRA retirement income of the 67+ individual(s) NOT already subtracted on Schedule SB lines 12-15 — the NEW 2025 Act 15 subtraction (us.wi.retirement_subtraction_67, $24,000/$48,000 cap). CAUTION: claiming it forfeits every Form 1 credit (lines 13-20, 30-35, Schedule CR). In dollars.", + "type": [ + "number", + "string" + ] +}
- Changed
compute_state_return27 fields changed- changed
Input schema / properties / jurisdiction / enumPrevious value: -[ - "il", - "va", - "ca", - "ny", - "pa", - "nj", - "oh", - "nc", - "ga", - "md", - "mo" -]New value: +[ + "il", + "va", + "ca", + "ny", + "pa", + "nj", + "oh", + "nc", + "ga", + "md", + "mo", + "wi" +] - added
Input schema / properties / wi2441CreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Schedule WI-2441 line 14 — Wisconsin's additional child and dependent care credit (its own recomputation; transcribe the schedule's result)" +} - added
Input schema / properties / wiAge65BoxesAdded value: +{ + "description": "count of 65-or-older boxes (taxpayer/spouse) — $250 each on line 10b (Wisconsin has no blindness exemption; the $700 line 10a exemptions come from the shared `exemptions` count)", + "type": "integer" +} - added
Input schema / properties / wiAppliedToNextYearAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 1 line 42: overpayment applied to 2026 estimated tax" +} - added
Input schema / properties / wiBlindWorkerExpensesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "blind worker transportation services qualifying expenses (Form 1 line 15 credits 50%)" +} - added
Input schema / properties / wiBothSpouses67Added value: +{ + "description": "both spouses 67+ on December 31 (joint returns) — raises the SB-16 cap to $48,000", + "type": "boolean" +} - added
Input schema / properties / wiCapitalGainSubtractionAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Schedule SB line 5 capital gain/loss subtraction from Schedule WD (30% net long-term gain exclusion, 60% farm assets; capital loss limit $3,000/$1,500-MFS since TY2023; simple mutual-fund/REIT distributions may take 30% directly)" +} - added
Input schema / properties / wiDependentEarnedIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "a dependent-claimed filer's earned income for the Standard Deduction Worksheet for Dependents (deduction = smaller of the table amount or max($1,350, earned + $450))" +} - added
Input schema / properties / wiDonationsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 1 line 24: Schedule 3 fund donations total" +} - added
Input schema / properties / wiEicQualifyingChildrenAdded value: +{ + "description": "federal-EIC qualifying children — Wisconsin EIC = 4%/11%/34% of the federal credit for 1/2/3+ children (NO childless credit; MFS ineligible; full-year residents only)", + "type": "integer" +} - added
Input schema / properties / wiFarmlandCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 1 line 31: farmland preservation credit (Schedules FC/FC-A, transcribed)" +} - added
Input schema / properties / wiFederalEicForWiAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the federal EIC AS COMPUTED UNDER WISCONSIN'S IRC (Schedule I Part III recomputation when Part I adjustments exist) — defaults to the shared federalEITC when omitted" +} - added
Input schema / properties / wiFederalRetirementPenaltiesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the FEDERAL penalties on IRAs/retirement plans/MSAs etc. — Wisconsin charges 33% of them on line 25 ('x .33' printed)" +} - added
Input schema / properties / wiHomesteadCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 1 line 33: homestead credit (Schedule H/H-EZ circuit breaker, agent-computed, refundable)" +} - added
Input schema / properties / wiItemizedComponentsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 1 Schedule 1 lines 1-4 total: federal Schedule A medical + interest (EXCLUDING out-of-state second homes, boat residences, and U.S.-security carrying interest) + charity + casualty — the composer takes 5% of the excess over the line 8 standard deduction" +} - added
Input schema / properties / wiLowerQualifiedEarnedIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the LESSER-earning spouse's Schedule 2 line 5 qualified earned income (earned income minus the listed federal Schedule 1 adjustments) — married couple credit = 3% up to $480 (joint returns, both spouses employed)" +} - added
Input schema / properties / wiMarriedHohAdded value: +{ + "description": "the Form 1 'Head of household, married' checkbox applies — shares the MFS $150 school property tax credit cap", + "type": "boolean" +} - added
Input schema / properties / wiOtherPenaltiesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 1 line 26 other penalties (see instructions p.25)" +} - added
Input schema / properties / wiOtherStateCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 1 line 20: net income tax paid to another state (Schedule OS, agent-computed)" +} - added
Input schema / properties / wiPropertyTaxesPaidAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "property taxes on the principal residence (line 16b; 12% via the printed $25-wide-row table — a different granularity from the $100-row rent tables) — combined 16a+16b credit caps at $300 ($150 MFS or married-HOH); not claimable with the line 34 veterans credit" +} - added
Input schema / properties / wiRentHeatIncludedAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "2025 rent on the principal Wisconsin residence with heat INCLUDED (line 16a; 2.4% via the printed table's $100-row midpoints)" +} - added
Input schema / properties / wiRentHeatNotIncludedAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "rent with heat NOT included (line 16a; 3.0% table)" +} - added
Input schema / properties / wiRepaymentCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 1 line 32: repayment of income previously taxed credit" +} - added
Input schema / properties / wiRetirement67IncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "qualified-plan/IRA retirement income of the 67+ individual(s) for the NEW 2025 Act 15 subtraction (SB line 16, $24,000/$48,000 cap) — CAUTION: claiming it FORFEITS every credit on lines 13-20, 30-35, and Schedule CR (the composer enforces this); compare both ways before passing" +} - added
Input schema / properties / wiScheduleIAdjustmentsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 1 line 2: Schedule I net adjustment (may be negative) converting federal AGI to Wisconsin's IRC — Wisconsin conforms to the Code as of December 31, 2022, so post-2022 federal changes (incl. the 2025 OBBBA) need Schedule I conversion per its instructions" +} - added
Input schema / properties / wiScheduleUInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 1 line 44: Schedule U underpayment interest" +} - added
Input schema / properties / wiVeteransCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 1 line 34: eligible veterans and surviving spouses property tax credit" +}
3 tool updates
- Changed
calculate_tax7 fields changed- changed
Input schema / properties / state / descriptionPrevious value: -"state taxable income for the state tax targets (us.ca/us.va/us.il/us.ny/us.oh/us.nc/us.ga/us.md income_tax; parameters via lookup_tax_parameter)"New value: +"state taxable income for the state tax targets (us.ca/us.va/us.il/us.ny/us.oh/us.nc/us.ga/us.md/us.mo income_tax; parameters via lookup_tax_parameter)" - added
Input schema / properties / state / properties / moBusinessIncomeAdded value: +{ + "description": "ONE spouse's net business income per the MO-1040 p.16 worksheet (Schedule C/E/F + pass-through business income, losses netted — enter 0 if a combined net loss) — us.mo.business_income_deduction subtracts 20% (R.S.Mo. § 143.022, MO-A Part 1 line 17). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / moFederalEicAdded value: +{ + "description": "Federal earned income credit (Form 1040 line 27a) for the Missouri Working Family Tax Credit (us.mo.wftc = 20% for 2025, nonrefundable; MFS and dependent-claimed filers denied; the printed MO-WFTC question 3 gates investment income at $4,400 — see the rule's form-vs-statute disclosure). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / moFederalTaxTotalAdded value: +{ + "description": "MO-1040 line 11 total federal tax: line 9 (federal 1040 line 22 minus lines 27a/29, minus Schedule 2 Part 1 line 3, minus Schedule 3 Part 2 line 9 — never withholding) plus line 10 other federal tax (Schedule 2 Part 1 line 3; Part 2 lines 8, 14, 15; recapture in 21; Schedule 3 Part 1 line 1). Feeds us.mo.federal_tax_deduction. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / moMagiAdded value: +{ + "description": "COMBINED Missouri adjusted gross income (MO-1040 line 6 = both spouses' line 5 amounts) — keys the federal tax deduction percentage tiers (us.mo.federal_tax_deduction: 35/25/15/5/0%). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / moPublicPensionAdded value: +{ + "description": "ONE spouse's taxable pension from PUBLIC sources (any federal/state/local government pension, federal 1040 line 5b share) for the Missouri public pension exemption (us.mo.public_pension_exemption, MO-A Part 3 Section A: capped at $47,633 for 2025, reduced by that spouse's SS/SSD exemption). Military retirement is a separate 100% subtraction — exclude it here. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / moSsSameSpouseExemptionAdded value: +{ + "description": "The SAME spouse's Social Security / SS Disability exemption from MO-A Part 3 Section C (their taxable SS, exempted 100% when 62+ by December 31 or on SSD) — displaces the public pension exemption dollar-for-dollar (Section A line 3). In dollars.", + "type": [ + "number", + "string" + ] +}
- Changed
compute_return7 fields changed- changed
Input schema / properties / state / descriptionPrevious value: -"state taxable income for the state tax targets (us.ca/us.va/us.il/us.ny/us.oh/us.nc/us.ga/us.md income_tax; parameters via lookup_tax_parameter)"New value: +"state taxable income for the state tax targets (us.ca/us.va/us.il/us.ny/us.oh/us.nc/us.ga/us.md/us.mo income_tax; parameters via lookup_tax_parameter)" - added
Input schema / properties / state / properties / moBusinessIncomeAdded value: +{ + "description": "ONE spouse's net business income per the MO-1040 p.16 worksheet (Schedule C/E/F + pass-through business income, losses netted — enter 0 if a combined net loss) — us.mo.business_income_deduction subtracts 20% (R.S.Mo. § 143.022, MO-A Part 1 line 17). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / moFederalEicAdded value: +{ + "description": "Federal earned income credit (Form 1040 line 27a) for the Missouri Working Family Tax Credit (us.mo.wftc = 20% for 2025, nonrefundable; MFS and dependent-claimed filers denied; the printed MO-WFTC question 3 gates investment income at $4,400 — see the rule's form-vs-statute disclosure). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / moFederalTaxTotalAdded value: +{ + "description": "MO-1040 line 11 total federal tax: line 9 (federal 1040 line 22 minus lines 27a/29, minus Schedule 2 Part 1 line 3, minus Schedule 3 Part 2 line 9 — never withholding) plus line 10 other federal tax (Schedule 2 Part 1 line 3; Part 2 lines 8, 14, 15; recapture in 21; Schedule 3 Part 1 line 1). Feeds us.mo.federal_tax_deduction. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / moMagiAdded value: +{ + "description": "COMBINED Missouri adjusted gross income (MO-1040 line 6 = both spouses' line 5 amounts) — keys the federal tax deduction percentage tiers (us.mo.federal_tax_deduction: 35/25/15/5/0%). May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / moPublicPensionAdded value: +{ + "description": "ONE spouse's taxable pension from PUBLIC sources (any federal/state/local government pension, federal 1040 line 5b share) for the Missouri public pension exemption (us.mo.public_pension_exemption, MO-A Part 3 Section A: capped at $47,633 for 2025, reduced by that spouse's SS/SSD exemption). Military retirement is a separate 100% subtraction — exclude it here. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / moSsSameSpouseExemptionAdded value: +{ + "description": "The SAME spouse's Social Security / SS Disability exemption from MO-A Part 3 Section C (their taxable SS, exempted 100% when 62+ by December 31 or on SSD) — displaces the public pension exemption dollar-for-dollar (Section A line 3). In dollars.", + "type": [ + "number", + "string" + ] +}
- Changed
compute_state_return43 fields changed- changed
Input schema / properties / jurisdiction / enumPrevious value: -[ - "il", - "va", - "ca", - "ny", - "pa", - "nj", - "oh", - "nc", - "ga", - "md" -]New value: +[ + "il", + "va", + "ca", + "ny", + "pa", + "nj", + "oh", + "nc", + "ga", + "md", + "mo" +] - added
Input schema / properties / mo529DepositAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 52: refund deposited to a Missouri 529 (MOST) account (minimum $25, Form 5632)" +} - added
Input schema / properties / moActiveDutyMilitaryAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 18: active duty military income deduction (100%, incl. annual training and — NEW 2025 — National Guard/reserve signing bonuses)" +} - added
Input schema / properties / moAdditionsSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-A Part 1 line 7S: the spouse's additions" +} - added
Input schema / properties / moAdditionsYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-A Part 1 line 7Y: the primary's additions (non-Missouri state/local bond interest, PTE/NOL addbacks, nonqualified 529/ABLE distributions, food pantry, nonresident property tax)" +} - added
Input schema / properties / moAppliedToNextYearAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 50: overpayment applied to 2026 estimated tax" +} - added
Input schema / properties / moBusinessIncomeSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the spouse's net business income for the 20% deduction (17S)" +} - added
Input schema / properties / moBusinessIncomeYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the primary's MISSOURI-SOURCE net business income per the p.16 worksheet (Schedule C line 31 + Schedule E line 32 + Schedule F/4835 profits, losses netted, MINUS agricultural disaster relief payments already on MO-A line 16; $0 if net loss) — the composer takes the 20% § 143.022 deduction (MO-A line 17Y)" +} - added
Input schema / properties / moCapitalGainSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the spouse's share of federal capital gains for the 100% subtraction" +} - added
Input schema / properties / moCapitalGainYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the primary's share of federally reported capital gains (Form 1040 line 7a) — the composer subtracts 100% (MO-A line 18, H.B. 594, NEW for TY2025; a negative amount enters as $0)" +} - added
Input schema / properties / moEnterpriseZoneSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 28S" +} - added
Input schema / properties / moEnterpriseZoneYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 28Y: enterprise zone / rural empowerment zone income modification" +} - added
Input schema / properties / moFagiSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 1S: the spouse's share of federal AGI (combined returns). 1Y + 1S must equal the federal AGI. A NEGATIVE share triggers the 12 CSR 10-2.710 zeroing the composer applies (negative spouse $0, other spouse the netted joint FAGI; both $0 when combined FAGI is negative)." +} - added
Input schema / properties / moFagiYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 1Y: the PRIMARY taxpayer's share of federal AGI — Missouri combined returns SPLIT total FAGI between spouses per the AGI worksheet (each spouse's own income; joint items allocated). Defaults to the full federalAGI when omitted (one-income couple)." +} - added
Input schema / properties / moFederalItemizedAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-A Part 2 line 1: total federal itemized deductions (federal Schedule A total) plus any approved cultural contributions (literary/musical/scholastic/artistic donations, § 143.141)" +} - added
Input schema / properties / moFederalTax9Added value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 9 'Tax from federal return': federal 1040 line 22 MINUS lines 27a and 29, MINUS Schedule 2 Part 1 line 3, MINUS Schedule 3 Part 2 line 9 — never withholding; the EIC must be subtracted" +} - added
Input schema / properties / moHcsmDeductionAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 17: health care sharing ministry contributions not deducted federally" +} - added
Input schema / properties / moInactiveDutyMilitaryAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 19: inactive duty (drill) military income deduction" +} - added
Input schema / properties / moItemizingAdded value: +{ + "description": "taxpayer itemized FEDERALLY and wants Missouri itemized deductions — the composer computes MO-A Part 2 (federal itemized + payroll-tax addback − net state income taxes) and takes the LARGER of that or the standard deduction unless moRequiredToItemize", + "type": "boolean" +} - added
Input schema / properties / moLtcDeductionAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 16: qualified long-term care insurance premiums (12+ month policies, net of federally deducted amounts, per the worksheet)" +} - added
Input schema / properties / moNetStateIncomeTaxesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-A Part 2 line 11: state/local income taxes from Schedule A line 5a MINUS Kansas City/St. Louis earnings taxes (which stay deductible) — or the Part 2 worksheet result when SALT exceeded $40,000/$20,000-MFS or FAGI exceeded $500,000/$250,000-MFS" +} - added
Input schema / properties / moNrPaymentsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 lines 39+40: MO-2NR/MO-2ENT nonresident partner/entertainer payments" +} - added
Input schema / properties / moOtherDeductionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 lines 21-24 bucket: beginning farmer, transport facility, foster parent deductions (agent-transcribed)" +} - added
Input schema / properties / moOtherFederalTax10Added value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 10 'Other federal tax': Schedule 2 Part 1 line 3 + Part 2 lines 8/14/15 + recapture in line 21 + Schedule 3 Part 1 line 1 (attach 4255/8611/8828 for recapture)" +} - added
Input schema / properties / moOtherTaxesSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 34S" +} - added
Input schema / properties / moOtherTaxesYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 34Y: 10% of the Federal Form 4972 lump-sum distribution tax, and/or recapture of the low income housing credit (Form 8611) — the printed checkboxes. (Form 4970 trust accumulation amounts are a SUBTRACTION, not a line 34 tax.)" +} - added
Input schema / properties / moPayrollTaxAddbackAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-A Part 2 lines 2-7 total: the 2025 employee Social Security tax (capped $10,918 per spouse), Railroad Retirement Tier I+II (capped $17,327 per spouse, net of employer refunds), Medicare tax (with Form 8959 adjustments), and self-employment tax (Schedule 2 line 4 − Schedule 1 line 15 + Form 8959 line 13) — Missouri ADDS payroll taxes into itemized deductions" +} - added
Input schema / properties / moPrivatePensionSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the spouse's private-source pension for Section B" +} - added
Input schema / properties / moPrivatePensionYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the primary's PRIVATE-source taxable pension/annuity/IRA/401(k) (1040 lines 4b+5b share) — Section B caps each spouse at $6,000 and phases out by income" +} - added
Input schema / properties / moPropertyTaxCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 43: Form MO-PTS property tax credit (refundable circuit breaker — actual property tax up to $1,100 owners / 20%-of-rent up to $750 renters, from the printed chart; net household income gates $30,000 owners / $27,200 renters; agent-computed from MO-PTS with disclosure)" +} - added
Input schema / properties / moPublicPensionSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the spouse's public-source pension for their Section A column" +} - added
Input schema / properties / moPublicPensionYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the primary's PUBLIC-source pension (federal/state/local government, 1040 line 5b share) — the composer runs MO-A Part 3 Section A (min(pension, $47,633) less their Section C exemption). Military retirement goes in moSubtractionsYou instead (100%, MO-A line 10)." +} - added
Input schema / properties / moRequiredToItemizeAdded value: +{ + "description": "the filer was REQUIRED to itemize federally (e.g. MFS with an itemizing spouse) — Missouri then requires itemizing even when the standard deduction is larger", + "type": "boolean" +} - added
Input schema / properties / moResidentCreditSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 31S (capped at 30S)" +} - added
Input schema / properties / moResidentCreditYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 31Y: Form MO-CR credit for taxes paid to other states (agent-computed; the composer caps at line 30Y)" +} - added
Input schema / properties / moSsExemptSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the spouse's Section C SS/SSD exemption on the same gates" +} - added
Input schema / properties / moSsExemptYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the primary's MO-A Section C exemption: their TAXABLE Social Security/SSD (1040 line 6b share), 100% exempt — pass ONLY if 62+ by December 31 (the MO-1040 age box) or on Social Security Disability (attested)" +} - added
Input schema / properties / moStandardDeductionOverrideAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "dependent-claimed filers: the federal DEPENDENT standard deduction limit (greater of $1,350 or earned income + $450, capped at the full amount) — replaces the composer's full standard deduction" +} - added
Input schema / properties / moSubtractionsSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the spouse's MO-A subtractions on the same terms" +} - added
Input schema / properties / moSubtractionsYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-A subtractions for the primary EXCLUDING the composer-computed capital gain (line 18) and business income deduction (line 17): exempt federal-obligation interest, state refund, military retirement (100%), railroad retirement, 529/ABLE contributions ($8,000/taxpayer), qualified health insurance premiums, depreciation adjustments, agriculture disaster relief" +} - added
Input schema / properties / moTrustFundDonationsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 51: trust fund donations total (51a-51l)" +} - added
Input schema / properties / moUnderpaymentPenaltyAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MO-1040 line 55: Form MO-2210 underpayment penalty (90% / 66⅔%-farmer safe harbors)" +} - added
Input schema / properties / moWftcInvestmentOver4400Added value: +{ + "description": "Form MO-WFTC question 3: investment income exceeds $4,400 — denies the credit. The MO credit follows EIC law FROZEN as of January 1, 2021 (MO-1040 instructions p.10), so this is the indexed pre-ARPA limit; compute investment income the pre-2021 way (taxable AND tax-exempt interest, dividends, positive net capital gain per the MO-WFTC instructions), NOT the current federal $11,950 gate.", + "type": "boolean" +}
3 tool updates
- Changed
calculate_tax12 fields changed- changed
Input schema / properties / state / descriptionPrevious value: -"state taxable income for the state tax targets (us.ca/us.va/us.il.income_tax; parameters via lookup_tax_parameter)"New value: +"state taxable income for the state tax targets (us.ca/us.va/us.il/us.ny/us.oh/us.nc/us.ga/us.md income_tax; parameters via lookup_tax_parameter)" - added
Input schema / properties / state / properties / mdDependentTaxpayerAdded value: +{ + "description": "Maryland Filing Status 6 — the filer can be claimed as a dependent on another person's return: every Chart 10A exemption is $0 and the poverty level credit is denied (us.md.exemption_amount / us.md.poverty_level_credit).", + "type": "boolean" +} - added
Input schema / properties / state / properties / mdEarnedIncomeAdded value: +{ + "description": "Earned income for the Maryland poverty level credit (Form 502 line 1b / Worksheet 18B line 2): wages, salaries, tips, other employee compensation plus net self-employment profit — do NOT net farm/business losses. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mdExemptionCountAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Maryland exemption COUNT: Form 502 Exemptions areas A (self + spouse) plus C (dependents from Form 502B line 3) — each worth the Chart 10A phased amount via us.md.exemption_amount. Do NOT include the age-65+/blind area-B boxes (those are a separate unphased $1,000 each)." +} - added
Input schema / properties / state / properties / mdFagiAdded value: +{ + "description": "Federal adjusted gross income (Maryland Form 502 line 1) — keys the exemption phase-out chart (us.md.exemption_amount), the child tax credit phase-out (us.md.ctc), and the $350,000 Form 502CG surtax gate. May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mdFagiPlusAdditionsAdded value: +{ + "description": "Maryland Form 502 line 7 (federal AGI + Maryland additions) for the poverty level credit gate (Worksheet 18B line 1; MFS filers who filed a joint federal return use the JOINT federal AGI + additions). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mdHouseholdSizeAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Number of persons in the family/household from the federal return, for the Maryland poverty income guideline (2025: $15,650 for 1 + $5,500 each additional person — printed-chart exact through 8)." +} - added
Input schema / properties / state / properties / mdNetCapitalGainSubjectAdded value: +{ + "description": "Form 502CG line 9 — net capital gain income SUBJECT to Maryland's 2% additional tax (line 1c gain minus the six 502CG exempt classes: primary-residence sale under $1.5M, retirement-plan assets, livestock, easement land, trade-or-business property, nonprofit affordable housing). Only nonzero when federal AGI exceeds $350,000. Feeds us.md.capital_gains_surtax (Form 502 lines 20a/21b). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mdQualifiedChildrenAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Number of Maryland CTC qualified children on Form 502B: dependents UNDER 6 at year end, or over 5 and under 17 WITH a disability (assessment attached) — us.md.ctc ($500 each, H.B. 352 phase-out over $15,000 FAGI, gone above $24,000)." +} - added
Input schema / properties / state / properties / mdQualifyingPensionAdded value: +{ + "description": "ONE person's qualifying pension/retirement annuity in federal AGI for the Maryland pension exclusion (Worksheet 13A line 1): § 401(a)/403/457(b) employee-retirement-system income only — IRAs (traditional/Roth/rollover), SEP, Keogh, ineligible deferred comp, and foreign retirement income do NOT qualify; the person must be 65+ or totally disabled (or have a totally disabled spouse). Evaluate us.md.pension_exclusion once per qualifying spouse. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mdSsRrBenefitsAdded value: +{ + "description": "The SAME person's TOTAL Social Security and Railroad Retirement benefits (Tier I + Tier II), whether or not federally taxable — Worksheet 13A line 3 reduces the $41,200 maximum dollar-for-dollar. On a joint return count only the pension-receiving spouse's benefits. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mdSubdivisionAdded value: +{ + "description": "Maryland taxing subdivision — the county (or Baltimore City) where the filer resided on the LAST day of the tax year (Form 502 political-subdivision box), driving the us.md.local_tax rate (2025 chart: 2.25%-3.30%; Anne Arundel and Frederick are bracketed/tiered by filing status). Use nonresident for the Tax-Gen. § 10-106.1 special 2.25% nonresident rate.", + "enum": [ + "baltimore_city", + "allegany", + "anne_arundel", + "baltimore_county", + "calvert", + "caroline", + "carroll", + "cecil", + "charles", + "dorchester", + "frederick", + "garrett", + "harford", + "howard", + "kent", + "montgomery", + "prince_georges", + "queen_annes", + "st_marys", + "somerset", + "talbot", + "washington", + "wicomico", + "worcester", + "nonresident" + ], + "type": "string" +}
- Changed
compute_return12 fields changed- changed
Input schema / properties / state / descriptionPrevious value: -"state taxable income for the state tax targets (us.ca/us.va/us.il.income_tax; parameters via lookup_tax_parameter)"New value: +"state taxable income for the state tax targets (us.ca/us.va/us.il/us.ny/us.oh/us.nc/us.ga/us.md income_tax; parameters via lookup_tax_parameter)" - added
Input schema / properties / state / properties / mdDependentTaxpayerAdded value: +{ + "description": "Maryland Filing Status 6 — the filer can be claimed as a dependent on another person's return: every Chart 10A exemption is $0 and the poverty level credit is denied (us.md.exemption_amount / us.md.poverty_level_credit).", + "type": "boolean" +} - added
Input schema / properties / state / properties / mdEarnedIncomeAdded value: +{ + "description": "Earned income for the Maryland poverty level credit (Form 502 line 1b / Worksheet 18B line 2): wages, salaries, tips, other employee compensation plus net self-employment profit — do NOT net farm/business losses. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mdExemptionCountAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Maryland exemption COUNT: Form 502 Exemptions areas A (self + spouse) plus C (dependents from Form 502B line 3) — each worth the Chart 10A phased amount via us.md.exemption_amount. Do NOT include the age-65+/blind area-B boxes (those are a separate unphased $1,000 each)." +} - added
Input schema / properties / state / properties / mdFagiAdded value: +{ + "description": "Federal adjusted gross income (Maryland Form 502 line 1) — keys the exemption phase-out chart (us.md.exemption_amount), the child tax credit phase-out (us.md.ctc), and the $350,000 Form 502CG surtax gate. May be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mdFagiPlusAdditionsAdded value: +{ + "description": "Maryland Form 502 line 7 (federal AGI + Maryland additions) for the poverty level credit gate (Worksheet 18B line 1; MFS filers who filed a joint federal return use the JOINT federal AGI + additions). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mdHouseholdSizeAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Number of persons in the family/household from the federal return, for the Maryland poverty income guideline (2025: $15,650 for 1 + $5,500 each additional person — printed-chart exact through 8)." +} - added
Input schema / properties / state / properties / mdNetCapitalGainSubjectAdded value: +{ + "description": "Form 502CG line 9 — net capital gain income SUBJECT to Maryland's 2% additional tax (line 1c gain minus the six 502CG exempt classes: primary-residence sale under $1.5M, retirement-plan assets, livestock, easement land, trade-or-business property, nonprofit affordable housing). Only nonzero when federal AGI exceeds $350,000. Feeds us.md.capital_gains_surtax (Form 502 lines 20a/21b). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mdQualifiedChildrenAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Number of Maryland CTC qualified children on Form 502B: dependents UNDER 6 at year end, or over 5 and under 17 WITH a disability (assessment attached) — us.md.ctc ($500 each, H.B. 352 phase-out over $15,000 FAGI, gone above $24,000)." +} - added
Input schema / properties / state / properties / mdQualifyingPensionAdded value: +{ + "description": "ONE person's qualifying pension/retirement annuity in federal AGI for the Maryland pension exclusion (Worksheet 13A line 1): § 401(a)/403/457(b) employee-retirement-system income only — IRAs (traditional/Roth/rollover), SEP, Keogh, ineligible deferred comp, and foreign retirement income do NOT qualify; the person must be 65+ or totally disabled (or have a totally disabled spouse). Evaluate us.md.pension_exclusion once per qualifying spouse. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mdSsRrBenefitsAdded value: +{ + "description": "The SAME person's TOTAL Social Security and Railroad Retirement benefits (Tier I + Tier II), whether or not federally taxable — Worksheet 13A line 3 reduces the $41,200 maximum dollar-for-dollar. On a joint return count only the pension-receiving spouse's benefits. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / mdSubdivisionAdded value: +{ + "description": "Maryland taxing subdivision — the county (or Baltimore City) where the filer resided on the LAST day of the tax year (Form 502 political-subdivision box), driving the us.md.local_tax rate (2025 chart: 2.25%-3.30%; Anne Arundel and Frederick are bracketed/tiered by filing status). Use nonresident for the Tax-Gen. § 10-106.1 special 2.25% nonresident rate.", + "enum": [ + "baltimore_city", + "allegany", + "anne_arundel", + "baltimore_county", + "calvert", + "caroline", + "carroll", + "cecil", + "charles", + "dorchester", + "frederick", + "garrett", + "harford", + "howard", + "kent", + "montgomery", + "prince_georges", + "queen_annes", + "st_marys", + "somerset", + "talbot", + "washington", + "wicomico", + "worcester", + "nonresident" + ], + "type": "string" +}
- Changed
compute_state_return26 fields changed- changed
Input schema / properties / jurisdiction / enumPrevious value: -[ - "il", - "va", - "ca", - "ny", - "pa", - "nj", - "oh", - "nc", - "ga" -]New value: +[ + "il", + "va", + "ca", + "ny", + "pa", + "nj", + "oh", + "nc", + "ga", + "md" +] - added
Input schema / properties / md502crPartBBAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MD line 31: local tax credit from Form 502CR Part BB line 1" +} - added
Input schema / properties / mdBusinessCreditsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MD line 25: business tax credits (Form 500CR — e-file only; transcribed)" +} - added
Input schema / properties / mdChildCareExpensesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MD line 9: child and dependent care EXPENSES from federal Form 2441 line 6 — an income subtraction in Maryland (separate from any 502CR Part B credit); the composer caps it at $3,000 ($6,000 when mdChildCareTwoOrMoreDependents)" +} - added
Input schema / properties / mdChildCareTwoOrMoreDependentsAdded value: +{ + "description": "two or more care dependents — raises the MD line 9 expense cap from $3,000 to $6,000", + "type": "boolean" +} - added
Input schema / properties / mdContributionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MD lines 35-39: voluntary fund contributions total (reduces the refund)" +} - added
Input schema / properties / mdCtcChildrenAdded value: +{ + "description": "Maryland CTC qualified children (dependents under 6, or over 5 and under 17 with a disability) — the composer evaluates us.md.ctc ($500/child, phased out $50 per $1,000 of FAGI over $15,000, $0 above $24,000; refundable via 502CR Part CC into line 45)", + "type": "integer" +} - added
Input schema / properties / mdEarnedIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MD line 1b earned income (wages + net SE profit, no loss netting) — the poverty level credit base (us.md.poverty_level_credit) and the local poverty credit (19C)" +} - added
Input schema / properties / mdEicQualifyingChildAdded value: +{ + "description": "the filer has at least one EIC qualifying child — with married filers this routes line 22 to 50% of the federal EIC (Worksheet 18A) and line 44 to the 45% refundable worksheet (21A); childless single/HOH/QSS filers instead get 100% refundable (18A.1). Also drives the Form 502 EIC checkboxes.", + "type": "boolean" +} - added
Input schema / properties / mdFederalItemizedAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MD line 17a: total federal itemized deductions (federal Schedule A line 17)" +} - added
Input schema / properties / mdHomebuyerPenaltyAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MD line 51a: first-time homebuyer savings account 10% withdrawal penalty" +} - added
Input schema / properties / mdHouseholdSizeAdded value: +{ + "description": "persons in the family/household from the federal return — enables the poverty level credit computation (2025 guideline $15,650 + $5,500 each additional person)", + "type": "integer" +} - added
Input schema / properties / mdInterestChargesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MD line 51: Form 502UP interest / late-filing interest" +} - added
Input schema / properties / mdItemizedStateLocalTaxesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MD line 17b: state and local INCOME taxes claimed in the federal Schedule A (plus preservation-easement contributions claimed as a credit) — subtracted from 17a" +} - added
Input schema / properties / mdItemizingAdded value: +{ + "description": "taxpayer itemized FEDERALLY and elects Maryland itemized deductions — the composer computes 17a−17b−17c (with the H.B. 352 7.5% phase-out over $200,000/$100,000-MFS FAGI) and still takes the standard deduction if larger (Maryland allows either)", + "type": "boolean" +} - added
Input schema / properties / mdMw506nrsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MD line 42: tax withheld on Form MW506NRS (nonresident real property sale)" +} - added
Input schema / properties / mdNetCapitalGainSubjectAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 502CG line 9: net capital gain subject to the H.B. 352 2% surtax (line 1c gain minus the six exempt classes — primary-residence sale under $1.5M, retirement-plan assets, livestock, easement land, trade-or-business property, nonprofit affordable housing). The composer zeroes it (with a note) unless FAGI exceeds $350,000." +} - added
Input schema / properties / mdPensionSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "spouse's qualifying pension for their own 13A column (same gates)" +} - added
Input schema / properties / mdPensionYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "primary taxpayer's qualifying § 401(a)/403/457(b) pension in FAGI for the Worksheet 13A pension exclusion — ONLY if 65+/totally disabled (or spouse totally disabled); IRAs/SEP/Keogh never qualify. The composer evaluates us.md.pension_exclusion per spouse." +} - added
Input schema / properties / mdRangerPensionAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MD line 10b: Retired Forest/Park/Wildlife Ranger pension exclusion (Worksheet 13E, agent-computed, disclosed)" +} - added
Input schema / properties / mdRecapturedCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MD line 21a: recaptured credit from Form 502CR Part DD line 1" +} - added
Input schema / properties / mdSsRrBenefitsSpouseAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "spouse's TOTAL SS/RR benefits for their 13A column" +} - added
Input schema / properties / mdSsRrBenefitsYouAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "primary taxpayer's TOTAL Social Security + Railroad Retirement benefits (taxable or not) — reduces the $41,200 cap in the primary's 13A column" +} - added
Input schema / properties / mdStateRefundsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "MD line 8: taxable state/local income tax refunds included in federal AGI (subtraction)" +} - added
Input schema / properties / mdSubdivisionAdded value: +{ + "description": "REQUIRED for MD: the taxing county where the filer resided on the LAST day of the tax year (Form 502 political-subdivision box) — one of baltimore_city, allegany, anne_arundel, baltimore_county, calvert, caroline, carroll, cecil, charles, dorchester, frederick, garrett, harford, howard, kent, montgomery, prince_georges, queen_annes, st_marys, somerset, talbot, washington, wicomico, worcester, nonresident. Drives the mandatory local tax (line 28: flat 2.25%-3.30%; Anne Arundel bracketed with its own printed table; Frederick tiered on the WHOLE income with real cliffs).", + "type": "string" +} - added
Input schema / properties / mdTwoIncomeLesserSpouseNetAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Worksheet 13D line 6: the LESSER-income spouse's net Maryland income (their FAGI share + additions share − subtractions share) — the composer caps it at $1,200 for line 14 (joint returns only)" +}
3 tool updates
- Changed
calculate_tax17 fields changed- added
Input schema / properties / state / properties / gaDependentCountAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Form 500 line 7c total dependents (7a qualified + 7b unborn-with-heartbeat; never self/spouse) — each worth the $4,000 Georgia dependent exemption (us.ga.dependent_exemption)." +} - added
Input schema / properties / state / properties / gaExclusionTierAdded value: +{ + "description": "Primary taxpayer's Georgia retirement-exclusion tier (O.C.G.A. § 48-7-27(a)(5)(D)): 62-64 during any part of the year or permanently and totally disabled → $35,000 cap; 65+ during any part of the year → $65,000 cap.", + "enum": [ + "none", + "62to64OrDisabled", + "65plus" + ], + "type": "string" +} - added
Input schema / properties / state / properties / gaFederalAgiAdded value: +{ + "description": "Federal adjusted gross income (Form 500 line 8, Form 1040 line 11 verbatim — never federal taxable income) — keys the Low Income Credit table. Can be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / gaFederalCdccAllowedAdded value: +{ + "description": "The federal § 21 child and dependent care credit CLAIMED AND ALLOWED (Form 2441 line 11, liability-limited) — Georgia's IND-CR 202 credit is 50% of it (us.ga.cdcc). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / gaLic65CountAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "GA Low Income Credit Worksheet line 3: 1 if filer or spouse is 65+, 2 if both (the statute's 65+ double credit as extra exemptions)." +} - added
Input schema / properties / state / properties / gaLicExemptionsAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "GA Low Income Credit Worksheet line 2 exemptions: self + spouse + natural/legally adopted children ONLY (never other dependents, never unborn dependents)." +} - added
Input schema / properties / state / properties / gaRetirementEarnedIncomeAdded value: +{ + "description": "Primary taxpayer's earned income (wages/salaries/business) — the exclusion counts at most $5,000 of it (Schedule 1 page 2 worksheet 'Maximum Earned Income'). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / gaRetirementIncomeAdded value: +{ + "description": "Primary taxpayer's UNEARNED retirement income for the Georgia exclusion (pensions, annuities, interest, dividends, net rents, capital gains, royalties, military retirement — jointly-owned property income at 50%; NEVER Social Security/RRB, which subtract separately, and never lottery/gambling). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / gaSpouseExclusionTierAdded value: +{ + "description": "Spouse's Georgia retirement-exclusion tier (each spouse qualifies separately; the exclusion is never shared).", + "enum": [ + "none", + "62to64OrDisabled", + "65plus" + ], + "type": "string" +} - added
Input schema / properties / state / properties / gaSpouseRetirementEarnedIncomeAdded value: +{ + "description": "Spouse's earned income for the exclusion worksheet (at most $5,000 counts). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / gaSpouseRetirementIncomeAdded value: +{ + "description": "Spouse's unearned retirement income for the Georgia exclusion (same definition, own items + 50% of joint). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ncCharitableAdded value: +{ + "description": "NC Schedule A charitable contributions allowed under IRC § 170 for the year (federal AGI-percentage limits apply; NO NC dollar cap and no § 68 overall limitation). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ncClaimOfRightRepaymentAdded value: +{ + "description": "NC Schedule A line 8 repayment of claim-of-right income (repayments over $3,000 deducted in full — supply only qualifying amounts). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ncFederalAgiAdded value: +{ + "description": "Federal adjusted gross income (D-400 line 6, Form 1040 line 11 verbatim) — keys the NC child-deduction table tiers and the Schedule A 7.5% medical floor. Can be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ncMedicalExpensesAdded value: +{ + "description": "NC Schedule A line 7a qualified medical and dental expenses BEFORE the floor — the rule subtracts 7.5% of ncFederalAgi (D-400 Schedule A lines 7b-7d). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ncMortgageInterestAdded value: +{ + "description": "NC Schedule A qualified home mortgage interest (IRC § 163(h)) — combined with real estate property taxes under the $20,000 NC cap (both spouses combined, MFJ or MFS). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ncRealEstateTaxesAdded value: +{ + "description": "NC Schedule A real estate property taxes (IRC § 164 real property portion only — NC allows NO state/local income tax deduction) — inside the $20,000 combined cap with mortgage interest. In dollars.", + "type": [ + "number", + "string" + ] +}
- Changed
compute_return17 fields changed- added
Input schema / properties / state / properties / gaDependentCountAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Form 500 line 7c total dependents (7a qualified + 7b unborn-with-heartbeat; never self/spouse) — each worth the $4,000 Georgia dependent exemption (us.ga.dependent_exemption)." +} - added
Input schema / properties / state / properties / gaExclusionTierAdded value: +{ + "description": "Primary taxpayer's Georgia retirement-exclusion tier (O.C.G.A. § 48-7-27(a)(5)(D)): 62-64 during any part of the year or permanently and totally disabled → $35,000 cap; 65+ during any part of the year → $65,000 cap.", + "enum": [ + "none", + "62to64OrDisabled", + "65plus" + ], + "type": "string" +} - added
Input schema / properties / state / properties / gaFederalAgiAdded value: +{ + "description": "Federal adjusted gross income (Form 500 line 8, Form 1040 line 11 verbatim — never federal taxable income) — keys the Low Income Credit table. Can be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / gaFederalCdccAllowedAdded value: +{ + "description": "The federal § 21 child and dependent care credit CLAIMED AND ALLOWED (Form 2441 line 11, liability-limited) — Georgia's IND-CR 202 credit is 50% of it (us.ga.cdcc). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / gaLic65CountAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "GA Low Income Credit Worksheet line 3: 1 if filer or spouse is 65+, 2 if both (the statute's 65+ double credit as extra exemptions)." +} - added
Input schema / properties / state / properties / gaLicExemptionsAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "GA Low Income Credit Worksheet line 2 exemptions: self + spouse + natural/legally adopted children ONLY (never other dependents, never unborn dependents)." +} - added
Input schema / properties / state / properties / gaRetirementEarnedIncomeAdded value: +{ + "description": "Primary taxpayer's earned income (wages/salaries/business) — the exclusion counts at most $5,000 of it (Schedule 1 page 2 worksheet 'Maximum Earned Income'). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / gaRetirementIncomeAdded value: +{ + "description": "Primary taxpayer's UNEARNED retirement income for the Georgia exclusion (pensions, annuities, interest, dividends, net rents, capital gains, royalties, military retirement — jointly-owned property income at 50%; NEVER Social Security/RRB, which subtract separately, and never lottery/gambling). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / gaSpouseExclusionTierAdded value: +{ + "description": "Spouse's Georgia retirement-exclusion tier (each spouse qualifies separately; the exclusion is never shared).", + "enum": [ + "none", + "62to64OrDisabled", + "65plus" + ], + "type": "string" +} - added
Input schema / properties / state / properties / gaSpouseRetirementEarnedIncomeAdded value: +{ + "description": "Spouse's earned income for the exclusion worksheet (at most $5,000 counts). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / gaSpouseRetirementIncomeAdded value: +{ + "description": "Spouse's unearned retirement income for the Georgia exclusion (same definition, own items + 50% of joint). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ncCharitableAdded value: +{ + "description": "NC Schedule A charitable contributions allowed under IRC § 170 for the year (federal AGI-percentage limits apply; NO NC dollar cap and no § 68 overall limitation). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ncClaimOfRightRepaymentAdded value: +{ + "description": "NC Schedule A line 8 repayment of claim-of-right income (repayments over $3,000 deducted in full — supply only qualifying amounts). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ncFederalAgiAdded value: +{ + "description": "Federal adjusted gross income (D-400 line 6, Form 1040 line 11 verbatim) — keys the NC child-deduction table tiers and the Schedule A 7.5% medical floor. Can be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ncMedicalExpensesAdded value: +{ + "description": "NC Schedule A line 7a qualified medical and dental expenses BEFORE the floor — the rule subtracts 7.5% of ncFederalAgi (D-400 Schedule A lines 7b-7d). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ncMortgageInterestAdded value: +{ + "description": "NC Schedule A qualified home mortgage interest (IRC § 163(h)) — combined with real estate property taxes under the $20,000 NC cap (both spouses combined, MFJ or MFS). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ncRealEstateTaxesAdded value: +{ + "description": "NC Schedule A real estate property taxes (IRC § 164 real property portion only — NC allows NO state/local income tax deduction) — inside the $20,000 combined cap with mortgage interest. In dollars.", + "type": [ + "number", + "string" + ] +}
- Changed
compute_state_return34 fields changed- added
Input schema / properties / gaDependentCountAdded value: +{ + "description": "Form 500 line 7c total dependents (7a qualified + 7b unborn-with-heartbeat; never self/spouse) — $4,000 each (us.ga.dependent_exemption)", + "type": "integer" +} - added
Input schema / properties / gaEligibleItemizerCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 500 line 19: Georgia Eligible Itemizer Tax Credit (NEW 2025; up to $300 per taxpayer, itemizers with 183+ GA days or resident at year end) — TRANSCRIBE the worksheet-computed amount, never assume the full $300; composer caps at $300/$600" +} - added
Input schema / properties / gaExclusionTierAdded value: +{ + "description": "primary taxpayer's GA retirement-exclusion tier: 62-64 during any part of the year or permanently/totally disabled ($35,000 cap) vs 65+ ($65,000 cap) (us.ga.retirement_exclusion)", + "enum": [ + "none", + "62to64OrDisabled", + "65plus" + ], + "type": "string" +} - added
Input schema / properties / gaFederalCdccAllowedAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "federal Form 2441 line 11 allowed credit — GA IND-CR 202 pays 50% of it (us.ga.cdcc)" +} - added
Input schema / properties / gaFederalItemizedAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 500 line 12a: federal Schedule A total. Supplying this FORCES Georgia itemizing ('Leave Line 11 blank if you itemize deductions on your Federal return') — a federal standard-deduction filer must omit it." +} - added
Input schema / properties / gaIndCrCreditsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 500 line 20: IND-CR Summary total OTHER than the CDCC (the composer adds us.ga.cdcc itself from gaFederalCdccAllowed)" +} - added
Input schema / properties / gaItemizedAdjustmentsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 500 line 12b: state income taxes in the federal Schedule A total plus the disallowed-SALT proration when the $10,000/$5,000 cap bound (printed formula, hand-computed)" +} - added
Input schema / properties / gaLic65CountAdded value: +{ + "description": "Low Income Credit Worksheet line 3: 1 if filer or spouse is 65+, 2 if both", + "type": "integer" +} - added
Input schema / properties / gaLicExemptionsAdded value: +{ + "description": "Low Income Credit Worksheet line 2: self + spouse + natural/legally adopted children (never other dependents or unborn) (us.ga.low_income_credit)", + "type": "integer" +} - added
Input schema / properties / gaMilitaryExclusionAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "GA military retirement exclusion for under-62 retirees (Schedule 1 page 3 worksheet: $17,500 + additional $17,500 when GA earned income exceeds $17,500 — hand-computed, per qualifying spouse)" +} - added
Input schema / properties / gaNolUtilizedAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 500 line 15b: Georgia NOL utilized (Schedule 4; cannot exceed line 15a or the 80% limitation — composer caps at 15a)" +} - added
Input schema / properties / gaOtherStateCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 500 line 18: other state(s) tax credit (printed worksheet, hand-computed; other-state return copy required)" +} - added
Input schema / properties / gaOtherWithholdingAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 500 line 25: GA tax withheld on G2-A / G2-FL / G2-LP / G2-RP statements (never W-2/1099 amounts — those go in the shared stateWithholding for line 24)" +} - added
Input schema / properties / gaRetirementEarnedIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "primary taxpayer's earned income — at most $5,000 counts inside the exclusion (Schedule 1 worksheet)" +} - added
Input schema / properties / gaRetirementIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "primary taxpayer's UNEARNED retirement income for the exclusion (pensions, interest, dividends, net rents, capital gains, royalties, military retirement; joint property at 50%; NEVER Social Security — that subtracts automatically)" +} - added
Input schema / properties / gaSpouseExclusionTierAdded value: +{ + "description": "spouse's GA retirement-exclusion tier (each spouse qualifies separately; never shared)", + "enum": [ + "none", + "62to64OrDisabled", + "65plus" + ], + "type": "string" +} - added
Input schema / properties / gaSpouseRetirementEarnedIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "spouse's earned income for the exclusion worksheet" +} - added
Input schema / properties / gaSpouseRetirementIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "spouse's unearned retirement income for the exclusion" +} - added
Input schema / properties / gaUetPenaltyAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Form 500 line 42: Form 500 UET estimated tax penalty" +} - changed
Input schema / properties / jurisdiction / enumPrevious value: -[ - "il", - "va", - "ca", - "ny", - "pa", - "nj", - "oh" -]New value: +[ + "il", + "va", + "ca", + "ny", + "pa", + "nj", + "oh", + "nc", + "ga" +] - added
Input schema / properties / ncBaileyRetirementAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NC Schedule S line 20: Bailey settlement retirement benefits (NC/local government or US government incl. military retirees with 5+ years of creditable service as of Aug 12, 1989; state 401(k)/457 contributed before that date) — fully deducted; enclose the 1099-R" +} - added
Input schema / properties / ncCharitableAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NC Schedule A: IRC § 170 charitable contributions allowed for the year (no NC dollar cap)" +} - added
Input schema / properties / ncClaimOfRightRepaymentAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NC Schedule A line 8: claim-of-right repayments over $3,000 (deducted in full)" +} - added
Input schema / properties / ncMedicalExpensesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NC Schedule A line 7a: medical/dental expenses BEFORE the floor — the composer subtracts 7.5% of federal AGI" +} - added
Input schema / properties / ncMilitaryRetirementAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NC Schedule S line 21: military retirement pay / SBP payments for members with 20+ years of service OR Chapter 61 medical retirement — never severance, never double-claimed with Bailey" +} - added
Input schema / properties / ncMortgageInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NC Schedule A: qualified mortgage interest — the composer applies the $20,000 combined cap with real estate taxes and takes itemized only when it beats the standard deduction" +} - added
Input schema / properties / ncPartnershipPaymentsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "D-400 line 21c: NC tax paid by a partnership on the filer's behalf" +} - added
Input schema / properties / ncQualifyingChildrenAdded value: +{ + "description": "D-400 line 10a: count of qualifying children for whom the federal § 24 child tax credit was ALLOWED (under 17; ODC-only dependents never count) — drives the AGI-tiered child deduction (us.nc.child_deduction)", + "type": "integer" +} - added
Input schema / properties / ncRealEstateTaxesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NC Schedule A: real estate property taxes (NC allows NO income/sales tax deduction) — inside the $20,000 combined cap" +} - added
Input schema / properties / ncScorpPaymentsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "D-400 line 21d: NC tax paid by an S corporation on the filer's behalf" +} - added
Input schema / properties / ncTaxCreditsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "D-400 line 16: D-400TC total (other-state credit worksheet, historic rehab) — hand-computed; the composer caps at the line 15 tax. NC has NO EITC and NO child/dependent care credit." +} - added
Input schema / properties / ncUnderpaymentInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "D-400 line 26e: interest on the underpayment of estimated income tax (Form D-422)" +} - added
Input schema / properties / ncUsObligationInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NC Schedule S line 18: interest from US obligations (Treasuries, savings bonds) included in FAGI — fully deducted" +} - added
Input schema / properties / ncUseTaxEstimateAdded value: +{ + "description": "use the printed no-receipts consumer use tax table (keyed to line 14 taxable income, us.nc.use_tax) instead of the useTax input", + "type": "boolean" +}
3 tool updates
- Changed
calculate_tax17 fields changed- added
Input schema / properties / state / properties / njChildrenUnder6Added value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Count of dependents claimed on NJ-1040 lines 10/11 who were age 5 or younger on the last day of the tax year (born 2020 or later for TY2025) — the NJ Child Tax Credit multiplier (us.nj.ctc)." +} - added
Input schema / properties / state / properties / njEitcAgeDecoupledAdded value: +{ + "description": "NJ flat-$260 EITC eligibility attested (2025 NJ-1040 line 58): no qualifying child, at least 18 years old, met ALL federal EIC requirements except the age requirement (NJ eliminated both the under-25 floor and the 65+ ceiling), and not claimed as a dependent on another return.", + "type": "boolean" +} - added
Input schema / properties / state / properties / njFederalCdccAdded value: +{ + "description": "The federal child and dependent care credit (Form 2441) — Worksheet J line 1 input for us.nj.cdcc. Where the federal liability limit zeroed an otherwise-allowable credit, NJ's mock-return guidance supports the credit the filer WOULD have been eligible for; disclose which 2441 amount was supplied. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / njGrossIncomeAdded value: +{ + "description": "New Jersey gross income (NJ-1040 line 29: total category income minus the pension/retirement exclusions, BEFORE exemptions and deductions) — keys the Estimated Use Tax Chart (us.nj.use_tax) and the $10,000/$20,000 filing threshold. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / njMfsSameHomeAdded value: +{ + "description": "Married filing separately AND both spouses maintained the SAME principal residence — halves the NJ property tax deduction cap ($7,500) and the credit/threshold amounts ($25).", + "type": "boolean" +} - added
Input schema / properties / state / properties / njPensionEligibleAdded value: +{ + "description": "NJ pension-exclusion age/disability gate attested: the filer (or spouse on a joint return) was age 62 or older OR blind/disabled per Social Security guidelines on the last day of the tax year (2025 NJ-1040 line 28a).", + "type": "boolean" +} - added
Input schema / properties / state / properties / njPensionIncomeAdded value: +{ + "description": "NJ-1040 line 20a taxable pension/annuity/IRA income ELIGIBLE for the line 28a exclusion — on a joint return where only one spouse is 62+/disabled, ONLY that spouse's pension income (the ineligible spouse's share never excludes). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / njPropertyTaxesPaidAdded value: +{ + "description": "NJ-1040 line 40a: property taxes due and paid on the principal residence (homeowners), or 18% of rent paid (tenants; 18% of site fees for mobile-home owners), after any Worksheet G multi-owner/multi-unit proration. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / njTotalIncomeAdded value: +{ + "description": "NJ-1040 line 27 total income (all categories, before the pension exclusion) — the pension-exclusion chart tier and $150,000 cliff key on this amount. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ohBothSpousesHaveQualifyingIncomeAdded value: +{ + "description": "Ohio joint filing credit gate attested: each spouse has at least $500 of QUALIFYING income included in Ohio AGI — not interest, dividends/distributions, capital gains, or rents/royalties, and not amounts deducted on the Schedule of Adjustments (deducted business income, Social Security, uniformed-services retirement never qualify).", + "type": "boolean" +} - added
Input schema / properties / state / properties / ohEligibleRetirementIncomeAdded value: +{ + "description": "Retirement income received on account of retirement and still INCLUDED in Ohio AGI (both spouses combined) — the us.oh.retirement_income_credit Table 2 input. Excludes everything deducted on the Schedule of Adjustments (Social Security, railroad, uniformed-services retirement). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ohExemptionCountAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "IT 1040 line 4 exemption count: self (unless claimable as a dependent on another return), spouse if filing jointly, plus federal dependents (Schedule of Dependents)." +} - added
Input schema / properties / state / properties / ohFederalCdccAllowedAdded value: +{ + "description": "Federal Form 2441 line 11 (the liability-LIMITED child and dependent care credit actually allowed federally) — the Ohio CDCC's 25% base when MAGI is $20,000-$39,999. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ohFederalCdccTentativeAdded value: +{ + "description": "Federal Form 2441 line 9c (the tentative child and dependent care credit BEFORE the federal liability limit; equals line 9a absent prior-year-expense amounts) — the Ohio CDCC's 100% base when MAGI is under $20,000. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ohModifiedAgiAdded value: +{ + "description": "Ohio modified adjusted gross income (MAGI): Ohio adjusted gross income (IT 1040 line 3) PLUS the business income deduction (Schedule of Adjustments line 13) — the base for the exemption tiers and most credit gates (2025 booklet p. 8). Can be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ohTaxLessCreditsAdded value: +{ + "description": "Ohio Schedule of Credits line 11 (line 8c tax less the line 2-9 credits) — the joint filing credit's percentage base. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ohTaxableBusinessIncomeAdded value: +{ + "description": "IT 1040 line 6 taxable business income (Schedule of Business Income line 15: business income remaining after the $250,000/$125,000 Business Income Deduction, limited to the line 5 Ohio income tax base) — taxed flat 3% by us.oh.business_income_tax. In dollars.", + "type": [ + "number", + "string" + ] +}
- Changed
compute_return17 fields changed- added
Input schema / properties / state / properties / njChildrenUnder6Added value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "Count of dependents claimed on NJ-1040 lines 10/11 who were age 5 or younger on the last day of the tax year (born 2020 or later for TY2025) — the NJ Child Tax Credit multiplier (us.nj.ctc)." +} - added
Input schema / properties / state / properties / njEitcAgeDecoupledAdded value: +{ + "description": "NJ flat-$260 EITC eligibility attested (2025 NJ-1040 line 58): no qualifying child, at least 18 years old, met ALL federal EIC requirements except the age requirement (NJ eliminated both the under-25 floor and the 65+ ceiling), and not claimed as a dependent on another return.", + "type": "boolean" +} - added
Input schema / properties / state / properties / njFederalCdccAdded value: +{ + "description": "The federal child and dependent care credit (Form 2441) — Worksheet J line 1 input for us.nj.cdcc. Where the federal liability limit zeroed an otherwise-allowable credit, NJ's mock-return guidance supports the credit the filer WOULD have been eligible for; disclose which 2441 amount was supplied. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / njGrossIncomeAdded value: +{ + "description": "New Jersey gross income (NJ-1040 line 29: total category income minus the pension/retirement exclusions, BEFORE exemptions and deductions) — keys the Estimated Use Tax Chart (us.nj.use_tax) and the $10,000/$20,000 filing threshold. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / njMfsSameHomeAdded value: +{ + "description": "Married filing separately AND both spouses maintained the SAME principal residence — halves the NJ property tax deduction cap ($7,500) and the credit/threshold amounts ($25).", + "type": "boolean" +} - added
Input schema / properties / state / properties / njPensionEligibleAdded value: +{ + "description": "NJ pension-exclusion age/disability gate attested: the filer (or spouse on a joint return) was age 62 or older OR blind/disabled per Social Security guidelines on the last day of the tax year (2025 NJ-1040 line 28a).", + "type": "boolean" +} - added
Input schema / properties / state / properties / njPensionIncomeAdded value: +{ + "description": "NJ-1040 line 20a taxable pension/annuity/IRA income ELIGIBLE for the line 28a exclusion — on a joint return where only one spouse is 62+/disabled, ONLY that spouse's pension income (the ineligible spouse's share never excludes). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / njPropertyTaxesPaidAdded value: +{ + "description": "NJ-1040 line 40a: property taxes due and paid on the principal residence (homeowners), or 18% of rent paid (tenants; 18% of site fees for mobile-home owners), after any Worksheet G multi-owner/multi-unit proration. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / njTotalIncomeAdded value: +{ + "description": "NJ-1040 line 27 total income (all categories, before the pension exclusion) — the pension-exclusion chart tier and $150,000 cliff key on this amount. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ohBothSpousesHaveQualifyingIncomeAdded value: +{ + "description": "Ohio joint filing credit gate attested: each spouse has at least $500 of QUALIFYING income included in Ohio AGI — not interest, dividends/distributions, capital gains, or rents/royalties, and not amounts deducted on the Schedule of Adjustments (deducted business income, Social Security, uniformed-services retirement never qualify).", + "type": "boolean" +} - added
Input schema / properties / state / properties / ohEligibleRetirementIncomeAdded value: +{ + "description": "Retirement income received on account of retirement and still INCLUDED in Ohio AGI (both spouses combined) — the us.oh.retirement_income_credit Table 2 input. Excludes everything deducted on the Schedule of Adjustments (Social Security, railroad, uniformed-services retirement). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ohExemptionCountAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "IT 1040 line 4 exemption count: self (unless claimable as a dependent on another return), spouse if filing jointly, plus federal dependents (Schedule of Dependents)." +} - added
Input schema / properties / state / properties / ohFederalCdccAllowedAdded value: +{ + "description": "Federal Form 2441 line 11 (the liability-LIMITED child and dependent care credit actually allowed federally) — the Ohio CDCC's 25% base when MAGI is $20,000-$39,999. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ohFederalCdccTentativeAdded value: +{ + "description": "Federal Form 2441 line 9c (the tentative child and dependent care credit BEFORE the federal liability limit; equals line 9a absent prior-year-expense amounts) — the Ohio CDCC's 100% base when MAGI is under $20,000. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ohModifiedAgiAdded value: +{ + "description": "Ohio modified adjusted gross income (MAGI): Ohio adjusted gross income (IT 1040 line 3) PLUS the business income deduction (Schedule of Adjustments line 13) — the base for the exemption tiers and most credit gates (2025 booklet p. 8). Can be negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ohTaxLessCreditsAdded value: +{ + "description": "Ohio Schedule of Credits line 11 (line 8c tax less the line 2-9 credits) — the joint filing credit's percentage base. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / ohTaxableBusinessIncomeAdded value: +{ + "description": "IT 1040 line 6 taxable business income (Schedule of Business Income line 15: business income remaining after the $250,000/$125,000 Business Income Deduction, limited to the line 5 Ohio income tax base) — taxed flat 3% by us.oh.business_income_tax. In dollars.", + "type": [ + "number", + "string" + ] +}
- Changed
compute_state_return65 fields changed- changed
Input schema / properties / jurisdiction / enumPrevious value: -[ - "il", - "va", - "ca", - "ny", - "pa" -]New value: +[ + "il", + "va", + "ca", + "ny", + "pa", + "nj", + "oh" +] - added
Input schema / properties / njAbcaAdjustmentAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 35 Alternative Business Calculation Adjustment (Schedule NJ-BUS-2 line 11 — the only cross-category loss softener, 20-year carryforward)" +} - added
Input schema / properties / njAlimonyPaidAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 32 court-ordered alimony PAID (still deductible for NJ; never child support)" +} - added
Input schema / properties / njAlimonyReceivedAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 25 alimony received (NJ did not adopt the TCJA repeal — still NJ income)" +} - added
Input schema / properties / njArcherMsaAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Archer MSA contributions (federal Form 8853; NJ has NO HSA deduction — never enter HSA amounts)" +} - added
Input schema / properties / njBaitCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 63 pass-through Business Alternative Income Tax credit (PTE-K-1)" +} - added
Input schema / properties / njBlindCountAdded value: +{ + "description": "line 8 count (0-2): filer/spouse blind or disabled — $1,000 each", + "type": "integer" +} - added
Input schema / properties / njBusinessNetAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 18 net profits from business (Schedule NJ-BUS-1 Part I; negative allowed — the composer suppresses a net category loss per the printed rule)" +} - added
Input schema / properties / njChildrenUnder6Added value: +{ + "description": "count of line 10/11 dependents age 5 or younger on 12/31 (born 2020 or later for TY2025) — the line 65 NJ Child Tax Credit multiplier ($1,000→$200 each by taxable income ≤ $80,000; MFS ineligible)", + "type": "integer" +} - added
Input schema / properties / njCojCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 44 credit for income taxes paid to other jurisdictions (Schedule NJ-COJ, hand-computed; composer caps at the line 43 tax). NO credit for Pennsylvania-reciprocal WAGES (the PA/NJ agreement) — Philadelphia wage tax DOES qualify." +} - added
Input schema / properties / njCollegeDependentsAdded value: +{ + "description": "line 12 count: dependents under 22 attending college full-time (five months, half support) — $1,000 each ON TOP of the $1,500 line 10/11 exemption (use the shared dependents input for the $1,500 count)", + "type": "integer" +} - added
Input schema / properties / njConservationContributionAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 33 qualified conservation contribution (NJ land, federal amount)" +} - added
Input schema / properties / njDispositionNetAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 19 net gains from disposition of property (Schedule NJ-DOP; NO capital-gain preference, NO loss carryover; negative allowed — suppressed)" +} - added
Input schema / properties / njDividendsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 17 dividends" +} - added
Input schema / properties / njDomesticPartnerAdded value: +{ + "description": "registered NJ domestic partner claimed as a line 6 regular exemption (+$1,000)", + "type": "boolean" +} - added
Input schema / properties / njEitcAgeDecoupledAdded value: +{ + "description": "flat-$260 NJEITC attested: 18+, no qualifying child, met all federal EIC requirements except age, not claimed as a dependent (NJ eliminated both federal age limits)", + "type": "boolean" +} - added
Input schema / properties / njEitcOverrideAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OVERRIDE: us.nj.eitc oracle answer — wins over the composer's 40%-of-federalEITC / $260 computation" +} - added
Input schema / properties / njExcessDiAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 60 excess disability insurance withheld (over $380.42; NJ-2450)" +} - added
Input schema / properties / njExcessFliAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 61 excess family leave insurance withheld (over $545.82; NJ-2450)" +} - added
Input schema / properties / njExcessUiWfSwfAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 59 excess UI/WF/SWF withheld (two+ employers over $184.02; Form NJ-2450)" +} - added
Input schema / properties / njFederalCdccAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "the federal Form 2441 child and dependent care credit — enables the line 64 NJ CDCC (us.nj.cdcc: 50%→10% of it by NJ taxable income, $150,000 cap)" +} - added
Input schema / properties / njGamblingNetAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 24 net gambling winnings (losses net WITHIN the category; NJ Lottery prizes of $10,000 or less are exempt)" +} - added
Input schema / properties / njGoldStarCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 47 Gold Star Family Counseling Credit (hours × TRICARE rate)" +} - added
Input schema / properties / njHezDeductionAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 34 Health Enterprise Zone deduction (TB-56)" +} - added
Input schema / properties / njMedicalExpensesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "unreimbursed medical expenses (Worksheet F line 1) — the composer applies the 2%-of-line-29 floor" +} - added
Input schema / properties / njMfsSameHomeAdded value: +{ + "description": "MFS and both spouses maintained the SAME main home — halves the property-tax deduction cap ($7,500) and credit ($25)", + "type": "boolean" +} - added
Input schema / properties / njNjbestContributionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 37a NJBEST 529 contributions (composer caps at $10,000; all three 37a-c require gross income ≤ $200,000)" +} - added
Input schema / properties / njNjclassPaidAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 37b NJCLASS loan principal+interest paid (composer caps at $2,500)" +} - added
Input schema / properties / njOrganDonationExpensesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 36 organ/bone-marrow donation expenses (composer caps at $10,000)" +} - added
Input schema / properties / njOrganDonorEmployerCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 48 employer of organ/bone-marrow donor credit (25% of salary, up to 30 days)" +} - added
Input schema / properties / njOtherIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 26 other income" +} - added
Input schema / properties / njOtherRetirementEligibleAdded value: +{ + "description": "line 28b Worksheet D gate: filer is 62 or older (the composer auto-computes the unclaimed exclusion when earned income ≤ $3,000 and line 27 ≤ $100,000)", + "type": "boolean" +} - added
Input schema / properties / njOtherRetirementExclusionAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OVERRIDE: hand-computed Worksheet D line 9 unclaimed exclusion (required for the $100,001-$150,000 percentage tiers)" +} - added
Input schema / properties / njPartnershipNetAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 21 distributive share of partnership income (NJK-1; negative suppressed)" +} - added
Input schema / properties / njPensionAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 20a TAXABLE pension/annuity/IRA distributions (NJ three-year rule / general rule basis recovery already applied; Social Security and Railroad Retirement are exempt and never entered)" +} - added
Input schema / properties / njPensionEligibleAdded value: +{ + "description": "line 28a gate: filer (or spouse if joint) was 62+ OR blind/disabled per Social Security guidelines on the last day of the year — enables the pension exclusion (us.nj.pension_exclusion)", + "type": "boolean" +} - added
Input schema / properties / njPensionEligibleAmountAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "joint returns where only ONE spouse is 62+/disabled: that spouse's share of line 20a (the exclusion never covers the ineligible spouse's pension). Defaults to all of line 20a." +} - added
Input schema / properties / njPensionExcludableAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 20b excludable (previously-taxed) pension/annuity/IRA amounts — display only" +} - added
Input schema / properties / njPropertyTaxesPaidAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 40a: property taxes due and paid on the principal residence (homeowners; after Worksheet G proration). Tenants: use njRentPaid instead and the composer applies the 18% conversion." +} - added
Input schema / properties / njRentPaidAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "rent paid on the NJ principal residence (tenants) — the composer enters 18% of it on line 40a" +} - added
Input schema / properties / njRentRoyaltyNetAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 23 net rents/royalties/patents/copyrights (negative suppressed)" +} - added
Input schema / properties / njScorpNetAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 22 net pro rata share of S corporation income (NJ-K-1; negative suppressed)" +} - added
Input schema / properties / njSeHealthInsuranceAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "self-employed health insurance deduction (Worksheet F line 5)" +} - added
Input schema / properties / njSeniorCountAdded value: +{ + "description": "line 7 count (0-2): filer/spouse 65 or older (born 1960 or earlier for TY2025) — $1,000 each", + "type": "integer" +} - added
Input schema / properties / njShelteredWorkshopCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 46 Sheltered Workshop Tax Credit (GIT-317)" +} - added
Input schema / properties / njSpecialExclusionAdded value: +{ + "description": "line 28b Special Exclusion attested: filer (and spouse if joint) will NEVER be eligible for Social Security/Railroad Retirement because the employer did not participate — adds $6,000 (MFJ/HOH/QSS) / $3,000 (single/MFS)", + "type": "boolean" +} - added
Input schema / properties / njSrpAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 53c Shared Responsibility Payment (Worksheet L/Schedule NJ-HCC, hand-computed from coverage months; composer zeroes it below the filing threshold)" +} - added
Input schema / properties / njTaxExemptInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 16b tax-exempt interest (reported, never taxed)" +} - added
Input schema / properties / njTaxableInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 16a taxable interest (NJ-exempt: federal obligations, NJ municipal bonds — exclude here, report on 16b)" +} - added
Input schema / properties / njTuitionPaidAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 37c NJ-institution tuition paid (composer caps at $10,000)" +} - added
Input schema / properties / njUnderpaymentInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 52 interest on underpayment of estimated tax (Form NJ-2210)" +} - added
Input schema / properties / njVeteranCountAdded value: +{ + "description": "line 9 count (0-2): filer/spouse honorably-discharged veterans — $6,000 each", + "type": "integer" +} - added
Input schema / properties / njWagesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 15: W-2 BOX 16 state wages total (falls back to the shared wages input; NJ taxes cafeteria/125 benefits and some items federal Box 1 excludes)" +} - added
Input schema / properties / njWwcCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "NJ-1040 line 62 Wounded Warrior Caregivers Credit (Schedule NJ-WWC; gross income ≤ $100,000 MFJ/HOH/QSS, ≤ $50,000 single/MFS)" +} - added
Input schema / properties / ohAge65OrOlderAdded value: +{ + "description": "filer (or spouse) was 65 or older at year end — $50 senior citizen credit (once per return; NOT available if the lump sum distribution credit was ever taken)", + "type": "boolean" +} - added
Input schema / properties / ohBothSpousesQualifyingIncomeAdded value: +{ + "description": "joint filing credit gate: EACH spouse has $500+ of qualifying income included in Ohio AGI (not interest/dividends/capital gains/rents, and not BID-deducted business income or deducted Social Security/retirement)", + "type": "boolean" +} - added
Input schema / properties / ohBusinessIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OH Schedule of Business Income Part 1 line 10: total business income (Schedule B/C/D/E/F + guaranteed payments to 20%+ owners + § 4797) — the composer runs the $250,000/$125,000 Business Income Deduction and the flat-3% line 6/8b arithmetic from it" +} - added
Input schema / properties / ohEicOverrideAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OVERRIDE: us.oh.eic oracle answer — wins over the composer's 30%-of-federalEITC line 13 computation" +} - added
Input schema / properties / ohFederalCdccAllowedAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "federal Form 2441 line 11 (liability-limited allowed credit) — the Ohio CDCC pays 25% of it when MAGI is $20,000-$39,999" +} - added
Input schema / properties / ohFederalCdccTentativeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "federal Form 2441 line 9c (tentative credit before the federal liability limit) — the Ohio CDCC pays 100% of it when MAGI < $20,000" +} - added
Input schema / properties / ohInterestPenaltyAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "IT 1040 line 11 interest penalty on underpayment of estimated tax (Ohio IT/SD 2210)" +} - added
Input schema / properties / ohNonresidentCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OH Schedule of Credits line 38 nonresident credit (Ohio IT NRC, hand-computed)" +} - added
Input schema / properties / ohOtherCreditsPreJfcAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OH Schedule of Credits lines 3+5+7+8 (lump sum retirement, lump sum distribution, displaced worker training, campaign contribution) — transcribed; they subtract BEFORE the joint filing credit's line-11 base" +} - added
Input schema / properties / ohResidentCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "OH Schedule of Credits line 39 resident credit for taxes paid other states (Ohio IT RC, hand-computed)" +} - added
Input schema / properties / ohRetirementIncomeAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "retirement income received on account of retirement still INCLUDED in Ohio AGI, both spouses combined (NOT Social Security/railroad/uniformed-services amounts — those are deducted and never qualify) — drives the retirement income credit (max $200)" +}
3 tool updates
- Changed
calculate_tax18 fields changed- added
Input schema / properties / state / properties / pa529ContributionsAdded value: +{ + "description": "PA Schedule O § 529 tuition-program contribution deduction, ALREADY capped by the caller at $19,000 per beneficiary per taxpayer-spouse (2025) — the corpus cannot see per-beneficiary detail. No deduction for 529-to-529 rollovers or beneficiary changes. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paAbleContributionsAdded value: +{ + "description": "PA Schedule O § 529A ABLE contribution deduction, capped by the caller at the annual federal gift-tax exclusion ($19,000 for 2025). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paBusinessNetIncomeAdded value: +{ + "description": "Taxpayer's own net income or LOSS from business/profession/farm (PA-40 line 4 class, after within-class netting of the taxpayer's own activities). Negative allowed; a loss never offsets other classes or the spouse. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paCompensationAdjustmentAdded value: +{ + "description": "PA compensation adjustment: W-2 Box 16 total MINUS Box 1 total (PA taxes 401(k)/elective deferrals as compensation; active-duty pay outside PA and other exempt items reduce it). May be negative. Default 0 assumes Box 16 = Box 1. Taxable early retirement-plan/IRA distributions under PA's cost-recovery method also go here. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paDividendIncomeAdded value: +{ + "description": "PA-taxable dividend income (PA-40 line 3, gross class) INCLUDING mutual-fund capital gains distributions, which PA classifies as dividends. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paEligibilityIncomeAddbacksAdded value: +{ + "description": "PA Schedule SP Section III nontaxable add-backs to eligibility income: nontaxable interest/dividends/gains, alimony received, insurance proceeds and inheritances (incl. 1099-R code-4 box 1), gifts/awards/prizes (incl. noncash PA Lottery), non-PA income, nontaxable military pay (not combat), excluded home-sale gain, nontaxable educational assistance, outside cash support. Do NOT add Social Security/RRB, eligible retirement benefits, child support, military pensions, workers' comp, personal-injury damages, or sick/disability pay. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paEstateTrustIncomeAdded value: +{ + "description": "PA-taxable income from estates or trusts (PA-40 line 7, Schedule J) — an estate or trust cannot distribute a loss, so this is never negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paGamblingWinningsAdded value: +{ + "description": "PA-taxable gambling and lottery winnings (PA-40 line 8, Schedule T) net of wager costs (PA Lottery ticket costs deductible only for tickets bought on/after 1/1/2016); noncash PA Lottery prizes are exempt. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paInterestIncomeAdded value: +{ + "description": "PA-taxable interest income (PA-40 line 2, gross class — no expenses; forfeited-interest penalties may offset within the class before entry). Includes commercial-annuity income taxable as PA interest. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paMsaHsaContributionsAdded value: +{ + "description": "PA Schedule O Medical Savings Account + Health Savings Account contribution deductions — limited to the amounts allowed for FEDERAL income tax purposes (supply the federal-allowed total). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paPropertyGainNetAdded value: +{ + "description": "Taxpayer's own net gain or LOSS from sale/exchange/disposition of property (PA-40 line 5 class). Negative allowed; no carryover, no cross-class or spousal offset. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paRentRoyaltyNetAdded value: +{ + "description": "Taxpayer's own net income or LOSS from rents/royalties/patents/copyrights (PA-40 line 6 class). Negative allowed; short-term rentals (<30 days) belong in the business class instead. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paResidentCreditAdded value: +{ + "description": "PA resident credit for income tax paid to other states (PA-40 line 22, Schedule G-L; not allowed for reciprocal-state compensation: IN, MD, NJ, OH, VA, WV). Subtracts from tax BEFORE Tax Forgiveness per Schedule SP Section IV. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paSpDependentChildrenAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "PA Schedule SP dependent CHILDREN count (natural/adopted/step; grandchild of a grandparent; foster child of a foster parent — never aunts/uncles/unrelated persons) claimable as federal dependents; adult qualifying children count. Raises the Tax Forgiveness eligibility-income threshold $9,500 each." +} - added
Input schema / properties / state / properties / paSpouseBusinessNetIncomeAdded value: +{ + "description": "Spouse's own net income or LOSS from business/profession/farm (PA-40 line 4 class). Negative allowed; never netted against the taxpayer's. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paSpousePropertyGainNetAdded value: +{ + "description": "Spouse's own net gain or LOSS from disposition of property (PA-40 line 5 class). Negative allowed; never netted against the taxpayer's. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paSpouseRentRoyaltyNetAdded value: +{ + "description": "Spouse's own net income or LOSS from rents/royalties/patents/copyrights (PA-40 line 6 class). Negative allowed; never netted against the taxpayer's. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paUnreimbursedBusinessExpensesAdded value: +{ + "description": "PA Schedule UE unreimbursed employee business expenses (PA-40 line 1b) — a compensation-class expense, not a line-10 deduction. In dollars.", + "type": [ + "number", + "string" + ] +}
- Changed
compute_return18 fields changed- added
Input schema / properties / state / properties / pa529ContributionsAdded value: +{ + "description": "PA Schedule O § 529 tuition-program contribution deduction, ALREADY capped by the caller at $19,000 per beneficiary per taxpayer-spouse (2025) — the corpus cannot see per-beneficiary detail. No deduction for 529-to-529 rollovers or beneficiary changes. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paAbleContributionsAdded value: +{ + "description": "PA Schedule O § 529A ABLE contribution deduction, capped by the caller at the annual federal gift-tax exclusion ($19,000 for 2025). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paBusinessNetIncomeAdded value: +{ + "description": "Taxpayer's own net income or LOSS from business/profession/farm (PA-40 line 4 class, after within-class netting of the taxpayer's own activities). Negative allowed; a loss never offsets other classes or the spouse. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paCompensationAdjustmentAdded value: +{ + "description": "PA compensation adjustment: W-2 Box 16 total MINUS Box 1 total (PA taxes 401(k)/elective deferrals as compensation; active-duty pay outside PA and other exempt items reduce it). May be negative. Default 0 assumes Box 16 = Box 1. Taxable early retirement-plan/IRA distributions under PA's cost-recovery method also go here. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paDividendIncomeAdded value: +{ + "description": "PA-taxable dividend income (PA-40 line 3, gross class) INCLUDING mutual-fund capital gains distributions, which PA classifies as dividends. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paEligibilityIncomeAddbacksAdded value: +{ + "description": "PA Schedule SP Section III nontaxable add-backs to eligibility income: nontaxable interest/dividends/gains, alimony received, insurance proceeds and inheritances (incl. 1099-R code-4 box 1), gifts/awards/prizes (incl. noncash PA Lottery), non-PA income, nontaxable military pay (not combat), excluded home-sale gain, nontaxable educational assistance, outside cash support. Do NOT add Social Security/RRB, eligible retirement benefits, child support, military pensions, workers' comp, personal-injury damages, or sick/disability pay. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paEstateTrustIncomeAdded value: +{ + "description": "PA-taxable income from estates or trusts (PA-40 line 7, Schedule J) — an estate or trust cannot distribute a loss, so this is never negative. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paGamblingWinningsAdded value: +{ + "description": "PA-taxable gambling and lottery winnings (PA-40 line 8, Schedule T) net of wager costs (PA Lottery ticket costs deductible only for tickets bought on/after 1/1/2016); noncash PA Lottery prizes are exempt. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paInterestIncomeAdded value: +{ + "description": "PA-taxable interest income (PA-40 line 2, gross class — no expenses; forfeited-interest penalties may offset within the class before entry). Includes commercial-annuity income taxable as PA interest. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paMsaHsaContributionsAdded value: +{ + "description": "PA Schedule O Medical Savings Account + Health Savings Account contribution deductions — limited to the amounts allowed for FEDERAL income tax purposes (supply the federal-allowed total). In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paPropertyGainNetAdded value: +{ + "description": "Taxpayer's own net gain or LOSS from sale/exchange/disposition of property (PA-40 line 5 class). Negative allowed; no carryover, no cross-class or spousal offset. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paRentRoyaltyNetAdded value: +{ + "description": "Taxpayer's own net income or LOSS from rents/royalties/patents/copyrights (PA-40 line 6 class). Negative allowed; short-term rentals (<30 days) belong in the business class instead. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paResidentCreditAdded value: +{ + "description": "PA resident credit for income tax paid to other states (PA-40 line 22, Schedule G-L; not allowed for reciprocal-state compensation: IN, MD, NJ, OH, VA, WV). Subtracts from tax BEFORE Tax Forgiveness per Schedule SP Section IV. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paSpDependentChildrenAdded value: +{ + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ], + "description": "PA Schedule SP dependent CHILDREN count (natural/adopted/step; grandchild of a grandparent; foster child of a foster parent — never aunts/uncles/unrelated persons) claimable as federal dependents; adult qualifying children count. Raises the Tax Forgiveness eligibility-income threshold $9,500 each." +} - added
Input schema / properties / state / properties / paSpouseBusinessNetIncomeAdded value: +{ + "description": "Spouse's own net income or LOSS from business/profession/farm (PA-40 line 4 class). Negative allowed; never netted against the taxpayer's. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paSpousePropertyGainNetAdded value: +{ + "description": "Spouse's own net gain or LOSS from disposition of property (PA-40 line 5 class). Negative allowed; never netted against the taxpayer's. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paSpouseRentRoyaltyNetAdded value: +{ + "description": "Spouse's own net income or LOSS from rents/royalties/patents/copyrights (PA-40 line 6 class). Negative allowed; never netted against the taxpayer's. In dollars.", + "type": [ + "number", + "string" + ] +} - added
Input schema / properties / state / properties / paUnreimbursedBusinessExpensesAdded value: +{ + "description": "PA Schedule UE unreimbursed employee business expenses (PA-40 line 1b) — a compensation-class expense, not a line-10 deduction. In dollars.", + "type": [ + "number", + "string" + ] +}
- Changed
compute_state_return85 fields changed- changed
Input schema / properties / additions / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / caAb5GrossIncomeAddition / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / caAb5NetLossAddition / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / caAmt / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / caAmtTaxesAddback / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / caBhst / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / caCalEITC / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / caDepreciationAddition / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / caEducatorExpensesDeducted / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / caHsaDeduction / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / caHsaTaxableDistribution / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / caIsoPreference / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / caItemizedDeductions / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / caRentersCredit / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / caTaxableEarlyDistribution / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / caYCTC / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / cityWithholding / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / estimatedPayments / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / extensionPayment / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / federalAGI / descriptionPrevious value: -"federal Form 1040 line 11 (from compute_return, verbatim)"New value: +"federal Form 1040 line 11 (from compute_return, verbatim). REQUIRED for il/va/ca/ny — the composer refuses without it. NOT used by PA (class-based: pass the pa* class fields instead)." - added
Input schema / properties / federalEITC / $refAdded value: +"#/properties/federalAGI" - removed
Input schema / properties / federalEITC / typeRemoved value: -"number" - changed
Input schema / properties / ilEitcOverride / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / ilK12Expenses / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / ilPropertyTaxPaid / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / ilTeacherExpenses / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / jurisdiction / enumPrevious value: -[ - "il", - "va", - "ca", - "ny" -]New value: +[ + "il", + "va", + "ca", + "ny", + "pa" +] - changed
Input schema / properties / nonrefundableCredits / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / nyHouseholdCredit / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / nycHouseholdCredit / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / nycTaxableIncome / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - added
Input schema / properties / pa529ContributionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Schedule O code T: § 529 contributions, ALREADY capped at $19,000 per beneficiary per taxpayer-spouse (2025); no deduction for rollovers/beneficiary changes" +} - added
Input schema / properties / paAbleContributionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Schedule O code A: PA ABLE contributions, capped at the federal gift-tax exclusion ($19,000 for 2025)" +} - added
Input schema / properties / paBusinessNetAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 4, TAXPAYER's own net business/profession/farm income or LOSS (negative allowed; within-class netting of the taxpayer's own activities only — a loss never crosses classes or spouses)" +} - added
Input schema / properties / paDividendsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 3: PA-taxable dividends INCLUDING mutual-fund capital-gain distributions (PA classifies them as dividends, not gains)" +} - added
Input schema / properties / paEligibilityAddbacksAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Schedule SP Section III nontaxable add-backs (gifts, inheritances, insurance proceeds, non-PA income, nontaxable military pay, excluded home-sale gain, educational assistance, outside cash support). NOT Social Security, eligible retirement benefits, child support, or workers' comp." +} - added
Input schema / properties / paEstateTrustAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 7: estate/trust income (PA Schedule J; an estate or trust cannot distribute a loss — never negative)" +} - added
Input schema / properties / paGamblingAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 8: gambling and lottery winnings net of wager costs (noncash PA Lottery prizes exempt; cash prizes taxable)" +} - added
Input schema / properties / paGrossCompensationAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 1a: W-2 BOX 16 total (NOT Box 1 — 401(k)/elective deferrals are PA-taxable; eligible retirement distributions are exempt and excluded). Falls back to the shared wages input when omitted (composer discloses). Include taxable early-distribution amounts under the cost-recovery method." +} - added
Input schema / properties / paInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 2: PA-taxable interest (gross class — no expenses; includes commercial-annuity interest taxable as PA interest)" +} - added
Input schema / properties / paMsaHsaContributionsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Schedule O codes M/H: MSA + HSA contributions at the federally-allowed amounts" +} - added
Input schema / properties / paNrk1WithholdingAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 17: nonresident tax withheld from PA Schedule(s) NRK-1" +} - added
Input schema / properties / paPenaltiesInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 27: penalties and interest incl. estimated-underpayment penalty (REV-1630)" +} - added
Input schema / properties / paPropertyNetAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 5, taxpayer's own net gain/loss from sale/exchange/disposition of property (negative allowed; no carryover)" +} - added
Input schema / properties / paRentRoyaltyNetAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 6, taxpayer's own net rents/royalties/patents/copyrights (short-term rentals under 30 days are BUSINESS income, line 4)" +} - added
Input schema / properties / paResidentCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 22: resident credit for tax paid other states (Schedule G-L; not for reciprocal-state compensation: IN/MD/NJ/OH/VA/WV). Subtracts BEFORE Tax Forgiveness — the composer handles the ordering." +} - added
Input schema / properties / paScheduleDcCreditAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 23 component: the Child and Dependent Care Enhancement credit — pass us.pa.cdcc's computed answer (= 100% of the federal Form 2441 line 9a tentative credit; refundable)" +} - added
Input schema / properties / paScheduleOcCreditsAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 23 component: Schedule OC restricted credits total (transcribed; no oracle target)" +} - added
Input schema / properties / paSpDependentChildrenAdded value: +{ + "description": "Schedule SP dependent CHILDREN count (child/stepchild/adopted; grandchild of a grandparent; foster child of a foster parent — never other relatives) claimable as federal dependents; each adds $9,500 to the Tax Forgiveness eligibility-income threshold", + "type": "integer" +} - added
Input schema / properties / paSpouseBusinessNetAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 4, SPOUSE's own net business income or loss (kept separate: PA never nets one spouse's loss against the other's income)" +} - added
Input schema / properties / paSpousePropertyNetAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 5, spouse's own net property gain/loss" +} - added
Input schema / properties / paSpouseRentRoyaltyNetAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 6, spouse's own net rent/royalty amount" +} - added
Input schema / properties / paStudentLoanInterestAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "Schedule O code S: student loan interest PAID (new deduction for 2025; the composer caps at $2,500 — pass the uncapped amount)" +} - added
Input schema / properties / paUnreimbursedExpensesAdded value: +{ + "$ref": "#/properties/federalAGI", + "description": "PA-40 line 1b: Schedule UE unreimbursed employee business expenses (a compensation-class expense, never a line-10 deduction)" +} - changed
Input schema / properties / priorYearOverpaymentCredited / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / refundableCredits / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / spouseStateWithholding / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / stateWithholding / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / subtractions / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / taxableSocialSecurity / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / unemploymentCompensation / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / useTax / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaAgeDeduction / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaFamilyVagi / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaItemizedCasualty / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaItemizedCharitable / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaItemizedGambling / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaItemizedInvestmentInterest / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaItemizedMedical / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaItemizedMortgageInterest / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaItemizedOther / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaItemizedOtherTaxes / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaItemizedPersonalPropertyTaxes / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaItemizedRealEstateTaxes / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaItemizedSalesTaxes / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaItemizedStateLocalIncomeTaxes / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaRefundableEitc / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaScheduleAdjDeductions / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaSpouseTaxAdjustment / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaSpouseVagi / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / vaYourVagi / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / wages / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / yonkersSurcharge / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / properties / yonkersWithholding / $refPrevious value: -"#/properties/federalEITC"New value: +"#/properties/federalAGI" - changed
Input schema / requiredPrevious value: -[ - "jurisdiction", - "federalAGI", - "asOf" -]New value: +[ + "jurisdiction", + "asOf" +]
15 tool updates
- First observed
calculate_business_tax - First observed
calculate_fiduciary_tax - First observed
calculate_tax - First observed
compare_filing_statuses - First observed
compute_return - First observed
compute_state_return - First observed
determine_dependent - First observed
explain_rule - First observed
find_tax_cliffs - First observed
is_tipped_occupation - First observed
list_input_facts - First observed
lookup_tax_parameter - First observed
search_tax_rules - First observed
verify_fact - First observed
verify_tax_claim
Frequently Asked Questions
Claiming proves that you control a remote MCP connector. It does not move, proxy, or interrupt the server.
Open the connector listing, choose Claim ownership, and sign in to Glama.
Complete one verification method:
GitHub identity — fastest for official registry listings. For a namespace such as
io.github.alice/server, link the matching GitHub user, then choose Claim with GitHub. An organization namespace such asio.github.acme/serveralso needs that organization to have installed the Glama AI GitHub App and approved its permissions, because GitHub discloses organization membership only to apps it has installed. Use HTTP or DNS when it has not.HTTP challenge — works when you can deploy a public file. Generate a token, publish the exact JSON Glama shows at
/.well-known/glama.jsonon the same origin as the connector, then choose Check HTTP challenge.DNS challenge — works when you control DNS but cannot change the server. Generate a token, create the exact TXT record Glama shows, wait for it to propagate, then choose Check DNS challenge.
After verification, Glama sends a confirmation email and gives you access to listing details, thumbnails, health checks, and analytics. Keep the HTTP file or DNS record in place: Glama periodically checks it and ownership remains verified while the token is discoverable.
The HTTP ownership file has this structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"claim": "glama_claim_..."
}Claim tokens are opaque, stable, and bound to the signed-in Glama account. They contain no email address or other personal information. If Glama can no longer discover a verified HTTP or DNS token, it starts a seven-day grace period before removing claim-based access. Restore the same token during that period to keep ownership verified. Never publish an email address, Glama session token, GitHub token, or connector credential as ownership proof.
If verification fails, confirm that you copied the current token exactly. The HTTP file must be public, return valid JSON with a successful HTTP response, and stay on the connector's origin. DNS changes may need more time to propagate. A claim cannot transfer to a different origin or hostname: if the connector target changes, Glama starts the grace period and the new target must be claimed separately after the previous claim is released.
For a connector linked to the official MCP Registry, registry updates continue to replace its name, description, and URL by default. After claiming, open Manage connector and enable Use Glama listing details as the source of truth if edits made on Glama should be preserved. Categories and thumbnails are always managed on Glama; registry linkage and technical connection settings continue to sync.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
To improve your MCP server's ranking:
Claim ownership of the server listing
Complete the server profile with an accurate description and thumbnail
Provide a test profile so Glama can connect to and evaluate the server
Keep tool definitions clear and complete to earn a high Tool Definition Quality Score (TDQS)
Route real usage through the Glama Gateway; more recorded successful server uses also improve the ranking
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Connectors
Sourced Italian tax tools for AI agents: cited primary-source search + a deterministic tax engine.
Current source-cited 2026 US tax constants and calculators for AI agents; every answer cites IRS.
- taxlocusOAuthcom.taxlocus
US sales tax for AI agents: rates, economic nexus, taxability, filing. Citation-backed.
Machine-readable Japanese crypto-asset tax rules for AI agents: rules-as-code with citations, x402.
Related MCP Servers
AlicenseAqualityAmaintenanceOpen-source, accountant-verified tax computation skills for AI agents. 261+ skills across 172+ jurisdictions covering income tax, VAT/GST, payroll, corporate tax, crypto, and cross-border planning. Every skill is verified section-by-section by licensed CPAs and chartered accountants. 3 tools (list_skills, get_skill, get_skill_sections) and 1 prompt (skill-review).3362AGPL 3.0- FlicenseNot gradedqualityBmaintenance24 free personal-finance and macro tools (mortgage, paycheck, tax, FRED, BLS) for LLM agents. Zero API keys, stdio transport, source-cited from IRS, Federal Reserve, BLS, Treasury, and Freddie Mac.-
- AlicenseNot gradedqualityCmaintenanceExposes machine-readable Japanese crypto-asset tax rules with statutory citations, tax parameters, and transition logic for AI agents.MIT
- AlicenseNot gradedqualityDmaintenanceAI agent commerce platform — 141 tools for payments, escrow, identity, marketplace, and Z3 formal verificationMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.
TDQS
The compute tools are well-routed — calculate_tax explicitly directs business entities and fiduciaries to their own calculators — but verify_fact and verify_tax_claim are near-duplicates that differ only in whether the number being checked is a law parameter or a computed tax amount, and calculate_tax versus compute_return both accept the same individual-return input, distinguished only by output granularity. These two pairs create real misselection risk despite the detailed descriptions.
Every tool uses a snake_case verb-first pattern: calculate_*, compute_*, compare_*, determine_*, explain_*, find_*, list_*, lookup_*, search_*, verify_*. The single outlier, is_tipped_occupation, still follows the verb-first snake_case convention, so there is no mixing of styles.
Fifteen tools is at the top of the well-scoped band, but the domain is enormous — federal individual, business, and fiduciary computation, an 18-state return composer, and a citation-backed tax-law corpus with search, explanation, and verification utilities. Each tool has a distinct job, and the count feels lean rather than bloated for the stated scope.
The computational lifecycle is well covered: individual liability, the full 1040 line set, entity and fiduciary variants, state returns, filing-status comparison, dependent determination, and self-verification of any produced number. Minor gaps remain — only 18 of 50 states are modeled, and transfer taxes (Forms 706/709), payroll/FICA, and international forms are absent — but the tools refuse loudly on unmodeled territory rather than failing silently.