A Model Context Protocol (MCP) server that provides access to ProPublica's Nonprofit Explorer API for nonprofit organization search and analysis
Propublica MCP MCP server is a locally run integration for AI assistants that speak the Model Context Protocol. A Model Context Protocol (MCP) server that provides access to ProPublica's Nonprofit Explorer API for nonprofit organization search and analysis.
A Model Context Protocol (MCP) server that provides access to ProPublica's Nonprofit Explorer API, enabling AI models to search and analyze nonprofit organizations' Form 990 data for CRM integration and prospect research.
Once Propublica MCP is connected, these are the calls the assistant has available:
search_nonprofits — Search for nonprofit organizationsget_organization — Get detailed organization information by EINget_organization_filings — Retrieve Form 990 filings for an organizationanalyze_nonprofit_financials — Analyze financial trends across multiple yearssearch_similar_nonprofits — Find similar organizationsexport_nonprofit_data — Format data for CRM importPrerequisites — The Prerequisites tool exposed by this serverInstallation — The Installation tool exposed by this serverContributing — 1. Follow the existing code style 2. Add tests for new features 3. Update documentation as needed 4. Ensure all tests pass before submittingThe server ships on a container image as ghcr.io/asachs01/propublica-mcp, so your MCP client can launch it on demand — there is no separate build step. Add the server block to your client's configuration, restart it, and the tools register themselves.
You will need 2 environment variables: PROPUBLICA_API_BASE_URL, GITHUB_TOKEN. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.
Plenty of knowledge and memory servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Propublica MCP's toolset — search_nonprofits, get_organization, get_organization_filings and 6 more — is a fair guide to whether it matches your workflow. It is maintained by asachs01; worth a glance at recent repository activity before you build anything load-bearing on it.
We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.
| Tool | What it does |
|---|---|
| search_nonprofits | Search for nonprofit organizations |
| get_organization | Get detailed organization information by EIN |
| get_organization_filings | Retrieve Form 990 filings for an organization |
| analyze_nonprofit_financials | Analyze financial trends across multiple years |
| search_similar_nonprofits | Find similar organizations |
| export_nonprofit_data | Format data for CRM import |
| Prerequisites | The Prerequisites tool exposed by this server. |
| Installation | The Installation tool exposed by this server. |
| Contributing | 1. Follow the existing code style 2. Add tests for new features 3. Update documentation as needed 4. Ensure all tests pass before submitting |
Then configure as remote server:
```json
{
"mcpServers": {
"propublica-mcp": {
"transport": {
"type": "http",
"url": "http://localhost:8080"
},
"description": "ProPublica Nonprofit Explorer MCP Server (Local HTTP)"
}
}
}Configuration as documented by the project. Restart the client after saving.
| Variable | Description | Required |
|---|---|---|
| PROPUBLICA_API_BASE_URL | Endpoint or connection string the server talks to. | Yes |
| GITHUB_TOKEN | Credential the server authenticates with. | Yes |
A knowledge graph your assistant keeps between sessions — entities, relations and observations that persist.
Kill hallucinated APIs — version-accurate, up-to-date library documentation injected straight into context.
Your workspace, on speaking terms with AI — search, read and write Notion pages and databases.
A structured scratchpad for hard problems — stepwise reasoning with revisions, branches and visible logic.
Symbol-level code navigation, refactoring and memory for coding agents — the IDE brain your assistant has been missing.
Chat with your second brain — search, read and write vault notes through the Local REST API.