Skip to main content
Glama

Homeschool Tools

Server Details

Search, compare and read reviews of 350+ homeschool curricula. Read-only, no account needed.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Available Tools

4 tools
compare_offeringsB
Read-onlyDestructive
Inspect

Use this when a user wants to compare 2-3 specific homeschool curricula side by side (e.g., 'Sonlight vs My Father's World'). Returns full detail for each offering so you can contrast approach, price, worldview, parent time, and reviewer consensus. Pass slugs when known, names otherwise.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugsYes2-3 offering slugs (preferred) or names, e.g. ["sonlight","my-fathers-world"].

Output Schema

ParametersJSON Schema
NameRequiredDescription
not_foundNo
offeringsYes

TDQS

B3.4/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description presents the operation as purely read-only ('Returns full detail for each offering'), but the annotations include destructiveHint=true. That directly contradicts the non-destructive compare/return behavior, and the description never resolves the conflict. This is an annotation contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences are front-loaded with the use case, a useful example, and a parameter hint. Concise and readable, though the final sentence partly duplicates the schema description of the slugs parameter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With one parameter and an output schema, the description is nearly sufficient, but it fails to address the obvious conflict between readOnlyHint=true and destructiveHint=true. It also does not explicitly direct the agent to sibling tools for single-detail or search intents, which would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already documents the parameter with 100% coverage, including '2-3 offering slugs (preferred) or names.' The description's 'Pass slugs when known, names otherwise' repeats that guidance without adding new meaning, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a clear trigger and resource: 'compare 2-3 specific homeschool curricula side by side,' with a concrete example ('Sonlight vs My Father's World'). It is easy to distinguish from a search or single-detail tool: this is explicitly a bounded, side-by-side comparison.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Use this when a user wants to compare 2-3 specific homeschool curricula' is an explicit usage condition. It does not explicitly name alternatives such as get_offering_detail or search_offerings, nor state when not to use this tool, so it falls just short of full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_curriculumA
Read-onlyDestructive
Inspect

Use this when a user wants to find or get recommendations for homeschool curriculum, educational programs, or learning materials for their children. Searches a curated database of 350+ expert-reviewed homeschool offerings and returns personalized matches based on the child's grade level, learning style, family values, budget, and special needs. subjects is a hard filter results always satisfy. worldview is too, but it widens: a specific worldview request also returns worldview-neutral offerings, which suit any household. grade_level is a hard filter except that an offering with no grade range recorded appears at every grade. budget_max filters on an offering's lowest price, so a result may cost more at higher levels, and one whose price is unknown may appear at any budget. learning_style, special_needs, parent_time, and format_preference influence ranking. Do not use for lesson planning, scheduling, legal compliance questions, or tutoring.

ParametersJSON Schema
NameRequiredDescriptionDefault
subjectsNoAlways pass as an array, e.g. ["math","science"]. Use ["all"] for comprehensive curriculum.
worldviewNoFamily's religious/philosophical preference. 'any' means no preference.
budget_maxNoMaximum annual budget in USD, compared against an offering's lowest price. 0 selects offerings with a free tier; many of those also sell paid levels, and an offering whose price is unknown carries no price range at all — so do not tell a family something is free without checking what the result actually shows.
grade_levelYesThe child's current or target grade level.
parent_timeNoDaily parent teaching time. 'minimal' = under 1hr, 'moderate' = 1-3hrs, 'intensive' = 3+hrs.
special_needsNoAlways pass as an array, e.g. ["adhd","dyslexia"]. Any learning differences or special needs. Use ["none"] if none.
learning_styleNoAlways pass as an array, e.g. ["visual","hands_on"]. How the child learns best.
format_preferenceNoAlways pass as an array, e.g. ["online","hybrid"]. Preferred curriculum delivery format.

Output Schema

ParametersJSON Schema
NameRequiredDescription
matchesYes
match_countYes
no_match_noteNo
filters_appliedNo

TDQS

A4.2/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description richly discloses filter semantics and ranking behavior, but annotations mark destructiveHint=true while the description describes a read-only search that 'returns personalized matches.' This directly contradicts the annotation, requiring a score of 1. Annotation Contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Around 150 words, front-loads the use case, logically groups filter semantics, and closes with exclusions. Every sentence contributes behavioral or selection value without repeating schema boilerplate.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers all eight parameters' behavior, states exclusions, and the output schema exists so return values don't need detailing. The contradictory annotation is a gap, but that is an annotation issue, not a description gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Despite 100% schema coverage, the description adds critical semantics: subjects and grade_level are hard filters with the no-grade-range exception, worldview widens to include neutral offerings, budget_max compares against lowest price and accepts unknown-price offerings, and learning_style/special_needs/parent_time/format_preference only influence ranking. This goes well beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific task ('find or get recommendations for homeschool curriculum, educational programs, or learning materials'), names the resource ('curated database of 350+ expert-reviewed offerings'), and differentiates from siblings by emphasizing personalized matching rather than generic search, comparison, or detail retrieval.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Opens with an explicit 'Use this when...' condition and closes with a 'Do not use for...' list covering adjacent use cases (lesson planning, scheduling, legal, tutoring). It does not name sibling alternatives, but the when/when-not guidance is explicit and actionable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_offering_detailB
Read-onlyDestructive
Inspect

