Noclegi MCP
Server Details
Stays in Poland on noclegi.pl: hotels, guest houses, apartments, cottages, total prices for dates.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 2 tools
The two tools occupy clearly separate roles: noclegi_search returns ranked listings for a town/region, while noclegi_object returns the full detail record for a single property identified by slug. Descriptions explicitly link them ('pass a listing's slug to noclegi_object'), so an agent cannot reasonably confuse them.
Both tools follow the same site-prefixed snake_case noun pattern (noclegi_search, noclegi_object), with the suffix denoting the operation/resource. There is no mixing of conventions.
Two tools is on the thin side, but for a single-site accommodation domain the search-then-detail pair is the minimal coherent surface and each tool clearly earns its place. No filler or redundant tools were added.
Discovery (search with type/board/rating/price filters and pagination) plus deep property detail with per-date rate plans, availability and booking link covers the browse-to-book research workflow. The only real gap is that actually completing a booking or resolving ambiguous place names must happen on the site via the returned URL.
Available Tools
2 toolsnoclegi_objectGet one noclegi.pl propertyAInspect
Full details of one place to stay on noclegi.pl: description, address and coordinates, guest rating and recent reviews, check-in/check-out times, amenities, photos, and every room type with its size, beds, amenities and — for given dates and guests — its rate plans (price for the stay, board, cancellation terms, prepayment). With checkin/checkout it also returns the total price of the cheapest room combination for the guests and the booking link; without dates, price_from is the site's best 1-night price in the next ~90 days and the night it applies to. When the dates cannot be booked (sold out, minimum stay) price is null and the note carries the site's reason. noclegi.pl does not publish the property's own phone or email — bookings go through the site. Fetched live from noclegi.pl (typically ~1 s via direct fetch; up to ~20 s when it falls back to an unblocker). Result: { source, fetchedAt, query, page_url, object: { id, slug, url, name, type, stars, description, address, geo, rating, rating_count, checkin_time, checkout_time, breadcrumbs, amenities, photos, reviews, stay, price, price_before_discount, discount_percent, currency, price_for, prepayment, selected_rooms, price_from, availability_note, booking_url, rooms: [{ id, name, available_rooms, max_guests, area_m2, beds, amenities, rates: [{ price, price_before_discount, discount_percent, board, price_for, cancellation, prepayment, bookable }] }] }, note? }. Prices in PLN incl. taxes and fees.
| Name | Required | Description | Default |
|---|---|---|---|
| adults | No | Adults. Default 2. | |
| object | Yes | The property: its `slug` from noclegi_search (e.g. 'apartamenty-apartart-zakopane'), its https://noclegi.pl/<slug> link, or its name (looked up through the site's search). | |
| checkin | No | Arrival date, YYYY-MM-DD (from today to about a year ahead). Pass together with checkout; omit both for undated results. | |
| checkout | No | Departure date, YYYY-MM-DD, after checkin — at most 30 nights (the site drops longer stays). | |
| no_cache | No | Force a fresh fetch and bypass this server's result cache (5 min). Default false. | |
| children_ages | No | Each child's age in years (0–17), e.g. [4, 9] for two children — prices depend on ages. Default none. |
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 so: it discloses latency (~1s direct, up to ~20s via unblocker), null prices with an availability_note when dates are unbookable, cache behavior via no_cache, and the site limitation that no phone/email is published. Prices are stated as PLN inclusive of taxes and fees.
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?
Purpose and the dated/undated distinction are front-loaded, and the long result-shape block is justified given there is no output schema. The opening sentence is overloaded with a long enumeration, which costs some readability, but no sentence is truly wasted.
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?
A six-parameter tool with no output schema and no annotations needs exactly this: return shape, failure semantics, pricing conventions, latency, and freshness controls. All are present, so an agent can call it and interpret the response without guessing.
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 real meaning beyond the schema: it explains what dates unlock (total price of cheapest combination, booking link), what price_from means when dates are omitted, and that rates are per room type for the given guests. The interaction between date params and refunded fields is not spelled out further, keeping it just above baseline.
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 details of one place to stay on noclegi.pl' — and enumerates the content returned (description, address, reviews, rooms, rates). This clearly distinguishes it from noclegi_search, which returns a list rather than a single property.
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?
Explicitly explains the dated vs undated modes ('With checkin/checkout it also returns... without dates, `price_from` is...') and the sold-out failure mode. It stops short of explicitly naming noclegi_search as the way to obtain the slug, leaving that routing implicit rather than stated as an alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
noclegi_searchSearch accommodation in Poland (noclegi.pl)AInspect
Search places to stay in a Polish town or region on noclegi.pl — hotels, guest houses, pensions, apartments, cottages, private rooms, agritourism — with the price for the whole stay, board, guest rating, location and link. Filter by property type, board, minimum rating, free cancellation and total price; sort by price, rating or discount. One results page is up to 50 offers; pass a listing's slug to noclegi_object for rooms, rate plans, amenities and the description. Fetched live from noclegi.pl (typically ~1 s via direct fetch; up to ~20 s when it falls back to an unblocker). WITH checkin + checkout, each price is the total for the whole stay for the given guests in PLN, incl. taxes and fees (e.g. price_for '2 osoby, 2 noce'); sold-out offers stay listed with price null and available false. WITHOUT dates, price is only the site's indicative price for 1 night (price_for '2 osoby, 1 noc'), many offers have none, and the result carries a note saying so — pass dates to quote a stay. Result shape: { source, fetchedAt, query, search_url, place: { name, slug, kind, area }, heading, stay: { checkin, checkout, nights } | null, guests: { adults, children_ages }, total_count, page, total_pages, count, listings: [...], note? } — the list key is listings; total_count counts offers across all pages (use page for more). Each listing: { id, slug, url, name, type, stars, city, price, price_before_discount, discount_percent, currency, price_for, board, available, free_cancellation, rating, rating_count, rating_label, lat, lng, image, amenities, labels }. board is room_only | breakfast | half_board | full_board | …; rating is 0–10; free_cancellation is the site's deadline text (Polish) or null; url opens the property with the same stay. When a place has few offers the site widens to a radius (the note says so; check city). An empty match answers count: 0 with a note saying why and what to change — that is a successful result, not an error.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Results page, 1-based (up to 50 offers per page). Default 1. | |
| sort | No | Order: recommended (default — the site's own ranking, which may depend on commission), rating, price_asc / price_desc (by price per person per night), discount. | |
| board | No | Only offers with this board: room_only, breakfast, half_board, full_board, soft_all_inclusive, all_inclusive. | |
| place | Yes | Town or region in Poland, Polish name preferred: 'Zakopane', 'Szklarska Poręba', 'Białka Tatrzańska', 'Mazury', 'Tatry', 'Polskie morze', 'Bieszczady'. Resolved through noclegi.pl's own place search (diacritics optional; a few English names such as 'Warsaw' or 'Baltic coast' are mapped). A https://noclegi.pl/<place> link also works. | |
| types | No | Only these property types (any of them): hotel, apartment, guest_house (dom gościnny), pension (pensjonat), villa (willa), private_room (kwatera prywatna), wooden_cottage (domek drewniany), year_round_cottage (domek całoroczny), resort (ośrodek wypoczynkowy), agritourism, inn (zajazd), hostel, student_house, sanatorium. | |
| adults | No | Adults. Default 2. | |
| checkin | No | Arrival date, YYYY-MM-DD (from today to about a year ahead). Pass together with checkout; omit both for undated results. | |
| checkout | No | Departure date, YYYY-MM-DD, after checkin — at most 30 nights (the site drops longer stays). | |
| no_cache | No | Force a fresh fetch and bypass this server's result cache (5 min). Default false. | |
| price_max | No | Maximum total price for the whole stay, whole PLN (needs checkin/checkout). | |
| price_min | No | Minimum total price for the whole stay, whole PLN (needs checkin/checkout). | |
| min_rating | No | Only guest ratings of at least 8, 9 or 9.5 (0–10 scale). | |
| children_ages | No | Each child's age in years (0–17), e.g. [4, 9] for two children — prices depend on ages. Default none. | |
| free_cancellation | No | Only offers that can be cancelled free of charge. |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | No | |
| page | Yes | |
| stay | No | |
| count | Yes | |
| place | Yes | |
| query | Yes | |
| guests | No | |
| source | Yes | |
| heading | No | |
| listings | Yes | |
| fetchedAt | Yes | |
| search_url | Yes | |
| total_count | No | |
| total_pages | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully carries the burden: it discloses live-fetch latency (~1 s, up to ~20 s on unblocker fallback), caching, sold-out offers returning price null/available false, radius widening when a place is thin, and why an empty match returns a note. That is exactly the operational context an agent needs before calling.
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-loaded with the purpose and filtering/sorting, but then spends a large block restating the full result object and per-listing fields, which duplicates the output schema. Useful content, but the payload is oversized and the return-shape enumeration does not earn its tokens.
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 14-parameter search tool with no annotations, the description covers price semantics, date constraints, pagination, fallback behavior, and edge-case results. Nothing an agent needs to call it correctly is missing, even if some of the return-shape detail overlaps the output 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 coverage is 100%, so baseline is 3, but the description adds the crucial cross-parameter semantics: prices are totals only when dates are supplied, otherwise indicative 1-night values; the `price_for` string and the `note` reflect which mode applies. It reinforces but does not go far beyond the schema's own per-param docs.
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) plus resource (places to stay on noclegi.pl) and enumerates the covered property categories. It also distinguishes itself from the sibling noclegi_object by declaring that tool as the follow-up for rooms/rate plans/amenities.
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?
Explicit routing: use this for discovery, then pass a listing's `slug` to noclegi_object. It also tells the agent when to supply checkin/checkout (to get a real stay quote), to use `page` for more results, and that a count:0 answer is a successful result rather than an error.
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.
2 tool updates
- First observed
noclegi_object - First observed
noclegi_search
Related MCP Connectors
Accommodation search in Poland on noclegowo.pl: offers, availability and whole-stay prices.
Slow stays on Slowhop.com, mostly in Poland: cabins, agritourism, glamping, guesthouses, PLN prices.
21Outdoor stays on AlohaCamp.com: cabins, glamping, tiny houses, camping pitches in Poland, in PLN.
21Polish property on Gratka.pl/Morizon.pl (one database): flats, houses, plots, premises, buy or rent.
41
Related MCP Servers
AlicenseAqualityAmaintenance7M+ real estate transactions from Poland's RCN registry. Search, compare, and analyze prices30105 npm1MIT- AlicenseBqualityAmaintenanceOfficial MCP server for MAQAMI, a hotel and flight booking platform with 3M+ hotels. Search live hotel rates and flights, look up places, airports and hotel details, then prebook and book. Remote Streamable HTTP endpoint, no API key required.4186 npm2MIT
- AlicenseAqualityAmaintenanceVacation rental software. A signed stay offer on the host’s own domain. Use this when a vacation rental host wants booking software on the host’s own domain, or when a stay offer must be verified against that domain. Returns an Ed25519-signed offer (VRP) and the host’s direct booking URL. The guest books and pays the host. Do not use to compare hosts or prices.6999 npm4Apache 2.0
- -
Glama MCP Gateway
Add one secure layer between your agents and this server.