QuiRecrute — offres d'emploi en France
Server Details
Offres d'emploi en France (sites carrière et autres sources), sans compte. Job offers in France.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 3 tools
Each tool maps to a distinct action on a distinct target: searching the catalogue, reading one offer by id, and creating an e-mail alert. The descriptions explicitly separate list-level browsing (chercher_offres) from single-record lookup (voir_offre) and from a write action, so there is no realistic misselection.
All three names follow the same snake_case verb_noun pattern in the same language and register: chercher_offres, creer_alerte, voir_offre. Verb choice is consistent (infinitive action verb + plural noun object).
Three tools is a very thin surface for a job-board domain; the set covers a minimal read path plus one write action but leaves nothing for filtering, refining search, or managing alerts. It is coherent but borderline under-scoped.
The read lifecycle (search → view detail) plus alert creation is covered, but there is no way to list or delete an existing alert, and search exposes no way to narrow or page beyond the fixed 10-per-page/5-page limits. These are notable gaps an agent cannot work around once an alert exists.
Available Tools
3 toolschercher_offresChercher des offres d'emploiARead-onlyIdempotentInspect
Cherche dans les offres ouvertes en France. 10 offres par réponse, 5 pages au plus.
| Name | Required | Description | Default |
|---|---|---|---|
| lieu | No | Commune française. | |
| mots | No | Métier, compétence ou employeur. Plusieurs possibilités : « aide-soignant ou infirmier ». | |
| page | No | Page de résultats, 1 par défaut (10 offres par page, 5 au plus). | |
| contrats | No | Types de contrat acceptés, un ou plusieurs : CDI, CDD, INTERIM, STAGE, ALTERNANCE, FREELANCE. Sans ce critère : tous. | |
| debutant | No | Postes qui acceptent un débutant. | |
| rayon_km | No | Rayon autour de la commune, 30 par défaut : 0, 5, 10, 20, 30, 50. 0 = la commune seule. | |
| departement | No | Code d'un département français, à la place de la commune : 31, 2A… | |
| inclure_agences | No | Inclure l'intérim et les cabinets, écartés par défaut. | |
| teletravail_complet | No | Postes entièrement en télétravail, partout en France. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses important behavioral traits not covered by annotations or schema, specifically the pagination behavior: 10 offers per response and a maximum of 5 pages. This is vital for understanding the operational limits of the search engine.
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 description is highly concise, using only two sentences. Both sentences are highly efficient, front-loading the scope and then defining the critical output limitations without any fluff.
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?
Given the complexity of the 9 input parameters, the description is exceptionally complete by providing the regional scope, pagination details, and hard limits (5 pages max). This allows an agent to understand the tool's full functional boundary.
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?
Since the schema provides 100% description coverage, the description adds no meaningful semantic value to the individual parameters. It correctly meets the baseline score when structured data is exhaustive.
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 clearly states the tool's purpose: searching for open job offers ('Cherche dans les offres ouvertes'). It also establishes the geographical scope ('en France') and implicitly differentiates itself from the 'voir_offre' sibling by indicating a bulk search operation.
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?
While it does not explicitly say 'use this when X and not Y', it provides critical operational usage constraints (10 offers per response, max 5 pages). This information is essential for the agent to correctly manage expectations and sequence its calls relative to other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
creer_alerteCréer une alerte e-mailAInspect
Envoie à l'adresse un e-mail de confirmation : rien n'est activé sans son clic. À n'utiliser que si l'utilisateur le demande et donne son adresse.
| Name | Required | Description | Default |
|---|---|---|---|
| lieu | No | Commune française. | |
| mots | No | Métier, compétence ou employeur. Plusieurs possibilités : « aide-soignant ou infirmier ». | |
| Yes | Adresse e-mail donnée par l'utilisateur lui-même ; elle reçoit un lien de confirmation. | ||
| contrats | No | Types de contrat acceptés, un ou plusieurs : CDI, CDD, INTERIM, STAGE, ALTERNANCE, FREELANCE. Sans ce critère : tous. | |
| debutant | No | Postes qui acceptent un débutant. | |
| rayon_km | No | Rayon autour de la commune, 30 par défaut : 0, 5, 10, 20, 30, 50. 0 = la commune seule. | |
| departement | No | Code d'un département français, à la place de la commune : 31, 2A… | |
| inclure_agences | No | Inclure l'intérim et les cabinets, écartés par défaut. | |
| teletravail_complet | No | Postes entièrement en télétravail, partout en France. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false), the description discloses the double opt-in flow: an e-mail is sent and nothing is active until the recipient clicks. That is genuinely useful context an agent cannot get from the structured fields. It does not say what a repeat call does, though idempotentHint=false covers part of that.
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 sentences: the mechanism first, then the consent constraint. No filler, no restatement of the title, and the most important caveat is front-loaded.
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 nine-parameter, non-read-only tool with full schema coverage and no output schema, the description covers the critical unknowns: a confirmation step gates activation and user consent is mandatory. Minor gaps remain around the return value and duplicate handling, but nothing needed to invoke it safely 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 all nine parameters (lieu, mots, contrats, rayon_km, departement, etc.) are already documented in the schema. The description adds no per-parameter meaning beyond echoing that the address must come from the user, which the email property description already says.
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 names a concrete action (sending a confirmation e-mail and requiring a click before anything is activated), but it never states the actual artifact being created — an alert on job-search criteria (lieu, mots, contrats). The resource is only recoverable from the name/title, so the purpose is implied 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?
"À n'utiliser que si l'utilisateur le demande et donne son adresse" gives an explicit precondition and an implicit when-not (do not use proactively or with an address the user did not supply). No alternative sibling is named, but chercher_offres and voir_offre serve different intents, so the routing risk is low.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
voir_offreVoir une offreARead-onlyIdempotentInspect
Les faits d'une offre d'après son identifiant (fin de son lien, après /offre/). Le texte complet se lit sur le lien.
| Name | Required | Description | Default |
|---|---|---|---|
| identifiant | Yes | Identifiant de l'offre : fin de son lien après /offre/, tel que rendu par chercher_offres. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and a closed world, so the safety profile is covered. The description adds behavior the annotations cannot: the response is a factual summary only, and the full offer text must be read at the link — a non-obvious limitation that affects how an agent plans its next step.
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 sentences, front-loaded with the retrieval action and followed by the output limitation; nothing is padded. The second sentence is slightly elliptical ('se lit sur le lien'), but the meaning lands with minimal wording.
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 characterize the return value, and it does so only in the vague term 'les faits' without naming which fields are returned. For a simple single-parameter read tool this is workable, but an agent cannot tell what it will actually get back beyond 'not the full text'.
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 the single identifier parameter is already fully documented, including its provenance from chercher_offres. The description restates the link-derived format rather than adding new meaning, which matches the baseline-3 expectation when the schema carries the weight.
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-resource pair: it returns the facts of an offer identified by its id, and it explicitly delimits the scope by noting the full text is not included ('Le texte complet se lit sur le lien'). That scope statement implicitly separates it from chercher_offres (search), but no sibling is named, so differentiation requires inference.
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 rather than stated: the identifier format ('fin de son lien, après /offre/') and the schema note 'tel que rendu par chercher_offres' make clear this is a follow-up to a search. There is no explicit when-to-use versus when-not guidance, and neither sibling (chercher_offres, creer_alerte) is mentioned in the description itself.
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.
3 tool updates
- Changed
chercher_offres2 fields changed- added
Input schema / properties / contrats / descriptionAdded value: +"Types de contrat acceptés, un ou plusieurs : CDI, CDD, INTERIM, STAGE, ALTERNANCE, FREELANCE. Sans ce critère : tous." - added
Input schema / properties / page / descriptionAdded value: +"Page de résultats, 1 par défaut (10 offres par page, 5 au plus)."
- Changed
creer_alerte2 fields changed- added
Input schema / properties / contrats / descriptionAdded value: +"Types de contrat acceptés, un ou plusieurs : CDI, CDD, INTERIM, STAGE, ALTERNANCE, FREELANCE. Sans ce critère : tous." - added
Input schema / properties / email / descriptionAdded value: +"Adresse e-mail donnée par l'utilisateur lui-même ; elle reçoit un lien de confirmation."
- Changed
voir_offre1 field changed- added
Input schema / properties / identifiant / descriptionAdded value: +"Identifiant de l'offre : fin de son lien après /offre/, tel que rendu par chercher_offres."
3 tool updates
- First observed
chercher_offres - First observed
creer_alerte - First observed
voir_offre
Related MCP Connectors
French IT job search, AI candidate-offer matching, application tracking and cover letters.
Jobs from 10,000+ company career sites, Germany's Arbeitsagentur, Wellfound startups; EU suppliers.
Live job ads from StepStone, XING, Welcome to the Jungle, Naukri, JobStreet and more.
Live job ads from StepStone, XING, Welcome to the Jungle, Naukri, JobStreet and more.
Related MCP Servers
AlicenseAqualityAmaintenanceLive open jobs from companies' own Greenhouse, Lever and Ashby boards via their official public APIs, with publish-verified dates, age, long-open and repost signals, filters and change tracking.5MIT- AlicenseNot gradedqualityBmaintenanceEnables 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.272 npmMIT
- AlicenseAqualityCmaintenanceLive tech-hiring intelligence for AI agents. Search 130K+ open jobs collected daily from ~500 tech companies' own career sites â plus company hiring profiles, tech stacks, salary benchmarks, and skill trends. Five tools work with no account.31207 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.-
Glama MCP Gateway
Add one secure layer between your agents and this server.