@pipeworx/propublica-nonprofit
Connect: https://gateway.pipeworx.io/propublica-nonprofit/mcp · Install: one-click buttons
Tools: 3
ProPublica’s Nonprofit Explorer aggregates IRS Form 990 filings: every nonprofit’s tax return data with revenue, expenses, executive compensation, grants given/received, and program services. ~1.8M nonprofits indexed since 2001. Free, no auth.
Why this matters for AI agents
For nonprofit research, “where does this charity’s money actually go?” questions, executive compensation analysis, or tracing grant flows between foundations and recipients — Form 990 is the canonical data, and ProPublica makes it queryable. Pair with USAspending (federal grants), OpenFEC (political activity), and SEC EDGAR (corporate philanthropy).
Common flows:
- Org lookup. “Find Form 990 filings for X” → search by name or EIN.
- Org detail. Latest filing year financials: revenue, expenses, top compensation, program ratios.
- Grant tracing. “Who has the X Foundation funded?” → grants-given detail from Schedule I.
- Officer compensation. Top employees with salary, benefits, and other compensation.
Auth
None. ProPublica’s Nonprofit Explorer API is fully public, free.
What Form 990 reveals
| Schedule | What it covers |
|---|---|
| Form 990 (full) | Required for orgs with ≥$200k revenue; full financial detail |
| Form 990-EZ | Smaller orgs ($50k-$200k revenue); abbreviated |
| Form 990-PF | Private foundations; grant-making detail |
| Form 990-N | Tiny orgs (<$50k); postcard filing only |
| Schedule I | Grants given to other orgs |
| Schedule J | Compensation detail for top-paid employees |
| Schedule O | Free-form supplementary disclosures (governance, mission detail) |
Common pitfalls
- 990 lag. Nonprofits file ~6-9 months after fiscal year-end. So 2024 fiscal-year data appears late 2025. Most-recent year is rarely current-year.
- Calendar vs fiscal year. Different orgs use different fiscal years. “FY 2023” may end in any month. Check the period-end date.
- 501(c)(3) vs (c)(4) vs (c)(6). All file 990s but with different rules and political-activity restrictions. The classification matters more than total revenue for understanding what an org does.
- Compensation reporting nuances. Top compensation includes salary + bonuses + retirement contributions + nontaxable benefits. The headline “compensation” number can vary depending on schedule used.
- Donor-advised funds (DAFs). Money flowing through DAFs (Fidelity Charitable, Schwab Charitable) appears as the DAF receiving and granting — the actual donor and ultimate beneficiary may be opaque.
- 501(c)(4) “social welfare.” These can engage in some political activity but don’t disclose donors. They show up here, but their political spending traces require OpenFEC cross-reference.
- Address normalization. Org addresses often have suite numbers, PO boxes, and registered-agent addresses that aren’t where the org actually operates. Cross-reference geographic claims with state corporate registries.
Tools
- search_nonprofits — Search US nonprofits by name. Returns EIN, name, city, state, revenue, assets, and NTEE code. Example: search_nonprofits(“red cross”, “NY”). Use get_organization with the EIN for full details.
- get_organization — Get full nonprofit details by EIN (Employer Identification Number). Returns organization info plus recent IRS filings with revenue, expenses, and assets. Example: get_organization(131710957).
- get_filing — Get a specific IRS filing for a nonprofit. Returns financial data from one tax period including revenue, expenses, assets, and liabilities. Example: get_filing(131710957, 202112).
Tools
-
get_filing— Get a specific IRS filing for a nonprofit. Returns financial data from one tax period including revenue, expenses, assets, and liabilities. Example: get_filing(131710957, 202112). -
get_organization— Get full nonprofit details by EIN (Employer Identification Number). Returns organization info plus recent IRS filings with revenue, expenses, and assets. Example: get_organization(131710957). -
search_nonprofits— Search US nonprofits by name. Returns EIN, name, city, state, revenue, assets, and NTEE code. Example: search_nonprofits( red cross , NY ). Use get_organization with the EIN for full details.