Skip to main content
Glama

WerkCV – Dutch CV check

Server Details

Check a CV against Dutch hiring norms, compare it with a vacancy, and open it in WerkCV.

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
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.2/5.0

Scored across 3 tools

Disambiguation5/5

Each tool targets a distinct action: grading a CV standalone, comparing against a vacancy, and generating an editor link. The descriptions clearly delimit when to call each one (e.g. open_in_editor only when editing/downloading), so misselection is unlikely.

Naming Consistency4/5

check_cv and match_vacancy follow a clean verb_noun snake_case pattern, but open_in_editor breaks it with a verb_preposition_noun form. Minor deviation, still readable and clearly related to the domain.

Tool Count4/5

Three tools is small but each covers a genuinely different workflow stage (assess, match, edit), so nothing feels redundant. Slightly thin for a CV service, but well-scoped for a focused utility.

Completeness4/5

The lifecycle of assessing a CV, matching it to a vacancy, and handing off to the editor is covered with no dead ends. Gaps exist for bulk vacancy matching or rewrite/suggestion output, but agents can work around them.

Available Tools

3 tools
check_cvCheck a CV (Dutch conventions)A
Read-onlyIdempotent
Inspect

Grades a CV from 1 to 10 against Dutch hiring conventions and ATS readability, and lists the fixes to make first. Free, no AI, nothing is stored. Use when the user wants to know how strong their CV is.

ParametersJSON Schema
NameRequiredDescriptionDefault
localeNoLanguage of the CV and the answer. Detected from the text when omitted.
cv_textYesThe full text of the CV (200-25,000 characters). Remove BSN, ID and bank numbers first.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds genuinely new context beyond the structured fields: 'Free, no AI, nothing is stored' tells the agent there is no cost and that input is not retained, which matters for pasting personal CV text.

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?

Two sentences with zero filler; the core purpose is front-loaded and the usage cue follows. Nothing is repeated from the title or schema.

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

Completeness4/5

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

With no output schema, the description carries the burden of describing returns, and it does name the two outputs (a 1-10 grade and a prioritized fix list). It stops short of describing how the grade is structured or what a 'fix' entry contains, so it is strong but not exhaustive.

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%, so cv_text and locale are already fully documented, including the locale auto-detection and the 200-25,000 character bounds. The description adds no parameter-level information at all, so the baseline 3 applies.

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?

The description names a specific verb (grades), the resource (a CV), the scale (1 to 10), and the criteria (Dutch hiring conventions and ATS readability), plus a concrete deliverable (the fixes to make first). This is unmistakably distinct from match_vacancy and open_in_editor without opening any 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?

It gives a clear triggering condition: 'Use when the user wants to know how strong their CV is.' No exclusions or named alternatives are offered, but the context of use is unambiguous.

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

match_vacancyCompare a CV with a vacancyA
Read-only
Inspect

Compares a CV with one vacancy, requirement by requirement, with quotes from both texts, and gives the fixes to make first. Uses AI, so it is rate-limited. Nothing is stored.

ParametersJSON Schema
NameRequiredDescriptionDefault
localeNoLanguage of the CV and the answer. Detected from the text when omitted.
cv_textYesThe full text of the CV (200-25,000 characters). Remove BSN, ID and bank numbers first.
vacancy_textYesThe full vacancy text: requirements and responsibilities (120-18,000 characters).

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, but the description adds context annotations cannot express: it is AI-backed and therefore rate-limited, and nothing is stored. Those are real operational constraints for an agent planning calls. It stops short of stating whether repeated calls can return different results, which matters given idempotentHint=false.

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 tight sentences: what it does, how the output is shaped, then the operational caveats. The most decision-relevant information is front-loaded and no sentence is 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?

There is no output schema, so the description carries the burden of describing the return shape, and it does: a requirement-by-requirement comparison with quotes from both texts and a prioritized list of fixes. Combined with the rate-limit and no-storage notes, an agent has everything needed to call and interpret this tool.

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 schema already documents character limits, required inputs, locale enum, and a PII-stripping instruction for cv_text. The description only refers generically to 'a CV' and 'one vacancy', adding no format or constraint detail beyond the schema, so the baseline 3 applies.

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

Purpose4/5

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

States a specific verb and resources ('Compares a CV with one vacancy') and even describes the granularity of the comparison, so the agent knows exactly what operation it gets. It does not explicitly distinguish itself from the sibling check_cv, which appears to handle a CV alone; the singular 'one vacancy' hints at the difference but the description never names the alternative.

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

Usage Guidelines3/5

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

Usage is implied by the purpose: use this when you have both a CV and a vacancy to match. There is no explicit when-to-use, when-not-to-use, or named alternative (check_cv), so an agent choosing between the two siblings must infer the boundary from the tool names alone.

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

open_in_editorOpen the CV in the WerkCV editorAInspect

Returns a link that opens this CV in the WerkCV editor, no account needed. The text is stored for at most 60 minutes and deleted the first time the link is opened. Call only when the user wants to edit or download the CV.

ParametersJSON Schema
NameRequiredDescriptionDefault
localeNoLanguage of the CV and the answer. Detected from the text when omitted.
cv_textYesThe full text of the CV (200-25,000 characters). Remove BSN, ID and bank numbers first.
vacancy_textNoThe full vacancy text: requirements and responsibilities (120-18,000 characters).

TDQS

A4.5/5.0
Behavior5/5

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

Goes well beyond the annotations by disclosing the lifecycle of the stored data ('stored for at most 60 minutes and deleted the first time the link is opened') and that no account/auth is needed. These are exactly the non-obvious traits an agent needs when handling user CV text, and the write semantics (readOnlyHint=false) are made concrete.

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 with zero filler; the return value leads, the data-retention caveat follows, and the call condition closes. Nothing could be removed without losing 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?

Although there is no output schema, the description explains the return value (a link) and its expiration behavior. Combined with annotations covering safety and a fully documented schema, an agent has everything needed to invoke it correctly.

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%: locale, cv_text (length bounds, PII removal), and vacancy_text are all fully documented in the schema. The description adds no parameter-level detail beyond that, which is the expected baseline when the schema does the work.

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?

Specific verb+resource: 'Returns a link that opens this CV in the WerkCV editor' states exactly what the tool produces and what it does with it. It is trivially distinguishable from check_cv and match_vacancy, which analyze rather than hand off an editing link.

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?

'Call only when the user wants to edit or download the CV' gives an explicit positive trigger with an exclusivity qualifier, implying the tool should not be called for checks or matching. It stops short of naming a sibling as the alternative, so it is clear context without explicit routing.

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
    • First observedcheck_cv
    • First observedmatch_vacancy
    • First observedopen_in_editor

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Read and check European e-invoices (Factur-X, ZUGFeRD, XRechnung, UBL, CII) from an AI assistant: contents in plain text plus an EN 16931 consistency check.
    2
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Checks documents against international standards (e.g., ICAO, Hague-Visby) to verify internal consistency and completeness, returning a machine-readable verdict for agent decision-making.
    2
    63 npm
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Audits any site's UX the way a design-literate reviewer would — contrast, tap targets, type scale, colour discipline, scan patterns, copy — and returns the rule, the source line and the exact fix.
    6
    Apache 2.0
  • A
    license
    Not graded
    quality
    F
    maintenance
    Enables compliance checking against KVKK, GDPR, and CCPA via the GuardBee API, including privacy policy analysis, cookie banner detection, requirements listing, and framework comparison.
    223 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources