# Building a Coordination Layer When Nobody Else Is

> Source: <https://dev.to/gabrielmahia/the-coordination-stack-for-kenya-what-32-mcp-servers-look-like-as-a-system-26p4>
> Published: 2026-10-12 10:00:00+00:00

Building AI tools for Africa one at a time solves individual problems. The coordination problems that cost lives require tools that work together.

Most AI tooling for the region treats each domain — finance, water, health, agriculture — as a separate problem with a separate tool. The tools work in isolation. The crises they're meant to help with don't.

**Finance**: `mpesa-mcp`, `kra-mcp`, `faida-mcp`, `mkopo-mcp`, `sifa-mcp`

**Water**: `wapimaji-mcp` (drought intelligence)

**Agriculture**: `kilimo-mcp`, `bima-mcp`, `soko-mcp`

**Health**: `afya-mcp`, `afya-ya-akili-mcp`

**Education**: `elimu-mcp`

**Transport**: `usafiri-mcp`

**Land**: `ardhi-mcp`

**Language**: `swahili-civic-nlp`, `tafsiri-mcp`

**Civic**: `county-mcp`, `fomu-mcp`, `haki-ya-kazi-mcp`

All installable from PyPI: `pip install wapimaji-mcp kilimo-mcp bima-mcp`

`africa-coord-bus` connects the domain servers. When `wapimaji-mcp` detects drought, the bus routes it to the servers that need to respond: insurance evaluation, crop advisory, malnutrition surveillance, county alerts.

``` python
from africa_coord_bus import EventBus, DomainCascade, CoordinationEvent
from africa_coord_bus import EventDomain, EventSeverity

bus = EventBus(queue_path="/var/coord-bus/events.jsonl")
DomainCascade(bus).wire_all()

bus.publish(CoordinationEvent(
    domain=EventDomain.WATER, event_type="drought_alert",
    source="wapimaji-mcp", severity=EventSeverity.ALERT,
    data={"ndvi_anomaly": -0.28, "spi_3month": -1.8},
))
# Five tools respond automatically
```

`pip install africa-coord-bus`

Public domain datasets at [huggingface.co/gmahia](https://huggingface.co/gmahia) provide historical grounding: agricultural baselines from 1906–1925, Swahili-language corpora, and legal and climate records — material that exists but was never structured for AI training or retrieval before.

The domain servers referenced above are on PyPI individually; browse [pypi.org/user/gmahia](https://pypi.org/user/gmahia/) for the current list.
