M-Pesa Daraja

io.github.Mr-Macharia/mpesa-daraja-mcp

About M-Pesa Daraja

M-Pesa Daraja is an MCP server published by the GitHub account Mr-Macharia. Safaricom M-Pesa Daraja tools: STK Push, C2B, B2C, B2B, QR, Ratiba. Sandbox-first, idempotent.

It runs on your own machine: your AI client starts it from the PyPI package mpesa-daraja-mcp at version 0.1.4.

It asks for 6 secrets: DARAJA_CONSUMER_KEY, DARAJA_CONSUMER_SECRET, DARAJA_PASSKEY, DARAJA_SECURITY_CREDENTIAL, DARAJA_CALLBACK_TOKEN and DARAJA_INITIATOR_PASSWORD. Give it a key with the least access that still works.

Version 0.1.4 was published on 24 October 2026, and the source code is public, so you can read it before installing.

Written from the registry entry. 9 automated checks on the registry entry and the package code: 7 pass, 1 warn, 0 fail, 1 info. How we check.

What it asks for

VariableRequiredSecretDescription
DARAJA_CONSUMER_KEYYesYesDaraja app Consumer Key
DARAJA_CONSUMER_SECRETYesYesDaraja app Consumer Secret
DARAJA_ENVNoNosandbox (default) or production
DARAJA_SHORTCODENoNoPaybill / store number (174379 in sandbox)
DARAJA_PASSKEYNoYesM-Pesa Express passkey (STK Push)
DARAJA_INITIATOR_NAMENoNoAPI operator username (B2C, B2B, status, balance, reversal)
DARAJA_SECURITY_CREDENTIALNoYesEncrypted initiator password
DARAJA_CALLBACK_BASE_URLNoNoPublic HTTPS base for callback URLs
DARAJA_CALLBACK_LISTENNoNohost:port for the built-in callback receiver
DARAJA_CALLBACK_TOKENNoYes16+ random characters; secret path for callbacks
DARAJA_TOOLSETSNoNoComma list: stk,c2b,payouts,ops,qr,ratiba,billmanager
DARAJA_ALLOW_LIVE_MONEY_MOVEMENTNoNotrue to allow production charges and payouts
DARAJA_INITIATOR_PASSWORDNoYesInitiator password, encrypted into SecurityCredential at startup (alternative to DARAJA_SECURITY_CREDENTIAL)
DARAJA_CERT_PATHNoNoPath to Safaricom's public certificate, used with DARAJA_INITIATOR_PASSWORD
DARAJA_STATE_DBNoNoPath of the SQLite file that stores request state and callbacks
DARAJA_OUTPUT_DIRNoNoDirectory where generated QR PNGs are saved
DARAJA_CONFIG_DIRNoNoDirectory holding the saved config (default: user config dir)
DARAJA_DOTENVNoNoPath of a .env file to load instead of the project one

Checks

CheckResultDetail
Source repository linkedPasshttps://github.com/Mr-Macharia/mpesa-daraja-skills-and-mcp
Version pinnedPassEvery package has an explicit version
Secrets requestedWarnAsks for 6 secrets: DARAJA_CONSUMER_KEY, DARAJA_CONSUMER_SECRET, DARAJA_PASSKEY, DARAJA_SECURITY_CREDENTIAL, DARAJA_CALLBACK_TOKEN, DARAJA_INITIATOR_PASSWORD
Known package registryPassAll packages come from npm, PyPI, OCI, NuGet or MCPB
Namespace ownershipInfoName verified via GitHub account Mr-Macharia
Registry text aimed at the AIPassDescription and settings contain no hidden characters or instructions to the AI
Install scriptsPassmpesa-daraja-mcp 0.1.4 has no setup.py; nothing runs at install
Code red flagsPassRead 19 files in mpesa-daraja-mcp 0.1.4: no obfuscation, encoded execution, credential reads or data-collection endpoints found
Text aimed at the AIPassNo hidden characters or instructions to the AI in 19 files, including comments and the README

Popularity & health: 51 / 100

Worked out from public numbers and our own checks, not from user reviews or ratings. It says how used and how looked-after a server is, not whether it is safe.

Popularity13 / 40

3 GitHub stars, 459 downloads last week, no Hacker News posts found. Best two of the three, each on a log scale.

Activity15 / 25

Last push 2026-10-29, last release 2026-10-29, 0 commits in 90 days.

Issue health8 / 15

0 closed of 4 issues, too few to judge. No data, so half marks.

Our checks16 / 20

1 warning, each costing a fifth.

3 forks, 29 merged pull requests. Sources: GitHub, npm, PyPI (pypistats.org) and Hacker News (Algolia), fetched 2026-10-31.

What people say

No Hacker News threads link to its source code.

Look further: search Reddit, search Hacker News, read its GitHub issues. These are not reviews we checked.

Facts

Registry nameio.github.Mr-Macharia/mpesa-daraja-mcp
PublisherGitHub account Mr-Macharia
How the name is verifiedName verified via GitHub account Mr-Macharia. The registry ties the name prefix to that account or domain; it does not check the code.
TypeLocal: runs on your machine from a package
Packagespypi mpesa-daraja-mcp 0.1.4 (stdio)
Version0.1.4
Published
Last updated
Source repositoryhttps://github.com/Mr-Macharia/mpesa-daraja-skills-and-mcp
WebsiteNone linked
CategoryOther (assigned by keyword rule, not by hand)

Related servers in Other