Skip to main content
Glama

Server Details

Ukrainian schools, community search and education budgets. Sources: EDBO, KATOTTG, Open Budget.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
Ukraine-Territorial-MCP/ukraine-schools-mcp
GitHub Stars
0
ChatGPT
–
Claude
–

TDQS

B3/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: budget retrieval, school detail lookup, and school listing by community. There is little risk of confusing the three operations.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern: get_education_budget, get_school_info, list_schools_by_community. The convention is predictable and readable.

Tool Count4/5

Three tools is a reasonable focused surface for a narrow Ukraine schools data server, though it is on the thin side. Each tool clearly earns its place.

Completeness3/5

The surface covers budget lookup, school details, and community-based listing, but lacks obvious supporting operations such as listing communities, searching schools by name, or filtering budget data by school/community. These gaps are notable though not crippling for basic lookup workflows.

Available Tools

3 tools
get_education_budgetCInspect

Get education budget plans and actual expenses from Open Budget.

NameRequiredDescriptionDefault
yearNo
budget_codeYes

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden, and it discloses almost nothing about behavior: whether this is read-only, where the Open Budget data comes from, how current it is, or what the response contains. Only the content scope (plans versus actual expenses) adds any signal.

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?

A single efficient sentence with no filler, and the resource is front-loaded. Brevity here is not the issue; the sentence is simply too thin to carry its load.

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

Completeness2/5

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

With no output schema, no annotations, and a required parameter that is entirely undefined, the definition leaves critical gaps. An agent cannot reliably construct a call without discovering the budget_code semantics by trial and error.

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

Parameters1/5

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

Schema description coverage is 0%, so the description must explain budget_code and year, yet it mentions neither. The required budget_code — where to obtain it, its format, what happens if it is invalid — is completely undocumented, and the 2026 default for year is never referenced.

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 names a specific verb and resource (get education budget plans and actual expenses) and its scope (Open Budget), which is enough to distinguish it from get_school_info and list_schools_by_community. It stops short of stating which budget domain or region it covers.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool rather than the sibling school tools, and no mention of prerequisites such as needing a known budget_code first. The agent is left to infer the context from the name alone.

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

get_school_infoCInspect

Get school details and administrative territory.

NameRequiredDescriptionDefault
school_idYes

TDQS

C2.4/5.0
Behavior2/5

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. The word 'Get' implies a read operation, but the description does not state permissions, error behavior, or what happens with invalid school IDs.

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 a single front-loaded sentence with no filler. It is concise, though that conciseness comes at the cost of under-specification captured in other dimensions.

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

Completeness2/5

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

For a simple one-parameter lookup, the description is still too thin: it does not say what 'details' are returned or what 'administrative territory' means. With no output schema and no annotations, more context is needed to call this confidently.

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

Parameters2/5

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

Schema description coverage is 0%, and the description adds no information about the single 'school_id' parameter beyond implying it identifies a school. The parameter name is self-explanatory, but format or validation expectations are not described.

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

Purpose3/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 ('Get school details'), so the basic operation is clear. However, 'administrative territory' is vague, and it does not differentiate from the sibling tool 'list_schools_by_community' or clarify whether this is a single-record lookup versus a list.

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

Usage Guidelines2/5

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

The description gives no explicit guidance on when to use this tool versus alternatives such as 'list_schools_by_community' or 'get_education_budget'. Usage is only implied by the required 'school_id' parameter.

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

list_schools_by_communityCInspect

List educational institutions by Ukrainian KATOTTG community.

NameRequiredDescriptionDefault
community_codeYes

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are provided, so the description bears the full burden of behavioral disclosure. It implies a read-only listing but does not state return format, pagination, ordering, completeness, or any permission requirements.

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?

A single front-loaded sentence with no redundancy or filler. It communicates the core action and scope efficiently.

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

Completeness2/5

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 undocumented parameters, the description leaves too much operational detail unspecified—especially the parameter format and what the returned list contains—for an agent to call it confidently.

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

Parameters2/5

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

Schema description coverage is 0% for the single required parameter. The description only hints that community_code relates to a Ukrainian KATOTTG community, but does not specify code format, examples, or validation expectations.

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?

States a specific verb ('List') and resource ('educational institutions') with a scoping dimension ('by Ukrainian KATOTTG community'). This distinguishes it reasonably well from get_school_info (detail lookup) and get_education_budget, though it does not explicitly name alternatives.

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

Usage Guidelines2/5

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

Provides no guidance on when to use this tool versus get_school_info or get_education_budget. Usage is only implied by the resource and filter, with no exclusions or prerequisites stated.

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.

  1. 3 tool updates
    • First observedget_education_budget
    • First observedget_school_info
    • First observedlist_schools_by_community

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables answering questions about Ukrainian open data from the data.gov.ua CKAN portal by searching datasets, inspecting resource schemas, and running read-only SQL aggregates over a single tabular resource. Every data-backed answer is computed from retrieved data and returned with machine-readable provenance, and unsupported or unanswerable requests are refused rather than guessed.
    3
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    Enables 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.
    3
    393 npm
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides seamless access to official Ukrainian government statistics from the State Statistics Service via their SDMX API. It enables users to query bilingual datasets across domains like energy, demographics, and trade using flexible filtering and metadata exploration tools.
    7 npm
    50
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.