fomu-mcp
fomu-mcp is a Kenya civic form agent that helps citizens navigate government processes by turning their needs into actionable checklists, draft letters, and timeline plans.
form_checklist– Generate a complete requirements list for any Kenya government form or application, with support for different applicant types (individual, business, etc.).form_draft_letter– Draft formal letters for common civic requests such as introductions, references, complaints, and land inquiries.form_requirements_check– Input the documents you already have to find out what's missing, along with a completeness percentage and next steps.ecitizen_guide– Browse and get guidance on Kenya's eCitizen portal services, optionally filtered by category.huduma_centre_guide– Find Huduma Centre locations and services, searchable by county.form_timeline_planner– Sequence multiple government processes and get estimated completion dates based on a start date.
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., "@fomu-mcpwhat do I need for a new passport application?"
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.
fomu-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 fomu-mcp · Use with any MCP client.
Kenya civic form agent via MCP — turns citizen needs into government form checklists, draft applications, and timeline plans.
Fomu (Swahili for "form")
Why This Exists
"Form Agent: turns messy user answers into applications, checklists, letters."
— East Africa AI Infrastructure Schematic
Kenya's government processes are documented but navigating them requires knowing what to look for.
fomu-mcp encodes the institutional knowledge: what to bring, where to go, how long it takes, what to pay.
Related MCP server: familia-mcp
Install
pip install fomu-mcpTools (6)
Tool | Function |
| Complete requirements list for any Kenya government form |
| Generate draft formal letters (introduction, reference, complaint, land inquiry) |
| Tell user what they have and what they're missing |
| eCitizen portal service directory |
| Huduma Centre locations and services by county |
| Sequence multiple processes with estimated completion dates |
Example
# Check readiness for business registration
await call_tool("form_requirements_check", {
"form_type": "business_registration",
"user_has": ["national ID", "KRA PIN", "passport photo"]
})
# Returns: missing items + completeness % + next stepPart of AI-KungFU East Africa Coordination Infrastructure
Part of the SII Stack — the Form Agent layer in the 7-agent type framework: Research · Form · Verification · Translation · Financial · Market · Escalation
→ sii-stack → The Nairobi Stack
License
MIT © Gabriel Mahia | contact@aikungfu.dev
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
1 toolform_draft_letterARead-only
Generate a draft formal letter for common Kenya civic requests. DEMO.
| Name | Required | Description | Default |
|---|---|---|---|
| details | No | Additional context to personalise the letter e.g. reference number, specific department, date of original application | |
| letter_type | Yes | Letter category e.g. | |
| applicant_name | Yes | Full name of the applicant for the letter salutation and signature |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, indicating no side effects. Description adds 'DEMO', signaling limited production readiness, which provides useful behavioral context beyond annotations.
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?
Single sentence with no wasted words, front-loaded with key action and context. Perfectly concise.
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?
Has output schema, so return values are covered. But for a demo tool generating formal letters, more context on limitations (e.g., supported letter types, demo constraints) would improve completeness.
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 100%, so description adds no extra param info. Parameter descriptions in schema are adequate (e.g., applicant_name purpose, details examples). Baseline 3 is appropriate.
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?
Description explicitly states 'Generate a draft formal letter for common Kenya civic requests', clearly identifying the verb (generate) and resource (draft formal letter) with specific context (Kenya civic). No sibling tools exist, so differentiation is moot.
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 or when alternatives might be preferred. Lacks any usage context, prerequisites, or exclusions.
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.
6 tool updates
v0.1.4- Removed
ecitizen_guide - Removed
form_checklist - Changed
form_draft_letter3 fields changed- added
Input schema / properties / applicant_name / descriptionAdded value: +"Full name of the applicant for the letter salutation and signature" - added
Input schema / properties / details / descriptionAdded value: +"Additional context to personalise the letter e.g. reference number, specific department, date of original application" - added
Input schema / properties / letter_type / descriptionAdded value: +"Letter category e.g."
- Removed
form_requirements_check - Removed
form_timeline_planner - Removed
huduma_centre_guide
6 tool updates
v0.1.0- First observed
ecitizen_guide - First observed
form_checklist - First observed
form_draft_letter - First observed
form_requirements_check - First observed
form_timeline_planner - First observed
huduma_centre_guide
TDQS
With only one tool, there is no possibility of confusion or overlap between tools.
The single tool name follows a clear verb_noun pattern using snake_case, consistent with common conventions.
The server has only one tool, which feels thin for the domain of generating formal letters for common civic requests. However, as a demo, it may be acceptable.
The single tool covers only one operation (drafting) without any supporting tools for listing templates, managing drafts, or handling different request types, leaving notable gaps.
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
Deterministic eligibility checker for grants, jobs and scholarships in Africa.
Prepare Algerian consular procedures with offices, sources, and interactive checklists.
Real licensed Kenyan doctors, pharmacy and groceries. AI discovery only, payment held in escrow.
Generate small-business compliance calendars and renewal checklists.
Related MCP Servers
- 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
- AlicenseBqualityAmaintenanceProvides tools for managing Kenyan family legal matters including inheritance, wills, trusts, diaspora property, and caretaker records via MCP.6MIT
- AlicenseCqualityAmaintenanceProvides tools for Kenyans abroad to navigate dual citizenship, diaspora taxes, homeland investment, document verification, and community resources via MCP.6MIT
- AlicenseCqualityAmaintenanceProvides translation and language resources for Kenyan languages including Swahili, Kikuyu, and Luo, with tools for glossaries, language guides, and civic terminology.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/fomu-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server