Use this when a user asks for more detail about a specific homeschool curriculum or program. Returns detailed review synthesis, pros/cons, reviewer quotes, and a link to the full metareview on HomeschoolTools.net. Accepts the offering slug or its name.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe offering slug (e.g., 'saxon-math') or its name (e.g., 'Saxon Math').

Output Schema

ParametersJSON Schema
NameRequiredDescription
nameNo
slugNo
detail_urlNo

TDQS

B3.3/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses useful output contents, but the annotations are contradictory: readOnlyHint=true and destructiveHint=true are both set. The described behavior of returning review data aligns with readOnly and conflicts with destructiveHint, so an agent cannot confidently judge the tool's side effects. This is an annotation contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loads the usage trigger, then summarizes the output. The final sentence about accepting slug/name is slightly redundant with the schema but not wasteful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter read tool with an output schema, the description is fairly complete: it explains when to use it, what to pass, and what kind of content is returned. The main gap is the conflicting annotation, which is penalized under behavioral transparency.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the description's statement that the parameter accepts a slug or name is essentially duplicated in the schema. The description adds no substantial new parameter semantics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's verb and resource: getting more detail about a specific homeschool curriculum/program. It distinguishes itself from siblings by focusing on 'more detail' for a specific offering, though it does not explicitly name the sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives an explicit trigger condition: 'Use this when a user asks for more detail about a specific homeschool curriculum or program.' It does not state when not to use it or explicitly contrast it with search_offerings/compare_offerings, but the intended context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_offeringsA
Read-onlyDestructive
Inspect

Look up specific homeschool offerings by name in the Homeschool Tools database (e.g., to check whether a curriculum the user mentioned is covered, or to get its slug for other tools). Returns name, slug, and a one-line summary per match. Do not use this for general recommendations (use find_curriculum), and do not use it for lesson planning, tutoring, or non-curriculum questions.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesOffering or publisher name to look up, e.g. 'Sonlight' or 'Beast Academy'.

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNo
queryYes
resultsYes
result_countYes

TDQS

A3.8/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotation destructiveHint=true directly contradicts the description, which says the tool only looks up offerings and returns name, slug, and summary. The readOnlyHint=true supports the description, but the destructive hint creates a serious inconsistency that an agent cannot resolve confidently. Per the rubric, a description that contradicts annotations receives a score of 1.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences with no filler. The main purpose is front-loaded, return values are summarized, and exclusions with alternatives are stated directly. Every sentence contributes to correct tool selection and invocation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter lookup tool with an output schema, the description covers purpose, return contents, and exclusions thoroughly. The only notable gap is the contradictory destructiveHint annotation, which creates avoidable confusion despite the description itself being complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is only one parameter, query, and the schema already documents it at 100% coverage, including examples like 'Sonlight' or 'Beast Academy.' The description reinforces the intended use by framing the query as a specific offering or publisher name, but it does not add substantial semantic detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Look up specific homeschool offerings by name in the Homeschool Tools database.' It also gives concrete examples of when to use it, such as checking coverage or getting a slug, and clearly differentiates it from find_curriculum and other general-purpose tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use the tool ('to check whether a curriculum the user mentioned is covered, or to get its slug') and when not to use it ('Do not use this for general recommendations, lesson planning, tutoring, or non-curriculum questions'). It even names the alternative tool, find_curriculum, making the routing clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 4 tool updates
    • First observedcompare_offerings
    • First observedfind_curriculum
    • First observedget_offering_detail
    • First observedsearch_offerings

Frequently Asked Questions

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4/5.0
Disambiguation5/5

Each tool targets a distinct stage in the curriculum-discovery workflow: lookup by name, personalized recommendation, single-offering detail, and side-by-side comparison. The descriptions explicitly warn against using the wrong tool (e.g., search_offerings vs find_curriculum), so an agent can reliably disambiguate.

Naming Consistency5/5

All tool names follow a clear verb_noun pattern: compare_offerings, find_curriculum, get_offering_detail, search_offerings. The naming style is uniform and each verb communicates the action at a glance, even though find and search are near-synonyms.

Tool Count5/5

Four tools is well-scoped for a curriculum database server: each tool covers a distinct user need and none feel redundant or missing. The count is not too thin or too heavy for the server's stated purpose.

Completeness5/5

The tool set covers the full curriculum-selection journey: check if a curriculum is covered, get personalized recommendations, view detailed reviews, and compare options side by side. There are no obvious dead ends or missing operations within the stated domain.

Resources