io. github. cyanheads/ nonprofit-explorer-mcp-server
by cyanheads · remote · local (npm) · no sign-in to list tools · v0.2.0 · published by GitHub user cyanheads
MCP server for nonprofit financials via ProPublica: IRS Form 990 data for 1.8M+ nonprofits.
3 tools: 3 only read.
Scanned Oct 22, 2026 · tools changed Oct 22, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things0Claude Code: ask
- Only reads3Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http nonprofit-explorer https://nonprofit-explorer.caseyjhand.com/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
3 tools
Only reads 3Claude Code: allow
nonprofit_get_filingsAll Form 990 filings for a tax-exempt org by EIN: year-by-year revenue, expenses, assets, liabilities, net assets, revenue breakdown, executive compensation, and source PDF links.No findings
Why it is in this group
- The name "nonprofit_get_filings" says "get": a word for reading.
Description, as the server wrote it All Form 990 filings for a tax-exempt org by EIN: year-by-year revenue, expenses, assets, liabilities, net assets, revenue breakdown, executive compensation, and source PDF links. Use for trend analysis, due diligence, and accessing primary 990 documents. The filing year (tax_prd_yr) is the fiscal year of the return — data lags 1–2 years; always cite the year. An organization that resolves but has filed no 990 returns an empty filings array with a notice, not an error. Also returns filings_pdf_only — older filings with a PDF but no extracted financial data. Data from ProPublica Nonprofit Explorer, sourced from IRS Form 990 filings.
Annotations the server declares
- readOnlyHint: true
- idempotentHint: true
nonprofit_get_organizationFull profile for a single tax-exempt org by EIN: legal name, address, NTEE classification, 501(c) type, IRS ruling date, and a financial snapshot from the most recent Form 990 fili…No findings
Why it is in this group
- The name "nonprofit_get_organization" says "get": a word for reading.
Description, as the server wrote it Full profile for a single tax-exempt org by EIN: legal name, address, NTEE classification, 501(c) type, IRS ruling date, and a financial snapshot from the most recent Form 990 filing (revenue, expenses, assets, net assets, and the source PDF link). Also returns the IRS Business Master File standing — whether contributions are deductible, exemption status, and public-charity vs. private-foundation classification. Use nonprofit_search_organizations first if you only have an org name — this tool requires an EIN. Data lags 1–2 years; the tax year is shown prominently. Data from ProPublica Nonprofit Explorer, sourced from IRS Form 990 filings.
Annotations the server declares
- readOnlyHint: true
- idempotentHint: true
nonprofit_search_organizationsSearch 1.8M+ IRS-recognized tax-exempt organizations by name, keyword, city, or phrase.No findings
Why it is in this group
- The name "nonprofit_search_organizations" says "search": a word for reading.
Description, as the server wrote it Search 1.8M+ IRS-recognized tax-exempt organizations by name, keyword, city, or phrase. Optionally narrow by US state, NTEE major sector (1–10), or 501(c) subsection type. Returns EINs — pass them to nonprofit_get_organization or nonprofit_get_filings for details. Results are paginated at 25 per page; use the page parameter and num_pages to paginate. Total results cap at 10,000 in the API; if total_results === 10000 the actual count may be higher. A zero-match query and a page past the last one both return an empty organizations array with a notice rather than an error; only a page whose offset reaches that 10,000 cap is refused. Supports quoted phrases ("Red Cross"), required terms (+evanston), excluded terms (-dental). Data from ProPublica Nonprofit Explorer, sourced from IRS Form 990 filings.
Annotations the server declares
- readOnlyHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Tool changes
Every rescan that found different tool definitions, newest first.
Oct 22, 2026
f9a94fee231b
+1 added−1 removed~2 changed- Added:nonprofit_search_organizationsOnly reads
- Removed:nonprofit_search
- Changed:nonprofit_get_filingsOnly readsinputSchema
- Changed:nonprofit_get_organizationOnly readsdescriptioninputSchema
Install
Pinned to version 0.2.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http nonprofit-explorer https://nonprofit-explorer.caseyjhand.com/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__nonprofit-explorer__nonprofit_search_organizations",
"mcp__nonprofit-explorer__nonprofit_get_organization",
"mcp__nonprofit-explorer__nonprofit_get_filings"
],
"ask": [],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as nonprofit-explorer. Review it before you use it.
