Skip to main content
Glama

Cerulean Jobs

Server Details

Open jobs at luxury houses and brands worldwide: search them, read one in full, find roles like it.

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
Uptime
100.0% over 40 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
–
Claude
–

TDQS

A4.3/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a clearly distinct role: search discovers roles by keywords/filters, fetch retrieves one known listing in full, and find_similar_jobs recommends related listings from a source listing id. The descriptions explicitly clarify boundaries, including that fetch does not search and find_similar_jobs does not accept keywords.

Naming Consistency4/5

All names use lowercase snake_case and imperative verb style, which is readable and predictable overall. There is a minor inconsistency because fetch and search are bare verbs while find_similar_jobs follows a verb_noun pattern.

Tool Count5/5

Three tools are well-scoped for a focused job-discovery server: one for search, one for full listing retrieval, and one for similar-role recommendations. Each tool earns its place without redundancy.

Completeness4/5

The surface covers the core read-only workflow of discovering, inspecting, and finding alternatives to job listings. Minor gaps exist around exposing filter metadata or brand/department browsing helpers, but agents can work around these through search filters.

Available Tools

3 tools
fetchFetch a listingA
Read-onlyIdempotent
Inspect

Use this when someone asks about one specific Cerulean listing — its responsibilities, qualifications, skills, experience, education, pay when the employer states it, benefits or required languages — and its id or Cerulean URL is known. Returns that one listing in full as text, with its url and structured details. It does not search. An unknown or closed listing is an error.

NameRequiredDescriptionDefault
idYesThe listing's id, as every result carries it, or its URL on a Cerulean site.
localeNoThe user's language and region, as a BCP 47 tag: fr-CH for someone writing French in Geneva, say. It sets the language of titles and descriptions, and adds localizedUrl, the listing on that locale's Cerulean site, where the site carries it. It does not filter: country and location do. Cerulean's sites are en: ceruleanjobs.com, English, worldwide; fr-FR: cerulean.fr, French, France; fr-CH: ceruleanjobs.ch, French, Switzerland; de-CH: ceruleanjobs.ch, German, Switzerland; en-CA: ceruleanjobs.ca, English, Canada; fr-CA: ceruleanjobs.ca, French, Canada; de-DE: ceruleanjobs.de, German, Germany; en-GB: ceruleanjobs.co.uk, English, UK; es-ES: cerulean.es, Spanish, Spain; it-IT: ceruleanjobs.it, Italian, Italy; en-US: ceruleancareers.com, English, USA. Any other tag takes its language's site, so fr-BE reads as fr-FR and en-US as en; another language reads as en. Defaults to en.

Output Schema

NameRequiredDescription
idYes
urlYesThe listing on ceruleanjobs.com, where a candidate reads it in full and applies.
textYesThe whole listing as text: its summary, responsibilities, qualifications, skills, experience, education, pay where stated, benefits and languages.
titleYes
metadataYes

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, non-open-world behavior, so the safety profile is covered. The description adds genuine value beyond them by disclosing the error case ('An unknown or closed listing is an error') and the return shape ('that one listing in full as text, with its url and structured details'). It stops short of describing pagination/size limits, but for a single-item fetch that is minor.

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?

Front-loads the when-to-use condition and the id prerequisite in the first sentence, then adds return and error behavior in order of importance. Slightly dense with the field enumeration, but every clause carries selection-relevant information and there is no filler.

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

Completeness5/5

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

With only two well-documented parameters, full annotations, and an output schema covering return values, the description supplies exactly the missing pieces: trigger conditions, the no-search exclusion, and error semantics. Nothing an agent needs in order to call it correctly is absent.

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

Parameters3/5

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

