本项目为 Apache Fineract API 打造了 Model Context Protocol (MCP) 服务器,助力 AI 代理访问财务数据并进行操作。项目提供了 Python、Java (Quarkus) 和 Node.js 三种语言的实现方案。
先决条件:需要 Python 3.8 及以上版本,以及 flask
、mcp.server.fastmcp
库。
步骤:
pip install mcp[cli] uv flask
mcp dev app.py
先决条件:需 JDK 17 及以上版本,以及 Maven 工具。 步骤:
export MIFOSX_BASE_URL="https://your-fineract-instance"
export MIFOSX_BASIC_AUTH_TOKEN="your_api_token"
export MIFOS_TENANT_ID="default"
jbang --quiet org.mifos.community.ai:mcp-server:1.0.0-SNAPSHOT:runner
./mvnw package -Dnative
./target/mcp-server-1.0.0-SNAPSHOT-runner
先决条件:需要 Node.js 16 及以上版本,以及 npm 包管理器。 步骤:
cd nodejs && npm install
.env
中配置环境变量:cp .env.example .env
npm run dev
inspect
脚本测试:npm run inspect
fineract://
URI 实现。使用 MCP 检查器 测试和调试你的服务器:
npx @modelcontextprotocol/inspector
这会启动一个本地 Web UI,通过 STDIO 或 SSE 连接到你的 MCP 服务器。
npx @modelcontextprotocol/inspector
STDIO
传输连接到服务器。所有实现都需要以下环境变量:
属性 | 详情 |
---|---|
FINERACT_BASE_URL |
你的 Fineract 实例的基础 URL |
FINERACT_BASIC_AUTH_TOKEN |
API 认证令牌 |
FINERACT_TENANT_ID |
租户标识符(默认:default ) |
注意:Java 使用 MIFOSX_
前缀的变量(例如,MIFOSX_BASE_URL
)。
MCP 服务器公开了以下资源:
fineract://clients
:列出所有客户fineract://clients/{clientId}
:获取特定客户的详细信息fineract://loans
:列出所有贷款fineract://loans/{loanId}
:获取特定贷款的详细信息search_clients
:搜索客户(按名称/属性)create_client
:创建新客户(仅限 Node.js/Python)update_loan_status
:更新贷款状态(仅限 Java/Python)对于 Java (Quarkus),创建一个原生可执行文件:
./mvnw package -Dnative -Dquarkus.native.container-build=true
./target/mcp-server-1.0.0-SNAPSHOT-runner
python/app.py
配置 .env
文件路径。src/main/java/org/mifos-community/ai/MCPServer.java
中配置环境变量。config.js
设置服务器参数。