Skip to main content
Glama

990.tax nonprofit lookup

Which Form 990 an organization files

which_990_form
Read-onlyIdempotent

Which annual return applies under the IRS thresholds: 990-N (gross receipts normally $50,000 or less), 990-EZ (under $200,000 and assets under $500,000), 990, 990-PF, or none (churches, group-return members). With an EIN, missing amounts come from the IRS Business Master File. Cites the IRS rule.

Input Schema

NameRequiredDescriptionDefault
einNoEmployer Identification Number, 9 digits, with or without the dash (12-3456789)
is_churchNoChurch, integrated auxiliary, or convention or association of churches
total_assetsNoTotal assets at year end, in USD
gross_receiptsNoGross receipts, normally the 3-year average for organizations 3+ years old, in USD
is_private_foundationNo
is_509a3_supporting_orgNoSupporting organization under section 509(a)(3)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior3/5

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

The annotations already declare read-only, idempotent, non-destructive behavior, so the safety profile is covered. The description adds real value by disclosing the underlying decision rule, the BMF fallback for missing amounts when an EIN is supplied, and that the answer is cited to the IRS rule. It does not explain how missing amounts are handled without an EIN, which is the main unresolved 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 two dense sentences that front-load the core question and its answer options before adding the EIN lookup detail. Every clause carries information; there is no filler.

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 six fully optional parameters and no output schema, the description supplies enough context to call the tool correctly: the thresholds to reason about, the fallback data source, and the citation behavior. The only real gap is the behavior with no arguments and whether a partial answer is returned when neither an EIN nor the amounts are available.

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

Parameters4/5

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

Schema coverage is high at 83%, so the baseline is a 3, but the description clearly adds meaning beyond it: it ties gross_receipts to the $50,000 / $200,000 thresholds and total_assets to the $500,000 cutoff, which the schema does not do. It also explains that is_church leads to 'none' as an outcome. The two boolean flags, is_private_foundation and is_509a3_supporting_org, are not addressed in the description, though their schema descriptions partially compensate.

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 tool name is a specific question, and the description immediately answers it: it names the resource (the annual return / Form 990 family) and enumerates the exact possible outcomes (990-N, 990-EZ, 990, 990-PF, or none). The decision criteria for each outcome are stated inline, so it is clearly distinguishable from siblings like get_filing_due_date or check_exempt_status.

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 usage context is implied by the thresholds and the note that an EIN triggers a Business Master File lookup for missing amounts. However, the description never says when to choose this over check_exempt_status or get_filing_due_date, and it doesn't say what happens if the agent supplies no arguments at all, which matters because all six parameters are optional.

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.

Resources