DarajaMCP

DarajaMCP

🚀 基于Anthropic MCP框架的Daraja接口实现项目

本项目聚焦于提供一个基于Anthropic MCP框架的Daraja接口实现,可与Safaricom的M - Pesa API开展交互。借助调用特定工具或使用提供的提示,用户能够轻松完成各类支付操作,满足多样化的支付需求。

🚀 快速开始

该项目主要功能包括生成访问令牌,同时还有一些待实现的未来功能,如stk_push、查询交易状态等。用户可通过调用特定工具或使用提供的提示来完成各种支付操作。

✨ 主要特性

  • 提供基于Anthropic MCP框架的Daraja接口实现,与Safaricom的M - Pesa API交互。
  • 具备生成访问令牌功能,支持未来扩展如stk_push、查询交易状态等功能。
  • 提供多种支付工具和提示,方便用户完成支付操作。
  • 提供文档处理工具和提示,可进行数据处理工作流的创建和管理。

📦 安装指南

文档未提及安装步骤,暂不提供。

💻 使用示例

基础用法

# 生成访问令牌示例
token = get_access_token()
print(f"Generated access token: {token}")

# 使用工作流处理文档示例
workflow_id = "your_workflow_id"
doc_content = "待处理的文档内容"
result = process_document(workflow_id, doc_content)
print(f"Document processing result: {result}")

高级用法

文档未提及高级用法相关代码,暂不提供。

📚 详细文档

工具和提示

支付工具

stk_push

发起M - Pesa STK推送请求,要求客户在手机上授权付款。

输入参数:

  • amount (int): 需要支付的金额
  • phone_number (int): 客户的电话号码

返回值: JSON格式的M - PESA API响应结果

generate_qr_code

生成用于支付请求的QR码,客户可以扫描该二维码完成付款。

输入参数:

  • merchant_name (str): 商家名称/ M - Pesa商家名称
  • transaction_reference_no (str): 交易参考号
  • amount (int): 销售/交易总金额
  • transaction_type (Literal["BG", "WA", "PB", "SM", "SB"]): 交易类型
  • credit_party_identifier (str): 付款方标识(移动电话号码、企业电话号码、代理收银机、Paybill、或商家购买商品)

返回值: JSON格式的M - PESA API响应结果,包含二维码数据

支付提示

stk_push_prompt

生成用于发起M - Pesa STK推送付款请求的提示信息。

输入参数:

  • phone_number (str): 客户的电话号码
  • amount (int): 需要支付的金额
  • purpose (str): 支付目的

返回值: 格式化的STK推送请求提示字符串

generate_qr_code_prompt

生成用于创建M - Pesa QR码付款请求的提示信息。

输入参数:

  • merchant_name (str): 商家名称
  • amount (int): 需要支付的金额
  • transaction_type (str): 交易类型(BG表示购买商品,WA表示钱包,PB表示Paybill,SM表示发送到个人,SB表示发送到企业)
  • identifier (str): 收款人标识(电话号码、企业号码、代理收银机、Paybill、或商家BuyGoods)
  • reference (str, optional): 交易参考号。如果未提供,默认生成。

返回值: 格式化的QR码生成提示字符串

文档处理工具

create_source

创建一个从数据源到无结构服务器的连接器,用于数据处理。

输入参数:

  • connector_name (str): 要创建的数据源连接器名称

返回值: 包含名称和ID的源连接器详细信息

create_destination

创建一个从无结构服务器到目标存储位置的连接器。

输入参数:

  • connector_name (str): 要创建的目的地连接器名称

返回值: 包含名称和ID的目标连接器详细信息

create_workflow

创建一个处理数据从源连接器流向目的连接器的工作流。

输入参数:

  • workflow_name (str): 工作流的名称
  • source_connector_id (str): 源连接器的唯一标识符
  • destination_connector_id (str): 目标连接器的唯一标识符

返回值: 包含工作流ID和状态(成功或失败)的结果

delete_workflow

删除指定ID的工作流。

输入参数:

  • workflow_id (str): 要删除的工作流的唯一标识符

返回值: 删除操作的状态信息

文档处理提示

process_document

使用工作流处理文档。

输入参数:

  • workflow_id (str): 用于处理文档的工作流ID
  • document_content (str): 待处理的文档内容

返回值: 包含处理结果的状态信息

返回值格式

所有API调用均返回JSON对象,如下所示:

{
"status": "success",    // 状态:成功或失败
"message": "操作完成。",  // 操作提示信息
"data": {}              // 存储具体数据的字段
}

错误处理

如果发生错误,API将返回包含错误详细信息的状态码和消息。

📄 许可证

本项目采用MIT License协议。

📞 联系方式

  • 感谢所有为该项目贡献代码和建议的开发人员。
  • 如有任何问题或建议,请联系daraja@anthropic.com

通过该项目,用户可以方便地与Safaricom的M - Pesa服务进行集成,并实现多种支付功能。

  • 0 关注
  • 0 收藏,13 浏览
  • system 提出于 2025-09-25 19:00

相似服务问题

相关AI产品