Skip to main content
Glama
dma9527

irs-taxpayer-mcp

by dma9527

๐Ÿ›๏ธ irs-taxpayer-mcp

The most thorough open-source tax assistant for US individual taxpayers โ€” powered by Model Context Protocol.

License: MIT CI npm TypeScript MCP

English | ไธญๆ–‡ | Espaรฑol | ๆ—ฅๆœฌ่ชž


โš ๏ธ Disclaimer: This tool provides estimates for educational and informational purposes only. It does not constitute tax, legal, or financial advice. Always consult a qualified tax professional.

Legal Notice: This software is provided "as is" without warranty of any kind. The authors and contributors are not tax professionals, CPAs, enrolled agents, or attorneys. No attorney-client, CPA-client, or fiduciary relationship is created by using this software. Tax laws change frequently and vary by jurisdiction. The calculations may contain errors, omissions, or may not reflect the most recent legislative changes. You are solely responsible for your tax filing decisions. The authors disclaim all liability for any damages arising from the use of this software. See DISCLAIMER.md for full legal notice.

Why This MCP?

Tax season is stressful. You're juggling W-2s, 1099s, deductions, credits, and trying to figure out if you should itemize or take the standard deduction. You Google "SALT deduction limit 2025" and get 10 conflicting articles.

This MCP server puts a tax-aware assistant right inside your AI chat. Ask it anything about your tax situation in plain language, and get precise, up-to-date answers โ€” with all calculations running locally on your machine. No data leaves your computer. No IRS login needed. No SSN required.

It knows about the One Big Beautiful Bill Act (2025), the latest bracket adjustments, SALT cap changes, and every major credit and deduction. It's like having a knowledgeable friend who happens to be a tax nerd.

Related MCP server: OpenAccountants

๐Ÿ”’ Privacy Architecture

Layer

Design

All tax calculations

100% local execution โ€” zero network calls

User data storage

Stateless โ€” nothing saved between calls

Authentication

Zero credentials โ€” no SSN, no IRS login

Remote data

Only public IRS info (form descriptions, deadlines)

Telemetry

None โ€” no analytics, no tracking, no logging

Source code

Fully open-source (MIT) โ€” audit every calculation

โšก Getting Started

Step 1: Add to your AI assistant

Add this to your MCP client configuration:

Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "irs-taxpayer": {
      "command": "npx",
      "args": ["-y", "irs-taxpayer-mcp"]
    }
  }
}

Kiro (.kiro/settings/mcp.json):

{
  "mcpServers": {
    "irs-taxpayer": {
      "command": "npx",
      "args": ["-y", "irs-taxpayer-mcp"]
    }
  }
}

Cursor โ€” same format in Cursor's MCP settings.

Step 2: Restart your AI assistant

After saving the config, restart the app. The MCP server will auto-download and connect.

Step 3: Start asking tax questions

That's it. Just chat naturally:

  • "Calculate my federal tax: $150k income, married filing jointly, 2 kids"

  • "Compare California vs Texas vs Washington for $200k income"

  • "I'm a freelancer making $80k โ€” what are my quarterly estimated taxes?"

  • "What tax credits am I eligible for? AGI $60k, single, one child"

  • "Should I itemize or take the standard deduction? I pay $15k in mortgage interest and $12k in state taxes"

  • "Explain the Backdoor Roth IRA strategy"

  • "How much is the EITC for a family of 4 earning $35k?"

  • "I exercised ISOs this year โ€” will I owe AMT?"

  • "Help me plan my year-end tax moves. I have a 401k and HSA."

Alternative: Docker

docker build -t irs-taxpayer-mcp .
docker run -i irs-taxpayer-mcp

Alternative: SSE Transport

npx irs-taxpayer-mcp --sse --port 3000
# Health check: http://localhost:3000/health
# SSE endpoint: http://localhost:3000/sse

๐Ÿ› ๏ธ Tools (39)

Federal Tax Calculations

Tool

What it does

calculate_federal_tax

Full federal tax with bracket breakdown, AMT, NIIT (3.8%), Additional Medicare Tax (0.9%), QBI deduction, SE tax, capital gains, CTC

get_tax_brackets

Tax brackets and standard deduction by filing status and year

compare_filing_statuses

Side-by-side comparison of all 4 filing statuses for the same income

estimate_quarterly_tax

Estimated quarterly payments (1040-ES) with safe harbor guidance

calculate_total_tax

Combined federal + state tax in one call, with take-home pay and monthly income

calculate_w4_withholding

Per-paycheck withholding estimate with step-by-step W-4 form recommendations

Deduction Analysis

Tool

What it does

list_deductions

Browse all deductions with eligibility rules, limits, and forms

standard_vs_itemized

Compare standard vs itemized with year-specific SALT cap ($10K for TY2024, $40K for TY2025)

Tax Credits

Tool

What it does

list_tax_credits

20+ federal credits: CTC, EITC, AOTC, EV, solar, saver's credit, and more

check_credit_eligibility

Quick screening based on your income, family, and situation

calculate_eitc

Precise EITC calculation with phase-in/plateau/phase-out for 0-3 children

Retirement & Strategy

Tool

What it does

get_retirement_accounts

IRA, Roth, 401k, SEP, Solo 401k, HSA, 529 โ€” limits, tax treatment, tips

get_retirement_strategy

Backdoor Roth, Mega Backdoor, Roth Conversion Ladder, Tax Loss/Gain Harvesting

Tax Planning & Scenarios

Tool

What it does

get_tax_planning_tips

Personalized year-end optimization: 401k maxing, HSA, Roth conversion, tax-loss harvesting, charitable bunching

compare_tax_years

Compare TY2024 vs TY2025 to see how bracket changes and OBBB affect your tax

estimate_self_employment_tax

Full SE tax breakdown: Schedule C profit, SE tax, QBI deduction, quarterly payments, SEP/Solo 401k limits

analyze_mortgage_tax_benefit

Mortgage interest + property tax deduction analysis with year-specific SALT cap

analyze_education_tax_benefits

AOTC vs Lifetime Learning Credit comparison, student loan deduction, 529 plan guidance

State Taxes

Tool

What it does

get_state_tax_info

Rates, brackets, and details for all 50 states + DC

estimate_state_tax

Estimate state tax liability with state-specific deductions

compare_state_taxes

Compare multiple states side-by-side (great for relocation decisions)

list_no_income_tax_states

All 9 states with no income tax

IRS Information

Tool

What it does

get_tax_deadlines

Key IRS dates and deadlines by tax year

check_refund_status

How to check your refund (guidance only โ€” no IRS account access)

get_irs_form_info

Info about 14 common IRS forms (1040, W-2, 1099s, Schedules, etc.)

OBBB Act (2025) Tools

Tool

What it does

calculate_obbb_deductions

Calculate all 4 new OBBB deductions: tips, overtime, senior bonus, auto loan interest

what_changed_between_tax_years

Full diff between TY2024 and TY2025 โ€” brackets, deductions, credits, SALT, OBBB provisions

Full Reports & Analysis

Tool

What it does

generate_full_tax_report

TurboTax-style full report: income โ†’ deductions โ†’ federal โ†’ FICA โ†’ state โ†’ take-home โ†’ refund

process_1099_income

Process multiple 1099 forms (NEC, INT, DIV, B, MISC) with tax impact by category

get_personalized_tax_calendar

Personalized deadlines based on your situation (self-employed, extension, investments)

analyze_paycheck

Verify paycheck withholding accuracy, project annual tax, suggest W-4 adjustments

compare_mfj_vs_mfs

MFJ vs MFS comparison with tax diff and all MFS restriction warnings

simulate_tax_scenario

What-if modeling: income changes, relocation, Roth conversion, 401k, filing status

assess_audit_risk

IRS audit risk scoring with red flag identification and mitigation tips

get_tax_document_checklist

Personalized filing document checklist based on your income and life events

optimize_capital_gains

Investment lot analysis: 0% bracket harvesting, tax-loss harvesting, wash sale warnings

plan_retirement_withdrawals

Optimal withdrawal order (Traditional/Roth/Taxable), RMD calculation, Roth conversion

plan_multi_year_taxes

3-5 year tax projection with bracket management and age milestones

analyze_relocation_taxes

In-depth state relocation analysis with multi-year savings and SALT impact

๐Ÿ“Š Tax Year Coverage

TY2024 (filing now)

All data from IRS Revenue Procedure 2023-34. Standard deduction $14,600 (single) / $29,200 (MFJ). CTC $2,000. SALT cap $10,000.

TY2025 (updated for One Big Beautiful Bill Act)

Reflects OBBB signed July 4, 2025:

  • Standard deduction: $15,750 (single) / $31,500 (MFJ) / $23,625 (HoH)

  • Child Tax Credit: $2,200 per child (up from $2,000)

  • SALT cap: $40,000 for AGI โ‰ค $500K (was $10,000)

  • New deductions: tips ($25K), overtime ($12.5K), senior bonus ($6K age 65+), auto loan interest ($10K)

  • 401k catch-up: $11,250 for ages 60-63 (SECURE 2.0)

๐Ÿงฎ Calculation Engine

Feature

Status

Federal income tax (7 brackets ร— 4 statuses)

โœ…

Long-term capital gains (0%/15%/20%)

โœ…

Self-employment tax (SS + Medicare)

โœ…

Net Investment Income Tax (3.8% NIIT)

โœ…

Additional Medicare Tax (0.9%)

โœ…

Alternative Minimum Tax (AMT)

โœ…

QBI Deduction (Section 199A)

โœ…

Child Tax Credit with phase-out

โœ…

EITC precise calculation

โœ…

Standard vs itemized deduction

โœ…

Year-specific SALT cap (OBBB)

โœ…

State taxes (50 states + DC)

โœ…

20+ federal tax credits

โœ…

Retirement accounts & strategies

โœ…

W-4 withholding calculator

โœ…

All data points cite IRS Revenue Procedures, IRC sections, and relevant legislation (TCJA, SECURE 2.0, OBBB).

๐Ÿ—๏ธ Build from Source

git clone https://github.com/dma9527/irs-taxpayer-mcp.git
cd irs-taxpayer-mcp
npm install
npm run build
npm start          # stdio mode
npm run dev        # development mode (tsx)

๐Ÿ› Found a Bug?

๐Ÿค Contributing

Contributions welcome. Please ensure:

  • All tests pass (npm test)

  • Build succeeds (npm run build)

  • No any types in TypeScript

  • Data changes include IRS source citations

See CONTRIBUTING.md for full guidelines.

๐Ÿ“„ License

MIT

Available Tools

43 tools
analyze_education_tax_benefitsC

Compare education tax benefits: AOTC vs Lifetime Learning Credit, student loan interest deduction, and 529 plan advantages.

ParametersJSON Schema
NameRequiredDescriptionDefault
filingStatusYes
agiYesAdjusted Gross Income
tuitionPaidYesTuition and qualified expenses paid
isUndergradYesIs the student in first 4 years of undergrad?
yearsAOTCClaimedNoYears AOTC already claimed (max 4)
studentLoanInterestNoStudent loan interest paid this year
has529PlanNoContributing to or using a 529 plan
contribution529No529 plan contribution this year

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool 'compares' benefits, implying a read-only analysis, but doesn't clarify if it performs calculations, returns recommendations, or has limitations like income thresholds or tax year applicability. For a tax tool with complex inputs and no output schema, this lack of behavioral detail is a significant gap.

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

Conciseness5/5

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

The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. It lists the specific benefits compared, making every part of the sentence contribute directly to understanding the tool's scope. There's no redundancy or fluff.

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

Completeness2/5

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

Given the tool's complexity (8 parameters, tax-related logic) and lack of annotations and output schema, the description is insufficient. It doesn't explain what the comparison entails (e.g., side-by-side analysis, recommendations, calculations), how results are returned, or any behavioral traits like accuracy limits or dependencies. For a tool with this level of sophistication, more context is needed to guide effective use.

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

Parameters3/5

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

Schema description coverage is high at 88%, providing good parameter documentation. The description adds minimal value beyond the schema by listing the benefits compared (AOTC, Lifetime Learning Credit, etc.), which hints at how parameters like 'isUndergrad' and 'yearsAOTCClaimed' relate to these benefits. However, it doesn't explain parameter interactions or provide additional context, so it meets the baseline for high schema coverage.

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

Purpose4/5

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

The description clearly states the tool's purpose: comparing education tax benefits including AOTC, Lifetime Learning Credit, student loan interest deduction, and 529 plans. It specifies the verb 'compare' and the resource 'education tax benefits,' making the function unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'list_tax_credits' or 'calculate_federal_tax,' which might also involve education credits, so it doesn't reach a perfect 5.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, context (e.g., for tax planning vs. filing), or compare to siblings like 'calculate_federal_tax' or 'list_tax_credits.' This leaves the agent with little direction on appropriate usage scenarios.

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

analyze_mortgage_tax_benefitC

Analyze the tax benefit of mortgage interest deduction and property taxes. Compares itemizing with mortgage vs taking the standard deduction.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year
filingStatusYes
grossIncomeYes
mortgageInterestYesAnnual mortgage interest paid
propertyTaxesYesAnnual property taxes paid
stateIncomeTaxesNoState/local income taxes paid
otherItemizedNoOther itemized deductions (charity, medical, etc.)
mortgageBalanceNoCurrent mortgage balance
interestRateNoMortgage interest rate (e.g., 0.065 for 6.5%)

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It states what the tool does but doesn't describe how it behaves: no information about computational approach, assumptions made, accuracy limitations, whether it's a simulation or calculation, what the output format might be, or error conditions. For a complex tax analysis tool with 9 parameters, this is a significant gap.

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

