______________________________________________________________________
标题:PortfolioMind 表情符号📊 颜色来源:灰色 颜色To:紫色 sdk:docker 固定:false 许可证:apache-2.0 short_description:“多代理MCP-个人理财助理” 标签:
- mcp在行动中追踪消费者
- mcp在行动轨道创意
- 构建mcp跟踪消费者
______________________________________________________________________
领英帖子:https://www.linkedin.com/feed/update/urn:li:activity:7400596637552627712/ 演示视频:https://www.youtube.com/watch?v=qaTjA1Q7NHE
🤖 PortfolioMind-多代理财务助理
PortfolioMind是一个智能多代理金融助手,它利用模型上下文协议(MCP)通过专门的人工智能代理提供全面的金融服务。 它采用LangGraph、Google Gemini和MCP服务器构建,在一个统一的平台上提供实时市场数据、投资组合管理、文档问答和网络搜索功能。
无论您是跟踪加密货币趋势、分析股票表现,还是从财务文件中寻求见解,PortfolioMind都会通过其精心策划的专业代理网络提供准确、可操作的情报。 通过一个旨在处理复杂查询、综合多源数据并为您提供做出明智投资决策所需的清晰度的系统,体验财务分析的未来。
🎯 概述
PortfolioMind使用ReAct(推理+代理)监督模式协调多个专门的AI代理。 每个代理都通过MCP服务器配备了特定于域的工具,使他们能够以高精度和上下文感知执行复杂的财务任务。
🏗️ 建筑
系统架构
┌─────────────────────────────────────────────────────────────┐
│ Gradio UI Interface │
│ (Chat Interface + Document Upload + Voice Agent) │
└───────────────────────┬─────────────────────────────────────┘
│
┌───────────────────────▼─────────────────────────────────────┐
│ ReAct Supervisor (LangGraph) │
│ • Analyzes queries using reasoning loops │
│ • Routes to appropriate agents │
│ • Synthesizes comprehensive answers │
└──────┬───────────┬───────────┬───────────┬──────────────┬───┘
│ │ │ │ │
┌──────▼────┐ ┌─────▼─────┐ ┌──▼──────┐ ┌─▼─────────┐ ┌─▼────────┐
│ Crypto │ │ Stock │ │ Finance │ │ RAG │ │ Search │
│ Agent │ │ Agent │ │ Tracker │ │ Agent │ │ Agent │
└─────┬─────┘ └─────┬─────┘ └────┬────┘ └─────┬─────┘ └─────┬────┘
│ │ │ │ │
┌─────▼─────────────▼─────────────▼────────────▼──────────────▼──────┐
│ MCP Servers │
│ • CoinGecko MCP (Crypto data) │
│ • Alpha Vantage MCP (Stock data) │
│ • MCP Toolbox (Database operations) │
│ • ChromaDB (Vector database) │
│ • DuckDuckGo MCP (Web search) │
└─────────────────────────────────────────────────────────────────────┘重新激活模式工作流
- 思考:主管分析查询并确定需要哪些信息
- 法案:呼叫适当的专门代理人收集信息
- 观察:审查代理人的回复,并评估是否需要更多信息
- 重复:继续推理循环,直到收集到足够的信息
- 合成:从所有收集到的信息中生成全面的最终答案
🤖 专业代理
🎤 ReAct主管-语音代理
PortfolioMind通过ElevenLabs集成支持语音交互。同一ReAct主管通过语音协调代理,提供:
- 自然语音对话
- 实时代理编排
- 全面财政援助
🪙 加密代理
- 目的:实时加密货币市场数据和分析
- MCP服务器:CoinGecko MCP服务器
- 能力:
- 当前加密货币价格和市场数据 - 历史价格趋势 - 市值和交易量信息 - 加密货币比较
- LLM:谷歌双子座2.5 Flash
📈 股票代理
- 目的:股市数据、公司信息和财务分析
- MCP服务器:Alpha Vantage MCP服务器
- 能力:
- 实时和历史股价 - 公司概况和基本情况 - 损益表和资产负债表 - 技术指标(RSI、MACD、SMA、EMA) - 新闻情绪分析 - 最大赢家/输家
- LLM:谷歌双子座2.5 Flash
💼 财务跟踪代理
- 目的:个人投资组合管理和跟踪
- MCP服务器:MCP工具箱(用于云SQL的HTTP服务器)
- 能力:
- 添加/删除股票交易(买入/卖出) - 查看当前投资组合持有量 - 计算成本基础和已实现收益 - 投资组合绩效分析 - 交易记录 - 投资组合分配可视化
- 数据库:谷歌云SQL(PostgreSQL)
- LLM:具有结构化输出的Google Gemini 2.5 Flash
📚 RAG代理
- 目的:文档存储、检索和问答
- 向量数据库:ChromaDB云
- 嵌入:谷歌生成人工智能(embedding-001)
- 能力:
- 上传和处理文档(PDF、TXT、DOCX) - 跨文档的语义搜索 - 情境感知问答 - 重叠文档分块
- LLM:谷歌双子座2.5 Flash
🔍 搜索代理
- 目的:网络搜索当前信息和新闻
- MCP服务器:DuckDuckGo MCP服务器
- 能力:
- 实时网络搜索 - 时事与新闻 - 一般知识查询 - 来源引用
- LLM:谷歌双子座2.5 Flash
🛠️ 技术栈
核心框架
- LangGraph:代理编排和工作流管理
- LangChain:LLM集成和工具管理
- 格拉迪奥:Web UI框架
LLM&AI
- 谷歌双子座2.5 Flash:所有代理的主要语言模型
- 谷歌生成的人工智能嵌入:用于文档矢量化
MCP集成
- langchain mcp适配器:LangChain和MCP服务器之间的桥梁
- 主控程序:MCP官方Python SDK
数据存储
- ChromaDB云:RAG矢量数据库
- 谷歌云SQL(PostgreSQL):投资组合交易数据库
文档处理
- PyPDF2:PDF文本提取
- python docx:DOCX文本提取
其他库
- 媒染剂:数据验证和结构化输出
- python dotenv:环境配置
- 工具箱langchain:MCP工具箱集成
🏛️ 项目结构
PortfolioMind/
├── src/
│ ├── agents/
│ │ ├── crypto_agent_mcp.py # Crypto market data agent
│ │ ├── stock_agent_mcp.py # Stock market data agent
│ │ ├── finance_tracker_agent_mcp.py # Portfolio management
│ │ ├── rag_agent_mcp.py # Document Q&A agent
│ │ └── search_agent_mcp.py # Web search agent
│ ├── core/
│ │ ├── config.py # Configuration management
│ │ ├── langgraph_supervisor.py # ReAct supervisor
│ │ └── mcp_client.py # MCP client utilities
│ └── utils/
│ └── file_processors.py # Document processing
├── ui/
│ └── gradio_app.py # Gradio UI application
├── docker/
│ └── Dockerfile # Docker configuration
├── database_schema.sql # PostgreSQL schema
├── requirements.txt # Python dependencies
└── README.md # This file🗄️ 数据库模式
Finance Tracker使用PostgreSQL,其模式如下:
表格
- 股票交易:存储所有买入/卖出交易
- 交易详情(符号、类型、数量、价格、日期) - 注释和元数据
- 投资组合_职位:当前职位汇总
- 通过触发器从交易中计算 - 成本基础、已实现收益、总投资
- 投资组合_快照:历史投资组合价值跟踪
- 用于性能分析的时间序列数据
- 库存_数据:缓存的股票信息
- 公司名称、行业、行业、市值 - 减少API调用
特性
- 自动位置计算:当交易发生变化时,触发器会自动更新头寸
- 已实现收益跟踪:计算销售损益
- 性能快照:投资组合价值的历史跟踪
📝 许可证
Apache 2.0
🤝 贡献
欢迎投稿!请随时提交拉取请求。
______________________________________________________________________
内置于❤️ 使用Gradio、GoogleGemini、MCP和LangGraph
