Chat with AI and run tools instantly.
Search 1.1 million IRS Form 990 filings — revenue, expenses, officer compensation, balance sheet, and program activity for every US nonprofit and private foundation.
Try this workflow
Filing summary by EIN
Pull the most recent Form 990 for EIN 13-1837418 (Doctors Without Borders USA). Show me total revenue, total expenses, the program-vs-management-vs-fundraising split, and net assets at year-end.
Chat with AI and run tools instantly.
Browse all toolsBuilt for
Nonprofit Researchers, Foundation Grant Teams, Investigative Journalists, Financial Due Diligence
Filing summary by EIN
Charity / grantee due-diligence — the canonical 'is this org healthy?' question.
Pull the most recent Form 990 for EIN 13-1837418 (Doctors Without Borders USA). Show me total revenue, total expenses, the program-vs-management-vs-fundraising split, and net assets at year-end.
Officer compensation
Compensation benchmarking with a peer-set anchor — exactly how compensation studies are written.
Find the 25 highest-paid nonprofit officers in California for the most recent tax year, restricted to organizations with at least $10M in revenue. Show name, title, organization, comp amount, and comp-to-revenue ratio.
Trend over years
Multi-period analysis from a single EIN — surfaces the breadth of historical coverage.
For EIN 53-0196605 (American National Red Cross), show me total revenue, program expense ratio, and net assets across every tax period available. Flag any year that breaks the trend.
Private foundation grants
990-PF schema is materially different from 990 — important to demonstrate the dataset handles all three form variants.
Look up the most recent 990-PF for the Bill & Melinda Gates Foundation (EIN 56-2618866). Show me total contributions paid, investment income, and net assets.
Which form variants are covered?
All three: Form 990 (most 501(c) orgs ≥ $200K gross receipts or ≥ $500K assets), Form 990-EZ (smaller orgs), and Form 990-PF (private foundations). Always read ``form_type`` on a result before comparing fields across orgs — the same column name often means different things across variants.
What's the difference between this and 'Nonprofit Lookup'?
'Nonprofit Lookup' is the IRS Business Master File (BMF) — every recognized tax-exempt org with identity, subsection, NTEE code, and 501(c)(3) status. This dataset is the SOI Annual Extracts — the *financial filings* themselves, with revenue, expenses, balance sheet, and officer compensation. Use BMF to verify status, this dataset for the numbers.
How fresh are the financials?
The IRS publishes the SOI extracts annually. We refresh weekly so any newly published year lands within seven days. Tax periods reported are the organization's fiscal year-end, which is not always December — many large nonprofits use June or September year-ends.
Related editorial
IRS 990 Search with AI
How nonprofit filings help answer revenue, assets, program, and compensation questions.
Domain knowledge for IRS 990 Nonprofit Financials — workflow patterns, data models, and gotchas for your AI agent.
Annual financial filings for US tax-exempt organizations. Two complementary backends:
Free, no authentication required.
| Source | What |
|---|---|
| IRS SOI Exempt Organizations Annual Extracts | Form 990 (246 cols), 990-EZ (72 cols), 990-PF (180 cols). Annual. |
| IRS Exempt Organizations Business Master File (EO BMF) | All ~1.95M tax-exempt orgs with NTEE codes, subsection, ruling date. Monthly. |
| ProPublica Nonprofit Explorer API | projects.propublica.org/nonprofits/api/v2. Org search + per-filing detail. |
| Form | Who files | Why it matters |
|---|---|---|
| 990 | Most 501(c) orgs with gross receipts ≥ $200K or assets ≥ $500K | Full revenue/expense/balance-sheet detail |
| 990-EZ | Smaller orgs ($50K–$200K gross receipts, < $500K assets) | Condensed; many fields blank |
| 990-PF | Private foundations (regardless of size) | Investment income and grant detail; very different schema |
Always read form_type on a result before comparing fields across orgs — the same column name often means different things across variants.
EIN is a 9-digit IRS identifier, accepted with or without the dash: 131837418 and 13-1837418 are equivalent. Always canonicalize to digits-only when comparing.
Charity / grantee due diligence: Search SOI by name → confirm the right org by state and EIN → pull filing detail by EIN for last 2–3 tax periods → review revenue trend, expense ratio (program vs. management vs. fundraising), and reserve assets.
Compensation benchmarking: Run the top-compensated query with a state and revenue floor to anchor the peer set → compare ratios, not just raw dollars (a $1M salary is very different at a $10M org vs. a $1B org).
Cross-period trend for one org: Get filing detail by EIN with no tax_period to receive all available years; then compare revenue, total assets, and officer compensation across years.
Historical lookup outside the SOI window: If SOI search returns nothing, try the ProPublica organization lookup by EIN — it carries older filings. Use filings_with_data[].object_id from that response as the filing_id for the per-filing detail call.
Discover orgs by mission area: Use ProPublica organization search with an ntee_code (and optional state/query) when the user describes a category (e.g. environmental orgs in CA) rather than a specific name.
Annual financial extracts from Form 990 (246 columns), 990-EZ (72 columns), and 990-PF (180 columns) — revenue, expenses, assets, liabilities, officer compensation, and program activities for all filing nonprofits.
Master file of all tax-exempt organizations including organization name, state, city, subsection code, NTEE code, and ruling date. Used to enrich SOI financial data with organization identity.
Get detailed IRS 990 financial data for a nonprofit by EIN — full revenue breakdown (program revenue, contributions, investment income), expense detai...
Get a specific IRS 990 filing for a nonprofit organization. Use after calling irs990_get_organizations with an EIN to get the list of available filing...
Get nonprofit organization data from ProPublica's IRS 990 database of 1.8M+ tax-exempt organizations. Pass an EIN to get full organization detail incl...
Get aggregate statistics about the IRS 990 nonprofit financial dataset — total filings, unique organizations, form type breakdown, revenue aggregates,...
Search IRS 990 nonprofit financial filings — revenue, expenses, assets, and officer compensation for 668,000+ annual filings. Search by organization n...
Find nonprofit organizations with the highest officer/director compensation from IRS 990 filings. Optionally filter by state and minimum revenue. Retu...
Search and analyze IRS 990 nonprofit financial data — revenue, expenses, assets, officer compensation, and program activities for 668,000+ filings per year across three form variants (990, 990-EZ, 990-PF). Updated annually from SOI extract files. It provides 6 tools that AI agents can use through the Model Context Protocol (MCP).
Add the MCPBundles server URL to your MCP client configuration (Claude Desktop, Cursor, VS Code, etc.). The URL format is: https://mcp.mcpbundles.com/bundle/irs-990. Authentication is handled automatically.
IRS 990 Nonprofit Financials provides 6 tools that can be called by AI agents, along with a SKILL.md that gives your AI agent domain knowledge about when and how to use them.
IRS 990 Nonprofit Financials uses open data APIs — no authentication required.
All three: Form 990 (most 501(c) orgs ≥ $200K gross receipts or ≥ $500K assets), Form 990-EZ (smaller orgs), and Form 990-PF (private foundations). Always read ``form_type`` on a result before comparing fields across orgs — the same column name often means different things across variants.
'Nonprofit Lookup' is the IRS Business Master File (BMF) — every recognized tax-exempt org with identity, subsection, NTEE code, and 501(c)(3) status. This dataset is the SOI Annual Extracts — the *financial filings* themselves, with revenue, expenses, balance sheet, and officer compensation. Use BMF to verify status, this dataset for the numbers.
The IRS publishes the SOI extracts annually. We refresh weekly so any newly published year lands within seven days. Tax periods reported are the organization's fiscal year-end, which is not always December — many large nonprofits use June or September year-ends.
Form 990 data is self-reported by the organization. The IRS does not audit field values before publishing them. For investigative or legal use, treat 990 figures as the authoritative *as-filed* number, but also pull the original PDF filing (linked from ProPublica Nonprofit Explorer) when material amounts are at stake.
Connect IRS 990 Nonprofit Financials to any MCP client in minutes
https://mcp.mcpbundles.com/bundle/irs-990The link prefills the Add custom connector dialog — you still review the values and click Add, then Connect to complete OAuth.
IRS 990 Nonprofit Financials and paste the MCP URL into Remote MCP server URL.Custom connectors at claude.ai require a paid Claude plan (Pro, Max, Team, or Enterprise).
Same data, different audiences.
IRS 990 Nonprofit Financials — live data product, refresh cadence + sources documented.
Open datasetMore government integrations you might like
Search and analyze FMCSA motor carrier safety data — 500,000+ carriers from the DOT census plus real...
CMS Provider Data API providing hospital quality ratings, nursing home comparisons, physician data, ...
Search H-1B visa sponsorship data — employer applications, job titles, wages, locations, and prevail...
Search and analyze federal lobbying data from LDA filings — registrants, clients, lobbyists, issues,...