Conciseness4/5

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

The description is appropriately concise at two sentences. The first sentence establishes the core purpose, and the second adds important comparative context. There's no wasted language, though it could be slightly more front-loaded by mentioning the comparison aspect earlier.

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

Completeness2/5

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

For a complex tax analysis tool with 9 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain what the analysis produces (comparison results, recommendations, numerical outputs), how the comparison is presented, what assumptions are made about tax laws, or how state/local taxes factor in. The description alone is insufficient for an agent to understand what to expect from invoking this tool.

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

Parameters3/5

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

Schema description coverage is 78% (7 of 9 parameters have descriptions), so the baseline is 3. The description adds minimal value beyond the schema: it mentions mortgage interest deduction and property taxes (which map to two parameters) but doesn't explain relationships between parameters (e.g., how mortgageBalance and interestRate relate to mortgageInterest) or provide context about how these inputs drive the comparison analysis.

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

Purpose4/5

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

The description clearly states the tool's purpose: analyzing tax benefits of mortgage interest deduction and property taxes, with a comparison between itemizing and standard deduction. It uses specific verbs ('analyze', 'compares') and identifies the resources (mortgage interest, property taxes). However, it doesn't explicitly differentiate from sibling tools like 'standard_vs_itemized' or 'compare_filing_statuses' which might have overlapping functionality.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'standard_vs_itemized' (which appears to cover similar ground) or 'calculate_federal_tax' (which might incorporate this analysis). There's no indication of prerequisites, limitations, or appropriate contexts for use beyond the basic function stated.

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

analyze_paycheckB

Analyze a paycheck to verify withholding accuracy. Input your pay stub numbers and see if your employer is withholding the right amount.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year
filingStatusYes
payFrequencyYes
grossPayYesGross pay this period
federalWithheldYesFederal tax withheld this period
stateWithheldNoState tax withheld this period
socialSecurityWithheldNoSocial Security withheld
medicareWithheldNoMedicare withheld
retirement401kNo401k/403b pre-tax contribution this period
hsaContributionNoHSA contribution this period
stateCodeNo

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the tool analyzes for accuracy but doesn't specify whether it performs calculations, returns a boolean result, provides explanations, or handles edge cases like multiple states. This leaves significant gaps in understanding how the tool behaves beyond its basic purpose.

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

Conciseness5/5

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

The description is two concise sentences that front-load the core purpose ('analyze a paycheck to verify withholding accuracy') and follow with input/output context. Every word contributes directly to understanding the tool's function without redundancy or fluff.

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

Completeness3/5

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

For a tool with 11 parameters, no annotations, and no output schema, the description is minimally adequate. It covers the purpose and input context but lacks details on behavioral traits, output format, error handling, or limitations given the complexity. It meets basic requirements but leaves gaps in fully contextualizing the tool's operation.

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

Parameters3/5

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

Schema description coverage is 73%, providing good documentation for most parameters. The description adds minimal value beyond the schema by implying that inputs are 'pay stub numbers' and the tool verifies 'withholding accuracy,' but it doesn't clarify parameter relationships or usage nuances. This meets the baseline for adequate coverage without significant enhancement.

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

Purpose5/5

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

The description clearly states the specific action ('analyze a paycheck to verify withholding accuracy') and the resource ('paycheck'/'pay stub numbers'), distinguishing it from sibling tools that focus on tax calculations, benefits, or planning rather than paycheck verification. It precisely communicates the tool's function without being tautological.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives like 'calculate_w4_withholding' or 'calculate_federal_tax', nor does it mention prerequisites or exclusions. It implies usage for paycheck verification but lacks explicit context for tool selection among the many tax-related siblings.

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

analyze_relocation_taxesC

In-depth relocation tax analysis comparing two states. Includes state income tax, effective combined rate, local taxes, and multi-year savings projection.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year
filingStatusYes
grossIncomeYesAnnual gross income
fromStateYesCurrent state code
toStateYesTarget state code
selfEmploymentIncomeNo
capitalGainsNo
dependentsNo
yearsToProjectNoYears to project savings (default: 5)
incomeGrowthRateNoAnnual income growth rate (e.g., 0.03 for 3%)

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. While it mentions the analysis includes specific components, it doesn't describe what the tool actually returns (format, structure), whether it makes assumptions about tax laws, accuracy limitations, or computational requirements. For a complex 10-parameter tool with no annotations, this is insufficient.

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

Conciseness4/5

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

The description is efficiently structured in a single sentence that front-loads the core purpose and lists key components. Every phrase adds value, though it could potentially benefit from a second sentence about output format or limitations given the tool's complexity.

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

Completeness2/5

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

For a complex 10-parameter tax analysis tool with no annotations and no output schema, the description is incomplete. It doesn't explain what the analysis output looks like, accuracy considerations, data sources, or limitations. The description covers what the analysis includes but not how the tool behaves or what it returns, which is inadequate for this level of complexity.

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

Parameters3/5

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

Schema description coverage is 60%, so the description needs to compensate for gaps. The description mentions 'multi-year savings projection' which relates to 'yearsToProject' and 'incomeGrowthRate', and 'relocation' context relates to 'fromState' and 'toState'. However, it doesn't explain parameters like 'selfEmploymentIncome', 'capitalGains', or 'dependents' that lack schema descriptions. The description adds some context but doesn't fully compensate for the 40% coverage gap.

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

Purpose4/5

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

The description clearly states the tool performs 'in-depth relocation tax analysis comparing two states' with specific components listed (state income tax, effective combined rate, local taxes, multi-year savings projection). It distinguishes from siblings like 'compare_state_taxes' by focusing specifically on relocation scenarios, though the distinction could be more explicit.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives like 'compare_state_taxes' or 'simulate_tax_scenario'. It mentions what the analysis includes but gives no context about appropriate scenarios, prerequisites, or limitations compared to other tax tools available.

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

assess_audit_riskB

Evaluate your IRS audit risk based on your tax return profile. Identifies red flags, scores your risk level, and provides tips to reduce audit exposure.

ParametersJSON Schema
NameRequiredDescriptionDefault
filingStatusYes
grossIncomeYesTotal gross income
selfEmploymentIncomeNoSelf-employment income
cashBusinessNoIs your business cash-intensive (restaurant, salon, etc.)?
homeOfficeDeductionNoClaiming home office deduction?
charitableDonationsNoTotal charitable donations
charitableNonCashNoNon-cash charitable donations (clothing, property)
businessMealsNoBusiness meal deductions
vehicleDeductionNoVehicle/mileage deduction
rentalLossesNoRental property losses claimed
cryptoTransactionsNoHad cryptocurrency transactions?
foreignAccountsNoHave foreign bank accounts or assets?
largeRefundNoExpecting a very large refund?
eitcClaimedNoClaiming EITC?
roundNumbersNoAre most deductions round numbers ($5,000, $10,000)?

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden but provides only basic behavioral information. It mentions the tool evaluates, identifies red flags, scores risk, and provides tips, but doesn't disclose important behavioral traits like whether this is a read-only analysis (likely), whether it requires specific permissions, how the scoring works, what format the output takes, or any rate limits. The description doesn't contradict annotations (none exist), but it's insufficient for a mutation/analysis tool.

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

Conciseness4/5

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

The description is appropriately concise (two sentences) and front-loaded with the core purpose. Every sentence adds value: the first states what the tool does, the second elaborates on specific outputs. No wasted words, though it could potentially be structured to better highlight key behavioral aspects.

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

Completeness2/5

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

Given the complexity (15 parameters, no output schema, no annotations), the description is incomplete. It doesn't explain what the output looks like (risk score format, red flag details, tip structure), how comprehensive the analysis is, or any limitations. For a tool with this many inputs and no structured output documentation, the description should provide more context about what users can expect.

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

Parameters3/5

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

Schema description coverage is high (93%), so the baseline is 3. The description doesn't add any parameter-specific information beyond what's already in the schema descriptions. It mentions 'tax return profile' which aligns with the parameters, but provides no additional context about how specific parameters affect audit risk or which are most important.

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

Purpose5/5

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

The description clearly states the tool's purpose with specific verbs ('evaluate', 'identifies', 'scores', 'provides') and resources ('IRS audit risk', 'tax return profile', 'red flags', 'risk level', 'tips'). It distinguishes from sibling tools by focusing specifically on audit risk assessment rather than general tax calculation, analysis, or planning functions.

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

Usage Guidelines3/5

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

The description implies usage context ('based on your tax return profile') but doesn't explicitly state when to use this tool versus alternatives. Among sibling tools, there's no direct audit risk alternative mentioned, but tools like 'run_tax_health_check' or 'simulate_tax_scenario' might overlap. No explicit exclusions or prerequisites are provided.

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

calculate_eitcB

Calculate the exact Earned Income Tax Credit (EITC) amount. The EITC is one of the largest refundable credits for low-to-moderate income workers.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year (2024 or 2025)
filingStatusYes
earnedIncomeYesEarned income (wages, salary, self-employment)
agiYesAdjusted Gross Income
qualifyingChildrenYesNumber of qualifying children (0-3)
investmentIncomeNoInvestment income (interest, dividends, capital gains)

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool 'calculates' but doesn't clarify if this is a read-only operation, whether it requires authentication, what the output format might be, or any rate limits. The description adds minimal behavioral context beyond the basic action, which is insufficient for a tool with no annotations.

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

Conciseness5/5

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

The description is two sentences with zero waste: the first sentence directly states the tool's purpose, and the second adds useful background about the EITC's significance. It's front-loaded with the core functionality and avoids unnecessary elaboration, making it highly efficient.

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

Completeness3/5

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

The description is concise and clear for a calculation tool, but with no annotations and no output schema, it lacks details on behavioral aspects like mutability, error handling, or output format. The high schema coverage helps, but for a tool with 6 parameters and no structured safety hints, the description should ideally provide more context about what the calculation entails and any limitations.

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

Parameters3/5

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

The schema description coverage is 83% (high), with all parameters except 'filingStatus' having descriptions. The description adds no additional parameter semantics beyond what the schema provides, such as explaining relationships between parameters (e.g., how earnedIncome and AGI interact) or providing examples. Given the high schema coverage, the baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the specific verb 'calculate' and resource 'Earned Income Tax Credit (EITC) amount,' with additional context that it's 'exact' and provides background about the credit being 'one of the largest refundable credits for low-to-moderate income workers.' This distinguishes it from sibling tools like 'calculate_federal_tax' or 'list_tax_credits' by focusing specifically on EITC calculation.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives like 'calculate_federal_tax' or 'check_credit_eligibility.' It mentions the EITC's general purpose but doesn't specify scenarios, prerequisites, or exclusions for using this particular calculation tool, leaving the agent to infer usage from the tool name alone.

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

calculate_federal_taxA

Calculate federal income tax for an individual taxpayer. Supports TY2024 and TY2025. Includes bracket breakdown, effective/marginal rates, SE tax, NIIT, Additional Medicare Tax, QBI deduction, capital gains, and child tax credit. All calculations run locally โ€” no data is sent to any server.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year (2024 or 2025)
filingStatusYesFiling status
grossIncomeYesTotal gross income in USD
w2IncomeNoW-2 wage income
selfEmploymentIncomeNoSelf-employment income (Schedule C)
capitalGainsNoLong-term capital gains (can be negative for losses)
capitalGainsLongTermNoWhether capital gains are long-term (default: true)
shortTermCapitalGainsNoShort-term capital gains (taxed as ordinary income)
qualifiedBusinessIncomeNoQualified Business Income for Section 199A deduction
aboveTheLineDeductionsNoAbove-the-line deductions (HSA, student loan interest, etc.)
itemizedDeductionsNoTotal itemized deductions (if greater than standard deduction)
dependentsNoNumber of qualifying child dependents for Child Tax Credit
age65OrOlderNoTaxpayer is 65 or older
blindNoTaxpayer is blind
isoExerciseSpreadNoISO stock option exercise spread (for AMT calculation)
stateTaxDeductedNoState/local taxes included in itemized deductions (for AMT)

TDQS

A4/5.0
Behavior4/5

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

With no annotations provided, the description carries full burden. It effectively discloses key behavioral traits: the tool runs locally with no data transmission (privacy/security context), and lists comprehensive calculation components (bracket breakdown, various taxes, deductions, credits). However, it doesn't specify output format or calculation methodology details.

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

Conciseness5/5

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

Two efficient sentences: first establishes core purpose and scope, second adds crucial behavioral context about local execution. Every word earns its place with zero redundancy.

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

Completeness4/5

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

For a complex 16-parameter tax calculation tool with no annotations or output schema, the description provides strong purpose clarity and behavioral context. It adequately covers what the tool does and its privacy approach, though it could better explain when to use it versus sibling tools.

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

Parameters3/5

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

Schema description coverage is 100%, providing detailed parameter documentation. The description adds minimal parameter semantics beyond the schema, only implying that parameters relate to the listed calculation components. Baseline 3 is appropriate when schema does the heavy lifting.

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

