SuliMérleg
Server Details
Hungarian secondary and primary schools: official exam results, admissions, rankings (KIR).
- Status
- Healthy
- Uptime
- 100.0% over 23 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 4 tools
Each tool targets a clearly distinct operation: listing cities, searching with filters, fetching one school's full data, and comparing 2-5 schools side-by-side. get_school and compare_schools could superficially overlap since both return school data, but the descriptions make the boundary (single vs. multi-school) explicit.
All four names follow a consistent verb_noun pattern (compare_schools, get_school, list_cities, search_schools). The convention is predictable and readable throughout.
Four tools is slightly lean but well-scoped for a read-only school-data server, with no redundant tools. A bit more surface (e.g., listing available filters or school types) could help, but nothing feels bloated.
The discovery-to-detail-to-comparison workflow is covered: list regions, search with filters, get full data, compare. Minor gaps exist, such as no tool to enumerate counties/school types or pull raw exam statistics separately, but agents can work around these via search filters.
Available Tools
4 toolscompare_schoolsBInspect
Side-by-side comparison of 2–5 secondary schools by id.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden, and it discloses almost nothing: not what the comparison returns, not how results are ordered, not how invalid or duplicate ids are handled, and not whether the call is read-only. Only the batch bound of 2–5 is conveyed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler – the scope constraint and the comparison intent come first. Nothing is wasted, though the brevity comes at the cost of the missing details noted elsewhere.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations, no output schema, and an undocumented parameter, the description needs to do more work than it does. For a comparison tool whose value depends entirely on the shape of the returned side-by-side data, the absence of any return or behavior detail leaves real gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the only documentation of the single parameter is the description's 'by id'. That usefully identifies the string array as school identifiers, but the 2–5 range restates minItems/maxItems already present in the schema, and nothing is said about formats or ordering.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (compare), resource (secondary schools), and scope (2–5, by id), which is enough to tell it apart from the single-record get_school and the query-oriented search_schools. It stops short of explicitly naming those siblings, so it lands at a solid 4 rather than a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The '2–5 schools by id' framing implies this is the multi-record lookup path once you already have ids, but there is no explicit when-to-use, no mention of when to prefer get_school or search_schools, and no prerequisites stated. Usage is inferable but not guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_schoolAInspect
Full official data for one secondary school by its id (OM azonosító, optionally -site): yearly érettségi results, admissions (first-choice applicants per place), national competency assessment scores vs national and same-type averages.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. 'Get ... full official data' implies a read-only, non-destructive lookup, and it discloses the shape of returned data, but there is no mention of permissions, error behavior when an id is unknown, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence naming the verb, resource, and identifier first, then the payload. It is dense and information-rich without filler, though the run-on parenthetical list of return categories is slightly heavy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description must describe returns, and it enumerates the main data categories (érettségi results, admissions, competency scores vs averages). For a one-parameter read tool this is largely sufficient, missing only behavioral notes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, and it does: it explains that the id is the Hungarian 'OM azonosító' and that an optional '-site' suffix is accepted. That is meaningful format guidance beyond the bare 'string' type in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Full official data for one secondary school by its id') and enumerates the data scope (érettségi results, admissions, competency scores). The singular 'one secondary school by its id' implicitly distinguishes it from search_schools and compare_schools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: this is the detail fetch for a known school id, presumably after search_schools. However, it never states when to use it versus compare_schools or search_schools, nor any prerequisites such as where the id comes from.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_citiesCInspect
Hungarian towns with secondary schools and school counts.
| Name | Required | Description | Default |
|---|---|---|---|
| min_count | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full disclosure burden. It hints that results are filtered to towns that have secondary schools and that counts are included, but says nothing about ordering, result limits, or how the count filter behaves — thin for a tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short, front-loaded sentence with no filler. It is efficient, though it reads as a fragment rather than a complete statement of purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool this is still under-specified: the only parameter is undocumented and there is no usage context. No output schema exists, so the description would need to signal what a result looks like, and it does not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter min_count has 0% schema description coverage and is never mentioned in the description. The phrase 'school counts' gestures at count-based selection but does not explain that min_count sets the minimum number of schools, so the parameter's meaning is left entirely to inference.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase names a resource and a scope ('Hungarian towns with secondary schools and school counts'), which distinguishes it from the school-oriented siblings, but it contains no verb and never says it lists or returns towns. An agent can guess the domain but not the action or the output shape from this alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no exclusions, and no pointer to alternatives such as search_schools or compare_schools. The agent gets no help deciding between this and its siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_schoolsAInspect
Search Hungarian secondary schools (gimnázium, technikum, szakképző) ranked by the share of students passing an advanced-level érettségi exam (official KIR data, last 3 years). Filter by city, county, school type, minimum advanced-level share or name.
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| type | No | gimnazium, technikum or szakkepzo | |
| limit | No | ||
| query | No | Name or street contains | |
| county | No | Vármegye, e.g. "Hajdú-Bihar" | |
| min_advanced_pct | No | Minimum share of students with a successful advanced-level (emelt szintű) exam, % |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it discloses the data provenance (official KIR data), the observation window (last 3 years), and — most importantly — that results are ranked rather than arbitrarily ordered. It does not mention read-only nature or pagination/limit behavior, but 'search' plus the ranking note covers the operationally relevant traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with the resource and ranking criterion front-loaded and filters trailing. Nothing is wasted, though the density of parenthetical type names makes it slightly heavy for one sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only search tool with no output schema and no annotations, the description gives an agent enough to call it correctly: what is searched, how results are ordered, and what can be filtered. The shape of returned records (name, city, pass share) is left implicit, which is the main remaining gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67%, and the description compensates by naming five of the six parameters semantically (city, county, school type, minimum advanced-level share, name/query). It adds the ranking notion that no parameter captures. The 'limit' parameter is left unexplained in prose, but it has a default and maximum in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (search), a well-scoped resource (Hungarian secondary schools, with the three school types named), and the ranking criterion (share of students passing advanced-level érettségi). This clearly distinguishes it from get_school (single lookup), compare_schools (comparison) and list_cities (enumeration).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description enumerates the available filter dimensions (city, county, type, minimum share, name), which implies when to reach for this tool, but it never states when to prefer a sibling like compare_schools or get_school. Usage is inferable rather than guided.
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.
4 tool updates
- First observed
compare_schools - First observed
get_school - First observed
list_cities - First observed
search_schools
Related MCP Connectors
Hungarian driving schools: official pass rates, training hours and rankings from KAV data.
Polish schools and kindergartens with per-school eighth-grade exam and matura results
Hungarian nursing homes: places, operator, fees and contacts from the official register.
England's schools and nurseries: Ofsted, exam results, offers and last distance offered.
Related MCP Servers
- AlicenseBqualityCmaintenanceEnables AI assistants to search Poland's official register of schools and kindergartens by town, gmina, or proximity to an address, and to retrieve per-school eighth-grade exam and matura results by subject over the last three years, benchmarked against county and national averages.3393 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to query French middle and high school exam results, always paired with social intake and value-added context, including tools to search, compare, and explore schools by area or similarity.MIT
- AlicenseBqualityBmaintenanceEnables discovery and summarization of French education data, including school directories, geocoded establishments, IPS, Parcoursup, and exam datasets.5MIT
- AlicenseAqualityDmaintenanceMCP server providing access to comprehensive UK school data from official government sources, including search, details, near-postcode, comparisons, Ofsted ratings, and DfE education datasets.11MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.