- Home
- MCP servers
- ProPublica
ProPublica
- python
1
GitHub Stars
python
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
You run a ProPublica MCP Server to access and analyze nonprofit Form 990 data through the MCP transport protocol. This server lets you search nonprofits, fetch organization profiles and filings, analyze financial trends, and export data for CRM workflows, enabling AI-assisted prospect research and CRM integration.
How to use
You connect an MCP client to the server using HTTP transport for remote deployments or stdio transport for local development. The server implements the MCP 2025-03-26 Streamable HTTP transport, so you can query nonprofit data, get organizational details, view Form 990 filings, analyze finances, and export results for CRM import.
How to install
Prerequisites You need a compatible MCP client (for example Claude Desktop or Cursor). For development, ensure Python 3.8 or higher and Git are installed.
Option 1: DXT Extension (Recommended) Install from GitHub Releases by downloading the propublica-mcp-[version].dxt file and installing it in your MCP client.
For Claude Desktop use one of these commands after downloading the DXT file or using the latest release URL.
claude-desktop install propublica-mcp-[version].dxt````bash
claude-desktop install https://github.com/asachs01/propublica-mcp/releases/latest/download/propublica-mcp.dxt```
Option 2: Docker (Production) Pull and run the latest image.
Pull the latest image
docker pull ghcr.io/asachs01/propublica-mcp:latest
Run the server
docker run -it --rm ghcr.io/asachs01/propublica-mcp:latest
Option 3: Cloud Deployment Follow the cloud deployment setup to host the server and obtain a public URL as described in the deployment guides for DigitalOcean App Platform or Cloudflare Workers.
Option 4: Local Python Installation (Development) Clone the project and run locally with Python.
Clone the repository
git clone https://github.com/asachs01/propublica-mcp.git cd propublica-mcp
Create and activate a virtual environment
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
Install dependencies
pip install -r requirements.txt
Install the package
pip install -e .
Run the server in stdio mode (local MCP clients)
python -m propublica_mcp.server
Or run the server in HTTP mode for remote MCP clients
python -m propublica_mcp.server --http --host 0.0.0.0 --port 8080
## Additional notes
Cloud deployments must deploy from the deploy branch and aim for stable, released versions. DigitalOcean and Cloudflare deployments will use the deploy branch for production.
## Available deployment examples
These blocks show common server configuration examples for MCP clients and remote/local usage.
## MCP server configuration examples
HTTP remote server configuration (remote MCP client) — URL provided by the hosting platform.
{ "mcpServers": { "propublica_mcp": { "transport": { "type": "http", "url": "https://propublica-mcp-lk97f.ondigitalocean.app" }, "description": "ProPublica Nonprofit Explorer MCP Server (Remote)" } } }
## Local HTTP server configuration (local development)
Start a local HTTP server and point MCP clients to http://localhost:8080.
Start HTTP server locally
python -m propublica_mcp.server --http --host 0.0.0.0 --port 8080
Then configure as a remote MCP server in your client with the local URL.
{ "mcpServers": { "propublica_mcp": { "transport": { "type": "http", "url": "http://localhost:8080" }, "description": "ProPublica Nonprofit Explorer MCP Server (Local HTTP)" } } }
## Available tools
### search\_nonprofits
Search nonprofit organizations by name, location, and category.
### get\_organization
Retrieve detailed organization information by EIN.
### get\_organization\_filings
Fetch Form 990 filings for a given organization.
### analyze\_nonprofit\_financials
Analyze financial trends across multiple years for nonprofits.
### search\_similar\_nonprofits
Find similar nonprofit organizations based on criteria.
### export\_nonprofit\_data
Format data for CRM imports and downstream systems.