Connect an AI Assistant to Homeschool Tools

Homeschool Tools runs a public Model Context Protocol (MCP) server. Connect it to an AI assistant and the assistant can search our database of 350+ reviewed homeschool offerings, read a full metareview, or compare two or three programs, and answer from that rather than from memory.

It is a lookup tool, not a tutor. The server answers questions about curriculum: what exists, what it costs, who it suits, what reviewers say. It does not plan lessons, keep a schedule, answer state-law questions, or know anything about your family beyond what your assistant sends in a single request.

Endpoint

https://homeschooltools.net/mcp

Streamable HTTP transport, JSON-RPC over POST. No account, no API key, no cookies. Read-only: there is nothing the server can change on your behalf.

Setup

Claude Code

One command, then the tools are available in every session (drop --scope user to add it to the current project only):

claude mcp add --scope user --transport http homeschool-tools https://homeschooltools.net/mcp

Claude.ai and the Claude desktop app

Open Settings → Connectors, choose Add custom connector, and enter the endpoint URL above. No authentication step; leave the OAuth fields empty. Custom connectors may not be offered on every Claude plan.

Other clients

Any client that supports remote MCP servers over HTTP can connect. The configuration most of them accept:

{
  "mcpServers": {
    "homeschool-tools": {
      "type": "http",
      "url": "https://homeschooltools.net/mcp"
    }
  }
}

Some clients name the transport key differently ("transport", or no key at all); check your client's documentation for remote servers.

What to ask

Once connected, ordinary questions work. Your assistant decides when to use the tools:

  • "My ADHD 2nd grader hates worksheets. What math curriculum would suit her?"
  • "What do reviewers say about Saxon Math?"
  • "Sonlight or My Father's World for a Christian family with a 5th grader?"
  • "Is Beast Academy in your database?"

Every offering the server returns carries a link to its page here, so you can read the full metareview yourself.

Tools

4 tools. The parameter tables below are generated from the server itself, so they match what is deployed.

find_curriculum

Recommends offerings for one child from grade level, subjects, worldview, budget, learning style, special needs, parent time and format. Grade, subjects and worldview are hard filters; the rest influence ranking.

Parameter Type Required Values
grade_level string yes pre-k, k, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
subjects array of strings no all, math, language_arts, science, history, reading, writing, foreign_language, art, music (1 to 10 items)
worldview string no secular, christian, catholic, neutral, any
budget_max integer no 0 to 1000000
learning_style array of strings no hands_on, visual, auditory, reading_writing, self_paced, structured, interest_led, independent (1 to 8 items)
special_needs array of strings no adhd, autism, dyslexia, anxiety, gifted, twice_exceptional, processing_disorder, none (1 to 8 items)
parent_time string no minimal, moderate, intensive
format_preference array of strings no print, online, hybrid, app_based (1 to 4 items)

get_offering_detail

Returns the full metareview for one offering: review synthesis, strengths and weaknesses, reviewer quotes, and a link to the page on this site. Accepts a slug or a name.

Parameter Type Required Values
slug string yes up to 120 characters

search_offerings

Looks an offering up by name, to check whether it is covered or to find its slug for the other tools. Returns name, slug and a one-line summary per match.

Parameter Type Required Values
query string yes 2 to 120 characters

compare_offerings

Returns full detail for two or three offerings side by side, so an assistant can contrast approach, price, worldview, parent time and reviewer consensus.

Parameter Type Required Values
slugs array of strings yes 2 to 3 items, each up to 120 characters

Resources

2 read-only resources describe the dataset. The server's instructions point assistants at the vocabulary to map a plain description ("hates worksheets") onto find_curriculum's filter values.

  • dataset://overview
  • dataset://vocabulary

Limits

  • Rate limit: 30 requests per minute per IP address. An assistant's connection handshake counts toward it, which is why a busy session can occasionally see a 429; wait a minute and retry. The limit is counted per server process rather than globally, so treat it as a floor: with more than one process running, the effective ceiling is higher.
  • Batches: a JSON-RPC batch may carry up to 20 messages and is charged one request per message.
  • Request size: 4 MiB.
  • Data freshness: the server reads the same database as this site, so an assistant sees exactly what you would see on an offering's page.

Browser access and CORS

The endpoint answers cross-origin requests from any origin and does not validate the Origin header, which the MCP specification says a server must do. That rule exists to protect local servers holding private data from DNS-rebinding attacks. This server holds a public catalogue that is already published as web pages, sets no cookies, has no accounts and no write tools; the worst a hostile page can do is spend part of a visitor's rate limit reading data it could have fetched directly. Restricting origins would break browser-based MCP clients for no gain. We will revisit this if any of those facts change.

What we record

For each request the server stores which protocol method was called, which tool ran (if any), how long it took, whether it failed, what kind of assistant made the request (for example "claude-code"), and the search criteria, but only values from our own fixed lists, a budget figure, or the catalogue name of an offering that was looked up. It does not store IP addresses, conversation content, or any free text, and the records are deleted after 12 months. The full statement is in our Privacy Policy.

Links the server returns carry a ?ref= parameter naming the assistant type, so we can see which assistants send readers here. Offering pages may contain affiliate links, described in our Affiliate Disclosure; the server's own answers contain none.

Questions?

If something does not connect, or an answer looks wrong, please contact us and say which client you used.


Last updated: September 2, 2026