Purpose5/5

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

The description clearly states the specific action ('calculate federal income tax'), target resource ('individual taxpayer'), and scope ('supports TY2024 and TY2025'). It distinguishes from siblings by focusing exclusively on federal tax calculation rather than state taxes, credits, or other tax-related analyses.

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

Usage Guidelines3/5

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

The description implies usage for federal tax calculations with specific tax years, but provides no explicit guidance on when to choose this tool versus alternatives like 'calculate_total_tax' or 'calculate_eitc'. No prerequisites or exclusions are mentioned.

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

calculate_obbb_deductionsC

Calculate all OBBB (One Big Beautiful Bill) new deductions for TY2025+: tips income deduction, overtime pay deduction, senior bonus deduction, and auto loan interest deduction. Shows which deductions you qualify for and the total tax savings.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year (2025+)
filingStatusYes
agiYesAdjusted Gross Income
ageNoTaxpayer age (needed for senior bonus)
spouseAgeNoSpouse age if MFJ
tipIncomeNoAnnual tip income from qualifying occupation
overtimePayNoAnnual overtime premium pay
autoLoanInterestNoInterest paid on qualifying US-assembled new vehicle loan
marginalRateNoYour marginal tax rate (for savings estimate, e.g. 0.22)

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden but only states what the tool calculates without disclosing behavioral traits. It doesn't mention whether this is a read-only calculation, if it requires authentication, rate limits, error conditions, or what format the results take. The phrase 'Shows which deductions you qualify for' hints at output but lacks detail.

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

Conciseness4/5

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

Two sentences efficiently cover purpose and output. The first sentence lists all deduction types clearly, and the second explains the tool's dual output (qualifications and savings). No wasted words, though it could be slightly more structured for readability.

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

Completeness3/5

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

For a 9-parameter calculation tool with no annotations and no output schema, the description is minimally adequate. It covers what's calculated but lacks details on output format, error handling, or dependencies. Given the complexity, it should do more to guide the agent on how results are structured and used.

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

Parameters3/5

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

Schema description coverage is high at 89%, so the baseline is 3. The description adds minimal value beyond the schema by naming the deduction types, which loosely maps to parameters like 'tipIncome' and 'autoLoanInterest', but doesn't explain parameter relationships or calculation logic. It doesn't compensate for the 11% coverage gap.

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

Purpose4/5

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

The description clearly states the tool calculates OBBB deductions for TY2025+, listing specific deduction types (tips income, overtime pay, senior bonus, auto loan interest). It distinguishes from siblings like 'list_deductions' by focusing on calculation rather than listing, but doesn't explicitly contrast with other calculation tools like 'calculate_total_tax'.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like 'calculate_total_tax' or 'list_deductions'. The description implies it's for TY2025+ OBBB deductions but doesn't specify prerequisites or exclusions, leaving the agent to infer context from parameter requirements.

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

calculate_total_taxC

Calculate combined federal + state tax for a complete picture of total tax liability. Returns federal breakdown, state tax, and combined totals in one call.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year (2024 or 2025)
filingStatusYesFiling status
grossIncomeYesTotal gross income in USD
stateCodeYesTwo-letter state code (e.g., 'CA', 'TX', 'NY')
w2IncomeNoW-2 wage income
selfEmploymentIncomeNoSelf-employment income
capitalGainsNoLong-term capital gains
capitalGainsLongTermNoWhether capital gains are long-term (default: true)
qualifiedBusinessIncomeNoQBI for Section 199A deduction
aboveTheLineDeductionsNoAbove-the-line deductions
itemizedDeductionsNoTotal itemized deductions
dependentsNoNumber of qualifying child dependents

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It states the tool returns federal breakdown, state tax, and combined totals, which is useful. However, it lacks critical behavioral details such as whether this is a simulation or actual filing, accuracy limitations, rate limits, or authentication requirements for a tax calculation tool with 12 parameters.

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

Conciseness4/5

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

The description is two sentences, front-loaded with the core purpose and followed by return details. It's efficient with zero waste, though slightly more context could improve completeness without sacrificing conciseness.

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

Completeness3/5

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

For a complex tax calculation tool with 12 parameters and no annotations or output schema, the description is minimally adequate. It covers the purpose and return structure but lacks behavioral transparency, usage guidelines, and output details, leaving gaps for an AI agent to understand full context.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema fully documents all 12 parameters. The description adds no parameter-specific information beyond implying the tool uses these inputs for combined tax calculation, which is minimal value. Baseline 3 is appropriate when schema does the heavy lifting.

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

Purpose4/5

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

The description clearly states the tool calculates combined federal and state tax liability, which is specific (verb+resource). It distinguishes from sibling tools like calculate_federal_tax and estimate_state_tax by emphasizing the combined calculation, though it doesn't explicitly name them for comparison.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives like calculate_federal_tax or estimate_state_tax. It mentions 'complete picture' but doesn't specify scenarios, prerequisites, or exclusions for usage.

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

calculate_w4_withholdingA

Calculate recommended W-4 withholding settings. Estimates per-paycheck federal tax and provides step-by-step W-4 form recommendations.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year (2024 or 2025)
filingStatusYesFiling status
annualSalaryYesAnnual salary from this job
payFrequencyYesHow often you get paid
otherIncomeNoOther annual income (interest, dividends, side gigs)
deductionsNoExpected itemized deductions (if more than standard)
dependentsNoNumber of qualifying child dependents
spouseWorksNoDoes your spouse also work?
multipleJobsNoDo you hold multiple jobs simultaneously?

TDQS

A3.7/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. While it mentions the tool 'calculates' and 'estimates,' it doesn't specify whether this is a read-only calculation, if it saves data, requires authentication, has rate limits, or what format the recommendations come in. For a tool with 9 parameters and no annotation coverage, this represents a significant gap 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.

Conciseness5/5

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

The description is perfectly concise with two clear sentences that front-load the core functionality. Every word earns its place: the first sentence states the primary purpose, and the second elaborates on the outputs. There's no redundancy or unnecessary information.

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

Completeness3/5

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

Given the tool's complexity (9 parameters, no output schema, no annotations), the description is adequate but incomplete. It clearly states what the tool does but lacks information about return values, error conditions, or behavioral constraints. For a calculation tool with significant input requirements, users would benefit from more context about what to expect from the output.

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

Parameters4/5

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

The schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds context by mentioning 'per-paycheck federal tax' which relates to the payFrequency parameter, and 'W-4 form recommendations' which connects to the overall purpose. However, it doesn't provide additional parameter-specific details beyond what's in the schema, so it meets but doesn't exceed the baseline expectation.

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

Purpose5/5

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

The description clearly states the tool's purpose with specific verbs ('calculate', 'estimates', 'provides') and resources ('W-4 withholding settings', 'per-paycheck federal tax', 'W-4 form recommendations'). It distinguishes itself from sibling tools by focusing specifically on W-4 calculations rather than broader tax analysis or other tax-related functions.

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

Usage Guidelines3/5

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

The description implies usage context through the mention of 'per-paycheck federal tax' and 'W-4 form recommendations,' suggesting it's for employment tax withholding planning. However, it doesn't explicitly state when to use this tool versus alternatives like 'calculate_federal_tax' or 'analyze_paycheck,' nor does it provide exclusion criteria or prerequisites for use.

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

check_credit_eligibilityB

Check which tax credits you may be eligible for based on your situation.

ParametersJSON Schema
NameRequiredDescriptionDefault
agiYesAdjusted Gross Income
filingStatusYes
hasChildrenNoHave qualifying children under 17
numChildrenNo
hasChildcareNoPay for childcare to work
isStudentNoCurrently enrolled in post-secondary education
hasStudentLoansNoPaying student loan interest
boughtEVNoPurchased an electric vehicle this year
madeHomeImprovementsNoMade energy-efficient home improvements
installedSolarNoInstalled solar panels or renewable energy
hasRetirementContributionsNoContributed to IRA/401k
hasMarketplaceInsuranceNoBought health insurance through ACA marketplace
hasEarnedIncomeNoHas earned income from work
paidForeignTaxNoPaid income tax to a foreign country

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool 'checks' eligibility, which implies a read-only operation, but doesn't clarify if it's a calculation, estimation, or lookup. It doesn't disclose behavioral traits like whether it requires authentication, has rate limits, returns structured data or a list, or if it's based on current tax laws. For a tool with 14 parameters and no annotations, this is a significant gap.

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

Conciseness5/5

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

The description is a single, efficient sentence: 'Check which tax credits you may be eligible for based on your situation.' It's front-loaded with the core purpose, has zero waste, and is appropriately sized for the tool's complexity. Every word earns its place, making it easy to parse quickly.

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

Completeness2/5

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

Given the complexity (14 parameters, no annotations, no output schema), the description is incomplete. It doesn't explain what the tool returns (e.g., a list of eligible credits, detailed calculations), how results are formatted, or any limitations (e.g., based on current tax year, U.S.-specific). For a tool with many inputs and no structured output, more context is needed to guide effective use.

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

Parameters3/5

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

The schema description coverage is high (86%), with most parameters having clear descriptions (e.g., 'Adjusted Gross Income', 'Have qualifying children under 17'). The description doesn't add meaning beyond what the schema provides, as it doesn't explain how parameters interact (e.g., how 'agi' and 'filingStatus' affect eligibility) or provide examples. With high schema coverage, the baseline is 3, and the description doesn't compensate with additional insights.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'Check which tax credits you may be eligible for based on your situation.' It specifies the verb ('check') and resource ('tax credits'), and distinguishes itself from siblings like 'list_tax_credits' (which likely lists available credits rather than checking eligibility) and 'calculate_eitc' (which calculates a specific credit). However, it doesn't explicitly differentiate from all siblings, such as 'run_tax_health_check', which might have overlapping scope.

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

Usage Guidelines3/5

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

The description implies usage context ('based on your situation'), suggesting it should be used when a user wants to determine eligibility for various tax credits. However, it doesn't explicitly state when to use this tool versus alternatives like 'list_tax_credits' (for listing credits) or 'calculate_eitc' (for calculating a specific credit), nor does it provide exclusions or prerequisites. The guidance is implied but not detailed.

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

check_refund_statusA

Provide instructions on how to check IRS refund status. This tool does NOT access your IRS account โ€” it provides the official links and requirements.

ParametersJSON Schema
NameRequiredDescriptionDefault
filedElectronicallyNoWhether the return was e-filed

TDQS

A4.2/5.0
Behavior3/5

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 'does NOT access your IRS account' and 'provides the official links and requirements,' which gives some behavioral context (informational, non-interactive). However, it lacks details on output format, potential rate limits, or error handling, leaving gaps for a tool with no annotation coverage.

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

Conciseness5/5

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

The description is two sentences, front-loaded with the core purpose and followed by a clarifying limitation. Every sentence adds valueโ€”no wasted wordsโ€”making it efficient and well-structured for quick understanding.

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

Completeness4/5

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

Given the tool's low complexity (1 parameter, no output schema, no annotations), the description is mostly complete: it explains the purpose, usage guidelines, and behavioral constraints. However, it could be slightly more complete by hinting at the output (e.g., 'returns instructions as text' or similar), though this is a minor gap.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents the single parameter 'filedElectronically' with its type and description. The description does not add any parameter-specific information beyond what the schema provides, which aligns with the baseline score of 3 when schema coverage is high.

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

Purpose5/5

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

The description clearly states the tool's purpose: 'Provide instructions on how to check IRS refund status.' It specifies the verb ('provide instructions') and resource ('IRS refund status'), and distinguishes itself from siblings by explicitly stating what it does NOT do ('does NOT access your IRS account').

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

Usage Guidelines5/5

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

The description provides explicit guidance on when to use this tool vs. alternatives: it states 'This tool does NOT access your IRS account โ€” it provides the official links and requirements,' clarifying that it's for informational guidance rather than direct account access. This helps differentiate it from potential tools that might directly interact with IRS systems.

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

compare_filing_statusesA

Compare tax liability across different filing statuses for the same income. Helps determine the most advantageous filing status.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year (2024 or 2025)
grossIncomeYesTotal gross income
itemizedDeductionsNoItemized deductions if applicable
dependentsNoNumber of qualifying dependents

TDQS

A3.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. While it states the tool's purpose, it doesn't disclose behavioral traits like whether it's a read-only calculation, what format the comparison output takes, whether it includes state tax implications, or any rate limits. For a tax calculation tool with zero annotation coverage, this is a significant gap.

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

Conciseness5/5

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

The description is perfectly concise with two sentences that directly communicate purpose and value. Every word earns its place with no redundancy or unnecessary elaboration. It's front-loaded with the core functionality.

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

Completeness2/5

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

Given the complexity of tax calculations, no annotations, and no output schema, the description is insufficient. It doesn't explain what the comparison output looks like, which filing statuses are compared, whether state taxes are included, or the calculation methodology. For a tool that could significantly impact financial decisions, more completeness is needed.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all 4 parameters with descriptions. The description doesn't add any parameter-specific information beyond what's in the schema. According to guidelines, when schema coverage is high (>80%), the baseline is 3 even with no param info in description.

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

Purpose5/5

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

