Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

io.github.cyanheads/college-scorecard-mcp-server

REMOTE · COLLEGE-SCORECARD.CASEYJHAND.COM · 2 COMPONENTS

Search, compare, and analyze U.S. college data — costs, earnings, programs, and outcomes.

+3 this week 86 Trust /100

Last scanned (5 hours ago)

Scores higher than 93% of remote servers

Reachable. Last reached 5 Nov 2026.

Category Education and Research

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security83
Transport & Reachability100
Schema Quality & AI Usability80
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 2682 tokens (~134/item across 20 items; 9 tools + 11 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management77
  • Stability observed for 23 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 9 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 11 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 4 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 70 to 73. That category is still filling its 30-day observation window: 21 days of observed history at the previous scan, 22 at this one. The score rises as the window fills, whether or not the server changes.

  • 3 Nov 26 0
    • The server rewrote its instructions, which are the text every model session reads security
    • Tool “scorecard_compare_schools” rewrote its description, which is the text the model reads security
    • Tool “scorecard_get_programs” rewrote its description, which is the text the model reads security
    • Tool “scorecard_search_programs” rewrote its description, which is the text the model reads security
    • Tool “scorecard_search_schools” rewrote its description, which is the text the model reads security
    • New resource “college-scorecard-guide” functional
    • Server version: 0.4.0 → 0.5.0 functional
    • “scorecard_get_programs” added an optional parameter “limit” cosmetic
    • “scorecard_get_programs” added an optional parameter “offset” cosmetic
    • “scorecard_get_school” added an optional parameter “program_limit” cosmetic
    • “scorecard_get_school” added an optional parameter “program_offset” cosmetic
    • “scorecard_lookup_cip” added an optional parameter “offset” cosmetic
    • “scorecard_search_programs” added an optional parameter “limit” cosmetic
    • “scorecard_search_programs” added an optional parameter “offset” cosmetic
    • “scorecard_get_programs” reworded the description of “min_earnings” cosmetic
    • “scorecard_search_programs” reworded the description of “min_earnings” cosmetic
    • “scorecard_search_schools” reworded the description of “degree_level” cosmetic
    • “scorecard_compare_schools” reworded the description of “ids” cosmetic
  • 1 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 60 to 63. That category is still filling its 30-day observation window: 18 days of observed history at the previous scan, 19 at this one. The score rises as the window fills, whether or not the server changes.

  • 30 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 53 to 57. That category is still filling its 30-day observation window: 16 days of observed history at the previous scan, 17 at this one. The score rises as the window fills, whether or not the server changes.

  • 28 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 47 to 50. That category is still filling its 30-day observation window: 14 days of observed history at the previous scan, 15 at this one. The score rises as the window fills, whether or not the server changes.

  • 26 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 40 to 43. That category is still filling its 30-day observation window: 12 days of observed history at the previous scan, 13 at this one. The score rises as the window fills, whether or not the server changes.

  • 24 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 33 to 37. That category is still filling its 30-day observation window: 10 days of observed history at the previous scan, 11 at this one. The score rises as the window fills, whether or not the server changes.

  • 21 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 5 Nov 2026 · Probed https://college-scorecard.caseyjhand.com/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=caseyjhand.com CN=WE1,O=Google Trust Services,C=US 2 Nov 2026 31 Jan 2027 ECDSA 256 ECDSA-SHA256 995a30681ab772540e934241ca1d576c
SANs: caseyjhand.com, *.caseyjhand.com
CN=WE1,O=Google Trust Services,C=US (CA) CN=GTS Root R4,O=Google Trust Services LLC,C=US 13 Dec 2023 20 Feb 2029 ECDSA 256 ECDSA-SHA384 7ff31977972c224a76155d13b6d685e3
CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE 15 Nov 2023 28 Jan 2028 ECDSA 384 SHA256-RSA 7fe530bf331343bedd821610493d8a1b

Background: What to check on a remote MCP endpoint →

DNSSEC secure

Validation of college-scorecard.caseyjhand.com. — Secure

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
caseyjhand.com. present 2371 13 Verified
college-scorecard.caseyjhand.com. Verified address RRset verified with the apex keys
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200
Header Value
strict-transport-security max-age=63072000; includeSubDomains; preload
x-content-type-options nosniff

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://college-scorecard.caseyjhand.com/mcp Verified 200
http (plaintext) http://college-scorecard.caseyjhand.com/mcp HTTPS enforced 301 https://college-scorecard.caseyjhand.com/mcp
MCP tools · 9 exposed · ~2,196 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
scorecard_compare_schools ~128

Side-by-side comparison of the first five distinct normalized school IDs, accepting up to 1,000 raw IDs. Remaining IDs are unprocessed; request them separately. Ordinal competition ranks share ties; shared OPEID6 outcomes and mixed-period price rows are unranked. Topics: costs, admissions, outcomes, aid. Use scorecard_get_school for full profiles.

NameTypeReqDescription
idsarrayyes2–1,000 raw school IDs; first five distinct normalized IDs compared.
topicstringyesComparison topic: costs, admissions, outcomes, or aid.
NameTypeReqDescription
errorobject–Present when the call failed. Absent on success.
missing_idsarray–Processed IDs without records.
noticestring–Warning if some requested IDs returned no record.
rowsarray–Comparison rows — one per metric, with per-school values and ranks.
schoolsarray–Schools in the comparison set, in the same order as the ids input.
summarystring–Brief interpretive summary highlighting the most notable relative differences.
topicstring–The comparison topic used.
unprocessed_idsarray–Distinct normalized IDs beyond the five-school serving cap.

No examples provided.

scorecard_get_earnings ~186

Institution-level earnings of federally aided undergraduate entrants working and not enrolled, regardless of completion. Reports medians at 6/8/10 years after entry, 6/10-year percentiles, and non-male/male 6-year medians. For graduate program earnings use scorecard_get_programs. years selects API data-file start years (1996–2025), including files without earnings observations. Per-metric availability and official cohort/measurement/dollar context accompany values; unknown metadata stays absent. No re-inflation is performed.

NameTypeReqDescription
id–yesSchool ID from scorecard_search_schools.
yearsarray–Optional API data-file start years from 1996–2025 (e.g. [2003, 2011, 2020]); valid files may lack observations. Omit or pass [] for snapshot only.
NameTypeReqDescription
currentobject–Most recent available earnings snapshot.
current_availabilityobject–Availability keyed by every supported current earnings metric.
current_contextobject–Official latest provenance keyed by metric, independent of returned values.
errorobject–Present when the call failed. Absent on success.
metric_scopeobject–Earnings, debt and repayment are pooled at OPEID6; completion is campus-specific.
ope6_idstring–Provider OPEID6 identifier, preserving leading zeros.
school_idnumber–School unit ID.
school_namestring–Institution name.
suppressedboolean–True only when every supported current metric has an explicit privacy marker.
suppression_notestring–Explains suppression when suppressed=true.
trendarray–Historical rows by API data-file start year. Present only when nonempty years were supplied.

No examples provided.

scorecard_get_programs ~281

Page through field-of-study programs at one school, ranked and filtered by completion-based one-year earnings. Legacy highest-credential earnings remain separate from current one- and four-year completion series, with dictionary provenance. Earnings and debt pool across campuses sharing OPEID6 within CIP/credential; awards are campus-specific. Use scorecard_lookup_cip to find CIP codes by name.

NameTypeReqDescription
cip_codestring–Filter to one 4-digit CIP code, dotted or undotted (e.g. "11.07" or "1107" for Computer Science). Returns one row per credential level the school offers in that program.
credential_levelinteger–Filter by credential level: 1=undergraduate certificate, 2=associate, 3=bachelor, 4=post-baccalaureate certificate, 5=master, 6=doctoral, 7=first professional, 8=graduate/professional certificate, 99…
id–yesSchool ID from scorecard_search_schools.
limitinteger–Program rows per response; values above 100 normalize to 100.
min_earningsnumber–Minimum completion-based one-year median earnings; no legacy fallback.
offsetinteger–Zero-based program row offset after filtering and stable earnings ordering.
NameTypeReqDescription
errorobject–Present when the call failed. Absent on success.
limitnumber–Effective program row limit, at most 100.
metric_scopeobject–Metric aggregation scope within CIP and credential.
nextOffsetnumber|null–Next program row offset, or null when exhausted.
noticestring–Guidance when no programs match or some earnings are unavailable or privacy-suppressed.
offsetnumber–Effective zero-based program offset.
ope6_idstring|null–Provider OPEID6 group identifier, preserving leading zeros; null when absent.
programsarray–One page of matching programs, stably sorted by completion-based one-year earnings descending, with unavailable current earnings last.
provenanceobject–Dictionary cohort, measurement, and dollar provenance for each population.
queryobject–Normalized effective school ID and program selectors.
school_idnumber–School unit ID.
school_namestring–Institution name.
shownnumber–Program rows returned on this page.
suppressed_countnumber–Matching programs with confirmed privacy-suppressed legacy highest-credential earnings, before row paging.
totalnumber–Total matching programs before row pagination.
truncatedboolean–More matching program rows remain.
unavailable_countnumber–Matching programs with unavailable legacy highest-credential earnings of unknown cause, before row paging.

No examples provided.

scorecard_get_school ~206

Institutional profiles for one or more school IDs. Accepts up to 1,000 elements, deduplicates normalized IDs, serves the first 100 distinct IDs, and reports missing and unprocessed IDs separately. Use scorecard_compare_schools for comparisons. Custom fields return requested paths and their JSON values in selected_fields, absent paths in absent_fields, and real identity; default profiles include costs, admissions, outcomes, aid, and completion rates.

NameTypeReqDescription
fieldsstring–Optional comma-separated list of custom field paths from scorecard_list_fields. Overrides the default field set.
id–yesPositive safe integer school ID or up to 1,000 raw elements. First 100 distinct normalized IDs served; discover IDs with scorecard_search_schools.
program_limitinteger–Projected program positions per parent array; values above 100 are clamped to 100.
program_offsetinteger–Zero-based position in each projected program parent array.
NameTypeReqDescription
errorobject–Present when the call failed. Absent on success.
missing_idsarray–Processed distinct IDs with no returned record.
noticestring–Warning when some requested IDs returned no record.
schoolsarray–Full profiles for the requested school(s).
total_foundnumber–Number of records returned.
total_requestednumber–Number of IDs requested.
truncatedboolean–True when any projected program parent has remaining positions.
unprocessed_idsarray–Distinct IDs beyond the 100-ID serving cap, in caller order.

No examples provided.

scorecard_list_fields ~140

Search the College Scorecard field catalog by keyword. Returns matching field paths, descriptions, data types, and whether each field supports API-side sorting. Use before passing custom field paths to the fields parameter on scorecard_get_school to find a supported path. Served entirely from embedded static data — no API call, no rate limit impact.

NameTypeReqDescription
limitinteger–Requested limit; serving cap 100, hard ceiling 1,000.
querystringyesKeyword to search the field catalog (e.g. "tuition", "earnings", "admissions", "debt"). Matches against field paths, descriptions, and category names.
NameTypeReqDescription
capnumber–The limit that was applied.
errorobject–Present when the call failed. Absent on success.
guidancestring–Concrete narrowing guidance when matches remain.
noticestring–No-match guidance.
querystring–The search query used.
queryContextobject–Effective selectors.
resultsarray–Matching field entries ranked by relevance.
shownnumber–Number of fields returned.
tipstring–Usage tip for unsortable fields when relevant.
totalMatchesnumber–Number of matching fields found.
truncatedboolean–True when results were capped at the limit.

No examples provided.

scorecard_lookup_cip ~157

Search the Classification of Instructional Programs (CIP) taxonomy by keyword or partial name. Returns matching CIP codes with standard titles. Use this before passing cip_code filters to scorecard_search_programs or scorecard_get_programs when you know a program by name but not its code. Served entirely from embedded static data — no API call, no rate limit impact.

NameTypeReqDescription
limitinteger–Requested limit; serving cap 50, hard ceiling 1,000.
offsetinteger–Zero-based offset into the complete relevance-ordered matches.
querystringyesSearch term — program name keyword (e.g. "computer science", "nursing", "business"). Matches against CIP titles and family names.
NameTypeReqDescription
capnumber–The limit that was applied.
errorobject–Present when the call failed. Absent on success.
guidancestring–Concrete narrowing guidance when matches remain.
nextOffsetnumber–Offset to request next; absent when no matches remain.
noticestring–No-match guidance.
offsetnumber–Zero-based offset of this result page.
querystring–The search query used.
queryContextobject–Effective selectors.
resultsarray–Matching CIP entries ranked by relevance.
shownnumber–Number of CIP codes returned.
totalMatchesnumber–Number of matches found.
truncatedboolean–True when results were capped at the limit.

No examples provided.

scorecard_search_programs ~463

Find programs across institutions, ranked and filtered by completion-based one-year median earnings within the fetched school page. Legacy highest-credential values remain separate with their own provenance. Earnings and debt pool across campuses sharing OPEID6 within CIP/credential; awards are campus-specific. School page/per_page/total count schools; limit/offset page the matching program rows. Follow next to drain this school page before advancing to the next school page. Use scorecard_lookup_cip to find CIP codes.

NameTypeReqDescription
cip_codestring–CIP 4-digit code to search for (e.g. "11.07" for Computer Science). Use scorecard_lookup_cip to find codes.
credential_levelinteger–Provider credential selector: 1=undergraduate certificate, 2=associate, 3=bachelor, 4=post-baccalaureate certificate, 5=master, 6=doctoral, 7=first professional, 8=graduate/professional certificate,…
limitinteger–Program rows per response; values above 100 normalize to 100.
max_debtnumber–Maximum median cumulative Stafford/Grad PLUS debt across institutions at the same academic level, inclusive; excludes unavailable debt.
max_net_pricenumber–Maximum average net price at the school.
min_earningsnumber–Minimum completion-based one-year median earnings, inclusive, without legacy fallback; filters this school page locally while school totals remain unchanged.
offsetinteger–Zero-based row offset within the filtered and sorted school page.
ownershipinteger–Restrict to school type: 1=public, 2=private nonprofit, 3=for-profit.
pageinteger–Zero-indexed page number.
per_pageinteger–Schools per page (max 100); program rows may exceed this count.
program_namestring–Case-insensitive title substring matched within the fetched school page. Ignored when cip_code is provided; use cip_code for upstream program matching.
statestring–Comma-separated two-letter state codes; case and whitespace normalized, blanks unset.
NameTypeReqDescription
capnumber–The effective program row limit that was applied.
errorobject–Present when the call failed. Absent on success.
limitnumber–Effective program row limit, at most 100.
metric_scopeobject–Aggregation scope within CIP and credential identity.
next––Continuation using the same selectors and limits; null when exhausted.
nextOffsetnumber|null–Next row offset on this school page, or null when drained.
noticestring–Recovery hint when no programs match or earnings data is unavailable.
offsetnumber–Effective zero-based row offset within this school page.
pagenumber–Current page (zero-indexed).
per_pagenumber–Results per page used.
programsarray–One page of program rows retaining credential identities, stably sorted by completion-based one-year earnings descending, with unavailable current earnings last.
provenanceobject–Dictionary provenance for each distinct program population.
queryobject–Normalized effective selectors and pagination defaults.
schools_shownnumber–Schools returned on this school page.
shownnumber–Program rows returned in this response.
suppressed_countnumber–Matching programs with confirmed privacy-suppressed legacy highest-credential earnings, before row paging.
totalnumber–Total schools matching upstream filters, before pagination and local program filtering.
totalCountnumber–Total schools matching upstream filters, before pagination and local program filtering.
total_programsnumber–Matching program rows on the fetched school page before row pagination.
truncatedboolean–True when more program rows or a later school page remain.
unavailable_countnumber–Matching programs with unavailable legacy highest-credential earnings of unknown cause, before row paging.

No examples provided.

scorecard_search_schools ~523

Search and filter U.S. colleges and universities by name, location, type, size, and acceptance rate. Returns core identity and cost metrics. Use scorecard_get_school for profiles or scorecard_search_programs for programs. Geographic distance requires a U.S. ZIP; ZIP alone uses the provider default radius. State accepts comma-separated two-letter codes (e.g. WA,CA). Ownership: 1=public, 2=private nonprofit, 3=for-profit. Degree level: 0=Not classified, 1=certificate, 2=associate, 3=bachelor, 4=Entirely graduate-degree granting.

NameTypeReqDescription
acceptance_rate_rangeobject–Acceptance rate range as decimals (0–1). Omit for no filter.
cip_codestring–Filter to schools offering this CIP 4-digit program code (e.g. "11.07"). Use scorecard_lookup_cip to find codes.
degree_levelinteger–Predominant degree: 0=Not classified, 1=certificate, 2=associate, 3=bachelor, 4=Entirely graduate-degree granting.
distancestring–Nonnegative radius: bare miles, mi, or km, including decimals. Requires meaningful zip.
men_onlyboolean–True selects men-only institutions; false selects institutions explicitly marked not men-only. Omit to include unknown values.
ownershipinteger–Control type: 1=public, 2=private nonprofit, 3=private for-profit.
pageinteger–Zero-indexed page number for pagination.
per_pageinteger–Results per page (max 100).
querystring–School name search — partial or full name; all words must appear.
size_rangeobject–Undergraduate enrollment size range. Omit for no size filter.
sortstring–Upstream sort expression on an indexed field, e.g. "latest.cost.avg_net_price.overall:asc" or ":desc" for reverse order. Use scorecard_list_fields for sort support; omission keeps API ordering.
statestring–Comma-separated two-letter state codes; case and whitespace normalized, blanks unset.
women_onlyboolean–True selects women-only institutions; false selects institutions explicitly marked not women-only. Omit to include unknown values.
zipstring–Five-digit U.S. ZIP or ZIP+4. Alone uses the provider default radius; blank is unset.
NameTypeReqDescription
capnumber–The per_page limit that was applied.
errorobject–Present when the call failed. Absent on success.
noticestring–Recovery hint when results are empty — echoes applied filters and suggests how to broaden.
pagenumber–Current page (zero-indexed).
per_pagenumber–Results per page used.
queryobject–Normalized effective selectors and pagination defaults.
schoolsarray–Matching institutions.
shownnumber–Institutions returned on this page.
totalnumber–Total institutions matching the filters (before pagination).
totalCountnumber–Total institutions matching the filters, before pagination.
truncatedboolean–True when school pagination metadata indicates a later page exists.

No examples provided.

scorecard_value_analysis ~112

Analyze costs, debt, repayment progress, and earnings for one school. Returns debt-to-earnings and net-price-to-annual-earnings ratios alongside the source figures. family_income selects the applicable net-price bracket. Repayment progress is the share of borrowers paying down principal 3 years after entering repayment.

NameTypeReqDescription
family_incomenumber–Annual family income in dollars. When provided, net price is shown for the applicable income bracket.
id–yesSchool ID from scorecard_search_schools.
NameTypeReqDescription
applicable_income_bracketstring–Requested income bracket, retained even when its estimate is unavailable.
attendance_basisstring–Period of the effective attendance cost, selected independently of tuition.
attendance_program_yearnumber–Reported program-year cost of attendance.
cost_of_attendancenumber–Available academic-year attendance cost, otherwise program-year cost.
data_notesarray–Flags for suppressed, missing, or potentially unreliable data fields. Empty when all data is available.
debt_to_earnings_rationumber–Debt-to-earnings ratio: median_debt / earnings_6yr_median. Values >1 indicate debt exceeds annual earnings.
earnings_10yr_mediannumber–Median earnings 10 years after entry.
earnings_6yr_mediannumber–Median earnings 6 years after entry.
effective_net_pricenumber–Price used in the annual-earnings ratio: available income bracket, otherwise overall net price.
effective_tuitionnumber–Available academic-year tuition, otherwise program-year tuition.
errorobject–Present when the call failed. Absent on success.
family_incomenumber–Requested annual family income in dollars.
graduation_ratenumber–Completion rate at 150% normal time (0–1).
list_pricenumber–Effective tuition and fees; see tuition_basis for academic-year or program-year period.
median_debtnumber–Median debt at graduation (completers).
metric_scopeobject–Earnings, debt and repayment are pooled at OPEID6; completion is campus-specific.
net_price_basisstring–Source of the effective price; unavailable means no estimate exists.
net_price_for_incomenumber–Net price for the provided family income bracket. Omitted when family_income not provided.
net_price_overallnumber–Average net price across all income levels.
net_price_to_annual_earningsnumber–Net price divided by median annual earnings measured 6 years after entry. Uses the family-income net price when available, otherwise the overall net price.
ope6_idstring–Provider OPEID6 identifier, preserving leading zeros.
repayment_progress_3yrnumber–Share of borrowers paying down principal (declining loan balance) 3 years after entering repayment (0–1).
school_idnumber–School unit ID.
school_namestring–Institution name.
tuition_basisstring–Period of the effective tuition.
tuition_program_yearnumber–Reported program-year tuition and fees.

No examples provided.

Install

How do I install the io.github.cyanheads/college-scorecard-mcp-server server?

io.github.cyanheads/college-scorecard-mcp-server is a hosted endpoint at https://college-scorecard.caseyjhand.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · college-scorecard.caseyjhand.com

# add to Claude Code
claude mcp add --transport http cyanheads-college-scorecard-mcp-server 'https://college-scorecard.caseyjhand.com/mcp'
Common questions

What is the io.github.cyanheads/college-scorecard-mcp-server server?

io.github.cyanheads/college-scorecard-mcp-server is listed in the public MCP registry as io.github.cyanheads/college-scorecard-mcp-server. Search, compare, and analyze U.S. college data, costs, earnings, programs, and outcomes. This page covers its hosted endpoint (https://college-scorecard.caseyjhand.com/mcp).

Is the io.github.cyanheads/college-scorecard-mcp-server server safe to use?

io.github.cyanheads/college-scorecard-mcp-server scores 86 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the io.github.cyanheads/college-scorecard-mcp-server server expose?

io.github.cyanheads/college-scorecard-mcp-server exposes 9 tools: scorecard_lookup_cip, scorecard_list_fields, scorecard_search_schools, scorecard_get_school, scorecard_get_programs, and 4 more. Their descriptions and schemas cost roughly 2,196 tokens of context every time the server is loaded.

Does the io.github.cyanheads/college-scorecard-mcp-server server require authentication?

No. We connected to io.github.cyanheads/college-scorecard-mcp-server without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

Is the io.github.cyanheads/college-scorecard-mcp-server server still maintained?

io.github.cyanheads/college-scorecard-mcp-server is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.