Skip to main content
Glama

determine_dependent

Determine whether ONE candidate person is the taxpayer's § 152 dependent — qualifying child or qualifying relative, including multiple-support agreements and the divorced-parents release — as a proof-backed yes/no with citations. Feed the result into calculate_tax's credits group (qualifyingChildren / otherDependents).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
asOfNoREQUIRED for computation: the law-in-force date — use the intended tax year's year-end (e.g. "2025-12-31" for TY2025). Omitting it is an error, never a default.
depAgeNoCandidate's age at the end of the year (§ 152(c)(3)).
targetNorule to derive (default: us.federal.dependent.is_dependent). Other targets: us.federal.dependent.qualifying_child, us.federal.dependent.qualifying_relative
depGrossIncomeNoCandidate's gross income for the year (§ 152(d)(1)(B) limit: $5,200 TY2025 / $5,300 TY2026). In dollars.
depFilesJointReturnNoCandidate files a joint return with a spouse (other than a refund-only claim) (§ 152(c)(1)(E)).
depIsFullTimeStudentNoCandidate was a full-time student for at least 5 months (§ 152(f)(2)).
depRelationshipChildNoCandidate is the taxpayer's child, stepchild, foster child, sibling, step-sibling, or a descendant of any of them (§ 152(c)(2)).
depDivorcedParentsRuleNo§ 152(e) applies to the candidate child: the parents are divorced, separated, or lived apart the last 6 months of the year; the child received over half their support from the parents and was in their custody over half the year.
depPermanentlyDisabledNoCandidate is permanently and totally disabled (§ 152(c)(3)(B)).
depYoungerThanTaxpayerNoCandidate is younger than the taxpayer (§ 152(c)(3)(A)).
depRelationshipRelativeNoCandidate bears a § 152(d)(2) relationship to the taxpayer (parent, grandparent, sibling, in-law, etc.) or lived in the household all year.
taxpayerIsCustodialParentNoThe taxpayer is the custodial parent (the parent with whom the child resided the greater number of nights, § 152(e)(4)(A)).
hasMultipleSupportAgreementNoA § 152(d)(3) multiple-support agreement is in place for the candidate: the group together provided over half the support, no one person provided over half, each member could otherwise claim the candidate, and every other over-10% contributor signed a Form 2120 waiver.
custodialParentReleasedClaimNoThe custodial parent signed a written declaration (Form 8332) releasing the claim to the child for this year (§ 152(e)(2)).
depIsQualifyingChildOfAnotherNoCandidate is the qualifying child of the taxpayer or any other taxpayer (§ 152(d)(1)(D)).
depProvidedOwnSupportOverHalfNoCandidate provided more than half of their own support (§ 152(c)(1)(D)).
taxpayerProvidedOverHalfSupportNoThe taxpayer provided more than half of the candidate's support (§ 152(d)(1)(C)).
depLivedWithTaxpayerOverHalfYearNoCandidate had the same principal residence as the taxpayer for more than half the year (§ 152(c)(1)(B)).
taxpayerProvidedOver10PercentSupportNoThe taxpayer contributed over 10 percent of the candidate's support (§ 152(d)(3)(D) — the support test under a multiple-support agreement).

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. The description states it returns a 'proof-backed yes/no with citations,' but does not disclose behavioral traits such as side effects, required inputs, error handling, or any limitations. For a tool with 19 parameters and no output schema, more behavioral context is needed.

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

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 scope, followed by usage guidance. Every sentence adds value, and there is no wasted verbiage.

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

Completeness3/5

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

Given the complexity (19 parameters, no output schema), the description explains what the tool does and how to use the result, but does not fully cover the return format beyond 'yes/no with citations' or guide on parameter usage. The schema descriptions handle parameter details, but the description could be more complete by elaborating on the output structure and input expectations.

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

Parameters3/5

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

Schema description coverage is 100%, so each parameter already has a description. The tool description does not add any parameter-level details beyond what the schema provides. Baseline is 3, and the description does not compensate for any gaps or add extra meaning.

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

Purpose5/5

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

The description clearly states what the tool does: determine if a candidate is a dependent under §152, specifying 'qualifying child or qualifying relative' and mentioning special cases like multiple-support agreements and divorced-parents release. It also states the output is a 'proof-backed yes/no with citations' and provides guidance to feed into calculate_tax. This is specific and distinguishes from sibling tools like calculate_tax.

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

Usage Guidelines4/5

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

The description implies usage for checking dependency status before tax calculation by saying 'Feed the result into calculate_tax's credits group.' It provides clear context when to use it, but does not explicitly state when not to use it or mention alternatives among siblings like verify_fact or verify_tax_claim, which might handle similar claims.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.1/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: calculate_tax handles individuals, calculate_business_tax handles entities, calculate_fiduciary_tax handles estates/trusts, compute_return produces the complete federal return, compute_state_return handles state returns, and the remaining tools cover specific lookups (parameters, rules, facts, dependencies, cliffs, tipped occupations) or verification. Even with overlapping domains (explain_rule, lookup_tax_parameter, search_tax_rules, verify_fact, verify_tax_claim), their roles are sharply delineated.

Naming Consistency4/5

Tool names follow a clear pattern: compute_return, compute_state_return, calculate_tax, calculate_business_tax, calculate_fiduciary_tax, determine_dependent, explain_rule, find_tax_cliffs, is_tipped_occupation, list_input_facts, lookup_tax_parameter, search_tax_rules, verify_fact, verify_tax_claim. Most use verb_noun (calculate_tax, lookup_tax_parameter, search_tax_rules, verify_fact). Minor deviations: compare_filing_statuses and compute_return use adjective/noun phrases rather than verb_noun, but they're still readable and follow the 'compute/calculate' theme.

Tool Count5/5

15 tools is well-scoped for a comprehensive tax computation server. Each tool covers a distinct aspect of tax law (federal individual, business, fiduciary, state returns, dependency, rule lookup, parameter lookup, validation, cliff detection, fact verification, search). No tool feels redundant, and the count supports the ambitious scope without bloating.

Completeness5/5

The tool surface covers the full tax workflow: input discovery (list_input_facts), computation (calculate_tax, calculate_business_tax, calculate_fiduciary_tax, compute_return, compute_state_return), dependency determination (determine_dependent), rule/parameter lookup (explain_rule, lookup_tax_parameter, search_tax_rules), verification (verify_fact, verify_tax_claim), and specialized analysis (find_tax_cliffs, is_tipped_occupation, compare_filing_statuses). There's no obvious gap; the only potential missing feature is payroll tax computation, but that's outside the stated domain of income tax.

Resources