The description clearly states the specific action ('compare tax liability') and resource ('across different filing statuses for the same income'), with explicit purpose ('determine the most advantageous filing status'). It distinguishes from siblings like 'compare_mfj_vs_mfs' (specific statuses) and 'calculate_federal_tax' (single calculation).

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

Usage Guidelines4/5

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

The description provides clear context for when to use this tool ('Helps determine the most advantageous filing status'), but doesn't explicitly state when not to use it or name specific alternatives. It implies usage for filing status comparison but lacks exclusions or prerequisites.

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

compare_mfj_vs_mfsA

Compare Married Filing Jointly (MFJ) vs Married Filing Separately (MFS). Shows tax difference and lists all MFS restrictions that may affect your situation.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year (2024 or 2025)
spouse1IncomeYesSpouse 1 gross income
spouse2IncomeYesSpouse 2 gross income
dependentsNoNumber of qualifying children
itemizedDeductionsNoTotal itemized deductions (combined for MFJ, split for MFS)
studentLoanInterestNoEither spouse paying student loan interest
hasEducationCreditsNoEither spouse claiming AOTC or LLC
hasEITCNoEither spouse would qualify for EITC
hasIRAContributionsNoEither spouse contributing to IRA

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations provided, the description carries full behavioral disclosure burden. It describes the tool's outputs (tax difference and MFS restrictions) but doesn't disclose important behavioral aspects like whether this performs calculations, makes recommendations, requires specific data inputs beyond the schema, or has any limitations in accuracy. The description adds some value but leaves significant behavioral context unspecified.

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

Conciseness5/5

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

The description is perfectly concise with two clear sentences that front-load the purpose and outputs. Every word earns its place - the first sentence states what's being compared, the second specifies the outputs. There's no redundancy, filler, or unnecessary elaboration.

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

Completeness3/5

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

For a complex tax comparison tool with 9 parameters and no output schema, the description provides basic purpose and output information but lacks completeness. It doesn't explain the comparison methodology, accuracy limitations, or what format the results will take. With no annotations and no output schema, users need more context about how this tool behaves and what to expect from its outputs.

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

Parameters3/5

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

With 100% schema description coverage, the schema already documents all 9 parameters thoroughly. The description doesn't add any parameter-specific information beyond what's in the schema. It mentions general outputs but doesn't explain how specific parameters like 'studentLoanInterest' or 'hasEducationCredits' affect the comparison. The baseline score of 3 reflects adequate but not enhanced parameter documentation.

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

Purpose5/5

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

The description clearly states the specific action ('Compare'), the resources being compared ('Married Filing Jointly vs Married Filing Separately'), and the outputs ('tax difference and lists all MFS restrictions'). It distinguishes itself from sibling tools like 'compare_filing_statuses' by focusing specifically on MFJ vs MFS comparison rather than general filing status analysis.

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

Usage Guidelines4/5

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

The description implies usage context by specifying it 'shows tax difference and lists all MFS restrictions that may affect your situation,' indicating this tool is for tax planning decisions between these two filing statuses. However, it doesn't explicitly state when to use this versus alternatives like 'compare_filing_statuses' or provide exclusion criteria for when this comparison might not be applicable.

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

compare_state_taxesA

Compare state income tax across multiple states for the same income. Useful for relocation decisions.

ParametersJSON Schema
NameRequiredDescriptionDefault
statesYesArray of state codes to compare (e.g., ['CA', 'TX', 'WA', 'NY'])
taxableIncomeYesAnnual taxable income

TDQS

A3.5/5.0
Behavior2/5

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 mentions the tool is 'useful for relocation decisions' but doesn't disclose behavioral traits like what data sources are used, whether calculations are estimates or exact, rate limits, authentication needs, or what the output format looks like. For a tax calculation tool with zero annotation coverage, this is a significant gap.

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

Conciseness5/5

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

The description is two sentences, front-loaded with the core purpose followed by usage context. Every word earns its place with zero waste or redundancy. It's appropriately sized for this tool's complexity.

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

Completeness3/5

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

Given the tool has 2 parameters with full schema coverage but no annotations and no output schema, the description provides adequate purpose and usage context but lacks behavioral transparency about how the comparison works and what results to expect. For a tax calculation tool, users need to understand the nature of the output (estimates vs. exact, format, limitations), which isn't addressed.

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

Parameters3/5

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

The description doesn't add any parameter-specific information beyond what's already in the schema (which has 100% coverage). The schema fully describes both parameters: 'states' as an array of state codes with examples, and 'taxableIncome' as annual income. With high schema coverage, the baseline is 3 even without additional param details in the description.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'Compare state income tax across multiple states for the same income.' This specifies the verb ('compare'), resource ('state income tax'), and scope ('multiple states for the same income'). It distinguishes from siblings like 'estimate_state_tax' (single-state estimation) and 'compare_filing_statuses' (different comparison dimension), though not explicitly named.

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

Usage Guidelines4/5

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

The description provides clear context: 'Useful for relocation decisions.' This gives a strong signal about when to use the tool. However, it doesn't explicitly state when not to use it or name alternatives like 'analyze_relocation_taxes' or 'get_state_tax_info', which might offer different functionality.

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

compare_tax_yearsC

Compare tax liability across different tax years for the same income. Shows how bracket changes and inflation adjustments affect your tax.

ParametersJSON Schema
NameRequiredDescriptionDefault
filingStatusYes
grossIncomeYesGross income to compare across years
selfEmploymentIncomeNo
dependentsNo

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It states the tool 'shows how bracket changes and inflation adjustments affect your tax' which gives some behavioral context about what the tool reveals. However, it doesn't disclose whether this is a read-only calculation, if it requires specific permissions, what format the comparison output takes, or any rate limits. For a tax calculation tool with zero annotation coverage, this is insufficient.

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

Conciseness4/5

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

The description is appropriately concise with two clear sentences that directly state the tool's function. It's front-loaded with the core purpose and follows with additional context about bracket changes and inflation adjustments. There's no wasted language or redundancy.

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

Completeness2/5

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

Given the complexity of tax calculations, 4 parameters with only 25% schema coverage, no annotations, and no output schema, the description is incomplete. It doesn't explain what the tool returns, how the comparison is presented, what assumptions are made, or how to interpret results. For a tool that presumably returns comparative tax liability data, this leaves significant gaps for an AI agent.

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

Parameters2/5

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

Schema description coverage is only 25% (only 'grossIncome' has a description), so the description must compensate but doesn't. The description mentions 'income' and 'tax years' but doesn't explain what the four parameters represent or how they affect the comparison. It doesn't clarify what 'selfEmploymentIncome' or 'dependents' do in the comparison, nor does it explain the filing status options beyond what the enum provides.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'Compare tax liability across different tax years for the same income' with specific details about bracket changes and inflation adjustments. It distinguishes from siblings like 'compare_filing_statuses' or 'what_changed_between_tax_years' by focusing on liability comparison across years rather than statuses or year-to-year changes. However, it doesn't explicitly differentiate from 'plan_multi_year_taxes' which might have some overlap.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, when it's appropriate versus other comparison tools like 'compare_filing_statuses' or 'compare_state_taxes', or any limitations. The context is implied (tax planning/comparison) but no explicit usage instructions are provided.

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

estimate_quarterly_taxC

Calculate estimated quarterly tax payments (Form 1040-ES) for self-employed or other taxpayers who need to make estimated payments.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year
filingStatusYes
expectedAnnualIncomeYesExpected total annual income
selfEmploymentIncomeNoExpected self-employment income
w2WithholdingNoExpected total W-2 tax withholding for the year
otherCreditsNoExpected other tax credits

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool 'calculates' but doesn't clarify if this is a read-only operation, what permissions might be needed, whether it's a simulation or actual filing, or any rate limits. For a tax calculation tool with zero annotation coverage, this leaves significant behavioral gaps.

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

Conciseness4/5

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

The description is a single, efficient sentence that clearly states the purpose without unnecessary details. It's appropriately sized and front-loaded, though it could be slightly more structured by separating usage context into a second sentence for better readability.

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

Completeness2/5

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

Given the complexity of tax calculations, no annotations, and no output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., payment amounts, deadlines), behavioral aspects like accuracy or limitations, or how it integrates with sibling tools, leaving the agent with insufficient context for effective use.

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

Parameters3/5

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

The description doesn't add any parameter-specific information beyond what's in the input schema, which has 83% coverage (5 out of 6 parameters have descriptions). Since schema coverage is high (>80%), the baseline score is 3, as the schema does most of the work in documenting parameters like 'taxYear' and 'expectedAnnualIncome'.

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

Purpose4/5

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

The description clearly states the tool calculates estimated quarterly tax payments using Form 1040-ES and identifies the target users (self-employed or other taxpayers needing estimated payments). It specifies the verb 'calculate' and resource 'quarterly tax payments' but doesn't explicitly differentiate from sibling tools like 'estimate_self_employment_tax' or 'calculate_federal_tax', which prevents a perfect score.

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

Usage Guidelines2/5

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

The description mentions when to use the tool ('for self-employed or other taxpayers who need to make estimated payments'), providing some context. However, it lacks explicit guidance on when not to use it or alternatives among the many sibling tax tools, such as distinguishing from 'estimate_self_employment_tax' or 'calculate_federal_tax', leaving the agent with minimal direction.

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

estimate_self_employment_taxC

Detailed self-employment tax breakdown including Schedule C profit, SE tax, QBI deduction, and recommended quarterly payments.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year
filingStatusYes
grossRevenueYesTotal business revenue (Schedule C line 1)
businessExpensesYesTotal business expenses (Schedule C)
otherW2IncomeNoW-2 income from other jobs
retirementContributionsNoSEP IRA or Solo 401k contributions
healthInsurancePremiumsNoSelf-employed health insurance premiums
dependentsNo

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. While it mentions what the tool calculates (tax breakdown components), it doesn't describe important behavioral aspects: whether this is a calculation vs. actual filing, if it requires authentication, what format the output takes, whether it's a read-only operation, or any rate limits. For a tax estimation tool with 8 parameters and no annotations, this is a significant gap in transparency.

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

Conciseness4/5

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

The description is efficiently structured in a single sentence that front-loads the core purpose. It lists specific tax components clearly without unnecessary elaboration. While concise, it could potentially benefit from slightly more structure to separate purpose from output components, but overall it's well-sized for its function.

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

Completeness2/5

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

For a complex tax estimation tool with 8 parameters, no annotations, and no output schema, the description is insufficiently complete. It doesn't explain what the output format will be (structured data, text report, etc.), doesn't mention any assumptions or limitations of the calculation, and doesn't provide context about how this fits into broader tax workflows. The description leaves too many unanswered questions for proper agent usage.

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

Parameters3/5

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

The description doesn't explicitly mention any parameters, but it implies the scope through terms like 'Schedule C profit' and 'quarterly payments' which relate to the input parameters. With 75% schema description coverage (6 of 8 parameters have descriptions), the schema does substantial documentation work. The description adds minimal value beyond what's in the schema, meeting the baseline for decent schema coverage.

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

Purpose4/5

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

The description clearly states the tool's purpose: providing a detailed self-employment tax breakdown including specific components (Schedule C profit, SE tax, QBI deduction, quarterly payments). It uses specific verbs ('estimate', 'breakdown') and identifies the resource (self-employment tax). However, it doesn't explicitly differentiate from sibling tools like 'estimate_quarterly_tax' or 'process_1099_income', which prevents a perfect score.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. With numerous sibling tools like 'calculate_federal_tax', 'estimate_quarterly_tax', and 'process_1099_income', there's no indication of when this specific self-employment tax estimation is appropriate versus broader tax calculations. The description assumes context but doesn't provide explicit usage boundaries.

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

estimate_state_taxC

Estimate state income tax for a given income and state. Simplified calculation using state brackets.

ParametersJSON Schema
NameRequiredDescriptionDefault
stateCodeYesTwo-letter state code
taxableIncomeYesState taxable income (after state deductions)
filingStatusNoFiling status (default: single)

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. While it mentions 'simplified calculation using state brackets' which provides some behavioral context, it doesn't disclose important traits like whether this is a read-only operation, what the output format will be, accuracy limitations, or whether it requires authentication. For a tax estimation tool with zero annotation coverage, this leaves significant gaps in understanding the tool's behavior.

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

Conciseness4/5

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

The description is appropriately concise with two clear sentences. The first sentence states the core purpose, and the second adds important qualification about the calculation method. There's no wasted language, and the information is front-loaded with the essential purpose stated first.

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

Completeness2/5

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

For a tax estimation tool with no annotations and no output schema, the description is insufficient. It doesn't explain what the output will be (dollar amount? breakdown?), accuracy limitations of the 'simplified calculation', data sources, or error conditions. With 35 sibling tools in this tax domain, the description doesn't adequately position this tool within the broader context of available tax operations.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all three parameters thoroughly. The description doesn't add any parameter-specific information beyond what's in the schema. It mentions 'given income and state' which aligns with the two required parameters, but provides no additional context about parameter usage, constraints, or relationships beyond what the schema already specifies.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'Estimate state income tax for a given income and state' with the specific verb 'estimate' and resource 'state income tax'. It distinguishes from siblings like 'calculate_federal_tax' and 'get_state_tax_info' by focusing on estimation rather than calculation or information retrieval. However, it doesn't explicitly differentiate from 'compare_state_taxes' which might also involve estimation.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. With multiple sibling tools like 'calculate_federal_tax', 'compare_state_taxes', and 'get_state_tax_info', there's no indication of when this estimation tool is appropriate versus those other tools. The description mentions 'simplified calculation' but doesn't explain when simplified vs. comprehensive approaches are needed.

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