Schema description coverage is 100%, and the locale parameter is documented in unusual depth in the schema itself (BCP 47 format, site mapping, default). The description adds no parameter-level detail beyond the schema, so the baseline 3 is appropriate.

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

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('fetch' one Cerulean listing) and enumerates the fields returned (responsibilities, qualifications, skills, pay, benefits, languages), so an agent can tell exactly what this returns. It also explicitly carves out what it is not: 'It does not search.'

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

Usage Guidelines5/5

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

Gives an explicit trigger condition ('when someone asks about one specific listing') plus the prerequisite ('its id or Cerulean URL is known') and an exclusion ('It does not search'), which implicitly routes search-style requests to the search sibling. Nothing about when to choose this is left to inference.

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

find_similar_jobsFind similar jobsA
Read-onlyIdempotent
Inspect

Use this when someone wants more roles like one specific Cerulean listing: the closest open roles by what the job is and where it is. Takes that listing's id, not keywords. If the listing is unknown or has no similarity data, it returns an error rather than unrelated results.

NameRequiredDescriptionDefault
idYesThe id of the listing to find roles like, as every result carries it, or its URL on a Cerulean site. It is not among its own results.
limitNoHow many similar roles to return, up to 20. Defaults to 12.
localeNoThe user's language and region, as a BCP 47 tag: fr-CH for someone writing French in Geneva, say. It sets the language of titles and descriptions, and adds localizedUrl, the listing on that locale's Cerulean site, where the site carries it. It does not filter: country and location do. Cerulean's sites are en: ceruleanjobs.com, English, worldwide; fr-FR: cerulean.fr, French, France; fr-CH: ceruleanjobs.ch, French, Switzerland; de-CH: ceruleanjobs.ch, German, Switzerland; en-CA: ceruleanjobs.ca, English, Canada; fr-CA: ceruleanjobs.ca, French, Canada; de-DE: ceruleanjobs.de, German, Germany; en-GB: ceruleanjobs.co.uk, English, UK; es-ES: cerulean.es, Spanish, Spain; it-IT: ceruleanjobs.it, Italian, Italy; en-US: ceruleancareers.com, English, USA. Any other tag takes its language's site, so fr-BE reads as fr-FR and en-US as en; another language reads as en. Defaults to en.
offsetNoHow many to skip, for the next page. Defaults to 0, maximum 10000.
countryNoKeep only similar roles in this country.
locationNoKeep only similar roles in this city, region or country.

Output Schema

NameRequiredDescription
limitYes
offsetYes
hasMoreYes
resultsYes
warningsNo
similarToYes
indexBuiltAtNo

TDQS

A4.3/5.0
Behavior4/5

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 contributes genuinely new behavior: unknown listings or missing similarity data produce an error rather than unrelated fallback results, which tells the agent not to treat an empty-looking outcome as a soft failure.

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?

Three short sentences, zero filler, with the trigger condition and the id-not-keywords constraint front-loaded before the failure-mode note. Every sentence carries distinct information.

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

Completeness5/5

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

For a read-only similarity lookup with a full output schema, complete annotations and 100%-documented parameters, the description covers the remaining gaps an agent needs: when to reach for it, what input form it expects, and how it fails. Nothing material is left to inference.

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

Parameters3/5

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

Schema coverage is already 100%, including a detailed `locale` and paging description, so the baseline is 3. The description adds only one piece of parameter meaning beyond the schema: that the input is a listing id rather than keyword text. That is useful but marginal.

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

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource (find open roles similar to one specific Cerulean listing) and scopes it by 'what the job is and where it is'. It also distinguishes itself from keyword search with 'Takes that listing's id, not keywords', so an agent can separate it from the `search` sibling without opening either schema.

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

Usage Guidelines4/5

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

