GdzieZabawa.pl
Server Details
Local events and things to do in every Polish municipality: festivals, fairs, kids' events.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 4 tools
Each tool targets a clearly distinct resource: single event lookup (get_event), event search (search_events), category metadata (list_categories), and permanent OSM attractions (municipality_attractions). The get_event vs search_events boundary is reinforced by explicit descriptions (one event by slug/URL vs browsing results with pagination). No two tools appear interchangeable.
Three tools follow a clean verb_noun pattern (get_event, list_categories, search_events), while municipality_attractions is noun_noun. The deviation is minor and still readable in context, so the set is largely predictable but not perfectly uniform.
Four tools is a tight, well-scoped surface for an event-discovery service — lookup, search, filter metadata, and a complementary attractions fallback. It is slightly on the lean side (no municipality/voivodeship enumeration), but every tool earns its place.
Core workflows are covered: search events with rich filters, fetch a single event, list categories, and find non-event attractions for rainy-day/kids queries. A minor gap is the absence of tools to enumerate valid municipalities or voivodeships for the filters, but agents can work around this via search results.
Available Tools
4 toolsget_eventEvent details / Szczegóły imprezyARead-onlyIdempotentInspect
One event on GdzieZabawa.pl by its id (slug) or page URL: name, next date and time, place, municipality, admission, description, further dates and the source website. / Szczegóły jednej imprezy.
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | Event id (slug) from search_events. | |
| url | No | Event page URL, e.g. https://gdziezabawa.pl/wydarzenie/dni-skawiny |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| note | No | Guidance for answering, e.g. when nothing was found. |
| event | No | |
| status | Yes | |
| message | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds the meaningful behavioral fact that lookup accepts either a slug or a page URL and previews the payload shape, but says nothing about failure modes (invalid slug, off-site URL) that an agent would want when a lookup misses.
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 front-loaded sentence: the lookup key comes first, then the returned fields. The field enumeration runs long and the trailing Polish gloss largely duplicates the title, but there is no filler or hedging.
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 an output schema present, the description need not explain return values, yet it still previews them; annotations cover safety and idempotency. The only real gap is what happens on a bad slug/URL, which for a read-only single-record fetch is a minor omission.
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 100%, so the baseline is 3, but the description adds value the schema does not: 'by its id (slug) or page URL' conveys that the two parameters are alternatives rather than cumulative, which the flat, all-optional schema does not express (only the example hints at the domain).
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?
Names a specific verb and resource ('One event on GdzieZabawa.pl by its id (slug) or page URL') and enumerates the returned fields, so an agent can tell this is a single-record lookup rather than a search. It does not name the sibling search_events as the thing it is *not*, so differentiation is implied by 'one event' rather than stated.
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: fetch details for a known event id or URL. The schema notes the id comes 'from search_events', but the description itself gives no explicit when-to-use/when-not or prerequisite (e.g. 'use search_events first to obtain an id'). Adequate but leaves routing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_categoriesEvent categories / Kategorie imprezARead-onlyIdempotentInspect
Event categories used by GdzieZabawa.pl (slug, Polish name, number of upcoming events) for the category filter of search_events. / Lista kategorii imprez.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| note | No | Guidance for answering, e.g. when nothing was found. |
| status | Yes | |
| message | No | |
| categories | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world, so the safety profile is covered. The description adds meaningful context beyond that: the payload includes dynamic 'number of upcoming events', which is useful to know and subtly qualifies the static feel of idempotentHint.
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?
Two short clauses, front-loaded with the resource and its consumers. The Polish mirror sentence adds little for an English-reading agent but reflects the site's bilingual convention and is not disruptive.
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 an output schema present, return values need no explanation, and the description covers purpose, data shape, and downstream use. The only minor gap is not stating ordering or whether categories can be empty/added over time.
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 tool takes zero parameters, so per the baseline a 4 applies. The description correctly signals that no input is required by framing the tool as a fixed enumeration.
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 description states a specific resource (event categories) and enumerates the returned fields (slug, Polish name, upcoming event count), plus its relationship to search_events' category filter. It is clearly distinguishable from get_event, municipality_attractions, and search_events, though the verb 'list' is only implied.
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?
It tells the agent the operative context: this is the lookup for the category filter of search_events, which implies calling it before filtering. There is no explicit when-not or statement of prerequisites, but the intended workflow is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
municipality_attractionsPlaces to go in a municipality / Atrakcje w gminieARead-onlyIdempotentInspect
Permanent places for free time in one Polish municipality from OpenStreetMap (© OpenStreetMap contributors, ODbL): cinemas, swimming pools, aquaparks, museums, parks, playgrounds, bowling, escape rooms, zoos. Name, kind, address, website and opening hours when known. For "what to do on a rainy day" or "where to go with kids" when no event fits. / Stałe atrakcje „na nudę” w gminie: kino, basen, muzeum, park, plac zabaw.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum places (1-50, default 20). | |
| voivodeship | No | Voivodeship (lowercase Polish). / Województwo. | |
| municipality | Yes | Polish municipality (gmina) or town in nominative case, e.g. "Skawina", "Kraków". If the name exists in several voivodeships, add `voivodeship`. / Gmina lub miasto. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| note | No | Guidance for answering, e.g. when nothing was found. |
| status | Yes | |
| message | No | |
| page_url | No | |
| returned | No | |
| candidates | No | |
| attractions | No | |
| attribution | No | |
| total_found | No | |
| municipality | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds genuinely useful context beyond them: OSM provenance and ODbL licensing, the fact that fields are populated only "when known" (partial records), and that results are limited to permanent places rather than time-bound events.
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?
Front-loads the resource and scope before the use cases, and every clause carries information. The bilingual duplication carries some redundancy for a monolingual reader, but it is deliberate in a Polish-context tool and does not obscure the core statement.
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?
An output schema exists, so return values need not be spelled out, and the description still summarizes them. Scope, data source, coverage holes and usage conditions are all covered; only pagination/limit behavior on the result set is left entirely to the schema.
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 100%, so municipality, voivodeship and limit are all documented, and the description adds nothing about their semantics beyond what the schema says (nominative case, disambiguation via voivodeship). Baseline 3 applies; the description does reinforce the municipality-only scope.
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 resource (permanent free-time places) with an explicit scope (one Polish municipality) and enumerates the covered kinds (cinemas, pools, museums, parks, playgrounds, bowling, escape rooms, zoos). It also names the returned fields, so an agent can tell it apart from the event-oriented siblings without opening the schema.
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?
Gives concrete usage triggers ("what to do on a rainy day", "where to go with kids") and an explicit exclusion condition ("when no event fits"), which implicitly routes the agent away from search_events/get_event. It stops short of naming the sibling tools directly, so the routing is inferred rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_eventsSearch local events / Szukaj imprezARead-onlyIdempotentInspect
Search upcoming local events in Poland listed on GdzieZabawa.pl, for questions like "what to do this weekend in my town", "dożynki, jarmarki or festyny nearby", "free events for kids in Kraków": festivals, dożynki, town days, fairs, picnics, children's events, concerts, theatre, cabaret. Filters: municipality, voivodeship, dates or a when shortcut, category, free admission, title phrase. Returns up to 20 events per call (page with offset/next_offset) with date, time, place, admission and event page link, plus the total. Default range: the catalogue window (about the next two months). / Co robić w weekend w gminie: festyny, dożynki, jarmarki, imprezy dla dzieci; gmina, województwo, daty, kategoria, wstęp wolny.
| Name | Required | Description | Default |
|---|---|---|---|
| when | No | Date shortcut in Europe/Warsaw; this_weekend = Saturday-Sunday. Overrides date_from/date_to. | |
| limit | No | Maximum events (1-20, default 10). | |
| query | No | Words from the event title, e.g. "dożynki", "mikołajki", "jarmark". / Fraza z nazwy imprezy. | |
| offset | No | Skip this many matches; use next_offset. | |
| date_to | No | Last day, YYYY-MM-DD (inclusive). | |
| category | No | Event category (see list_categories). | |
| date_from | No | First day, YYYY-MM-DD (default today). | |
| free_only | No | Only events with free admission (wstęp wolny). | |
| voivodeship | No | Voivodeship (lowercase Polish). / Województwo. | |
| municipality | No | Polish municipality (gmina) or town in nominative case, e.g. "Skawina", "Kraków". If the name exists in several voivodeships, add `voivodeship`. / Gmina lub miasto. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| note | No | Guidance for answering, e.g. when nothing was found. |
| query | No | Filters as applied. |
| events | No | |
| status | Yes | |
| message | No | |
| returned | No | |
| browse_url | No | GdzieZabawa.pl page with the full list. |
| candidates | No | |
| next_offset | No | |
| total_found | No | |
| municipality | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the read-only/idempotent annotations, the description discloses concrete operational traits: a hard cap of 20 events per call, pagination via offset/next_offset, the total count in the response, and the default catalogue window. It also warns that the `when` shortcut takes precedence over explicit dates, which is the kind of precedence rule an agent could easily get wrong.
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?
Core function, filters, and return/pagination behavior are front-loaded in a compact block with no filler sentences. The fully duplicated Polish translation adds length that an English-reading agent gains nothing from, though it is a deliberate bilingual choice.
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 10 parameters, an output schema, and read-only annotations, the description still supplies what structured fields cannot: default date window, page size cap, pagination contract, and total count. Nothing an agent needs to invoke this search correctly is missing.
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 100%, so every parameter is already documented with format, enum values and defaults (including the `when` override and limit max 20). The description's filter enumeration (municipality, voivodeship, dates, when, category, free admission, title phrase) largely restates the schema rather than adding new syntax or naming conventions, so the baseline 3 applies.
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 opening clause names a specific verb and resource – search upcoming local events in Poland on GdzieZabawa.pl – and the example questions (weekend plans, dożynki, free kids' events in Kraków) make the scope concrete. The resource is clearly distinct from the siblings (single-event lookup, category reference, attractions), so an agent can pick it without opening the schema.
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?
It gives clear usage context via natural-language question examples and states the default date window (about the next two months), which steers correct default behavior. It never explicitly says when NOT to use it or points to get_event/list_categories/municipality_attractions as alternatives, so it stops 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.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
- First observed
get_event - First observed
list_categories - First observed
municipality_attractions - First observed
search_events
Related MCP Connectors
Who is playing in your city and when? Upcoming concerts in Poland. Read-only, no account.
Metal, rock, punk and goth concerts in Poland: a band's upcoming gigs or what plays in a city.
Event search at Biletyna.pl - Poland's top-rated ticket distributor, widest offer in all cities.
Local US events by town, date and kind (trivia, live music, karaoke...), each checked at its source.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceYour AI agent's practical guide to life and administration in Poland.MIT

cenogram-mcp-serverofficial
AlicenseAqualityAmaintenance7M+ real estate transactions from Poland's RCN registry. Search, compare, and analyze prices2843 npm1MIT- AlicenseNot gradedqualityBmaintenanceProvides access to Poland's national open data portal (Otwarte Dane) through natural language queries, enabling users to search and retrieve datasets from dane.gov.pl.27 npmMIT
- AlicenseAqualityCmaintenanceEnables searching Polish administrative areas and retrieving real estate transaction data from the official registry via geoportal.gov.pl.3GPL 3.0
Glama MCP Gateway
Add one secure layer between your agents and this server.