Skip to main content
Glama

Wadifa Info: Morocco Public Jobs

Server Details

Moroccan public-sector jobs: open recruitment exams, past papers, salaries, holidays.

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
ChatGPT
–
Claude
–

TDQS

A3.8/5.0

Scored across 8 tools

Disambiguation5/5

search_concours vs. get_concours and search_exam_papers vs. get_exam_paper are clearly split by search vs. detail. The two holiday tools cover distinct calendars, and list_filters is an unambiguous helper. No meaningful overlap exists between tool purposes.

Naming Consistency3/5

Five tools use a verb_noun pattern (get_*, search_*, list_*), but three are bare noun phrases (civil_service_salaries, public_holidays, school_holidays). The mixed convention is still readable and domain-specific, but not a single predictable pattern.

Tool Count5/5

Eight tools is well-scoped for a public-jobs information server. Each tool maps to a distinct need: search, detail, filters, past papers, salary reference, and holiday lookups.

Completeness4/5

The set covers core discovery and detail workflows for concours and exam papers, plus filters, salaries, and holiday references. Minor gaps exist around browsing by employer/grade or fetching official notices directly, but agents can work around these via returned URLs.

Available Tools

8 tools
civil_service_salariesCivil-service net salariesA
Read-only
Inspect

Indicative net monthly pay (MAD) at the first step of about 370 Moroccan civil-service grades (official simulator basis), with a link to the salary page of each grade.

NameRequiredDescriptionDefault
langNoLanguage of the labels: fr (default) or ar.
gradeNoOptional text to keep only matching grades (e.g. 'ingénieur', 'technicien').

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so safety and locality are covered. The description adds useful context: values are indicative, in MAD, based on an official simulator, and cover about 370 grades with links. It does not describe return structure or filtering behavior beyond the schema, so it adds moderate but not rich behavioral context.

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?

The definition is a single front-loaded sentence with no filler. It puts the core value proposition first and includes only relevant qualifiers: currency, coverage, official basis, and per-grade link.

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?

For a read-only data lookup with no output schema, the description sufficiently explains what the tool returns: net monthly pay values plus links. It covers data scope and source. It could be slightly more complete by noting how `grade` matching works, but the schema already defines that parameter.

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 both `lang` and `grade` are fully documented by the schema itself. The description does not add parameter-specific semantics such as matching rules for `grade` or default language. With high schema coverage, a baseline 3 is appropriate.

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?

The description clearly states the resource and scope: indicative net monthly pay in MAD for about 370 Moroccan civil-service grades. It also mentions a link per grade, so the agent knows this is a lookup/retrieval tool. It is not explicitly differentiated from siblings by name, but the subject matter is distinct from exam papers, holidays, and filters.

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 data description, but there is no explicit guidance on when to use this versus alternatives. The `grade` filter is mentioned only in the schema, and there is no statement of exclusions or prerequisites. For a simple lookup with unrelated siblings, this is minimally adequate.

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

get_concoursGet one recruitment examA
Read-only
Inspect

Full details of one recruitment exam by id: dates, posts, diplomas, how to apply, official documents, past exam papers for the same grade and similar open exams.

NameRequiredDescriptionDefault
idYesExam id (the id field of search_concours).
langNoLanguage of the labels: fr (default) or ar.

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already cover safety (readOnlyHint=true, openWorldHint=false), but the description adds non-obvious scope: the response bundles related material — past exam papers for the same grade and similar open exams — not just the requested record. That warns an agent the payload is broader than the id suggests, though it says nothing about size or truncation of those related lists.

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?

One front-loaded sentence with the resource and identifier first, then the enumerated contents. No filler, no repeated field names from the 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 rightly spends its words describing the return payload, and it covers the main sections an agent would need to know about. Minor gap: it does not indicate that the related papers/similar exams are supplementary and may be empty, which matters for interpreting results.

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 100%, so both id and the lang enum are fully documented in the schema, including the default language. The description adds only 'by id' and nothing about the language switch or its effect on labels, so 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 resource ('Full details of one recruitment exam by id') and enumerates what the detail payload covers, which distinguishes it from the list-oriented search_concours. It never names a sibling explicitly, so an agent must infer that this is the single-record lookup counterpart to search.

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?

'by id' implies it is the follow-up to a search result, and the schema reinforces that by pointing at the id field of search_concours. However, the description itself gives no when-to-use guidance, no exclusions (e.g. use get_exam_paper for a single paper), and no prerequisites.

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

get_exam_paperGet one past exam paperA
Read-only
Inspect

One past exam paper by id: description, page images, PDF and the editorial correction when there is one.

NameRequiredDescriptionDefault
idYesPaper id (the id field of search_exam_papers).
langNoLanguage of the labels: fr (default) or ar.

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already establish readOnlyHint=true and openWorldHint=false, so safety is covered. The description adds value beyond that by enumerating payload contents (description, page images, PDF, and an editorial correction when present), which tells the agent to expect nullable sub-resources rather than a uniform record.

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?

