
作者介绍:鼓掌 MVP,TRAE 开发者用户

项目背景
每逢节假日,红包收到手软;遇到婚礼等需要随份子的庆典,在感受亲朋好友真心关爱的同时,也不免给自己增加了不少经济负担。
"人情"既是必不可少的礼尚往来,更是一个人社会活动的直观体现。但随着时间推移、事务繁杂,总难记得清这些往来账目。
今天我们将依靠 TRAE 强大的 Vibe Coding 开发能力,结合 MCP 技术,用自然语言开发人情账本管理神器,让您轻松管理社交账目,从此人际往来不再头疼。


项目目标
创建一个通过自然语言(如:"我刚给了小明结婚红包1000元")即可记录、查询、分析人情往来的智能系统,让维系人际关系变得轻松、有数。
下面介绍这套基于 TRAE 和 MCP 的"人情账本"系统设计方案。

系统架构设计 (MCP + TRAE)

3.1 MCP Server (核心)
一个独立的进程,负责所有核心逻辑。
职责:
-
接收来自 AI 助手的指令
-
解析指令,执行增删改查(CRUD)操作
-
管理数据存储(如 SQLite 数据库)
-
提供工具(Tools)供 AI 调用
-
返回结构化的结果给 AI,由 AI 组织成自然语言回复用户
3.2 AI 客户端
用户直接交互的界面。
职责: 理解用户的自然语言,将其转化为对 MCP Server 的工具调用,并将结果美化后输出。
3.3 数据存储 (SQLite)
轻量级数据库,用于持久化存储所有账本数据。
优点: 单文件、无需服务器、易于部署。

数据模型设计 (SQLite Table Schema)
sql
-- 人情往来记录主表
CREATE TABLE renqing_records (
id INTEGER PRIMARY KEY AUTOINCREMENT,
type TEXT NOT NULL CHECK (type IN ('income', 'expense')), -- 类型:收礼(income) / 送礼(expense)
amount REAL NOT NULL, -- 金额
currency TEXT DEFAULT 'CNY', -- 货币,默认为人民币
event TEXT, -- 事项(如:结婚、生日、生子、乔迁、探病)
recipient TEXT, -- 对象(收礼/送礼的人)
relationship TEXT, -- 与对象的关系(如:同事、大学同学、亲戚)
date TEXT NOT NULL DEFAULT (date('now')), -- 日期
description TEXT, -- 详细描述/备注
created_at TEXT NOT NULL DEFAULT (datetime('now')), -- 创建时间
updated_at TEXT NOT NULL DEFAULT (datetime('now')) -- 更新时间
);
-- (可选)可扩展其他表,例如:
-- 1. 亲友关系网表
-- 2. 周期性事件提醒表

MCP 工具 (Tools) 设计
这是 MCP Server 的核心,暴露一系列功能供 AI 调用。
5.1 create_renqing_record
功能: 创建一条新记录。
参数:
- type (必需): expense(支出/送礼)或 income(收入/收礼)
- amount (必需): 金额
- recipient (必需): 对象姓名
- event: 事项
- relationship: 关系
- date: 日期(ISO格式,如 2023-10-01)
- description: 备注
AI调用示例: 用户说"我昨天送了小王500块结婚红包",AI会提取参数并调用此工具。
5.2 query_renqing_records
功能: 多功能查询记录。
参数:
- recipient: 按对象查询
- event: 按事项查询
- type: 按类型查询
- start_date , end_date: 按时间范围查询
- limit: 返回结果数量限制
AI调用示例: 用户问"我和小王的礼金往来都有哪些?",AI调用此工具并总结结果。
5.3 get_renqing_summary
功能: 获取统计摘要。
参数:
- period: 时间周期(如 month, year, all)
- group_by: 分组依据(如 recipient, event)
AI调用示例: 用户问"今年我送礼总共花了多少钱?",AI调用此工具并生成报告,如"2024年至今,您共支出礼金12,800元,主要集中在结婚和生子事项上。"
5.4 update_renqing_record
功能: 更新某条记录的详细信息(如修正金额、补充备注)。
参数: id (必需) 及其他需要更新的字段。
5.5 delete_renqing_record
功能: 删除一条记录。
参数: id (必需)。

TRAE 中的交互流程示例
我对 TRAE 对话说:请帮我 Python 开发一款婚礼宴席等大型活动的人情记账客户端小应用程序。

很快,初始的生成效果如下:

我们全部接受。可以看到生成代码如图所示。

但是这还远远不是我们想要的最终效果。
将 MCP(Model Context Protocol)与"人情账本"这个想法结合是一个非常前沿且实用的项目。它能让您通过自然语言与AI助手交互,无缝地记录和查询复杂的人情往来。
我们引入MCP。在如图所示位置点击添加。

手动引入mcp-server-chart这一强大图表功能的MCP服务。

提供的服务列表如下,表示该服务已经可用了。

我们继续让TRAE Builder with MCP完成高级功能开发。

示例 1:记录支出
用户输入:
"我刚参加了老同事张三的生日宴,送了800块钱红包。"
AI 内部处理:
1. 解析用户语句,识别意图为"创建一条人情支出记录"
2. 提取关键参数:
- type: 'expense'
- amount: 800
- recipient: '张三'
- event: '生日'
- relationship: '老同事'
3. 调用 MCP Server 的 create_renqing_record 工具,传入以上参数
4. 收到 MCP Server 返回的成功响应 { "status": "success", "record_id": 105 }
AI 组织语言回复用户:
"好的!已为您记录一笔人情支出:给老同事张三的生日红包800元。这条记录的ID是105。"
示例 2:查询记录
用户输入:
"查一下我和张三的所有礼尚往来。"
AI内部处理:
1. 识别意图为"查询记录"
2. 调用 MCP Server 的 query_renqing_records 工具,参数 recipient: '张三'
3. 收到 MCP Server 返回的 JSON 数据,包含所有与张三的记录
AI 分析数据并组织语言回复:
"您和张三的礼尚往来记录如下:
- 2023-12-01 - 张三结婚,您送礼 2000 元
- 2024-05-20 - 您生病,张三探病送礼 500 元水果
- 2024-10-26 - 张三生日,您送礼 800 元
目前收支情况:您净支出 2300 元。"
开发界面如下
根据记账数据展示分析图表如下:
从多个维度/多角度进行智能账目分析收支。

进阶功能与未来扩展
7.1 智能提醒
MCP Server 可内置一个后台任务,分析数据库,在特定时间(如每年春节前)通过 AI 向用户发送摘要和提醒:"您的好友李四预计今年将举办婚礼,根据您所在地区的习俗,建议预算为1000-2000元。"
7.2 关系图谱集成
将 recipient 和 relationship 字段规范化,甚至可以连接到一个独立的"关系网"数据库,实现更复杂的人际关系分析。
7.3 多用户支持
当前设计为单用户。未来可通过验证和隔离不同用户的数据来支持多用户。
7.4 数据导出与分析
提供 export_data 工具,将数据导出为 CSV 或 Excel,用于更深度的自定义分析。

总结
这款婚礼人情账本应用将帮助用户高效管理婚礼筹备过程中的各种人情往来和事务安排。通过结合 OCR 技术、数据库管理和友好的用户界面,它能够大大简化传统婚礼筹备的复杂性,MCP 正是实现它的绝佳技术。
-
MCP Server 作为大脑和引擎,处理所有脏活累活(数据操作、逻辑)
-
AI 作为智能交互界面,理解用户意图并与大脑沟通
-
SQLite 作为记忆库,可靠地存储所有数据
这套架构清晰、模块化,且极具扩展性。通过 MCP 与 TRAE 框架的结合,本项目为传统人情管理提供了智能化、可扩展的解决方案,未来可进一步探索多模态交互与区块链技术,打造更完善的人际关系管理生态。