nishati-mcp
nishati-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 nishati-mcp · Use with any MCP client.
MCP server for Kenya energy access — KPLC connections, tariffs, off-grid solar options, rural electrification programs. 5 tools.
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
Related MCP server: mazingira-mcp
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 toolsenergy_rights_queryC
Consumer rights for electricity in Kenya. DEMO.
| Name | Required | Description | Default |
|---|---|---|---|
| topic | Yes |
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, the description carries the full burden of behavioral disclosure. It fails to mention any behavioral traits such as output format, side effects, or required permissions. The 'DEMO' label hints at limited functionality but is ambiguous.
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 (one sentence) but under-specified. The word 'DEMO' appears unnecessary and adds noise. Conciseness should not come at the expense of completeness.
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?
Given the tool's simplicity (one parameter) and existence of an output schema, the description could be brief but still should explain the parameter and usage. It fails to be complete even for this minimal case.
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 explain the sole parameter 'topic'. The schema only specifies its type as string; no meaning or expected values are provided, leaving the agent without guidance.
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 'Consumer rights for electricity in Kenya,' which clearly identifies the tool's domain and purpose. However, the addition of 'DEMO' introduces ambiguity about whether this is a production-grade tool, slightly reducing clarity.
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 provided on when to use this tool versus sibling tools like 'energy_subsidy_programs' or 'kplc_connection_guide'. The description does not offer any context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
energy_subsidy_programsC
Kenya energy subsidy and access programs. DEMO.
| Name | Required | Description | Default |
|---|---|---|---|
| county | 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, the description must disclose behavioral traits. It only mentions subject matter and 'DEMO', omitting any details about what the tool does, side effects, or requirements. This is insufficient for an agent to understand 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 concise but lacks structure. While it is short, it fails to convey essential information, making brevity detrimental rather than helpful.
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 an output schema and a simple input schema, the description provides almost no context. It does not explain what the tool returns or how to use it, leaving the agent underinformed.
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%, so the description must compensate. The sole parameter 'county' is not described at all in either the schema or the tool description, leaving its semantics unknown.
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 'Kenya energy subsidy and access programs. DEMO.' is vague about what the tool does. It does not specify the action (e.g., list, query, apply) and does not distinguish it from sibling tools like 'energy_rights_query' which also deals with energy topics.
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 provided on when to use this tool versus its siblings. The word 'DEMO' might imply demonstration purposes but is not explicit, leaving the agent without clear usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
kplc_connection_guideC
Guide to new KPLC electricity connection in Kenya. DEMO.
| Name | Required | Description | Default |
|---|---|---|---|
| county | No | ||
| connection_type | No | residential |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description includes 'DEMO', which suggests non-production behavior but is vague. No other behavioral traits like safety, side effects, or limitations are disclosed.
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 concise, but it lacks structure and omits essential details. It achieves conciseness at the expense of completeness.
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?
Given two parameters, no schema descriptions, no annotations, and an output schema, the description is grossly incomplete. It fails to explain how to use the tool or what results to expect.
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 description does not mention any parameters, and the input schema has no descriptions (0% coverage). It adds no meaning beyond the property names.
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 tool as a guide for new KPLC electricity connections in Kenya. This is a specific verb-resource combination that distinguishes it from sibling tools like energy_rights_query or tariff_calculator.
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 provided on when to use this tool versus alternatives. There is no indication of prerequisites or context of use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
solar_options_guideD
Off-grid solar options for Kenya households. DEMO.
| Name | Required | Description | Default |
|---|---|---|---|
| use_case | No | basic_lighting | |
| budget_kes | 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 must disclose behavior. It only states the domain and 'DEMO', with no info on side effects, data sources, or limitations.
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 (5 words), which is concise, but fails to provide essential information. Conciseness without substance is not valuable.
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 low complexity and an output schema, the description is severely incomplete. It does not cover overview, usage context, parameter details, or return value expectations.
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 coverage is 0% and the description adds no meaning to the parameters. It does not explain what 'use_case' or 'budget_kes' are or how they affect the output.
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 mentions the domain (solar options, Kenya households) but lacks a specific verb or action (e.g., 'recommends', 'lists', 'compares'). It does not distinguish from sibling tools like energy_rights_query or tariff_calculator.
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 on when to use this tool versus alternatives. No context about prerequisites or typical scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tariff_calculatorC
Estimate monthly KPLC electricity cost for Kenya household. DEMO.
| Name | Required | Description | Default |
|---|---|---|---|
| customer_type | No | residential | |
| monthly_units_kwh | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the full burden. It states 'Estimate' implying a calculation, but provides no details on behavioral traits like data sources, accuracy, or that it's a demo version. The 'DEMO' tag suggests limited functionality but isn't explicit.
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 concise, one sentence front-loading the purpose. The 'DEMO' could be made more informative while maintaining brevity, but overall it is efficient and not verbose.
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?
Given the tool is a calculator with two parameters and an output schema, the description lacks details about return value format, units, or how the estimate is computed. It provides minimal context for correct invocation, especially considering the 'DEMO' nature.
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%, so the description should explain parameters. It does not mention 'monthly_units_kwh' or 'customer_type', leaving the agent to infer meaning solely from the schema. No added value beyond the schema.
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 states the tool estimates monthly KPLC electricity cost for a Kenya household, with a specific verb and resource. It distinguishes from sibling tools (energy rights, subsidies, connection guides, solar options). However, the 'DEMO' tag introduces some ambiguity about reliability.
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 on when to use this tool versus alternatives. The description does not mention any prerequisites, limitations, or situations where other tools might be more appropriate.
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.1- First observed
energy_rights_query - First observed
energy_subsidy_programs - First observed
kplc_connection_guide - First observed
solar_options_guide - First observed
tariff_calculator
TDQS
Each tool targets a distinct aspect of Kenya household energy: rights, subsidies, connection, solar options, and tariff calculation. There is no overlap in purposes.
All tool names follow a clear noun_phrase pattern with underscores (e.g., energy_rights_query, tariff_calculator), providing consistent, descriptive naming.
With 5 tools covering the key areas of Kenya household energy, the set is well-scoped and not overly large or small for an informational server.
The server covers consumer rights, subsidies, connection guide, solar options, and tariff calculation. Minor gaps exist (e.g., outage reporting, applicable for demo use).
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
Octopus Energy public API MCP — UK energy tariffs & products.
South African MCP server for airtime, data, SMS, VAS, electricity, balance, and network lookup.
Public remote MCP server for Walnai AI Consulting services, pricing, calculator, FAQs, and adoption.
MCP Server for agents to onboard, pay, and provision services autonomously with InFlow
Related MCP Servers
- AlicenseCqualityAmaintenanceMCP server for Kenya civic information — Kenya Gazette, government tenders, open data, parliament tracker, citizen feedback.5MIT
- AlicenseCqualityAmaintenanceMCP server for Kenya environment — NEMA permits, climate data, conservation areas, environmental rights, climate adaptation.5MIT
- AlicenseAqualityAmaintenanceMCP server for Kenya education — school registry, KCSE/KCPE results, HELB student loans, TVET programs, literacy resources.5MIT
- AlicenseCqualityAmaintenanceMCP server for Kenya community finance — SACCO finder, chama formation, cooperative benefits, loan guides, member rights.5MIT
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/nishati-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server