U.S. college ROI data: 30-yr NPV for 500 colleges, lifetime ROI for 134 majors. Keyless.
MCP server for U.S. college-ROI data: 30-year net present value (NPV) for 500 four-year colleges, lifetime ROI for 19 major categories + 115 CIP subfields, per-state best-value rankings, and the out-of-state tuition penalty ranking.
Wraps the free, keyless LE TEEN College ROI API (static JSON, CC BY 4.0). No API key, no signup, no rate limits beyond CDN sanity. Data derives from FREOPP program-level ROI estimates, IPEDS institutional data, and BEA price deflators — methodology at le-teen.com/methodology. Dataset DOI: 10.5281/zenodo.21351602.
Requires Node ≥ 18.
Claude Desktop / Claude Code (claude_desktop_config.json or .mcp.json):
{
"mcpServers": {
"college-roi": {
"command": "npx",
"args": ["-y", "college-roi-mcp"]
}
}
}
Claude Code CLI:
claude mcp add college-roi -- npx -y college-roi-mcp
Any other MCP client: run npx -y college-roi-mcp over stdio.
| Tool | What it returns |
|---|---|
list_majors | Compact ROI rows for 19 categories / 115 subfields — median & mean lifetime ROI, % never break even, break-even age, AI-exposure band. Filter by kind/parent, sort, limit. |
get_major | Full record for one major: ROI distribution (p25/median/mean/p75), completion-adjusted & dropout ROI, graduates/programs, AI-exposure detail. |
search_colleges | Search the 500 positive-NPV-envelope colleges by name/state/control — resident & non-resident 30-yr NPV, cost of attendance, median earnings, break-even age. |
get_college | Full record for one college, incl. IPEDS unitid and FREOPP coverage. |
best_value_colleges | Each state's best-value four-years at resident pricing (top 15 per state), or a nationwide top-pick summary. |
out_of_state_penalty | Public four-years ranked by how much 30-yr NPV a non-resident gives up vs a resident. |
get_api_info | Metadata for the underlying API: endpoints, license, DOI, attribution. |
All dollar figures are lifetime/30-year totals in USD. List responses are compact projections with limit controls so they stay small in agent contexts; detail tools return the full upstream record.
Note the envelope: only colleges that clear a positive-NPV bar appear (500 of ~1,656 U.S. four-years). A school being absent is itself a signal.
The upstream API is static JSON regenerated with the dataset; this server caches responses in-process for 24 h (matching the API's CDN cache). Nothing is written anywhere; the server is read-only.
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
npx -y college-roi-mcpMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"com-le-teen-college-roi-mcp": {
"command": "npx",
"args": [
"-y",
"college-roi-mcp"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup referencecollege-roi-mcpnpmcom.le-teen/college-roi-mcp works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.