Job & Stay
Server Details
Jobs and apprenticeships with accommodation in Europe: pay, housing, how to apply. Read-only.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-03-26
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 4 tools
Each tool has a clearly distinct role: search_jobs finds listings, get_job retrieves one listing by id, salary_info provides pay benchmarks, and site_info explains the service. There is minor thematic overlap around pay and site details, but the descriptions make the intended use of each tool obvious.
All names use snake_case, but the set mixes verb_noun patterns (get_job, search_jobs) with noun_info patterns (salary_info, site_info). The names are readable, but there is no single consistent convention across the four tools.
Four tools is well scoped for a job-search server: search, retrieve details, check salary information, and explain the site. Each tool has a clear purpose and none feels redundant or excessive.
The core job-seeker workflow is covered: search listings, inspect a specific job, check pay ranges, and understand the service. Minor gaps exist around structured browsing by country/occupation or saved searches, but agents can work around these using search_jobs and get_job.
Available Tools
4 toolsget_jobGet one job with accommodationARead-onlyIdempotentInspect
Get one job listing by id (e.g. "f26") with full description, pay, housing, meals, languages, duration, how to apply (free, directly to the employer), source of the original ad and links to the job page in de/en/fr/es/it/pl/cs/hu/ro/pt.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| language | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the read-only, idempotent, closed-world safety profile, and the description adds genuinely non-obvious context: applying is free and goes directly to the employer, and the original ad source is included. It stops short of describing error behavior for unknown ids.
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 dense sentence that front-loads the key action and qualifying id before enumerating returns; nothing is wasted, though the return-field list makes it run on.
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 compensates by enumerating returned fields (pay, housing, meals, duration, apply link, source), which is exactly what an agent needs for a read tool. The unexplained 'language' parameter is the one remaining hole.
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 carries the full burden. It gives a useful id format example ('f26') but never explains what the 'language' enum controls, and its list of link languages (10 codes) does not match the 18-value enum, which could mislead an agent.
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 ('Get one job listing by id'), scopes it to a single record with an example id format ('f26'), and enumerates the returned content, making it clearly distinct from search_jobs.
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 only implied by the 'by id' phrasing; the description never says when to prefer this over search_jobs or how it relates to apply_job/salary_info, and lists no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
salary_infoVerified pay ranges for jobs with accommodationARead-onlyIdempotentInspect
Verified minimum pay ranges (collective agreements and statutory minimum wages, with source and date) for hospitality work in a European country, plus the median pay of current Job & Stay listings there. Use when someone asks "what will I earn as a cook/waiter/receptionist in Switzerland/Austria/Italy/Spain...". Activities: kitchen, service, reception, housekeeping, mountain hut (free text accepted in many languages).
| Name | Required | Description | Default |
|---|---|---|---|
| country | Yes | ISO country code or country name, e.g. CH, Austria, España | |
| activity | No | e.g. cook, waiter, reception, housekeeping, mountain hut, Koch, kok, cuoco |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive, closed-world behavior, and the description adds provenance (source and date) plus data composition (statutory/collective minimums plus median of current listings). It does not discuss rate limits, authentication, or result formatting, but those gaps are smaller given the annotations.
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?
The purpose is front-loaded, followed by a concrete usage trigger and activity vocabulary. It is compact but repeats some activity and country examples already present in the schema, so it is slightly less tight than a 5.
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 read-only lookup with two parameters and no output schema, the description covers what data is returned, where the minimum ranges come from, and what the median component represents. It leaves gaps around optional activity behavior and exact output/currency format, but the agent has enough to invoke it in the main use case.
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 country and activity parameters are already documented. The description still adds useful domain semantics: activity is free text in many languages and covers kitchen, service, reception, housekeeping, and mountain hut rather than a fixed enum. It also reinforces the European-country scope beyond the country parameter's ISO/name examples.
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: verified minimum pay ranges from collective agreements and statutory minimum wages, plus median pay of current Job & Stay listings. It makes the hospitality/European-country scope explicit, which clearly separates it from apply_job, get_job, and search_jobs. It does not name a sibling as an alternative, so it falls just short of 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?
It gives an explicit trigger phrase ('Use when someone asks ...') and lists example roles and countries. It does not state when not to use the tool or name alternatives, so it meets the clear-context level but not full when/when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_jobsSearch jobs with accommodation in EuropeARead-onlyIdempotentInspect
Search current jobs with accommodation / staff housing in Europe (Switzerland, Austria, Italy/South Tyrol, Spain incl. Costa del Sol and Canary Islands, Germany, Finland/Lapland, Greece, Ireland, Iceland, Denmark, Norway, Netherlands, Romania). Free for job seekers, apply directly to the employer, no agency, no fees. Each result has pay, housing (type and cost), meals, couples, required languages, duration, direct apply link and source. Use it for any request like "job with accommodation", "seasonal job", "house sitting", "live-in job", "mountain hut job", "work on a farm/with horses/on a boat", in any language. Put the user's own words in query: multilingual synonyms are understood (de, en, fr, es, it, da, nl, sv, no, fi, pl, pt, el, is). All filters optional. Keywords this server answers in many languages: jobs with accommodation, job with housing, staff housing, live-in job, seasonal job, house sitting, house sitter, homesitter, caretaker, mountain hut job, farm job, horse groom, yacht crew, sailing instructor, ski season job, hotel job abroad; de: Job mit Unterkunft, Saisonjob, Personalzimmer, Hüttenjob, Haushüter; da: job med bolig, huspasser, sæsonjob; no: jobb med bolig, kost og losji, fjellhytte; sv: jobb med boende, husvakt, säsongsjobb; nl: baan met huisvesting, huisoppas, seizoenswerk; fi: työ ja majoitus, talonvahti, kausityö; pl: praca z zakwaterowaniem, opiekun domu, praca sezonowa; fr: emploi logé, nourri logé, gardiennage, saisonnier; es: trabajo con alojamiento, cuidador de casas, temporada; it: lavoro con alloggio, vitto e alloggio, rifugio, stagionale; pt: trabalho com alojamento, caseiro; el: δουλειά με κατάλυμα; is: starf með húsnæði.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | max results, default 20, max 100 | |
| query | No | free text in any language: job, place, region, employer or type of work, e.g. "huspasser", "job med bolig", "Koch Zermatt", "sailing instructor", "rifugio", "horse groom Ireland" | |
| jobart | No | type of work: haus = house sitting, caretaker, estate or property management, campsite management; huette = mountain hut / refuge (Alpine club huts, alpine pastures); tiere = animals and horses (grooms, riding, stable work); natur = nature and farm work (farm, agriculture, greenkeeping, forestry); wasser = water and boats (sailing, yacht, water sports, beach); hotel = hotel, restaurant, hospitality (the majority of jobs) | |
| country | No | ISO country code, e.g. CH, AT, IT, ES, DE, FI, GR, IE, IS, DK, NO, NL, RO | |
| couples | No | only jobs that explicitly welcome couples | |
| contract | No | ||
| language | No | language of the user (ISO 639-1). Job pages are returned in de/en/fr/es/it/pl/cs/hu/ro/pt (others get English); jobs workable in English are ranked first for other languages | |
| pay_stated | No | only jobs with a stated pay amount | |
| free_housing | No | only jobs where the listing confirms that housing is free of charge | |
| work_language | No | only jobs where this working language is listed (or no language is stated) | |
| min_net_per_month_eur | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, so the safety profile is covered. Beyond that, the description adds real value: it discloses that the search is free with no agency, that results include pay, housing type and cost, meals, couples, languages, duration, an apply link and a source, and that English-workable jobs are ranked first for non-supported languages. That return-shape and ranking behavior is not derivable from the annotations or schema.
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?
The first two sentences are well front-loaded, but the remainder is a long multilingual keyword dump ('Job mit Unterkunft, Saisonjob, Personalzimmer...' across 13 languages) that is largely SEO-style padding and bloats the context. Much of it duplicates the schema's own examples and enum coverage, so most sentences after the first third do not earn their place.
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 an 11-parameter, zero-required search tool with no output schema, the description is largely sufficient: it explains what is searchable, that all filters are optional, and what each result contains. The gaps are minor – the contract and min_net_per_month_eur parameters are never mentioned, and there is no note on result volume beyond the limit parameter.
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 82%, so the baseline is 3; the description lifts this slightly by telling the agent to pass the user's raw phrasing into query and that multilingual synonyms are matched, which is behavioral rather than a restatement. However, it adds nothing for jobart, contract, min_net_per_month_eur, or free_housing beyond what the schema already declares.
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 leads with a specific verb and resource ('Search current jobs with accommodation / staff housing in Europe') and enumerates the covered countries, so scope is unambiguous. It does not name or differentiate against siblings such as get_job, apply_job, or salary_info, but the core purpose is unmistakable.
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 concrete usage triggers ('job with accommodation', 'seasonal job', 'live-in job', 'mountain hut job') and instructs the agent to put the user's own words into query, plus notes 'All filters optional'. What's missing is any when-not-to-use guidance or routing to the sibling tools (e.g. use get_job for a specific posting, salary_info for pay questions).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
site_infoAbout Job & StayBRead-onlyIdempotentInspect
What Job & Stay is, who it is for, rules for listings, current numbers per country and type of work, contact, pay calculator and magazine articles (new life with a transition job, winter sun and climate, house and boat sitting, best work regions in the Alps). Use to explain or cite Job & Stay.
| Name | Required | Description | Default |
|---|---|---|---|
| language | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already state readOnlyHint, idempotentHint, non-destructive and openWorldHint=false, so the safety profile needs no restating. The description adds content-coverage context (what topics the returned material covers) but says nothing about response shape, whether text is localized, or how long the content is. With annotations carrying the behavioral load, this is an adequate but thin addition.
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?
The purpose is front-loaded in the first clause, which is good, but the sentence then degenerates into a parenthetical list of magazine article topics ('winter sun and climate, house and boat sitting, best work regions in the Alps') that spend words on examples an agent does not need. It is one sprawling sentence rather than structured segments.
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?
There is no output schema, so the description must convey what comes back — and it does, via the topic inventory. Annotations cover the safety profile. The one material gap is the unmentioned `language` parameter and the lack of a hard boundary against salary_info, but overall an agent has enough to call this correctly.
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 `language` parameter has 0% schema description coverage and the description never mentions it at all — no indication that it selects the output language or what happens when it is omitted. The enum of ISO codes is largely self-explanatory, so an agent can infer intent, but the description contributes zero meaning beyond 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?
The description enumerates the concrete content the tool returns (site identity, audience, listing rules, per-country listings counts, contact, pay calculator, magazine articles), which is far more specific than the title alone. It also signals the tool's role as an informational/marketing surface ('Use to explain or cite Job & Stay'), which distinguishes it from siblings like get_job and search_jobs. It stops short of explicitly naming those siblings, and the 'pay calculator' mention blurs the line with salary_info.
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?
'Use to explain or cite Job & Stay' is the only usage cue — it implies a copy/explanation task rather than data lookup, but there is no when-not guidance and no alternative named. An agent reading this would guess correctly that this is the about/FAQ tool, but nothing tells it to prefer salary_info for actual pay data over the 'pay calculator' content mentioned here.
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 tool update
- Removed
apply_job
5 tool updates
- First observed
apply_job - First observed
get_job - First observed
salary_info - First observed
search_jobs - First observed
site_info
Related MCP Connectors
Jobs from 10,000+ company career sites, Germany's Arbeitsagentur, Wellfound startups; EU suppliers.
Search Hosco's live hospitality jobs across Spain, Italy, France, the UK and Switzerland.
Search classified ads from European marketplaces: rentals, homes, vehicles, second-hand goods, jobs.
Open vacancies and competitions of the EU institutions, read daily from their official job pages.
Related MCP Servers
- FlicenseNot gradedqualityAmaintenanceSearch & apply to ~4,700 salary-transparent tech jobs across 7 countries (🇨🇭🇩🇪🇬🇧🇺🇸🇨🇦🇳🇱🇫🇷) from your terminal or AI agent — zero-dependency Python CLI + MCP server + Claude Code plugin-
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to browse recent job postings from a keyless European (Germany-heavy) job board, keyword-search them client-side by title, company or tag, and fetch full HTML descriptions for individual listings, with pagination and remote-only filtering.327 npmMIT
- FlicenseNot gradedqualityAmaintenanceEnables searching, filtering, and applying to roughly 4,700 salary-transparent tech jobs across nine job boards and eight countries — plus Swiss all-industry and Singapore IT postings — directly from an AI agent. Returns results as structured JSON, supports salary, remote, tech, and country filters, and tracks which postings have already been applied to so duplicates never reappear.-
- FlicenseNot gradedqualityAmaintenanceEnables AI agents and terminal users to search, filter by salary, remote work, and tech stack, and apply for roughly 4,700 salary-transparent tech jobs across nine job boards in eight countries, including Swiss and Singapore government portals. It keeps a local record of submitted applications so duplicates are surfaced as data rather than errors.-
Glama MCP Gateway
Add one secure layer between your agents and this server.