💧 WapiMaji MCP — Kenya Water & Drought Intelligence
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 wapimaji-mcp · Use with any MCP client.
A Kenya drought-response toolkit for AI agents: simulated county drought phases (no real NDMA data is integrated yet), SMS alerts through Africa's Talking that need explicit confirmation, and drought events published to the coordination bus.
What it does, and does not
- Simulated drought phases for the 47 counties. Values are generated from the county name so downstream flows can be built and tested. They are not observations and not NDMA data; every answer says
"synthetic": true. Never use them for decisions. - No real data source is integrated. With
SANDBOX=falsethe status tools return an explicit "not implemented, status unknown" error. NDMA publishes drought phases as periodic bulletins; FEWS NET and IPC publish food-security classifications through APIs that were slow or unverified when checked on 2026-10-07. Integrating one is the next step. - SMS alerts through Africa's Talking: simulated by default (
sent: false); a live send needsSANDBOX=falseandconfirm_send=true. - Coordination: publish a drought event so downstream MCP servers (insurance, agriculture advisory, health, county alerts) can react.
Tools
| Tool | Type | Description |
|---|---|---|
get_drought_status |
Read-only, simulated | A simulated drought phase for one county, labelled synthetic |
get_drought_alerts |
Read-only, simulated | Simulated list of counties at or above a phase |
sms_drought_alert |
Sends SMS | Send a drought alert SMS via Africa's Talking (needs confirm_send=true in live mode) |
publish_drought_coordination |
Writes an event | Publish a drought coordination event for downstream servers |
Install
pip install wapimaji-mcp
# or:
uvx wapimaji-mcp
Configure
{
"mcpServers": {
"wapimaji": {
"command": "uvx",
"args": ["wapimaji-mcp"],
"env": {
"AT_USERNAME": "your_username",
"AT_API_KEY": "your_at_key",
"SANDBOX": "true"
}
}
}
}
Data sources
Runtime safety and data limits
SANDBOX=true (the default) uses simulated county drought values, including
aggregate alerts. These values are not observations from NDMA. Live aggregate
alerts are not implemented and return an explicit error with unknown status.
SMS calls in sandbox return sent: false without contacting Africa's Talking.
Live SMS requires both SANDBOX=false and confirm_send=true, supplied only after
the user explicitly confirms that send. Provider acceptance does not establish
delivery to the recipient.
No real data source is integrated. Earlier versions listed NDMA, the Kenya Meteorological Department and FEWS NET here; the code never used them.
Related
- mpesa-mcp — M-Pesa + Africa's Talking MCP server
- WapiMaji — The Streamlit dashboard version
- gabrielmahia.github.io — Full civic portfolio
IP & Collaboration
© 2026 Gabriel Mahia · contact@aikungfu.dev License: MIT Not affiliated with NDMA or Africa's Talking.
Related datasets
Earlier versions said this server draws on NASA MODIS NDVI, NOAA CHIRPS, TRMM and FEWS NET; it does not read any of them. The Hugging Face datasets africa-open-climate-data and east-africa-agricultural-pd are separate resources.
Part of the East Africa Coordination Stack
This MCP server is part of 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 servers: pypi.org/user/gmahia Live demo: coord-cascade-demo
Part of the East Africa coordination stack
- Install & run:
pip install reli-cli && reli list— the MCP servers on the official MCP Registry underio.github.gabrielmahia - Evaluate 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.
Metadata
Release files for wapimaji-mcp 0.1.12
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| wapimaji_mcp-0.1.12.tar.gz | 14.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| wapimaji_mcp-0.1.12-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 24.6 kB
Release files / wapimaji_mcp-0.1.12.tar.gz
| Download URL | wapimaji_mcp-0.1.12.tar.gz |
|---|---|
| Size | 14.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
34e6671eb4ca7782000e7ecb9d87dfb9cca97515b18b17d6c553965d61d47651
|
|
BLAKE2b-256 checksum How to use checksums |
8865d16fdcf0faad667a659e39e9e9f0911f703cef186e444bfe960876cad358
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 14, 2026.
Transparency logRelease files / wapimaji_mcp-0.1.12-py3-none-any.whl
| Download URL | wapimaji_mcp-0.1.12-py3-none-any.whl |
|---|---|
| Size | 10.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b4462405c18524ec2a95f24c572d8c5ea62547eca7b9d07e2128492e40458941
|
|
BLAKE2b-256 checksum How to use checksums |
96746e23690e92bf53e90229509ddaf87131f0ff311c63e4681b4062f222ce7a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 14, 2026.
Transparency log