MyNursingSchools Developer & Agent API

Every machine-readable surface of MyNursingSchools, in one place: a public JSON API with an OpenAPI 3.1 specification, an MCP server for assistants, Markdown content negotiation on every page, and the full NCLEX pass-rate dataset under CC BY 4.0. No API key, no registration, no authentication.

Quick start

Start at the capability index. It describes what this site can answer, lists every endpoint, and links the OpenAPI document.

# Capability index
curl -sS https://mynursingschools.com/api/agent/v1

# OpenAPI 3.1 specification
curl -sS https://mynursingschools.com/api/agent/v1/openapi.json

# Any page as Markdown instead of HTML
curl -sS -H 'Accept: text/markdown' https://mynursingschools.com/

When to use the MyNursingSchools API

When to use something else

Calculator endpoints

Every calculator is a GET request, deterministic for a given query string, and returns its own assumptions, sources, and links back to the human page that runs the same logic. Invalid parameters return HTTP 400 with the offending parameter and its allowed values. The directory is at /api/agent/v1/calculators.

Nursing education ROI

GET /api/agent/v1/calculators/nursing-roi

Break-even months, expected salary, and 5/10/20-year net earnings for a nursing credential in one state, from BLS OES state wages and IPEDS tuition estimates.

Parameters

  • state (string, required) — State slug (lowercase, hyphenated) — for example `california`, `new-york`, `district-of-columbia`.
  • degree (string, required) — Target nursing credential.
  • current_income (number, optional, default 0) — Current annual income in USD. Drives the salary-increase and break-even figures. Defaults to 0 (not currently employed).
curl -sS "https://mynursingschools.com/api/agent/v1/calculators/nursing-roi?state=california&degree=BSN&current_income=45000"

Sources: U.S. Bureau of Labor Statistics, Occupational Employment and Wage Statistics (state RN means); NCES IPEDS 2023 nursing program tuition; AACN salary surveys (credential multipliers). Human page: /nursing-roi-calculator.

LPN vs RN pathway planner

GET /api/agent/v1/calculators/lpn-pathway

Recommends an entry route into nursing (LPN first, LPN then bridge to RN, straight to RN, or accelerated BSN) with the ladder, timing, and cost range behind the recommendation.