generate_full_tax_reportB

Generate a full tax estimate report combining federal tax, state tax, FICA, all credits and deductions into one summary. Like a TurboTax final page.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year (2024 or 2025)
filingStatusYes
w2IncomeNoW-2 wages
selfEmploymentIncomeNoSelf-employment net profit
interestIncomeNo1099-INT interest income
dividendIncomeNo1099-DIV ordinary dividends
qualifiedDividendsNoQualified dividends (subset of dividends, taxed at CG rates)
longTermCapitalGainsNoLong-term capital gains/losses
shortTermCapitalGainsNoShort-term capital gains/losses
otherIncomeNoOther income (rental, alimony, etc.)
aboveTheLineDeductionsNoHSA, student loan interest, educator expenses, etc.
mortgageInterestNoMortgage interest
stateLocalTaxesPaidNoState/local/property taxes paid
charitableDonationsNoCharitable contributions
medicalExpensesNoUnreimbursed medical expenses
otherItemizedNoOther itemized deductions
dependentsNoQualifying children under 17
qualifiedBusinessIncomeNoQBI for Section 199A
stateCodeNoState code for state tax estimate
federalWithheldNoFederal tax already withheld YTD
stateWithheldNoState tax already withheld YTD
estimatedPaymentsMadeNoEstimated tax payments already made

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool generates a report but doesn't clarify if this is a read-only operation, whether it performs calculations or retrieves data, what the output format is, or any rate limits or authentication needs. The analogy to 'TurboTax final page' hints at a summary view but lacks concrete behavioral details.

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

Conciseness5/5

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

The description is a single, efficient sentence that front-loads the core purpose and includes a helpful analogy. Every word earns its place, with no redundancy or unnecessary elaboration, making it appropriately sized for the tool's complexity.

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

Completeness3/5

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

Given the tool's high complexity (22 parameters) and lack of annotations and output schema, the description is incomplete. It explains the purpose but doesn't cover behavioral aspects, output details, or usage nuances. However, the high schema coverage (95%) mitigates some gaps, making it minimally adequate but with clear room for improvement in contextual guidance.

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

Parameters3/5

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

The description doesn't mention any parameters, but schema description coverage is 95%, meaning the schema already documents most parameters well. The description adds no additional parameter semantics beyond what's in the schema. With high schema coverage, the baseline score is 3, as the description doesn't compensate but also doesn't detract from the schema's documentation.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'Generate a full tax estimate report combining federal tax, state tax, FICA, all credits and deductions into one summary.' It specifies the verb ('generate') and resource ('full tax estimate report') with scope details. However, it doesn't explicitly distinguish this comprehensive report generation from sibling tools like 'calculate_total_tax' or 'simulate_tax_scenario', which might have overlapping functionality.

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

Usage Guidelines3/5

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

The description implies usage context through the phrase 'Like a TurboTax final page,' suggesting this tool is for final summary reports. However, it doesn't provide explicit guidance on when to use this tool versus alternatives like 'calculate_total_tax' or 'simulate_tax_scenario' from the sibling list. No exclusions or prerequisites are mentioned, leaving usage decisions to inference.

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

get_form_filing_guideB

Step-by-step guide for filling out a specific IRS form or schedule. Explains each section, what data you need, and common mistakes to avoid.

ParametersJSON Schema
NameRequiredDescriptionDefault
formNumberYesIRS form (e.g., '1040', 'Schedule C', 'Schedule D', 'Form 8949', 'W-4')

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It describes the output as a 'step-by-step guide' but doesn't specify format (e.g., text, list, structured data), length, or any limitations (e.g., coverage of forms, depth of explanations). For a tool with no annotations, this leaves significant gaps in understanding its behavior.

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

Conciseness5/5

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

The description is a single, efficient sentence that front-loads the core purpose ('step-by-step guide') and succinctly lists key features (explains sections, data needed, common mistakes). Every phrase adds value without redundancy, making it appropriately concise and well-structured.

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

Completeness3/5

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 provides basic context but is incomplete for a tool that likely returns detailed guidance. It doesn't address output format, potential errors (e.g., unsupported forms), or depth of information. For a tool with one parameter and no structured output, it's minimally adequate but lacks richness.

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

Parameters3/5

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

The input schema has 100% description coverage, clearly documenting the 'formNumber' parameter as an IRS form identifier with examples. The description adds no additional parameter semantics beyond what the schema provides, such as format constraints or usage tips. With high schema coverage, the baseline score of 3 is appropriate.

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

Purpose4/5

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

The description clearly states the tool's purpose: providing a 'step-by-step guide for filling out a specific IRS form or schedule' with explanations of sections, required data, and common mistakes. It specifies the verb ('guide') and resource ('IRS form or schedule'), though it doesn't explicitly differentiate from sibling tools like 'get_irs_form_info' or 'get_tax_document_checklist'.

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

Usage Guidelines3/5

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

The description implies usage context ('filling out a specific IRS form or schedule') but doesn't explicitly state when to use this tool versus alternatives. For example, it doesn't clarify if this is for general guidance versus detailed analysis offered by tools like 'analyze_education_tax_benefits' or 'calculate_federal_tax'. No exclusions or prerequisites are mentioned.

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

get_irs_form_infoB

Get information about common IRS tax forms โ€” what they are, who needs them, and where to find them.

ParametersJSON Schema
NameRequiredDescriptionDefault
formNumberYesIRS form number (e.g., '1040', 'W-2', '1099-NEC', 'Schedule C')

TDQS

B3.1/5.0
Behavior2/5

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 what information is returned but doesn't disclose behavioral traits like whether this is a read-only operation, if it requires authentication, rate limits, error conditions, or what format the information comes in. For a tool with no annotation coverage, this leaves significant gaps in understanding how it behaves.

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

Conciseness5/5

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

The description is perfectly concise - a single sentence that efficiently communicates the core functionality without any wasted words. It's front-loaded with the main purpose and follows with specific details about what information is provided.

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

Completeness3/5

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

Given the tool has no annotations, no output schema, and operates in a domain with many similar sibling tools, the description is minimally adequate but has clear gaps. It explains what the tool does at a high level but doesn't provide enough context about how it differs from alternatives, what the output looks like, or important behavioral considerations for a tool in a tax domain.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already fully documents the single parameter 'formNumber'. The description doesn't add any additional semantic meaning beyond what's in the schema - it doesn't explain what constitutes a 'common' IRS form, provide examples beyond what's in the schema, or clarify formatting requirements. Baseline score of 3 is appropriate when schema does the heavy lifting.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'Get information about common IRS tax forms' with specific details about what information is provided ('what they are, who needs them, and where to find them'). It uses a specific verb ('Get') and identifies the resource ('IRS tax forms'), but doesn't explicitly differentiate from sibling tools like 'get_form_filing_guide' or 'get_tax_document_checklist' which might have overlapping functionality.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. With many sibling tools related to tax forms and information (e.g., 'get_form_filing_guide', 'get_tax_document_checklist'), there's no indication of how this tool differs or when it's the appropriate choice. Usage is implied but not explicitly stated.

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

get_personalized_tax_calendarC

Generate a personalized tax calendar based on your situation. Shows deadlines for filing, estimated payments, extensions, and key actions.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year to get calendar for
isSelfEmployedNoDo you have self-employment income?
filedExtensionNoDid you file an extension?
hasEmployerNoDo you have W-2 employment?
hasInvestmentsNoDo you have investment accounts?
hasRentalIncomeNoDo you have rental property income?

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool 'generates' and 'shows' information, implying a read-only operation, but doesn't clarify if it requires authentication, has rate limits, what format the output takes, or whether it's a calculation versus a lookup. For a tool with 6 parameters and no annotations, this leaves significant behavioral gaps.

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

Conciseness4/5

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

The description is concise and front-loaded, consisting of two clear sentences that directly state the tool's purpose and what it shows. There's no wasted verbiage, though it could be slightly more structured (e.g., separating purpose from output details). Every sentence earns its place.

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

Completeness2/5

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

Given the tool's complexity (6 parameters, no output schema, no annotations), the description is insufficient. It doesn't explain what the output looks like (e.g., calendar format, data structure), how parameters affect results, or behavioral aspects like error handling. For a tool that generates personalized content based on multiple inputs, more context is needed for effective use.

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

Parameters3/5

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

Schema description coverage is 100%, with all 6 parameters well-documented in the schema (e.g., 'taxYear: Tax year to get calendar for'). The description adds minimal value beyond this, mentioning 'based on your situation' which loosely relates to the boolean parameters but doesn't explain their specific semantics or interactions. With high schema coverage, the baseline score of 3 is appropriate.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'Generate a personalized tax calendar based on your situation. Shows deadlines for filing, estimated payments, extensions, and key actions.' It specifies the verb ('generate'), resource ('personalized tax calendar'), and scope ('based on your situation'). However, it doesn't explicitly differentiate from sibling tools like 'get_tax_deadlines' or 'get_tax_document_checklist', which likely provide related but different functionality.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It mentions generating a calendar 'based on your situation' but doesn't specify prerequisites, ideal use cases, or when other tools like 'get_tax_deadlines' might be more appropriate. There's no explicit when/when-not or alternative tool references.

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

get_retirement_accountsC

Get details on retirement account types โ€” contribution limits, tax treatment, income limits, and tips.

ParametersJSON Schema
NameRequiredDescriptionDefault
accountTypeNoSpecific account (e.g., 'roth_ira', '401k', 'hsa', 'sep_ira'). Leave empty for all

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It implies a read-only operation ('Get details') but doesn't disclose behavioral traits like whether it requires authentication, has rate limits, returns structured data, or handles errors. For a tool with no annotation coverage, this leaves significant gaps in understanding how it behaves.

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

Conciseness4/5

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

The description is a single, efficient sentence that front-loads the purpose and lists key output details. It avoids unnecessary words, though it could be slightly more structured by separating the tool's function from the information it provides.

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

Completeness3/5

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

Given the tool's low complexity (1 optional parameter, no output schema, no annotations), the description is adequate but incomplete. It covers what the tool does but lacks behavioral context and usage guidelines. For a read operation in a financial context, more detail on output format or reliability would be helpful.

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

Parameters3/5

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

Schema description coverage is 100%, with the parameter 'accountType' well-documented in the schema. The description adds no parameter-specific information beyond what the schema provides, such as examples of other account types or clarification on the 'tips' output. Baseline 3 is appropriate when the schema does the heavy lifting.

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

Purpose4/5

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

The description clearly states the tool retrieves details on retirement account types, specifying what information is included (contribution limits, tax treatment, income limits, tips). It distinguishes from siblings by focusing on retirement accounts rather than other tax or financial topics, though it doesn't explicitly contrast with similar tools like 'get_retirement_strategy'.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'get_retirement_strategy' or explain the difference between getting account details versus strategic planning. No context about prerequisites or exclusions is provided.

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

get_retirement_strategyC

Get detailed info on tax-advantaged retirement strategies like Backdoor Roth, Mega Backdoor Roth, Roth Conversion Ladder, Tax Loss/Gain Harvesting.

ParametersJSON Schema
NameRequiredDescriptionDefault
strategyIdNoStrategy ID (e.g., 'backdoor_roth', 'mega_backdoor_roth', 'roth_conversion_ladder', 'tax_loss_harvesting', 'tax_gain_harvesting'). Leave empty for all

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It doesn't disclose behavioral traits like whether this is a read-only operation, what format the information returns, if there are rate limits, or if authentication is required. The description only states what information is retrieved without 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.

Conciseness4/5

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

The description is a single, efficient sentence that front-loads the core purpose. It includes helpful examples but could be slightly more structured by separating the purpose from examples. No wasted words or redundancy.

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

Completeness3/5

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

For a simple read operation with 1 parameter and 100% schema coverage, the description is adequate but incomplete. Without annotations or output schema, it should ideally mention the return format or that it's informational only. It covers the basics but lacks context about what 'detailed info' entails.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents the single parameter. The description adds minimal value by listing example strategy IDs, but doesn't provide additional semantics beyond what's in the schema. Baseline 3 is appropriate when schema does the heavy lifting.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'Get detailed info on tax-advantaged retirement strategies' with specific examples. It distinguishes from siblings like 'get_retirement_accounts' by focusing on strategies rather than accounts, though it doesn't explicitly mention this distinction.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. It doesn't mention related tools like 'plan_retirement_withdrawals' or 'plan_multi_year_taxes', nor does it specify prerequisites or appropriate contexts for retrieving strategy information.

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

get_state_tax_infoA

Get state income tax information โ€” rates, brackets, and key details for any US state.

ParametersJSON Schema
NameRequiredDescriptionDefault
stateCodeYesTwo-letter state code (e.g., 'CA', 'TX', 'NY')

TDQS

A3.5/5.0
Behavior2/5

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 a read-only operation ('Get') but does not disclose behavioral traits such as data freshness, rate limits, error handling, or authentication needs. The description is minimal and lacks context about what 'key details' includes or how the information is structured.

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