A single compact sentence with the identifying key front-loaded and the return payload enumerated after the colon. Nothing is wasted, though the fragmentary phrasing costs it the top mark a clear verb would earn.

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 what comes back, and it does so adequately for a two-parameter read. The conditional 'when there is one' flags that the correction field is optional, which is the main behavioral nuance an agent needs.

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 100%: the id parameter is documented as coming from search_exam_papers and lang is documented with its enum and default. The description only echoes 'by id' and says nothing about the lang parameter, so it neither adds nor detracts; 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?

Names the resource (a single past exam paper) and the key (by id), and the singular framing distinguishes it from the sibling search_exam_papers. It is written as a noun phrase rather than a verb phrase, so it never literally states 'retrieves', but the intent is unambiguous.

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?

'By id' plus the schema note pointing at search_exam_papers implicitly tells the agent this is the fetch-after-search step. There is no explicit when-to-use, when-not-to-use, or named alternative in the description itself, so the routing is inferred rather than stated.

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

list_filtersSearch filter valuesA
Read-only
Inspect

The exact diploma and region values accepted by search_concours, with French and Arabic labels.

NameRequiredDescriptionDefault

No parameters

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 openWorldHint=false, so safety and locality are covered. The description adds genuine behavioral context beyond that: the returned values are the *exact* accepted values (not fuzzy suggestions) and they carry both French and Arabic labels, which tells the agent how to interpret and present results. It stops short of describing the return structure (flat list vs. grouped by field), and there is no output schema to fill that gap.

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?

A single sentence with no filler, and the most important information (which filter values, consumed by which tool) is front-loaded. Nothing in it is redundant with the schema or annotations.

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?

For a parameterless static lookup with no output schema, the description covers what the values are, their provenance (accepted by search_concours), and their bilingual labelling. The one remaining gap is the shape of the response — whether values come back grouped by diploma vs. region or as a single list — which an agent must discover by calling it.

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

Parameters4/5

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

The tool takes zero parameters, which is the baseline-4 case; there is nothing for the description to disambiguate. It could have explicitly confirmed that no arguments are needed, but the empty schema already makes that clear.

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?

The description names the exact resource (the diploma and region filter values) and ties it directly to the consumer tool, search_concours, so an agent can distinguish it from get_concours or search_concours itself. It lacks an explicit verb like 'List', but the noun phrase is specific enough to be unambiguous.

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?

Naming search_concours implies this is a lookup to consult before or alongside a filtered search, but the description never states when to call it, that it takes no arguments, or that its output should feed search_concours filters. Usage is inferable rather than stated.

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

public_holidaysMorocco public holidaysA
Read-only
Inspect

Moroccan public holidays for this year and next. Islamic holidays carry approximate=true until the Ministry of Habous confirms the moon sighting.

NameRequiredDescriptionDefault

No parameters

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 openWorldHint=false, so the description adds real value beyond them by disclosing a data-quality caveat: Islamic holidays are flagged approximate=true until Ministry of Habous confirmation. That caveat is exactly the kind of behavioral context an agent needs before presenting dates as final.

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 short sentences, zero repetition of the title, and the most important constraint (coverage window) is front-loaded. Every sentence earns its place, including the accuracy caveat.

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?

For a zero-parameter read-only lookup with no output schema, the description covers scope and the key reliability caveat. It leaves the return shape undocumented, though that is a minor gap given the simplicity and the annotations' safety profile.

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

Parameters4/5

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

The tool takes zero parameters, so there is nothing to disambiguate and the baseline applies. The description does not need to explain inputs, and it uses its space for the temporal scope instead.

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 resource (Moroccan public holidays) and a bounded scope (this year and next), which lets an agent distinguish it from the sibling school_holidays. It stops short of explicitly naming that sibling or stating that school holidays are excluded, so it is clear but not fully differentiated.

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 only implied: an agent can infer this is the tool for national holidays, but the description never says when to prefer it over school_holidays or how to handle a request outside the current/next-year window. No exclusions or prerequisites are given.

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

school_holidaysMorocco school holidaysA
Read-only
Inspect

School breaks of the current Moroccan school year (ministerial decision), end dates inclusive.

NameRequiredDescriptionDefault

No parameters

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description adds genuinely useful context beyond that — the data source is a ministerial decision and end dates are inclusive — but says nothing about what a returned break record looks like or whether the year is fixed to the current one.

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?

One dense, front-loaded sentence with no filler. The parenthetical provenance is slightly terse but every clause carries information.

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?

For a zero-parameter, annotation-covered lookup with no output schema, the description covers scope, source, and the inclusive-end-date convention. The main residual gap is the shape of returned entries (whether start dates and break names are included), which matters somewhat given there is no output schema.

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

Parameters4/5

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