Parameters

  • starting_point (string, required) — Where the person is today: `none` (new to healthcare), `healthcare` (CNA/MA/EMT/caregiver), `degree_holder` (holds a non-nursing bachelor's).
  • end_goal (string, required) — `nurse_now` (become a licensed nurse the practical way), `become_rn`, or `advanced` (RN now, advanced practice later).
  • priority (string, required) — What matters most: speed to work, long-term pay, cost, or flexibility.
  • timeline (string, required) — `asap` (starting within months), `year`, or `open`.
  • budget (string, required) — Out-of-pocket budget: `tight`, `moderate`, or `flexible`.
curl -sS "https://mynursingschools.com/api/agent/v1/calculators/lpn-pathway?starting_point=none&end_goal=become_rn&priority=speed&timeline=asap&budget=tight"

Sources: BLS Occupational Employment and Wage Statistics (LPN and RN national medians, May 2024); MyNursingSchools program catalog (program lengths and tuition ranges). Human page: /tools/pathway-planner.

Nursing school admission readiness

GET /api/agent/v1/calculators/admission-readiness

Scores an applicant profile (GPA, entrance exam, prerequisites, experience, target program) 0–100 and returns the readiness band with concrete next steps.

Parameters

  • gpa (number, required) — Prerequisite or science GPA on a 0–4 scale. Values outside the range are clamped.
  • entrance_exam_score (number, required) — TEAS or equivalent entrance exam score, 0–100. Values outside the range are clamped. Alias: `teas_score`.
  • program_type (string, required) — Target program: `ADN` (ADN (Associate's)), `BSN` (Traditional BSN), `ABSN` (Accelerated BSN), `RN_TO_BSN` (RN to BSN), `MSN` (MSN / Advanced practice).
  • experience (string, required) — Healthcare experience: `none` (No healthcare experience yet), `volunteer` (Volunteer, shadowing, or patient-care exposure), `cna` (CNA, medical assistant, EMT, or similar), `lpn` (Current LPN or LVN), `rn` (Current RN).
  • science_prereqs_complete (boolean, optional, default true) — Core science prerequisites complete or in progress. Defaults to true.
  • has_retakes (boolean, optional, default false) — One or more repeated prerequisite courses on the transcript. Defaults to false.
curl -sS "https://mynursingschools.com/api/agent/v1/calculators/admission-readiness?gpa=3.4&entrance_exam_score=78&program_type=BSN&experience=cna&science_prereqs_complete=true"

Sources: MyNursingSchools admissions rubric (published weighting, see /tools/admission-calculator). Human page: /tools/admission-calculator.

Calling the API from code

There is no SDK to install — the API is plain HTTP and JSON, so the standard library of any language is enough. Generate a typed client from the OpenAPI document if you want one.

// JavaScript / TypeScript
const params = new URLSearchParams({
  state: "texas",
  degree: "BSN",
  current_income: "42000",
});
const response = await fetch(
  `https://mynursingschools.com/api/agent/v1/calculators/nursing-roi?${params}`,
);
const { result, assumptions, sources } = await response.json();
console.log(result.break_even_months, assumptions, sources);
# Python
import requests

response = requests.get(
    "https://mynursingschools.com/api/agent/v1/calculators/admission-readiness",
    params={
        "gpa": 3.4,
        "entrance_exam_score": 78,
        "program_type": "BSN",
        "experience": "cna",
    },
    timeout=10,
)
data = response.json()
print(data["result"]["readiness_score"], data["result"]["band_label"])
# Generate a typed client from the OpenAPI document
npx openapi-typescript https://mynursingschools.com/api/agent/v1/openapi.json -o mynursingschools.d.ts

MyNursingSchools MCP server

Assistants that speak the Model Context Protocol can call the program finder directly. The endpoint is https://mynursingschools.com/api/mcp, Streamable HTTP transport over POST, no authentication. It exposes find_nursing_programs, which ranks accredited programs by the same student-outcomes score the site uses; sponsorship never reorders results.

{
  "mcpServers": {
    "mynursingschools": {
      "type": "http",
      "url": "https://mynursingschools.com/api/mcp"
    }
  }
}

Markdown content negotiation

Every page answers Accept: text/markdown with a Markdown rendering of the same URL — Content-Type: text/markdown and Vary: Accept — so you never have to parse HTML to read a page. Unknown URLs return HTTP 404 with a Markdown body explaining the error and pointing at the sitemap, llms.txt, and the agent instructions.

curl -sS -i -H 'Accept: text/markdown' https://mynursingschools.com/nclex-pass-rates
curl -sS -i -H 'Accept: text/markdown' https://mynursingschools.com/this-page-does-not-exist

Open data (CC BY 4.0)

The full NCLEX pass-rate dataset — board-verified rows, each with its candidate count and primary source — is published as CSV and JSON under CC BY 4.0. Use it instead of crawling school pages one at a time.

curl -sS https://mynursingschools.com/data/nclex-pass-rates.csv
curl -sS https://mynursingschools.com/data/nclex-pass-rates.json

Required attribution: MyNursingSchools NCLEX Pass Rate Dataset v1.0.0 by MyNursingSchools.com, licensed under CC BY 4.0. Source: https://mynursingschools.com/data.

Rules for citing this data

All machine-readable entry points

Fair use and support

The API is free and unauthenticated. Responses are cacheable for a day, so cache them rather than re-requesting identical query strings, and prefer the bulk dataset over crawling. Automated traffic that degrades the site for students may be rate limited. Questions, bulk exports, and licensing: contact us.

We collect anonymous, aggregate analytics by default to help us improve the site — no cookies are set and you are not personally identified. Click Accept All to enable cookie-based analytics for more accurate measurement. See our Privacy Policy for details. You can change your choice anytime via Cookie Preferences in the footer.