Conciseness5/5

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

The description is a single, efficient sentence that front-loads the purpose and key details without unnecessary words. Every part of the sentence earns its place by specifying what is retrieved and for whom.

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

Completeness3/5

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

Given no annotations, no output schema, and a simple input schema, the description is adequate but has clear gaps. It states what the tool does but lacks details on behavioral aspects, return format, or error cases. For a tool with no structured support, it should provide more context to be fully helpful.

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

Parameters3/5

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

Schema description coverage is 100%, with the parameter 'stateCode' fully documented in the schema. The description does not add any meaning beyond the schema, as it does not explain parameter usage, constraints, or examples. Baseline 3 is appropriate since the schema does the heavy lifting.

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

Purpose5/5

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

The description clearly states the specific action ('Get') and resource ('state income tax information') with details about what information is retrieved ('rates, brackets, and key details') and scope ('for any US state'). It distinguishes itself from siblings like 'compare_state_taxes' or 'estimate_state_tax' by focusing on retrieval of information rather than comparison or estimation.

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

Usage Guidelines3/5

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

The description implies usage when state tax information is needed, but does not explicitly state when to use this tool versus alternatives like 'compare_state_taxes' or 'list_no_income_tax_states'. No exclusions or prerequisites are mentioned, leaving usage context somewhat open-ended.

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

get_tax_bracketsB

Get federal income tax brackets and standard deduction for a given tax year and filing status.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year (2024 or 2025)
filingStatusYesFiling status

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It states what the tool returns but doesn't disclose behavioral traits like whether this is a read-only operation, if it requires authentication, rate limits, error conditions, or the format/structure of the returned data. The description is minimal and lacks operational context.

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

Conciseness5/5

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

The description is a single, well-structured sentence that efficiently conveys the core purpose without any wasted words. It's appropriately sized for a simple lookup tool and front-loads the essential information.

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

Completeness3/5

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

