Get Foundation Grants
get_foundation_grantsView grants made by a funder across IRS, web-extracted, and registry records.
Merges five stores. (1) IRS 990-PF filings — structured grant lines from the ~143K US private foundations that file 990s, keyed by EIN. (2) Web-extracted grant records — our enrichment pipeline crawls funder websites and an LLM extracts their grant lists. This second store covers ~15K additional US foundations AND ~17K non-990 funders (European foundations, US community foundations, DAFs, corporate giving programs). (3) 360Giving UK GrantNav rows, (4) CRA T3010 Canadian rows, and (5) ACRI Italian banking-foundation erogazioni are structured registry sources with original-currency amounts preserved.
Use this for ANY funder when the user asks about grants given, including
European funders without an EIN (pass funder_id instead of ein).
Each row in the response carries a source field ("990" for IRS
data, "discovered_web" for crawled, plus "360giving", "t3010",
and "acri" for structured registries). When web-extracted rows for a
funder lack captured amounts (common for European funders that publish PDFs
rather than open data), the response includes an amount_coverage_note
in data_quality — surface that caveat in your reply.
Note: recipient_country reflects the recipient organization's HQ
country (where the grantee is registered), not necessarily where the
program work is implemented.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ein | No | Foundation EIN (9 digits, hyphens OK). Required for US 990 path. Optional if ``funder_id`` is supplied for a non-990 funder. | |
| year | No | Optional year to filter by (filing_year for 990, grant_year for discovered). If not provided, returns all available years. | |
| limit | No | Maximum number of grants to return (1-50) | |
| funder_id | No | Optional non-990 funder id. Accepts a bare UUID or prefixed id like ``n9f:<uuid>`` / ``non990:<uuid>``. Use this for European funders, US community foundations, DAFs, and other funders that don't file IRS 990-PF. You can get it from search_funders or get_funder_profile. | |
| ntee_code | No | Optional NTEE code to filter recipient organizations. Example: "B41" (Higher Education), "E" (Health). Use get_ntee_codes to browse available codes. | |
| purpose_keyword | No | Optional case-insensitive substring to match against the grant_purpose field. Useful for narrowing to a topic when recipient NTEE code is too coarse — e.g., purpose_keyword="vaccine" surfaces Gates grants whose purpose text mentions vaccines, even when the recipient is classified outside health (universities, think tanks, etc.). | |
| recipient_state | No | Optional 2-letter US state code to filter by recipient state (e.g., "CA", "NY"). | |
| recipient_country | No | Optional recipient country filter. Use ISO 3166-1 alpha-2 codes (e.g., "CH" Switzerland, "ZA" South Africa, "NG" Nigeria, "IN" India). A code that is valid ISO is always read as ISO ("NG" is Nigeria, never Niger; "SN" is Senegal, never Singapore); legacy FIPS 10-4 codes match only when they are not ISO codes at all ("UK", "SF"). Output codes are emitted in ISO 3166. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||