'Use this when someone wants more roles like one specific Cerulean listing' gives a clear trigger condition, and 'not keywords' implicitly routes keyword-driven discovery elsewhere. It stops short of naming `search` as the explicit alternative, so the routing is inferable rather than spelled out.

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
    • Changedfetch1 field changed
      • changedInput schema / properties / locale / description
        Previous value: -"The user's language and region, as a BCP 47 tag: fr-CH for someone writing French in Geneva, say. It sets the language of titles and descriptions, and adds localizedUrl, the listing on that locale's Cerulean site, where the site carries it. It does not filter: country and location do. Cerulean's sites are en: ceruleanjobs.com, English, worldwide; fr-FR: cerulean.fr, French, France; fr-CH: ceruleanjobs.ch, French, Switzerland; de-CH: ceruleanjobs.ch, German, Switzerland; en-CA: ceruleanjobs.ca, English, Canada; fr-CA: ceruleanjobs.ca, French, Canada; de-DE: ceruleanjobs.de, German, Germany; en-GB: ceruleanjobs.co.uk, English, UK; es-ES: cerulean.es, Spanish, Spain; it-IT: ceruleanjobs.it, Italian, Italy. Any other tag takes its language's site, so fr-BE reads as fr-FR and en-US as en; another language reads as en. Defaults to en."New value: +"The user's language and region, as a BCP 47 tag: fr-CH for someone writing French in Geneva, say. It sets the language of titles and descriptions, and adds localizedUrl, the listing on that locale's Cerulean site, where the site carries it. It does not filter: country and location do. Cerulean's sites are en: ceruleanjobs.com, English, worldwide; fr-FR: cerulean.fr, French, France; fr-CH: ceruleanjobs.ch, French, Switzerland; de-CH: ceruleanjobs.ch, German, Switzerland; en-CA: ceruleanjobs.ca, English, Canada; fr-CA: ceruleanjobs.ca, French, Canada; de-DE: ceruleanjobs.de, German, Germany; en-GB: ceruleanjobs.co.uk, English, UK; es-ES: cerulean.es, Spanish, Spain; it-IT: ceruleanjobs.it, Italian, Italy; en-US: ceruleancareers.com, English, USA. Any other tag takes its language's site, so fr-BE reads as fr-FR and en-US as en; another language reads as en. Defaults to en."
    • Changedfind_similar_jobs1 field changed
      • changedInput schema / properties / locale / description
        Previous value: -"The user's language and region, as a BCP 47 tag: fr-CH for someone writing French in Geneva, say. It sets the language of titles and descriptions, and adds localizedUrl, the listing on that locale's Cerulean site, where the site carries it. It does not filter: country and location do. Cerulean's sites are en: ceruleanjobs.com, English, worldwide; fr-FR: cerulean.fr, French, France; fr-CH: ceruleanjobs.ch, French, Switzerland; de-CH: ceruleanjobs.ch, German, Switzerland; en-CA: ceruleanjobs.ca, English, Canada; fr-CA: ceruleanjobs.ca, French, Canada; de-DE: ceruleanjobs.de, German, Germany; en-GB: ceruleanjobs.co.uk, English, UK; es-ES: cerulean.es, Spanish, Spain; it-IT: ceruleanjobs.it, Italian, Italy. Any other tag takes its language's site, so fr-BE reads as fr-FR and en-US as en; another language reads as en. Defaults to en."New value: +"The user's language and region, as a BCP 47 tag: fr-CH for someone writing French in Geneva, say. It sets the language of titles and descriptions, and adds localizedUrl, the listing on that locale's Cerulean site, where the site carries it. It does not filter: country and location do. Cerulean's sites are en: ceruleanjobs.com, English, worldwide; fr-FR: cerulean.fr, French, France; fr-CH: ceruleanjobs.ch, French, Switzerland; de-CH: ceruleanjobs.ch, German, Switzerland; en-CA: ceruleanjobs.ca, English, Canada; fr-CA: ceruleanjobs.ca, French, Canada; de-DE: ceruleanjobs.de, German, Germany; en-GB: ceruleanjobs.co.uk, English, UK; es-ES: cerulean.es, Spanish, Spain; it-IT: ceruleanjobs.it, Italian, Italy; en-US: ceruleancareers.com, English, USA. Any other tag takes its language's site, so fr-BE reads as fr-FR and en-US as en; another language reads as en. Defaults to en."
    • Changedsearch1 field changed
      • changedInput schema / properties / locale / description
        Previous value: -"The user's language and region, as a BCP 47 tag: fr-CH for someone writing French in Geneva, say. It sets the language of titles and descriptions, and adds localizedUrl, the listing on that locale's Cerulean site, where the site carries it. It does not filter: country and location do. Cerulean's sites are en: ceruleanjobs.com, English, worldwide; fr-FR: cerulean.fr, French, France; fr-CH: ceruleanjobs.ch, French, Switzerland; de-CH: ceruleanjobs.ch, German, Switzerland; en-CA: ceruleanjobs.ca, English, Canada; fr-CA: ceruleanjobs.ca, French, Canada; de-DE: ceruleanjobs.de, German, Germany; en-GB: ceruleanjobs.co.uk, English, UK; es-ES: cerulean.es, Spanish, Spain; it-IT: ceruleanjobs.it, Italian, Italy. Any other tag takes its language's site, so fr-BE reads as fr-FR and en-US as en; another language reads as en. Defaults to en."New value: +"The user's language and region, as a BCP 47 tag: fr-CH for someone writing French in Geneva, say. It sets the language of titles and descriptions, and adds localizedUrl, the listing on that locale's Cerulean site, where the site carries it. It does not filter: country and location do. Cerulean's sites are en: ceruleanjobs.com, English, worldwide; fr-FR: cerulean.fr, French, France; fr-CH: ceruleanjobs.ch, French, Switzerland; de-CH: ceruleanjobs.ch, German, Switzerland; en-CA: ceruleanjobs.ca, English, Canada; fr-CA: ceruleanjobs.ca, French, Canada; de-DE: ceruleanjobs.de, German, Germany; en-GB: ceruleanjobs.co.uk, English, UK; es-ES: cerulean.es, Spanish, Spain; it-IT: ceruleanjobs.it, Italian, Italy; en-US: ceruleancareers.com, English, USA. Any other tag takes its language's site, so fr-BE reads as fr-FR and en-US as en; another language reads as en. Defaults to en."
  2. 1 tool update
    • Changedsearch1 field changed
      • addedOutput schema / properties / searchUrl
        Added value: +{
        +  "description": "Open the first page of all matching listings on Cerulean, when its search page supports the same filters and language.",
        +  "type": "string"
        +}
  3. 1 tool update
    • Changedsearch1 field changed
      • changedInput schema / properties / query / description
        Previous value: -"Keywords, or the request as a plain sentence (\"senior client advisor, Cartier, Geneva\"). A brand, place, country or employment type it names is applied as that filter, unless the filter is set, and reported in interpreted. Leave it out, or empty, to browse by filters alone."New value: +"Keywords, or the request as a plain sentence (\"senior client advisor, Bulgari, Geneva\"). A brand, place, country or employment type it names is applied as that filter, unless the filter is set, and reported in interpreted. Leave it out, or empty, to browse by filters alone."
  4. 3 tool updates
    • First observedfetch
    • First observedfind_similar_jobs
    • First observedsearch

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Search Recruiter Roles: live recruiter jobs, companies, sectors, locations, and market stats.
    7
    59 npm
    1
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Search current remote / work-from-home jobs by category, region, perk, or company — with ready-to-apply links.
    5
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to locate companies' public job boards across Greenhouse, Lever, Ashby and Workable, browse and filter live openings by keyword, location, department and remote status, and read full job descriptions with pay ranges and apply links. Requires no accounts, API keys or authentication, and is read-only.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables real-time job search across thousands of companies' open roles from Greenhouse, Lever, Ashby, and SmartRecruiters, with full-text filtering and company-specific queries, no API key required.
    2
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources