DistrictAPI
US public school districts and schools by address — enrollment, demographics, boundaries
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
districtapi-mcpclaude mcp add districtapi -e 'DISTRICTAPI_KEY=<your districtapi_key>' -- uvx districtapi-mcp==0.1.3
{
"mcpServers": {
"districtapi": {
"command": "uvx",
"args": [
"districtapi-mcp==0.1.3"
],
"env": {
"DISTRICTAPI_KEY": "<your districtapi_key>"
}
}
}
}
Environment variables
DISTRICTAPI_KEYrequired secret API key from https://districtapi.dev (free tier: 500 requests/month)
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
districtapi-mcp
mcp-name: dev.districtapi/districtapi-mcp
MCP server for districtapi.dev — US school district and school data for AI agents.
Expose school district lookups as tools to any MCP-compatible AI assistant (Claude, Cursor, Copilot, etc.).
Installation
pip install districtapi-mcp
Or run directly with uvx (no install needed):
uvx districtapi-mcp
Configuration
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"districtapi": {
"command": "uvx",
"args": ["districtapi-mcp"],
"env": {
"DISTRICTAPI_KEY": "your_api_key_here"
}
}
}
}
Cursor / other MCP clients
{
"mcpServers": {
"districtapi": {
"command": "uvx",
"args": ["districtapi-mcp"],
"env": {
"DISTRICTAPI_KEY": "your_api_key_here"
}
}
}
}
Get a free API key at districtapi.dev.
Available Tools
| Tool | Description |
|---|---|
lookup_district_by_address | Find the district serving a US street address |
get_district | Get full district profile by NCES LEA ID |
search_districts | Search districts by name and/or state |
get_district_schools | List all schools in a district |
get_school | Get full school profile by NCES school ID |
find_schools_near_address | Find schools within a radius of an address |
Example
Once configured, you can ask your AI assistant:
"What school district serves 1600 Pennsylvania Ave, Austin TX, and how many students are enrolled?"
The assistant will call lookup_district_by_address and return the full district profile.
Links
- Website: districtapi.dev
- PyPI: pypi.org/project/districtapi-mcp
- REST API docs: districtapi.dev/docs
License
MIT
Frequently asked questions
What is DistrictAPI?
US public school districts and schools by address — enrollment, demographics, boundaries
How do I install DistrictAPI?
It runs on your machine. In Claude Code: claude mcp add districtapi -e 'DISTRICTAPI_KEY=<your districtapi_key>' -- uvx districtapi-mcp==0.1.3. For other clients, paste the JSON configuration from this page into their MCP settings.
Does DistrictAPI need an API key?
Yes. It expects DISTRICTAPI_KEY, which you set in its configuration.
Is DistrictAPI open source?
Its code is public on GitHub, but the repository does not declare a standard license.
Who maintains DistrictAPI?
It is published by DistrictAPI. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.