项目简介

Finance Copilot MCP 是一个使用 Spring AI MCP Server Boot Starter 构建的 MCP 服务器,专注于个人财务数据分析。它通过 AI 将自然语言查询转换为 SQL,执行数据库操作,并提供财务洞察。

主要功能点

  • 自然语言查询处理: 将用户提出的自然语言财务问题(如“本月总开销”)转换为可执行的 SQL 查询。
  • SQL 查询生成与执行: 根据自然语言问题生成兼容 PostgreSQL 的 SQL 查询,并在数据库上执行,检索相关财务数据。
  • 数据访问辅助: 提供数据库表结构和可用类别的列表,帮助 AI 更准确地理解数据模型和用户意图。
  • 查询验证: 在执行前验证生成的 SQL 查询是否有效、格式正确且符合系统规则。
  • 财务数据分析: 对查询结果进行处理,提供结构化的财务分析数据和洞察。

安装步骤

  1. 环境准备: 确保您的系统已安装 Java 21 或更高版本
  2. 数据库设置: 部署一个 PostgreSQL 数据库。根据项目 README 中描述的 'Database Schema' 创建相应的表格结构(如果在 'application.properties' 中设置 'spring.profiles.active=local',则会自动创建)。
  3. 配置:
    • 编辑项目的 'application.properties' 文件(或使用环境变量)。
    • 配置数据库连接信息('spring.datasource.url', 'spring.datasource.username', 'spring.datasource.password')。
    • 配置您的 OpenAI API 密钥('spring.ai.openai.api-key')。您也可以通过设置环境变量 'OPENAI_API_KEY' 提供此密钥。
    • 确保 MCP 服务器已启用:'spring.ai.mcp.server.enabled=true'。
    • 根据需要配置传输协议(本例默认使用 STDIO):'spring.ai.mcp.server.stdio=true'。
  4. 构建项目: 使用 Maven 或 Gradle 构建项目,生成可执行的 JAR 文件(例如:'finance-copilot-mcp-0.0.1-SNAPSHOT.jar')。

服务器配置

本 MCP 服务器设计为由兼容的 MCP 客户端(如 Claude Desktop)通过进程间通信启动。客户端需要知道如何启动服务器进程。典型的客户端配置包含服务器名称、启动命令及参数。以下是用于客户端配置的 JSON 示例结构(请根据您的实际环境填写路径和 API 密钥):

{
    "mcpServers": {
        "finance-copilot-mcp": { // 这是一个唯一的服务器名称,客户端用它来引用服务器
            "command": "java", // 启动服务器进程的命令
            "args": [ // 传递给启动命令的参数列表
                "-Dspring.ai.mcp.server.stdio=true", // 告诉 Spring Boot 使用 STDIO 作为 MCP 传输方式
                "-Dspring.main.web-application-type=none", // 防止 Spring Boot 启动 Web 服务器,只作为后台服务
                "-Dlogging.pattern.console=", // 清理控制台日志输出,避免干扰 MCP 通信
                "-Dlogging.file.name=<您希望日志文件存放的路径>/finance-copilot-mcp.log", // 可选:指定服务器日志文件的路径
                "-jar",
                "/您的项目绝对路径/target/finance-copilot-mcp-0.0.1-SNAPSHOT.jar" // 指向您构建生成的 JAR 文件的绝对路径
            ],
            "env": { // 设置服务器进程所需的环境变量
                "OPENAI_API_KEY": "<您的 OpenAI API 密钥>" // 提供 OpenAI API 密钥,供服务器内部使用
            }
        }
    }
}

请将示例中的占位符('<您希望日志文件存放的路径>/finance-copilot-mcp.log>' 和 '/您的项目绝对路径/target/finance-copilot-mcp-0.0.1-SNAPSHOT.jar>')替换为您的实际路径,并将 '<您的 OpenAI API 密钥>' 替换为您的 OpenAI API 密钥。

基本使用方法

  1. 按照上述步骤配置并构建 Finance Copilot MCP 服务器。
  2. 在您的 MCP 客户端(如 Claude Desktop)中,添加上述服务器配置
  3. 启动 MCP 客户端。客户端将根据配置自动启动 Finance Copilot MCP 服务器。
  4. 在客户端界面,您可以向 AI 提问与个人财务相关的问题(例如:“看看我上个月在吃饭上的开销是多少?” 或 “列出我本周所有的收入交易”)。
  5. 客户端会将您的请求通过 MCP 协议发送到 Finance Copilot MCP 服务器。
  6. 服务器将利用其内部工具、OpenAI 模型和数据库执行分析,并将结果返回给客户端。
  7. 客户端会向您展示分析结果。

信息

分类

AI与计算