openMF/mcp-mifosx

πŸ’° Finance & Fintech
0 Views
0 Installs

☁️ 🏠 - A core banking integration for managing clients, loans, savings, shares, financial transactions and generating financial reports.

Quick Install

One-Click IDE Configuration
claude_desktop_config.json
{
  "mcpServers": {
    "openmf-mcp-mifosx": {
      "command": "npx",
      "args": [
        "-y",
        "openmf-mcp-mifosx"
      ]
    }
  }
}
Or

Using an AI coding agent (Claude Code, Cursor, etc.)? Copy a ready-made prompt that tells it to fetch the setup instructions and install this server for you.

Documentation Overview

Mifos MCP - Model Context Protocol (MCP)

This project provides Model Context Protocol (MCP) for the Mifos X Ecosystem, enabling AI agents to access financial data and operations.

Implementations are available in:

  • Go (Native) β€” 102 typed tools (high-performance, cloud-native with SSE/Stdio).
  • Java (Quarkus) β€” 38 typed tools (across Backoffice and Recommendations).
  • Python (FastMCP) β€” 49 typed tools (modular domain-driven design).
  • Rust β€” 89 typed tools (high-performance async I/O with exclusive bulk operations).

Architecture Overview

The Mifos MCP Server acts as a standalone, stateless integration tier that bridges any AI assistant or agent framework to the Apache Fineract banking backend.

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚            Apache Fineract / Mifos X          β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                        β”‚ REST API
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                 mcp-mifosx (Primary Repo)                     β”‚
β”‚                                                               β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚   /go (Native)  β”‚ β”‚ /java (Quarkus) β”‚ β”‚/python (FastMCP)β”‚ β”‚  /rust (Tokio)  β”‚  β”‚
β”‚  β”‚                 β”‚ β”‚                 β”‚ β”‚                 β”‚ β”‚                 β”‚  β”‚
β”‚  β”‚ - 102 Tools     β”‚ β”‚ - 38 Tools      β”‚ β”‚ - 49 Tools      β”‚ β”‚ - 89 Tools      β”‚  β”‚
β”‚  β”‚ - Go Routines   β”‚ β”‚ - Backoffice    β”‚ β”‚ - Modular Designβ”‚ β”‚ - Async I/O     β”‚  β”‚
β”‚  β”‚ - SSE / Stdio   β”‚ β”‚ - Recommend.    β”‚ β”‚                 β”‚ β”‚ - Bulk Actions  β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                        β”‚ MCP Protocol (stdio / SSE)
          β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
          β–Ό             β–Ό              β–Ό
    Mifos X WebApp   Claude Code     n8n / Custom
    AI Assistant     (claude.ai)     Workflow Agent
    (your client)   (external)       (your client)

This repository is framework-agnostic. The client (LLM brain, UI, memory) lives in a separate repository. Any MCP-compatible system can plug in.


Implementation Synchronization

While this repository hosts two different programming languages, they are kept in functional parity where possible to ensure a consistent experience.

How they "Sync":

  1. Tool Specification: All implementations aim to expose the same core banking tools.
    • Go currently leads with 102 tools, featuring advanced cloud-native features and SSE.
    • Rust provides 89 tools, uniquely featuring high-concurrency Bulk Operations and robust "Fetch-and-Merge" state management.
    • Python provides 49 tools using a modular domain design.
    • Java provides 38 tools (21 for Backoffice operations and 17 for User Recommendations).
  2. API Alignment: All implementations are built against the same Apache Fineract REST API. They share identical logic for field routing.
  3. Stateless Parity: All implementations follow a strictly stateless design. None of the servers store user data, PII, or AI memory.
  4. Testing Protocol: Shared "Smoke Tests" ensure that all implementations return identical, predictable JSON structures to the LLM.

Project Structure

This repository is structured to support multiple implementations and client integrations.

.
β”œβ”€β”€ README.md               # Root entry point & cross-implementation guide
β”œβ”€β”€ go/                     # Go Implementation (Native / High-Performance)
β”‚   β”œβ”€β”€ tools/              # 102 Domain-specific tools (SSE/Stdio)
β”‚   β”œβ”€β”€ server/             # Dual-transport logic (HTTP/SSE & Stdio)
β”‚   └── main.go             # Server entry point
β”œβ”€β”€ rust/                   # Rust Implementation (Tokio/Reqwest)
β”‚   β”œβ”€β”€ src/                # Multi-threaded typed tools & bulk execution logic
β”‚   └── Cargo.toml          # Rust package dependencies
β”œβ”€β”€ python/                 # Python Implementation (FastMCP)
β”‚   β”œβ”€β”€ mcp_server.py       # Main entry point for the MCP server
β”‚   β”œβ”€β”€ tools/              # Domain-specific banking tools (Loans, Clients, etc.)
β”‚   └── core/               # API Gateway handlers
└── java/                   # Java Implementation (Quarkus)
    β”œβ”€β”€ backoffice/         # Core banking tools
    └── userrecommendation/ # Recommendation engine tools

Getting Started

1. Choose Your Implementation

Go (Native & Cloud-Ready)

Prerequisites: Go 1.21+

Steps:

  1. Configure Environment: Copy go/.env.example to go/.env and update credentials.
  2. Build and Run:
    cd go
    go build -o mcp-server .
    ./mcp-server
    
  3. SSE Mode (Optional): Define PORT=8080 in .env to switch from Stdio to SSE microservice mode.

Rust (High-Performance)

Prerequisites: Rust (Cargo)

Steps:

  1. Configure Environment: Copy rust/.env.example to rust/.env and update credentials.
  2. Build and Run:
    cd rust
    cargo build --release
    ./target/release/mcp-rust-mifosx
    

Java (Quarkus)

Prerequisites: JDK 21+, Maven

Steps:

  1. Configure Environment Variables:
    export MIFOSX_BASE_URL="https://your-fineract-instance"
    export MIFOSX_BASIC_AUTH_TOKEN="your_api_token"
    export MIFOS_TENANT_ID="default"
    
  2. Run via JBang:
    jbang --quiet org.mifos.community.ai:mcp-server:1.0.0-SNAPSHOT:runner
    
  3. Build Native Executable (Optional):
    cd java/backoffice
    ./mvnw package -Dnative
    ./target/mcp-server-1.0.0-SNAPSHOT-runner
    

Python (FastMCP)

Prerequisites: Python 3.10+, pip

Steps:

  1. Navigate to the Python directory:
    cd python
    
  2. Install dependencies:
    pip install -r requirements.txt
    
  3. Configure Environment: Copy .env.example to .env and fill in your details.
  4. Run the Server:
    python mcp_server.py
    

Available Tools Summary

The exact number and categorization of tools depend on the core server implementation deployed:

Go (102 Tools)

The most feature-complete implementation with native concurrent routines.

  • Clients & Identities: 16 Tools
  • Documents & Reports: 26 Tools
  • Loans & Savings: 23 Tools
  • Groups & Centers: 13 Tools
  • Bulk & Composite: 19 Tools (Cloud-Native)
  • Accounting & Stats: 5 Tools

Rust (89 Tools)

Built for asynchronous scale, bulk processing, and robust state-aware updates.

  • Clients & Collaterals: 25 Tools
  • Loans & Collaterals: 19 Tools
  • Groups, Savings & Centers: 23 Tools
  • Staff, Accounting & Charges: 11 Tools
  • Bulk Operations: 11 Tools (Exclusive to Rust)

Python (49 Tools)

Domain-driven design bridging AI directly to Fineract.

  • Clients & Groups: 16 Tools
  • Loans & Savings: 20 Tools
  • Staff & Accounting: 13 Tools

Java (38 Tools)

Enterprise suite categorized between Backoffice and recommendation engines.

  • Backoffice Operations: 21 Tools (Covers Clients, Loans, Savings)
  • User Recommendations: 17 Tools (Exclusive to Java)

Testing with MCP Inspector

Use the MCP Inspector to test and debug your server interactively:

npx @modelcontextprotocol/inspector <command_to_run_yours_server>

For Python:

npx @modelcontextprotocol/inspector python python/mcp_server.py

Examples - Backoffice Agent

Video URLTitlePromptImplementation
https://youtu.be/MDQKRoz5GKw?si=69X77C58nFhy6IohJoin and Try the Mifos MCPGo to https://ai.mifos.communityGo / Java / Python / Rust
https://youtu.be/y5MR3j8EGM4?si=zXTurBNql4xF5CGYCreate ClientCreate client using name: OCTAVIO PAZ, email: octaviopaz@mifos.org, etc.Go / Java / Python / Rust
https://youtu.be/qJsC25cd-1g?si=qQzX8DeOe0_2qhfrActivate ClientActivate the client OCTAVIO PAZGo / Java / Python / Rust
https://youtu.be/X1g_nVDsRnM?si=K7vsAN7gOLEC2OG0Add Address to ClientAdd the address to the client OCTAVIO PAZ (Plaza de Loreto)Java
https://youtu.be/xeL9_sycwA8?si=AtV6F4WhTvcDspSpAdd Personal ReferenceAdd Maria Elena RamΓ­rez as sister to OCTAVIO PAZJava
https://youtu.be/IKGMeAJBAOk?si=N27rE64dn7qxmMBkCreate a Loan ProductCreate default loan product named "SILVER" (10% interest)Java
https://youtu.be/5EdgUyLyP0w?si=L0UdYjXlyYF6faL5Create Loan ApplicationApply for individual loan for OCTAVIO PAZ using SILVERGo / Java / Python / Rust
https://youtu.be/2ioN_8z_uaY?si=ZTB5rCrgS2jTpC4-Approve LoanApprove the loan accountGo / Java / Python / Rust
https://youtu.be/dDebmrn4lB0?si=0GTf4asCBHnsu27fDisbursement of LoanDisburse loan account using Money TransferGo / Java / Python / Rust
https://youtu.be/N3wnyJCh_Ik?si=gSy5LrJdFF2kfzHdMake Loan RepaymentMake a repayment for account 6 (Amount: 6687.59)Go / Java / Python / Rust
https://youtu.be/bOuTj97hyqU?si=9bpno4Kp0II1IfPYCreate Savings ProductCreate default savings product named "WALLET"Java
https://youtu.be/l-Z7LlE3AnM?si=yQM4lloJL8Hu6yv8Create Savings AppApply for savings account for OCTAVIO PAZ using WALLETGo / Java / Python / Rust
https://youtu.be/Q5ExlhalG8U?si=TwbsUZX30G3JeNJyApprove Savings AppApprove the savings account with note "MY FIRST APPROVAL"Go / Java / Python / Rust
https://youtu.be/DJgUiRYK-rE?si=YatfVgOgpbP4wV91Activate SavingsActivate the savings accountGo / Java / Python / Rust
https://youtu.be/Od7KFqktUtI?si=gPJNlLOB_7D74QdSMake a DepositCreate DEPOSIT of 5000 for account 1Go / Java / Python / Rust
https://youtu.be/9OL6N5wKG7c?si=R50RjTK6GI_ODuUsMake a WithdrawalCreate WITHDRAWAL of 2000 for account 1Go / Java / Python / Rust

Security & Guardrails

  • Universal Compatibility β€” Works with Claude, GPT-4, Qwen, or any MCP client.
  • Data Sovereignty β€” The server makes no external calls.
  • RBAC Enforced β€” Every action is validated against Fineract's native permissions.

Contact & Community

Related MCP Servers

@agentfund/mcp

πŸ“‡ ☁️ - Fundraising infrastructure for AI agents on Solana β€” campaigns, x402 donations, and on-chain reputation. MCP tools for registering agents, creating campaigns, and donating via the x402 pay-to-call flow, backed by Anchor programs (agentregistry, escrow, reputation). npx -y @agentfund/mcp

πŸ’° Finance & Fintech1 views
@asterpay/mcp-server

πŸ“‡ ☁️ - EUR settlement for AI agents via x402 protocol. Market data, AI tools, crypto analytics β€” pay-per-call in USDC on Base. SEPA Instant EUR off-ramp.

πŸ’° Finance & Fintech1 views
@czagents/cnb

πŸ“‡ ☁️ 🏠 🍎 πŸͺŸ 🐧 - Czech National Bank (ČNB) daily FX rates: fetch official CZK exchange rates, convert between currencies, fetch historical rates. Cached 10 min to ease upstream load. npm @czagents/cnb or HTTP at cnb.cz-agents.dev/mcp.

πŸ’° Finance & Fintech1 views
@arbitova/mcp-server

πŸ“‡ ☁️ - Non-custodial on-chain escrow + AI dispute arbitration for agent-to-agent USDC payments on Base. Seven tools covering the full EscrowV1 contract surface: create escrow, mark delivered with on-chain content hash, confirm or dispute, arbiter resolves with signed verdict, cancel/escalate on timeout. npx @arbitova/mcp-server

πŸ’° Finance & Fintech0 views

Engagement

Views
0
Installs
0
Upvotes
0

Views and upvotes are unique per visitor network (hashed IP). Installs count copy actions.

Status

Health: Not checked yet

We have not completed a health check for this listing yet.

No check timestamp yet.

Unclaimed listing (imported or pending owner verification). Claim it β†’
β˜… Spotlight Slot

Feature Your MCP Server

Get maximum visibility for your server across our directory, search results, and detail pages.

Spotlight Your Server

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to get the verified badge and attach your website.

Claim this listing

Promote this listing

Optional paid placement. Free listings stay free forever.

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.