Given the tool's low complexity (2 parameters, no nested objects) and high schema coverage, the description is minimally adequate. However, with no annotations and no output schema, it should ideally provide more behavioral context about what the return data looks like. The description meets basic requirements but leaves gaps in operational understanding.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already fully documents both parameters. The description adds no additional meaning beyond what's in the schema (e.g., it doesn't explain what 'tax brackets' include or how 'standard deduction' is presented). Baseline 3 is appropriate when the schema does the heavy lifting.

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

Purpose5/5

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

The description clearly states the specific action ('Get'), the resource ('federal income tax brackets and standard deduction'), and the scope ('for a given tax year and filing status'). It distinguishes itself from siblings by focusing on retrieving bracket data rather than analysis, calculation, or planning functions.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives is provided. While the purpose is clear, the description doesn't mention when to choose this over tools like 'compare_tax_years', 'compare_filing_statuses', or 'what_changed_between_tax_years' which might involve similar data. No prerequisites or exclusions are stated.

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

get_tax_deadlinesB

Get important IRS tax deadlines and due dates for a given tax year.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearNoTax year (default: 2025)

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It states what the tool does but doesn't disclose behavioral traits like whether it returns historical/future deadlines, format of return data, potential rate limits, or authentication requirements. For a tool with no annotation coverage, this leaves significant behavioral gaps.

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

Conciseness5/5

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

The description is a single, efficient sentence that immediately conveys the core functionality without unnecessary words. It's appropriately sized and front-loaded with the essential information.

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

Completeness3/5

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

Given the simple single parameter with full schema coverage and no output schema, the description is minimally adequate but lacks important context. It doesn't explain what format the deadlines are returned in, whether they include state deadlines, or how comprehensive the list is. For a tool with no annotations and no output schema, more behavioral context would be helpful.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents the single parameter 'taxYear' with its type and default value. The description mentions 'for a given tax year' which aligns with but doesn't add meaningful semantics beyond what the schema provides. Baseline 3 is appropriate when schema does the heavy lifting.

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

Purpose4/5

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

The description clearly states the action ('Get') and resource ('IRS tax deadlines and due dates') with specific scope ('for a given tax year'), making the purpose unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'get_personalized_tax_calendar' or 'what_changed_between_tax_years', which might offer overlapping date-related information.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. With many sibling tools related to tax information (like 'get_personalized_tax_calendar' or 'what_changed_between_tax_years'), there's no indication of when this specific deadline-focused tool is appropriate versus other date-related tools.

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

get_tax_document_checklistA

Generate a personalized checklist of tax documents you need to gather for filing. Based on your income sources, deductions, and life events.

ParametersJSON Schema
NameRequiredDescriptionDefault
hasW2NoHave W-2 employment
hasSelfEmploymentNoHave self-employment/freelance income
hasInvestmentsNoHave investment accounts (stocks, bonds, crypto)
hasRentalPropertyNoOwn rental property
hasMortgageNoHave a mortgage
hasStudentLoansNoPaying student loans
hasChildrenNoHave dependent children
hasChildcareNoPay for childcare
hasEducationExpensesNoPaying tuition or student expenses
hasHealthInsuranceNoHave health insurance (marketplace or employer)
hasHSANoHave HSA account
hasRetirementContributionsNoContributed to IRA/401k
hasCharitableDonationsNoMade charitable donations
hasForeignAccountsNoHave foreign bank accounts or income
soldHomeNoSold a home this year
gotMarriedNoGot married this year
gotDivorcedNoGot divorced this year
hadBabyNoHad a baby this year
boughtEVNoBought an electric vehicle
installedSolarNoInstalled solar panels

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. While it mentions personalization and the factors considered, it lacks critical details: it doesn't specify if this is a read-only operation (implied but not stated), what the output format is (e.g., list, structured data), whether it's interactive or batch, or any limitations (e.g., based on current tax laws, may not cover all scenarios). For a tool with 20 parameters and no annotation coverage, this is a significant gap in transparency.

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

Conciseness5/5

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

The description is a single, well-structured sentence that efficiently conveys the tool's purpose and personalization basis without any redundant or vague language. It's front-loaded with the core action ('Generate a personalized checklist') and avoids unnecessary elaboration, making it easy for an agent to parse quickly.

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

Completeness3/5

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

Given the complexity (20 parameters, no annotations, no output schema), the description is adequate but incomplete. It clearly states what the tool does and the input basis, which is sufficient for basic understanding. However, it lacks details on output format, behavioral traits (e.g., whether it's a static list or dynamic calculation), and any constraints or dependencies, leaving gaps that could hinder an agent's effective use without further context.

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

Parameters3/5

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

Schema description coverage is 100%, with each parameter clearly documented in the schema (e.g., 'hasW2: Have W-2 employment'). The description adds value by summarizing the parameter categories ('income sources, deductions, and life events'), which helps the agent understand the grouping, but it doesn't provide additional syntax, format, or interaction details beyond what the schema already offers. This meets the baseline of 3 for high schema coverage.

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

Purpose5/5

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

The description clearly states the specific action ('Generate a personalized checklist') and resource ('tax documents you need to gather for filing'), with explicit differentiation from siblings by focusing on document gathering rather than analysis, calculation, or planning. It specifies the personalization factors ('Based on your income sources, deductions, and life events'), making it distinct from tools like 'get_form_filing_guide' or 'get_personalized_tax_calendar'.

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

Usage Guidelines4/5

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

The description provides clear context for when to use this tool ('for filing' and 'Based on your income sources, deductions, and life events'), indicating it's for preparation rather than analysis or calculation. However, it doesn't explicitly state when not to use it or name specific alternatives among the many sibling tools, such as 'get_form_filing_guide' for form instructions or 'list_deductions' for deduction details, which would have earned a 5.

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

get_tax_planning_tipsA

Get personalized year-end tax optimization strategies based on your income, deductions, and situation. Suggests actions to reduce tax liability before year-end.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year to plan for
filingStatusYes
estimatedIncomeYesExpected total income for the year
currentWithholdingNoTotal tax already withheld/paid YTD
hasRetirementPlanNoHave access to 401k/403b
currentRetirementContributionsNoYTD retirement contributions
hasHSANoHave HSA-eligible health plan
currentHSAContributionsNoYTD HSA contributions
hasMortgageNo
estimatedItemizedDeductionsNo
hasCapitalGainsNo
estimatedCapitalGainsNo
hasCapitalLossesNo
isSelfEmployedNo
charitableGivingNoYTD charitable donations

TDQS

A3.6/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool 'suggests actions,' implying it's a read-only advisory function, but does not disclose critical behavioral traits such as whether it requires authentication, has rate limits, returns structured or free-form advice, or handles errors. For a tool with 15 parameters and no annotations, this leaves significant gaps in understanding how the tool behaves beyond its basic purpose.

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

Conciseness5/5

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

The description is appropriately sized with two concise sentences that are front-loaded with the core purpose. Every sentence earns its place: the first defines the tool's function, and the second clarifies its actionable output. There is no redundant or vague language, making it efficient and easy to parse.

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

Completeness2/5

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

Given the tool's complexity (15 parameters, no annotations, no output schema), the description is incomplete. It lacks details on behavioral traits, does not explain the return format or structure of the 'strategies,' and leaves many parameters semantically unclear. For a tool that processes extensive financial data to provide personalized advice, more context is needed to guide effective use, especially without annotations or output schema to fill the gaps.

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

Parameters3/5

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

The description adds some meaning by mentioning 'income, deductions, and situation,' which broadly maps to parameters like estimatedIncome, estimatedItemizedDeductions, and filingStatus. However, with schema description coverage at 53%, many parameters (e.g., hasMortgage, hasCapitalGains) are undocumented in both schema and description. The description provides marginal context but does not fully compensate for the coverage gap or explain how parameters interact to generate strategies.

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

Purpose5/5

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

The description clearly states the tool's purpose with specific verbs ('Get personalized year-end tax optimization strategies') and resources ('based on your income, deductions, and situation'), and distinguishes it from siblings by focusing on year-end planning rather than calculation, analysis, or other tax functions. It explicitly mentions 'suggests actions to reduce tax liability before year-end,' which differentiates it from tools like calculate_federal_tax or analyze_education_tax_benefits.

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

Usage Guidelines4/5

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

The description provides clear context for when to use this tool ('year-end tax optimization strategies' and 'before year-end'), but does not explicitly state when not to use it or name specific alternatives among the many sibling tools. It implies usage for proactive planning rather than retrospective analysis, which is helpful but lacks explicit exclusions or comparisons to tools like plan_multi_year_taxes or simulate_tax_scenario.

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

list_deductionsB

List available tax deductions with eligibility rules and limits. Covers both above-the-line and itemized deductions.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNoFilter by deduction category (default: all)

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool lists deductions with 'eligibility rules and limits,' implying a read-only, informational function, but doesn't specify output format (e.g., structured list, JSON), pagination, or error handling. For a tool with no annotations, this leaves significant gaps in understanding how it behaves, such as whether it requires authentication or has rate limits.

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

Conciseness5/5

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

The description is appropriately sized and front-loaded, consisting of two concise sentences. The first sentence directly states the purpose, and the second adds useful scope information ('Covers both above-the-line and itemized deductions'). There is zero waste or redundancy, making it efficient and easy to parse.

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

Completeness3/5

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

Given the tool's low complexity (1 parameter, no output schema, no annotations), the description is minimally adequate. It covers the basic purpose and scope but lacks details on output format, usage context, and behavioral traits. Without annotations or an output schema, the description should do more to explain what the tool returns and how to interpret results, but it meets a bare minimum for a simple listing tool.

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

Parameters3/5

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

Schema description coverage is 100%, with the single parameter 'category' fully documented in the schema (including enum values and default). The description adds no additional parameter semantics beyond what the schema providesโ€”it doesn't explain the meaning of categories like 'medical' or 'interest' or how filtering works. Baseline 3 is appropriate as the schema does the heavy lifting, but the description doesn't compensate or enhance understanding.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'List available tax deductions with eligibility rules and limits.' It specifies the verb ('List'), resource ('tax deductions'), and scope ('eligibility rules and limits'), distinguishing it from sibling tools like 'list_tax_credits' or 'calculate_obbb_deductions'. However, it doesn't explicitly differentiate from 'standard_vs_itemized', which might overlap in discussing deduction types, preventing a perfect score.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It mentions 'Covers both above-the-line and itemized deductions,' which hints at scope but doesn't specify use cases, prerequisites, or exclusions. For example, it doesn't clarify if this is for general reference, tax planning, or form-filling, nor does it direct users to sibling tools like 'standard_vs_itemized' for comparisons.

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

list_no_income_tax_statesA

List all US states with no state income tax.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It states what the tool does but offers no information about how it works - whether it returns a static list, requires authentication, has rate limits, or provides any metadata about the states. The description is purely functional without 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.

Conciseness5/5

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

The description is a single, efficient sentence that communicates the complete purpose without any wasted words. It's front-loaded with the core functionality and appropriately sized for a simple lookup tool with no parameters.

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

Completeness3/5

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

For a simple lookup tool with no parameters and no output schema, the description is minimally adequate. However, without annotations or output schema, it should ideally provide more context about what the output contains (just state names? with dates? source information?). The description covers the 'what' but not the 'how' or 'what you get back'.

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

Parameters4/5

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

The tool has 0 parameters with 100% schema description coverage, so the baseline is 4. The description appropriately doesn't discuss parameters since none exist, and the schema already documents the empty parameter set completely.

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

Purpose5/5

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

The description clearly states the specific action ('List all') and resource ('US states with no state income tax'), making the purpose immediately understandable. It distinguishes itself from siblings by focusing on a specific tax characteristic (no income tax states) rather than analysis, calculation, or comparison tools.

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

Usage Guidelines3/5

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

The description implies usage when information about states without income tax is needed, but provides no explicit guidance on when to use this tool versus alternatives like 'compare_state_taxes' or 'get_state_tax_info'. No exclusions or prerequisites are mentioned.

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

list_tax_creditsB

List available federal tax credits with eligibility, amounts, and phase-out rules. Covers family, education, energy, retirement, healthcare, and income-based credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNoFilter by category (default: all)
refundableOnlyNoOnly show refundable credits

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions what information is included (eligibility, amounts, phase-out rules) but doesn't describe important behavioral aspects like whether this is a read-only operation, what format the output takes, whether there are rate limits, or if authentication is required. For a tool with zero annotation coverage, this leaves significant gaps in understanding how the tool behaves.

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

Conciseness5/5

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

The description is efficiently structured in two sentences with zero wasted words. The first sentence states the core purpose and key information provided. The second sentence efficiently lists the coverage categories. Every sentence earns its place, and the most important information (what the tool does) is front-loaded.

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

Completeness3/5

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

Given the tool's moderate complexity (listing with filtering), no annotations, and no output schema, the description provides adequate but incomplete context. It explains what information is returned but not the format or structure. For a listing tool with filtering parameters, more detail about output format would be helpful, though the absence of an output schema means the description should ideally compensate more than it does.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already fully documents both parameters (category with enum values and refundableOnly). The description doesn't add any parameter-specific information beyond what's in the schema. It mentions the categories covered but doesn't explain parameter usage or relationships. The baseline score of 3 is appropriate when the schema does all the parameter documentation work.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'List available federal tax credits with eligibility, amounts, and phase-out rules.' It specifies the verb ('List'), resource ('federal tax credits'), and scope of information provided. However, it doesn't explicitly differentiate from sibling tools like 'list_deductions' or 'check_credit_eligibility' beyond mentioning the categories covered.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It mentions the categories covered but doesn't explain when this listing tool should be chosen over other tools like 'calculate_eitc' (which calculates a specific credit) or 'check_credit_eligibility' (which might verify eligibility for specific credits). No explicit when/when-not instructions or alternative tool references are provided.

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

lookup_tax_ruleC

Look up IRS tax rules, definitions, and common questions. Covers filing rules, income types, deduction rules, credit eligibility, stock options, wash sales, and more.

ParametersJSON Schema
NameRequiredDescriptionDefault
topicYesTax topic to look up (e.g., 'wash sale rule', 'ISO vs NSO', 'AOTC and LLC same year', 'gift tax', 'estimated tax penalty')

TDQS

C2.9/5.0
Behavior2/5

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 states the tool is for looking up information, implying a read-only operation, but doesn't disclose behavioral traits such as whether it requires authentication, has rate limits, returns structured or unstructured data, or handles errors. The description is minimal and lacks operational context.

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

Conciseness4/5

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

The description is appropriately sized and front-loaded, with the core purpose stated first and examples provided. It uses two sentences efficiently, though the second sentence could be slightly more structured. There's minimal waste, but it could be more polished.

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

Completeness2/5

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

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., definitions, rules, FAQs), how results are formatted, or any limitations. For a lookup tool with no structured output, more context on behavior and results is needed to be fully helpful.

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

Parameters3/5

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

Schema description coverage is 100%, with the single parameter 'topic' well-documented in the schema. The description adds no additional parameter semantics beyond the schema's examples. Since the schema does the heavy lifting, the baseline score of 3 is appropriate, as the description doesn't compensate but doesn't detract either.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'Look up IRS tax rules, definitions, and common questions.' It specifies the verb ('look up') and resource ('IRS tax rules, definitions, and common questions'), and provides examples of covered topics. However, it doesn't explicitly differentiate from sibling tools like 'get_irs_form_info' or 'get_tax_brackets', which also provide tax information but in different formats or contexts.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It lists broad coverage areas but doesn't specify scenarios where this lookup tool is preferred over other tools like 'analyze_education_tax_benefits' or 'check_credit_eligibility', which might overlap in topic. No exclusions or prerequisites are mentioned.

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

optimize_capital_gainsA

Analyze investment lots and suggest which to sell to minimize tax. Considers long-term vs short-term, 0% bracket space, loss harvesting, and wash sale rules.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year
filingStatusYes
ordinaryIncomeYesOrdinary income (W-2, SE, interest, etc.) before investment sales
lotsYesInvestment lots to analyze
targetGainOrLossNoTarget net gain/loss to realize (negative for harvesting losses)

TDQS

A3.7/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the tool 'analyzes' and 'suggests', implying it's a read-only advisory function, but doesn't clarify whether it actually executes trades, requires authentication, has rate limits, or what format the suggestions take. The behavioral characteristics are underspecified for a tool with significant financial implications.

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

Conciseness5/5

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

The description is perfectly concise - a single sentence that efficiently communicates the tool's function and key considerations. Every phrase earns its place, with no redundant information or unnecessary elaboration.

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

Completeness3/5

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

For a complex financial optimization tool with 5 parameters, no annotations, and no output schema, the description provides adequate basic orientation but lacks important contextual details. It doesn't explain what the output looks like (suggestions format), computational limitations, or error conditions. The description is complete enough to understand the tool's purpose but insufficient for fully informed usage.

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

Parameters4/5

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

The description adds meaningful context about what the tool considers (long-term vs short-term, 0% bracket space, loss harvesting, wash sale rules) that helps interpret the input schema parameters. With 80% schema description coverage, the baseline would be 3, but the description provides additional semantic understanding of how parameters like 'lots' and 'targetGainOrLoss' are used in the optimization algorithm.

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

Purpose5/5

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

The description clearly states the tool's purpose with specific verbs ('analyze', 'suggest', 'sell') and resources ('investment lots'), and distinguishes it from siblings by focusing on capital gains optimization rather than education benefits, mortgage analysis, or other tax topics. It goes beyond the tool name by explaining the analytical approach.

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

Usage Guidelines3/5

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

The description implies usage context through the mention of tax considerations (long-term vs short-term, wash sale rules), but doesn't explicitly state when to use this tool versus alternatives like 'simulate_tax_scenario' or 'plan_multi_year_taxes'. No guidance on prerequisites or exclusions is provided.

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

plan_multi_year_taxesA

Create a 3-5 year tax projection and strategy. Models income changes, Roth conversions, retirement contributions, and bracket management across multiple years.

ParametersJSON Schema
NameRequiredDescriptionDefault
filingStatusYes
currentAgeYes
yearsYesYear-by-year projections

TDQS

A3.8/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden but only states what the tool creates ('projection and strategy') without disclosing behavioral traits. It doesn't mention whether this is a simulation vs actual filing, what permissions are needed, whether results are saved, error conditions, or output format. For a complex planning tool with no annotation coverage, this is inadequate.

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

Conciseness5/5

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

Two concise sentences with zero waste. The first sentence states the core purpose and scope, the second enumerates key modeled components. Every word earns its place, and information is front-loaded appropriately.

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

Completeness2/5

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

For a complex multi-year tax planning tool with 3 parameters (including a nested array), no annotations, no output schema, and low schema description coverage, the description is insufficient. It doesn't explain what the output contains, how projections are calculated, limitations, or prerequisites. The description alone leaves too many unknowns for effective tool selection and invocation.

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

Parameters4/5

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

The description adds meaningful context beyond the schema: it explains the tool models 'income changes, Roth conversions, retirement contributions, and bracket management across multiple years,' which helps interpret the parameters. With only 33% schema description coverage (only 'year' and 'expectedIncome' have descriptions), the description partially compensates by clarifying the overall modeling purpose.

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

Purpose5/5

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

The description clearly states the specific action ('Create a 3-5 year tax projection and strategy') and resource (tax planning), with explicit scope ('3-5 year', 'multi-year'). It distinguishes from siblings by focusing on long-term projection rather than single-year calculations or specific benefit analyses.

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

Usage Guidelines4/5

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

The description implies usage context through '3-5 year tax projection and strategy' and lists modeled components (income changes, Roth conversions, etc.), suggesting when this tool is appropriate. However, it doesn't explicitly state when not to use it or name alternative tools for different scenarios.

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

plan_retirement_withdrawalsA

Plan tax-efficient retirement withdrawals. Determines optimal order to draw from Traditional IRA, Roth IRA, and taxable accounts to minimize lifetime tax.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year
filingStatusYes
ageYesYour current age
traditionalBalanceYesTraditional IRA/401k balance
rothBalanceYesRoth IRA/401k balance
taxableBalanceYesTaxable brokerage account balance
socialSecurityIncomeNoAnnual Social Security income
pensionIncomeNoAnnual pension income
annualSpendingYesAnnual spending need (pre-tax)
rothConversionInterestNoInterested in Roth conversion strategy?

TDQS

A3.7/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. While it states the tool 'determines optimal order' (implying analytical/read-only behavior), it doesn't clarify whether this is a simulation, calculation, or recommendation tool. It lacks critical behavioral details like whether it performs actual transactions, requires authentication, has rate limits, or provides actionable steps versus theoretical analysis.

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

Conciseness5/5

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

The description is perfectly concise with two sentences that front-load the core purpose and immediately follow with the specific optimization goal. Every word earns its place, with no redundancy or unnecessary elaboration, making it highly efficient for agent comprehension.

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

Completeness3/5

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

For a complex 10-parameter tool with no annotations and no output schema, the description is adequate but incomplete. It explains the 'what' and 'why' well but lacks information about the tool's output format, computational assumptions, limitations, or how results should be interpreted. Given the sophistication of retirement tax planning, more contextual guidance would be beneficial.

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

Parameters4/5

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

With 90% schema description coverage, the baseline is 3. The description adds meaningful context by explaining the tool's purpose is to 'minimize lifetime tax' through account sequencing, which helps interpret why parameters like account balances, income sources, and Roth conversion interest are needed. This elevates understanding beyond the schema's technical parameter descriptions.

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

Purpose5/5

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

The description clearly states the specific action ('plan tax-efficient retirement withdrawals') and resource ('Traditional IRA, Roth IRA, and taxable accounts'), with a precise goal ('minimize lifetime tax'). It effectively distinguishes itself from sibling tools like 'get_retirement_strategy' or 'optimize_capital_gains' by focusing specifically on withdrawal sequencing rather than general strategies or capital gains optimization.

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

Usage Guidelines3/5

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

The description implies usage context ('retirement withdrawals') but provides no explicit guidance on when to use this tool versus alternatives like 'get_retirement_strategy' or 'plan_multi_year_taxes'. It doesn't mention prerequisites, exclusions, or comparative scenarios, leaving the agent to infer appropriate usage from the purpose alone.

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

process_1099_incomeC

Process multiple 1099 forms and calculate the tax impact of each income type. Handles 1099-NEC (freelance), 1099-INT (interest), 1099-DIV (dividends), 1099-B (investments), 1099-MISC.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year
filingStatusYes
w2IncomeNoW-2 income (for context)
formsYesArray of 1099 forms

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool processes forms and calculates tax impact, implying a read-only analysis (not a write operation like filing). However, it lacks critical details: whether it requires authentication, how it handles errors, if it has rate limits, what the output format is (no output schema), or if it performs destructive actions. For a tool with 4 parameters and no annotations, this is a significant gap.

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

Conciseness4/5

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

The description is a single, efficient sentence that front-loads the core purpose and lists the 1099 types. There's no wasted text, and it's appropriately sized for the tool's complexity. However, it could be slightly more structured by separating usage context from the type list.

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

Completeness2/5

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

Given the tool's complexity (4 parameters, nested arrays in 'forms', no output schema, and no annotations), the description is incomplete. It doesn't explain the output (e.g., tax impact details), error handling, or how parameters like 'w2Income' integrate with 1099 processing. For a tax calculation tool with multiple inputs, this leaves the agent guessing about behavioral outcomes.

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

Parameters3/5

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

Schema description coverage is 75%, so the schema documents most parameters well (e.g., 'taxYear', 'filingStatus' enum, 'forms' array). The description adds minimal value beyond the schema: it implies the tool handles specific 1099 types listed, which aligns with the 'type' enum in the schema. However, it doesn't explain parameter interactions (e.g., how 'w2Income' affects calculations) or provide examples, so it meets the baseline for high schema coverage.

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

Purpose4/5

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

The description clearly states the tool's purpose: 'Process multiple 1099 forms and calculate the tax impact of each income type.' It specifies the verb ('process' and 'calculate') and resource ('1099 forms'), and lists the specific 1099 types handled. However, it doesn't explicitly differentiate from sibling tools like 'calculate_federal_tax' or 'simulate_tax_scenario', which might also involve tax calculations.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing 1099 data), exclusions (e.g., not for W-2 income alone), or comparisons to siblings like 'calculate_federal_tax' or 'simulate_tax_scenario'. The agent must infer usage from the purpose alone.

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

run_tax_health_checkC