Zero parameters, so the baseline is 4. The description correctly signals that no year argument exists by pinning results to the current school year, which prevents an agent from hunting for a year parameter.

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 resource (school breaks) with scope (current Moroccan school year) and provenance (ministerial decision). It implicitly distinguishes itself from the sibling public_holidays, but never names that sibling or explicitly contrasts school breaks with public holidays.

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 only implied: an agent can infer this is the tool for school calendars versus public_holidays, but the description gives no explicit when-to-use, when-not-to-use, or alternative routing. No prerequisites or exclusions are stated.

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

search_concoursSearch public-sector recruitment examsA
Read-only
Inspect

Search Moroccan public-sector recruitment exams (concours) with the website's own filters. Open exams only unless include_closed is true. Returns grade, employer, posts, deadline, salary, the Wadifa Info page url and the official notice url. Use list_filters for exact diploma and region values.

NameRequiredDescriptionDefault
qNoKeywords: grade, employer or city, in French or Arabic (e.g. 'technicien', 'ministère de la santé', 'متصرف').
cityNoCity name.
langNoLanguage of the labels: fr (default) or ar.
pageNoPage number, default 1.
sizeNoResults per page, 1-50, default 20.
regionNoRegion value from list_filters (Arabic name).
diplomaNoDiploma filter value from list_filters (Arabic label).
specialtyNoSpecialty, e.g. 'informatique', 'droit'.
include_closedNoAlso return exams whose deadline has passed.

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description adds real behavioral context beyond that: the closed-exam filtering default and an explicit list of returned fields. It stops short of describing result ordering or how many pages are typically available.

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?

Four short sentences, zero filler, and the scoping default is front-loaded before the return-value list and the cross-tool hint. Every sentence conveys information an agent would otherwise have to guess.

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, listing the returned fields (grade, employer, posts, deadline, salary, both URLs) is exactly the missing piece the description supplies, and the include_closed default is stated. Minor gaps remain around pagination totals and result ordering, but nothing needed to invoke 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 coverage is 100% and each parameter already has its own description including defaults and ranges, so the schema does the heavy lifting. The description's note about list_filters for diploma/region values largely restates what the schema fields already say, so it adds little beyond the baseline.

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?

The description names a specific verb and resource ('Search Moroccan public-sector recruitment exams (concours)') and adds a scoping qualifier ('with the website's own filters') that separates it from a raw fetch. It does not explicitly contrast with the sibling get_concours (detail fetch) or search_exam_papers, so full sibling differentiation is missing.

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 states the default inclusion policy ('Open exams only unless include_closed is true') and routes to the sibling list_filters for exact diploma and region values. That is clear context plus one explicit alternative, but no guidance on when to prefer get_concours for a single exam or when to use search_exam_papers.

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

search_exam_papersSearch past exam papersB
Read-only
Inspect

Search the library of past Moroccan public recruitment exam papers (sujets / نماذج مباريات), many with a correction.

NameRequiredDescriptionDefault
qNoKeywords: grade, employer, subject or year.
langNoLanguage of the labels: fr (default) or ar.
pageNoPage number, default 1.
sizeNoResults per page, 1-100, default 20.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so safety and scope are covered. The description adds real content context ('many with a correction'), which is a useful behavioral trait, but says nothing about result ordering, pagination limits, or how corrections are surfaced.

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?

A single dense sentence with the resource scoped front-to-back and no filler. Slightly under-informative rather than bloated.

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

Completeness3/5

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

For a search tool with four optional params and no output schema, the description omits what a result actually contains (title, year, grade, download link, presence of correction). It is adequate to invoke the tool but not to anticipate its output.

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 q, lang, page and size are all documented in the schema itself. The description adds no syntax hints (e.g. how to combine grade/employer/year keywords), so 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 (search) and a precisely scoped resource (past Moroccan public recruitment exam papers), including the multilingual terms users may actually query with. It does not, however, draw a line against sibling tools like get_exam_paper or search_concours.

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?

The word 'Search' and the sibling naming (get_exam_paper being the retrieve-by-id counterpart) imply when to use it, but nothing explicit is given about when to prefer this over search_concours or get_exam_paper, nor about empty-result handling.

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. 8 tool updates
    • First observedcivil_service_salaries
    • First observedget_concours
    • First observedget_exam_paper
    • First observedlist_filters
    • First observedpublic_holidays
    • First observedschool_holidays
    • First observedsearch_concours
    • First observedsearch_exam_papers

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Search and retrieve US federal job postings from USAJOBS.gov. Includes tools for finding announcements, agencies, pay grades, and occupational series.
    203 npm
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    An unofficial read-only MCP server that enables AI agents to search and filter Iranian job ads on Jobvision, read full ads and similar listings, explore company profiles and interview reports, estimate advertised pay, count open roles by category or province, and access public-sector hiring news. It requires no API key or account and works with Claude, Cursor, Copilot, and other MCP clients.
    14
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Public holiday data for 30+ countries. Check holidays, working days, and full calendars via AI assistants like Claude and Cursor.
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    MCP server for Kenya labor market coordination, providing tools for job matching, wage benchmarks, skills gap analysis, informal sector registration, contract templates, and labor rights queries based on the Kenya Employment Act.
    6
    205 PyPI
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources