haki-ya-kazi-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@haki-ya-kazi-mcpWhat are maternity leave entitlements in Kenya?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
haki-ya-kazi-mcp
Compatible with claude-sonnet-5 (released 2026-06-30) — Anthropic's most agentic
Sonnet yet. Runs multi-step tool chains end-to-end without stopping short.
Install: pip install haki-ya-kazi-mcp · Use with any MCP client.
Kenya labour rights via MCP — minimum wages, dismissal, maternity rights, trade unions, ELRC
Install
pip install haki-ya-kazi-mcpRelated MCP server: KenyaMCPServer
What it does
5 MCP tools covering Kenya labour rights and employment law. 1st world equivalent: ACAS / NLRB.
Tool | Description |
| Kenya minimum wage by sector and county |
| Unfair dismissal rights under Kenya Employment Act 2007 |
| Maternity (90 days) and paternity (14 days) rights |
| Kenya trade union directory and worker rights organizations |
| ELRC filing guide — costs, timeline, free legal aid |
Usage
# Run as standalone MCP server
haki-ya-kazi-mcp
# Or add to Claude Desktop / any MCP client
# Add to your MCP config: {"command": "haki-ya-kazi-mcp"}Part of the Kenya Coordination Infrastructure Stack
This is one of 23 MCP servers covering the full coordination infrastructure of East Africa:
Economic: mpesa · mkopo · bima · soko · sifa · remit · kra · faida
Physical: wapimaji · nishati · usafiri · ardhi
Social: afya · afya-ya-akili · elimu · kazi · haki-ya-kazi · kilimo · jumuia
Civic: nyumba · habari · mazingira · civic-agent-kit
→ The Nairobi Stack
→ Full Portfolio
Trust Integrity
All data in this server is clearly labeled DEMO where synthetic. Verify all operational data with the relevant Kenyan government authority before use.
License
MIT © Gabriel Mahia | AI-KungFU | contact@aikungfu.dev
Decision infrastructure for East Africa
Part of the East Africa Coordination Stack
This MCP server is one of 32 tools in the Kenya coordination infrastructure.
Connect it to africa-coord-bus —
the coordination event bus that routes signals between domains automatically.
pip install africa-coord-busAll 32 servers: pypi.org/user/gmahia Live demo: coord-cascade-demo
IP & Collaboration
MIT licensed. Feedback via GitHub Issues only — pull requests are not accepted. Demo data is labeled DEMO and is not suitable for operational decisions. Full policy: docs/architecture/IP_POLICY.md. Security reports: see SECURITY.md.
Part of the East Africa coordination stack
Install & run:
pip install reli-cli && reli list— 33 MCP servers on the official MCP Registry underio.github.gabrielmahiaEvaluate any model on Swahili agent tasks: kipimo · dataset · leaderboard
Coordinate across servers: africa-coord-bus — offline-first event bus with a built-in Kenya routing table
Datasets: huggingface.co/gmahia · Docs hub: nairobi-stack
Model-agnostic by design: closed APIs, open-weight models, and small distilled models are all first-class citizens.
Available Tools
5 toolslabour_court_guideLabour Court GuideC
Labour Relations Court and ELRC guidance in Kenya. DEMO.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of disclosing behavior. The word 'DEMO' hints that the tool is a demonstration, but the description does not explain what happens when invoked, whether it returns static text, answers a query, or requires specific input. The behavioral profile is essentially undeclared.
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 short, but brevity here reflects under-specification rather than efficient communication. 'Labour Relations Court and ELRC guidance in Kenya' states a topic, while 'DEMO.' adds a status marker but no operational value. Important information about behavior and parameters is absent.
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?
Even though the tool has only one optional parameter and an output schema is present, the description is not complete enough for an agent to invoke it correctly. The query parameter semantics are undefined, the behavior is unclear, and there is no indication of what output to expect. The description reads more like a label than a usable tool definition.
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 input schema defines one optional 'query' parameter with default null, and schema description coverage is 0%. The description never mentions the query parameter or explains what kind of query it expects. The description entirely fails to compensate for the schema's lack of parameter documentation.
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 identifies the domain as 'Labour Relations Court and ELRC guidance in Kenya,' which adds specificity beyond the title by naming ELRC and the jurisdiction. However, it lacks an explicit action verb and reads as a noun phrase rather than a clear statement of what the tool does. It is vague about whether the tool answers questions, retrieves documents, or provides procedural guidance.
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?
The description provides no guidance on when to use this tool instead of its siblings, such as unfair_dismissal_guide or maternity_paternity_rights. There is no mention of use cases, exclusions, or alternative tools. An agent would have to infer appropriateness solely from the tool name and topic.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
maternity_paternity_rightsMaternity Paternity RightsC
Kenya maternity and paternity leave rights. DEMO.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries full responsibility for behavioral disclosure. 'DEMO' hints that this may be illustrative or limited, but the description does not explain what the tool does, what it returns, or how the query affects behavior.
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 extremely short, but this is under-specification rather than effective conciseness. The 'DEMO' tag is cryptic and the description lacks enough substance to earn a higher score.
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?
Despite having only one optional parameter and an output schema, the definition still omits essential context: how to use the query parameter, what kind of output to expect, and what 'DEMO' implies about reliability or scope. An agent would be guessing at the tool's contract.
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 only parameter, 'query', is not described at all, and schema description coverage is 0%. The description does not indicate whether the query is a natural-language question, a search term, or optional free text.
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 specific topic, 'Kenya maternity and paternity leave rights', which distinguishes it from siblings like minimum_wage_lookup and unfair_dismissal_guide. However, it is a noun phrase rather than a clear verb+resource statement, so it does not explicitly say what action the tool performs.
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?
No guidance is given about when to use this tool versus sibling tools. There are no scenarios, exclusions, or alternative recommendations, leaving the agent to infer usage solely from the topic keyword 'Kenya'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
minimum_wage_lookupMinimum Wage LookupC
Kenya minimum wage by sector and county. DEMO.
| Name | Required | Description | Default |
|---|---|---|---|
| county | No | ||
| sector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description bears the full burden of behavioral disclosure. The 'DEMO' tag hints that the data may be demonstrational or unreliable, but it does not explain what the tool actually returns, whether filtering is exact or partial, or what happens when parameters are omitted. This is too thin to set correct behavioral expectations.
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 two short sentences with no filler. The core purpose ('Kenya minimum wage by sector and county') is front-loaded, and 'DEMO' is a separate useful flag. It is appropriately concise, though the structure is flat and could benefit from explicit usage cues.
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 tool with two optional parameters and no annotation support, the description omits critical operational context: what to do with null parameters, whether data is real or demo-only, and when to prefer this lookup over related guides. The presence of an output schema covers return shape, but query semantics and limitations remain unexplained.
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 schema has 0% description coverage, so the description must add meaning to 'county' and 'sector.' It echoes those exact parameter names ('by sector and county') without explaining allowed values, combination semantics, or defaults. This adds little beyond what the property names already convey.
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 ('Kenya minimum wage') and the query dimensions ('by sector and county'), clearly distinguishing it from sibling tools that cover employment rights guides and directories. It lacks an explicit verb like 'lookup' or 'retrieve,' but the noun phrase conveys the purpose unambiguously.
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?
No guidance is given on when to use this tool versus the sibling tools (e.g., unfair_dismissal_guide, maternity_paternity_rights). There is no mention of exclusions, prerequisites, or how to decide between tools. The purpose implies use for wage lookups, but that 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.
trade_union_directoryTrade Union DirectoryC
Kenya trade union directory and worker rights organizations. DEMO.
| Name | Required | Description | Default |
|---|---|---|---|
| sector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It says nothing about actions, side effects, return format, or limitations. The only extra signal is 'DEMO', which hints at incompleteness but doesn't explain behavior. For a tool that likely returns directory data, no mention is made of output structure or pagination – a total lack of transparency.
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 a single short sentence with zero wasted words. It front-loads the core subject ('Kenya trade union directory') and the 'DEMO' note is appended. This is highly efficient for what it conveys, though it may be too terse – but the dimension rewards sparseness, and it delivers the minimal information cleanly.
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 directory tool with one parameter, the description is woefully incomplete. It doesn't explain what the directory contains, how to use the 'sector' parameter, what the output looks like, or any filter behavior. Even though an output schema exists, the description offers no context to guide an agent toward correct invocation. It fails to provide a complete picture.
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 input schema has one parameter, 'sector', with no description in the schema (0% coverage). The tool description does not compensate: it never mentions 'sector', expected values, or how it filters results. The parameter is only self-evident from its name, but the description adds no semantic value.
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 identifies the resource: 'Kenya trade union directory and worker rights organizations.' This distinguishes it from sibling tools like minimum_wage_lookup and unfair_dismissal_guide. However, it lacks a specific verb (e.g., 'list', 'search', 'retrieve'), relying on the noun 'directory' to imply the action. The 'DEMO' suffix is a minor distraction but doesn't obscure the core purpose.
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?
There is no guidance on when to use this tool versus alternatives. It doesn't state when to use it for trade union information, nor when to prefer a sibling tool like labour_court_guide. It merely states what it is, leaving the agent to infer the use case. No exclusions or contextual clues are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unfair_dismissal_guideUnfair Dismissal GuideC
Kenya unfair dismissal rights under Employment Act 2007. DEMO.
| Name | Required | Description | Default |
|---|---|---|---|
| situation | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so the description must carry the full burden of behavioral disclosure. It only states the topic and 'DEMO'; it does not explain what the tool does with the situation input, whether it returns legal text or advice, or whether it is a functional stub. 'DEMO' is a weak signal, not a behavioral explanation.
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 very short with no filler and front-loads the core domain. 'DEMO' is unexplained but does not add significant bloat. It is concise, though it sacrifices substance for brevity.
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?
Even though the tool has only one optional parameter and an output schema, the description is incomplete: it never explains the meaning of 'situation', what the output represents, or how this tool relates to the sibling guides. An agent would be guessing at invocation semantics.
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%, and the description does not mention 'situation' at all. The lone parameter is optional and nullable, so an agent cannot tell what format, detail level, or type of scenario is expected. The description completely fails to compensate for the schema gap.
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 specific subject (Kenya unfair dismissal rights) and legal basis (Employment Act 2007), which distinguishes it from sibling labor law tools like maternity_paternity_rights or minimum_wage_lookup. It lacks an active verb, being a noun phrase, and 'DEMO' adds ambiguity, but the topic is clear.
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?
No guidance is given about when to use this tool versus the sibling tools, or what type of user query it best serves. The 'DEMO' label hints at non-production status but does not explain when it should or should not be invoked.
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. Dates show when Glama detected each change.
5 tool updates
v0.1.3- First observed
labour_court_guide - First observed
maternity_paternity_rights - First observed
minimum_wage_lookup - First observed
trade_union_directory - First observed
unfair_dismissal_guide
TDQS
Each tool targets a distinct labor topic: wages, dismissal, parental leave, unions, and courts. There is no meaningful overlap between them, so an agent can confidently select the right tool.
All tool names follow the same clear snake_case [topic]_[resource_type] pattern, such as minimum_wage_lookup and labour_court_guide. The naming is consistent and predictable across the entire set.
With five tools, the server is tightly scoped to key worker-rights reference topics. Each tool earns its place and the count feels appropriate for an informational labor-law MCP server.
The set covers several important labor-rights areas, but notable Kenya employment topics are missing, such as annual leave, sick leave, notice periods, severance, and discrimination. This is a reasonable starting surface but not comprehensive for the broad domain implied by the server name.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Global labour & market data for skills, workforce, planning, stakeholders, jobs, news & profiles
CareerProof MCP gives AI agents direct access to a professional-grade career and workforce intelligence platform. Two namespaces: atlas_* for HR/TA teams (candidate evaluation, batch shortlisting, competency scoring, interview generation, JD analysis, custom eval frameworks, research reports) and ceevee_* for professionals (CV optimization, career positioning, salary intelligence, market reports). Backed by RAG knowledge from 50+ premium research sources (McKinsey, BCG, HBR, Gartner, WEF)
Search and cite UAE law (federal, Dubai, Abu Dhabi, DIFC, ADGM) with verifiable citations.
Query professional profiles, search candidates, and get AI-powered summaries and job fit analysis.
Related MCP Servers
- AlicenseAqualityDmaintenanceProvides access to Japanese labor and social insurance laws and administrative circulars from sources like the e-Gov API and the Ministry of Health, Labour and Welfare. It enables users to search for and retrieve legal texts and notices to ensure accuracy in labor-related inquiries.62,55161MIT
- AlicenseAqualityBmaintenanceProvides access to Kenya's civic datasets including parliament records, county budgets, SACCO registry, and drought data through MCP tools. Enables AI agents to analyze and query Kenyan public data for civic applications.61MIT
- AlicenseAqualityAmaintenanceEnables interaction with Kenya's government processes by providing form checklists, draft letters, requirements checks, eCitizen guides, Huduma Centre locations, and timeline planning.6MIT
- AlicenseAqualityAmaintenanceMCP 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.6MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/gabrielmahia/haki-ya-kazi-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server