One-click tax health check. Analyzes your full financial picture and outputs a report with actionable findings: missed credits, withholding accuracy, deduction optimization, audit risk, retirement savings gaps, and year-end planning tips.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year
filingStatusYes
ageNo
grossIncomeYes
w2IncomeNo
selfEmploymentIncomeNo
capitalGainsNo
stateCodeNo
dependentsNo
mortgageInterestNo
stateLocalTaxesNo
charitableDonationsNo
retirement401kNo
retirementIRANo
hsaContributionsNo
federalWithheldNo
hasHealthInsuranceNo
isStudentNo
boughtEVNo
installedSolarNo

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the tool outputs a 'report with actionable findings' but does not specify whether this is a read-only analysis, if it requires authentication, its rate limits, or how it handles missing data. For a tool with 20 parameters and no annotations, this leaves significant behavioral gaps.

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

Conciseness4/5

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

The description is front-loaded with the core purpose ('One-click tax health check') and efficiently details the analysis scope in a single sentence. However, it could be slightly more structured by separating the output format from the analysis areas for better readability.

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

Completeness2/5

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

Given the high complexity (20 parameters, no output schema, no annotations), the description is incomplete. It lacks details on parameter meanings, behavioral traits (e.g., data privacy, execution time), and output specifics, making it inadequate for guiding an agent through such a parameter-rich tool.

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

Parameters2/5

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

Schema description coverage is only 5% (1 out of 20 parameters has a description), so the description must compensate but does not. It lists analysis areas like 'missed credits' and 'deduction optimization' but does not explain how these relate to specific parameters (e.g., 'charitableDonations' or 'retirement401k'), leaving most parameters semantically unclear beyond their schema types.

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

Purpose5/5

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

The description clearly states the tool's purpose with a specific verb ('Analyzes') and resource ('your full financial picture'), and distinguishes it from siblings by emphasizing its comprehensive 'one-click' nature covering multiple tax aspects like credits, deductions, audit risk, and planning tips, unlike more focused sibling tools (e.g., 'analyze_education_tax_benefits' or 'calculate_federal_tax').

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

Usage Guidelines2/5

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

The description provides no explicit guidance on when to use this tool versus alternatives among the many sibling tools (e.g., 'generate_full_tax_report' or 'assess_audit_risk'), nor does it mention prerequisites or exclusions. It implies usage for a broad tax analysis but lacks comparative context.

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

simulate_tax_scenarioA

What-if tax scenario simulator. Compare your current situation against a hypothetical change: income change, relocation, Roth conversion, filing status change, etc. Shows the exact tax impact of the change.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year
filingStatusYes
currentIncomeYesCurrent gross income
currentStateNoCurrent state code
currentSelfEmploymentNo
currentCapitalGainsNo
currentItemizedDeductionsNo
currentDependentsNo
whatIfIncomeChangeNoIncome change amount (positive = more income, negative = less)
whatIfNewStateNoNew state if relocating
whatIfFilingStatusNoNew filing status
whatIfRothConversionNoAmount to convert from Traditional to Roth IRA
whatIfAdditional401kNoAdditional 401k contribution
whatIfNewDependentsNoNew number of dependents
whatIfItemizedChangeNoChange in itemized deductions

TDQS

A3.7/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the tool 'shows the exact tax impact of the change', which gives some output context, but lacks details on permissions, rate limits, data persistence, or error handling. For a complex simulation tool with 15 parameters, this is a significant gap in behavioral transparency.

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

Conciseness5/5

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

The description is appropriately sized and front-loaded, with two concise sentences that directly state the tool's purpose and key behavior. Every sentence earns its place by defining the tool's scope and output without unnecessary details or repetition.

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

Completeness3/5

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

Given the tool's complexity (15 parameters, no output schema, no annotations), the description is incomplete. It adequately covers purpose and output intent but lacks details on parameter interactions, error cases, or example scenarios. For a simulation tool with no structured behavioral hints, more context is needed to guide effective use.

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

Parameters3/5

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

The description adds minimal parameter semantics beyond the input schema, which has 67% coverage. It implies parameters for income change, relocation, Roth conversion, etc., but doesn't explain relationships between parameters (e.g., how current and what-if values interact) or provide examples. With moderate schema coverage, the description doesn't fully compensate but meets the baseline.

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

Purpose5/5

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

The description clearly states the tool's purpose with specific verbs ('simulate', 'compare') and resources ('tax scenario'), distinguishing it from siblings by focusing on hypothetical changes rather than analysis, calculation, or reporting of existing tax situations. It explicitly lists example changes like income change, relocation, Roth conversion, and filing status change.

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

Usage Guidelines4/5

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

The description provides clear context for when to use this tool ('What-if tax scenario simulator'), implying it's for comparing current vs. hypothetical tax situations. However, it doesn't explicitly state when not to use it or name specific alternatives among the many sibling tools, such as 'compare_filing_statuses' or 'compare_state_taxes', which might overlap for specific scenarios.

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

standard_vs_itemizedC

Compare standard deduction vs itemized deductions to determine which is more beneficial.

ParametersJSON Schema
NameRequiredDescriptionDefault
taxYearYesTax year (2024 or 2025)
filingStatusYes
medicalExpensesNoUnreimbursed medical expenses
stateLocalTaxesNoState/local income + property taxes paid
mortgageInterestNoHome mortgage interest paid
charitableDonationsNoCharitable contributions
otherItemizedNoOther itemized deductions
agiYesAdjusted Gross Income (needed for medical expense threshold)
age65OrOlderNo
blindNo

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. While 'compare' and 'determine' imply a calculation/analysis operation, the description doesn't disclose whether this is a read-only analysis or if it might store/save results, what permissions might be needed, rate limits, or what format the comparison results take. For a tool with 10 parameters and no output schema, this is a significant gap.

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

Conciseness5/5

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

The description is a single, efficient sentence that clearly states the tool's purpose. There's no wasted language, repetition, or unnecessary elaboration. It's appropriately sized for a tool that performs a specific comparison function.

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

Completeness2/5

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

For a tool with 10 parameters, no annotations, and no output schema, the description is inadequate. It doesn't explain what the comparison output looks like, how the calculation works, what assumptions are made, or how to interpret results. Given the complexity of tax deduction comparisons and the rich parameter set, the description should provide more context about the tool's behavior and output.

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

Parameters3/5

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

The description mentions comparing standard vs itemized deductions, which aligns with parameters like medicalExpenses, stateLocalTaxes, mortgageInterest, etc. However, with 70% schema description coverage (7 of 10 parameters have descriptions in the schema), the description adds minimal value beyond what the schema already documents. It doesn't explain how these parameters interact in the comparison calculation or mention required parameters like taxYear and filingStatus.

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

Purpose4/5

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

The description clearly states the tool's purpose: comparing standard vs itemized deductions to determine which is more beneficial. It uses specific verbs ('compare' and 'determine') and identifies the resource (deduction types). However, it doesn't explicitly differentiate from sibling tools like 'list_deductions' or 'calculate_federal_tax', which might also involve deduction analysis.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. With many sibling tools like 'calculate_federal_tax', 'list_deductions', and 'compare_filing_statuses', there's no indication of when this specific comparison tool is appropriate versus broader tax calculation tools. The description assumes the user already knows they need this specific comparison.

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

submit_feedbackA

Generate a pre-filled GitHub Issue URL for reporting calculation errors or data issues. No data is sent โ€” the user clicks the link to submit. Use this after verifying the user's inputs.

ParametersJSON Schema
NameRequiredDescriptionDefault
toolNameYesWhich tool produced the issue (e.g., calculate_federal_tax)
taxYearNoTax year
descriptionYesBrief description of the issue
expectedNoWhat the user expected
actualNoWhat the tool returned

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations provided, the description carries full burden. It effectively discloses key behavioral traits: it generates a URL (not submitting data directly), requires user action ('user clicks the link'), and is for reporting specific issues ('calculation errors or data issues'). It doesn't mention rate limits, authentication needs, or error handling, but covers the core behavior adequately.

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

Conciseness5/5

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

The description is perfectly concise with two sentences that each earn their place. The first sentence states the purpose and mechanism, the second provides usage guidance. No wasted words, and the most important information (what it does) is front-loaded.

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

Completeness4/5

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

For a tool with no annotations and no output schema, the description provides good contextual completeness. It explains what the tool does, when to use it, and the user interaction required. The main gap is lack of information about the return value (what the generated URL looks like), but otherwise it's quite complete for its purpose.

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

Parameters3/5

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

Schema description coverage is 100%, so all parameters are documented in the schema. The description doesn't add any parameter-specific information beyond what's in the schema (e.g., it doesn't explain how parameters map to the GitHub Issue template). Baseline 3 is appropriate when the schema does the heavy lifting.

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

Purpose5/5

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

The description clearly states the specific action ('Generate a pre-filled GitHub Issue URL') and resource ('for reporting calculation errors or data issues'), distinguishing it from all sibling tools which are tax calculation/analysis tools rather than feedback submission tools. It explicitly notes 'No data is sent โ€” the user clicks the link to submit', which further clarifies the mechanism.

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

Usage Guidelines5/5

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

The description provides explicit guidance on when to use this tool: 'Use this after verifying the user's inputs.' This creates a clear usage context (post-verification) and implicitly distinguishes it from tools that perform calculations or analysis (the sibling tools).

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

what_changed_between_tax_yearsA

Show all differences between two tax years โ€” bracket changes, deduction limits, credit amounts, SALT cap, CTC, and new OBBB provisions. Great for understanding how tax law changes affect you.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromYearYesEarlier tax year (e.g., 2024)
toYearYesLater tax year (e.g., 2025)
filingStatusNoFiling status for specific comparisons (default: single)

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. While it mentions what the tool does, it lacks critical behavioral details such as whether this is a read-only operation, what permissions might be required, rate limits, error handling, or the format of returned differences. For a tool with no annotations, this leaves significant gaps in understanding how it behaves.

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

Conciseness5/5

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

The description is appropriately sized and front-loaded, with two sentences that efficiently convey the tool's purpose and usage context. Every sentence earns its place by providing essential information without redundancy or unnecessary details.

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

Completeness3/5

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

Given the tool's complexity (comparing tax years with multiple aspects) and lack of annotations and output schema, the description is incomplete. It explains what the tool does but misses behavioral traits, output format, and deeper contextual details needed for full understanding. However, it covers the core purpose adequately for a read-oriented tool.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all three parameters (fromYear, toYear, filingStatus) with descriptions and enum values. The description does not add any parameter-specific semantics beyond what the schema provides, such as explaining how the filingStatus affects comparisons or valid year ranges. Baseline 3 is appropriate when the schema does the heavy lifting.

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

Purpose5/5

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

The description clearly states the tool's purpose with a specific verb ('Show all differences') and resource ('between two tax years'), listing concrete examples like bracket changes, deduction limits, credit amounts, SALT cap, CTC, and OBBB provisions. It distinguishes from sibling tools like 'compare_tax_years' by emphasizing comprehensive analysis of tax law changes rather than just comparison.

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

Usage Guidelines4/5

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

The description provides clear context for when to use this tool ('Great for understanding how tax law changes affect you'), but does not explicitly mention when not to use it or name specific alternatives among sibling tools like 'compare_tax_years' or 'plan_multi_year_taxes'. The implied usage is strong but lacks explicit exclusions.

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

TDQS

B3.4/5.0
Disambiguation4/5

Most tools have distinct purposes with clear boundaries, such as calculate_federal_tax for federal calculations and analyze_education_tax_benefits for education-specific analysis. However, some overlap exists, like calculate_total_tax and generate_full_tax_report, which both provide comprehensive summaries but with slightly different focuses, potentially causing minor confusion.

Naming Consistency5/5

Tool names consistently follow a verb_noun pattern throughout, such as analyze_mortgage_tax_benefit, calculate_eitc, and get_tax_brackets. This uniformity makes the set predictable and easy to navigate, with no deviations in naming conventions.

Tool Count2/5

With 43 tools, the count is excessive for a tax calculation server, leading to potential overwhelm and redundancy. While the domain is broad, many tools could be consolidated (e.g., multiple calculation and comparison tools), making the set feel heavy and less focused.

Completeness5/5

The tool set comprehensively covers the tax domain, including calculations (federal, state, credits), comparisons (filing statuses, years), planning (retirement, multi-year), and informational tools (forms, deadlines). There are no obvious gaps, and it supports full lifecycle coverage from estimation to optimization.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    Tax-aware retirement planning for Canada and the US. CPP/OAS and Social Security timing, RRSP/TFSA/401k/IRA projections, Monte Carlo simulation, withdrawal order optimization, and historical backtesting against 150 years of market data.
    2
    -
  • A
    license
    A
    quality
    A
    maintenance
    Open-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).
    3
    362
    AGPL 3.0
  • A
    license
    A
    quality
    A
    maintenance
    Deterministic US equity-compensation tax optimizer. Six tools cover ISO/AMT exercise scheduling, NSO sell-vs-hold, RSU vest-and-sell, single-stock concentration, protective put / zero-cost collar pricing, and Section 1202 QSBS qualification. Federal plus 50-state plus DC tax math.
    8
    47
    5
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Calculate income tax (UK/US brackets), EU VAT, UK corporation tax, and capital gains tax. Provides estimates only - not professional tax advice.
    13
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dma9527/irs-taxpayer-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server