Skip to main content
Glama
gabrielmahia

haki-ya-kazi-mcp

by gabrielmahia

haki-ya-kazi-mcp

haki-ya-kazi-mcp Glama score


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

PyPI License Layer

Install

pip install haki-ya-kazi-mcp

Related MCP server: KenyaMCPServer

What it does

5 MCP tools covering Kenya labour rights and employment law. 1st world equivalent: ACAS / NLRB.

Tool

Description

minimum_wage_lookup

Kenya minimum wage by sector and county

unfair_dismissal_guide

Unfair dismissal rights under Kenya Employment Act 2007

maternity_paternity_rights

Maternity (90 days) and paternity (14 days) rights

trade_union_directory

Kenya trade union directory and worker rights organizations

labour_court_guide

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-bus

All 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

Model-agnostic by design: closed APIs, open-weight models, and small distilled models are all first-class citizens.

Available Tools

5 tools
labour_court_guideLabour Court GuideC

Labour Relations Court and ELRC guidance in Kenya. DEMO.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.1/5.0
Behavior2/5

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.

Conciseness2/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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.

Conciseness2/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
countyNo
sectorNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
sectorNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.3/5.0
Behavior1/5

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.

Conciseness4/5

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.

Completeness1/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
situationNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters1/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

  1. 5 tool updatesv0.1.3
    • First observedlabour_court_guide
    • First observedmaternity_paternity_rights
    • First observedminimum_wage_lookup
    • First observedtrade_union_directory
    • First observedunfair_dismissal_guide

TDQS

B3/5.0
Disambiguation5/5

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.

Naming Consistency5/5

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.

Tool Count5/5

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.

Completeness3/5

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

ActivitySlowing
ResponsivenessSyncing

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

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Provides 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.
    6
    2,551
    61
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Provides 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.
    6
    1
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables interaction with Kenya's government processes by providing form checklists, draft letters, requirements checks, eCitizen guides, Huduma Centre locations, and timeline planning.
    6
    MIT

Latest Blog Posts

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