InvestBrain
Servidor MCP de investigación de inversiones impulsado por IA con GraphRAG, detección de patrones de comportamiento, análisis de diario de trading e integración de datos de mercado.
Documentación
InvestBrain — Segundo Cerebro de Inversión
Herramienta de disciplina autónoma para inversores experimentados, que resuelve el problema de "unificar conocimiento y acción" No es un asesor de inversiones, no da consejos, sino un "espejo" + "ancla de disciplina"
Registro de ideas × RAG de inversión × Sistema de memoria × Disparadores de recordatorios × Minería de patrones de comportamiento
Experiencia rápida en 5 minutos
Dos formas de uso: Cliente de escritorio (recomendado) o Servidor MCP.
Opción A: Cliente de escritorio (Windows, recomendado)
- Descarga e instala
InvestBrain_0.1.2_x64_en-US.msi(ver Releases) - Abre la aplicación de escritorio y verás la barra de estado "Cerebro cargado" y la guía de conversación de prueba
- Para conversar, introduce tu propia clave de LLM en la página de configuración y podrás usar el flujo de conversación real
Los datos del cliente de escritorio se almacenan en
%APPDATA%\InvestBrain\data; la página de configuración muestra la ubicación de los datos directamente.
Opción B: Servidor MCP (cualquier cliente MCP)
# 1. 安装 MCP Server 依赖
cd src/mcp_server && pip install -r requirements.txt
# 2. 配置你自己的 LLM API Key(见下文「你的 Key,自己填」)
cp .env.example .env
# 编辑 .env,把 DEEPSEEK_API_KEY 填成你从 DEEPSEEK 后台拿到的 key
# 3. 启动 MCP Server
python server.py
Nota del primer inicio: La base vectorial (Chroma + ONNX Embedding) descargará aproximadamente 80 MB de archivos de modelo la primera vez. Si deseas omitir la base vectorial y probar solo las herramientas, mantén los comentarios relevantes en
server.pysin cambios; si deseas la experiencia RAG completa, descomenta las líneas dentro deserver.pydespués de la descarga.
Una vez iniciado, el servidor acepta llamadas de clientes MCP a través de stdio. Para configurar Claude Desktop, consulta Integración con Claude Desktop a continuación.
Tu clave, la completas tú
Importante: Este repositorio no incluye ninguna clave de API de usuario. En data/config/llm.json, api_key es null por defecto (no es un marcador de clave real); .env.example es solo una plantilla; webhook.json es un esquema vacío.
Debes solicitarlas / rotarlas tú mismo desde los siguientes paneles oficiales:
| Servicio | Uso | Dirección del panel |
|---|---|---|
| DeepSeek API | LLM principal (requerido) | https://platform.deepseek.com → API Keys |
| Tushare Pro | Datos financieros/históricos de acciones A (opcional) | https://tushare.pro/register |
| DashScope | LLM alternativo de Alibaba Tongyi (opcional) | https://dashscope.console.aliyun.com |
| Against Finance | Datos alternativos (opcional) | https://www.against.com |
| Robot de Feishu | Notificaciones (opcional) | https://open.feishu.cn → Robots → Webhook |
Dónde se escriben las 4 claves (ninguna entra en git)
- Requerido para iniciar MCP: variable de entorno
DEEPSEEK_API_KEY(se recomienda variable de entorno de sistema a nivel de usuario, o CLAUDE.md /.env) - Opcional:
TUSHARE_TOKEN/DASHSCOPE_API_KEY/AGAINST_API_KEY(variables de entorno) - Webhook de Feishu: campo
feishuendata/config/webhook.json(protegido por.gitignore)
Reglas de seguridad
- Tu clave es tuya — no la compartas, no la hagas commit, no la envíes en ninguna conversación
- Si una clave entra en el historial de git (por ejemplo, versiones antiguas con commit), incluso después de rotarla podría seguir siendo mal utilizada → si detectas una fuga, rota la clave inmediatamente en la plataforma correspondiente
- El repositorio ya tiene
.gitignoreprotegiendodata/config/*.json(incluye configuración de llm/webhook) +data/memory/*.db(memoria del usuario, según la decisión de CLAUDE.md "los datos del usuario se almacenan localmente, no se suben a la nube"), no elimines la exclusión con!
Nota: En el historial del repositorio se hizo commit de marcadores de clave (commit
22e6c72). Si ya se hizo push al remoto, las claves antiguas aún se pueden leer en el historial del clon — limpiar el historial es costoso; normalmente se acepta + se rota
Inicio rápido: Configuración de notificaciones
Desde cero hasta recibir tu primera notificación de WeChat, aproximadamente 3 minutos. No necesitas leer ningún documento.
Opción 1: Script de un solo clic (recomendado, Windows)
Abre PowerShell en la raíz del repositorio y ejecuta:
powershell -ExecutionPolicy Bypass -File scripts/configure_pushplus.ps1
El script te guiará interactivamente por todos los pasos: muestra los pasos para obtener el token de PushPlus → pega el token (validación automática de formato) → escribe en data/config/webhook.json y habilita el canal pushplus → llama automáticamente a send_notification para enviar un mensaje de prueba → imprime el motivo de éxito/fallo.
Opción 2: Configuración dentro de la conversación (dentro del cliente MCP)
Directamente en cualquier cliente MCP, pide a la IA que te ayude a configurar:
1. 查看当前配置状态:notify_get_notifier_config()
2. 配置 PushPlus 并发送测试:notify_configure_notifier(channel="pushplus", token="你的token", enabled=true, send_test=true)
Pasos para obtener el token de PushPlus
- Escanea el código QR con WeChat y sigue la cuenta pública: https://www.pushplus.plus
- Entra en "Centro personal" → copia el token de la página
- Completa cualquiera de las opciones anteriores
Verificación exitosa: Recibirás un mensaje de prueba, o notify_get_notifier_config() devolverá "enabled_channels": ["pushplus"]. Si no hay canales configurados, la ruta de activación de recordatorios (price_checker / scheduler) incluirá información de guía setup_guide en la respuesta, sin fallar silenciosamente.
Nota de seguridad:
data/config/webhook.jsonestá protegido por.gitignore; el token no entrará en git; no envíes el token en ninguna conversación ni lo subas al repositorio.
Qué problema resuelve
Problema central: Los inversores se dejan llevar por las narrativas, operan sin disciplina y se arrepienten después.
| Problema común | Respuesta de InvestBrain |
|---|---|
| Ver una acción subir mucho y comprar persiguiendo el alza | Registro obligatorio del motivo de compra + asociación con decisiones históricas similares |
| Vender por pánico cuando baja | Disparo de búsqueda RAG sobre la visión de los maestros sobre el "pánico" |
| Cometer repetidamente el mismo tipo de error | La minería de patrones de comportamiento identifica automáticamente el patrón de "comprar alto, vender bajo" |
| Olvidar puntos importantes de tiempo/precio | Monitoreo de precio/tiempo/condiciones + notificaciones de Feishu |
| No recordar tus propios juicios pasados | Sistema de memoria + tarjetas de decisión para revisión |
Capacidades principales
| Función | Descripción |
|---|---|
| Registro de ideas | El usuario dice una frase, la IA analiza + asocia con el historial + genera una tarjeta |
| RAG de inversión | Búsqueda y respuesta sobre el pensamiento de los maestros (16 maestros de inversión × 5 conceptos centrales) |
| Sistema de memoria | Perfil de usuario, decisiones históricas, minería de patrones de comportamiento |
| Disparadores de recordatorios | Monitoreo de precio/tiempo/condiciones, con soporte para notificaciones multicanal (Feishu/DingTalk/Bark) |
| Minería de patrones de comportamiento | Descubrimiento automático de patrones de sesgo del inversor |
Conversaciones de ejemplo
A continuación se muestran flujos de conversación reales de tres escenarios de valor central (utilizables en cualquier cliente MCP):
Escenario 1: Preguntas RAG — Colisión con el pensamiento de los maestros
Usuario: ¿Cómo ve Duan Yongping el "dinero rápido" y el "dinero lento"?
Llamada:
rag_ask_investment(question="段永平怎么看快钱和慢钱")Respuesta de la IA: El punto central de Duan Yongping es que el "dinero rápido" parece tener más oportunidades pero mayor exposición al riesgo; el "dinero lento" depende del interés compuesto y la certeza. En el corpus de «Duan Yongping» hay 12 pasajes relevantes, extracto:
"La velocidad de ganar dinero con inversiones no debería superar la velocidad de aprender." "Lo que te atreves a posicionar en grande es el negocio que realmente entiendes; el resto no son oportunidades." Conceptos relacionados: círculo de competencia, margen de seguridad, interés compuesto.
Escenario 2: Análisis de patrones de comportamiento — Encontrar errores recurrentes
Usuario: ¿Qué problemas tiene mi operativa reciente?
Llamada:
memory_get_behavior_patterns()Respuesta de la IA: Detecté dos patrones de comportamiento en tu operativa (últimos 30 días, 11 operaciones):
Patrón de compra persiguiendo el alza (confianza 0.83) Muestras activadas: compra de NVDA/TSLA en D+1/D+2 después de subidas diarias > 5%, tasa de acierto 25%, retorno promedio -3.2% Sugerencia: revisa obligatoriamente
rag_ask_investment(question="追高的代价")antes de comprarPatrón de venta por pánico (confianza 0.71) Muestras activadas: venta dentro de 5 días después de pérdidas > 15% en la posición, con rebote posterior del 67% en 30 días Sugerencia: notificación automática por Feishu + cita textual del maestro al activarse
Escenario 3: Recordatorios inteligentes — Ancla de disciplina
Usuario: Avísame cuando NVDA llegue a 950 dólares para reevaluar.
Llamada:
reminder_set_reminder(condition={ticker:"NVDA", operator:"<=", threshold:950, action:"review"})Respuesta de la IA: Recordatorio creado: cuando NVDA <= 950 USD, se activa "revisión y reevaluación". Al activarse, se obtendrán automáticamente: precio actual, tus tarjetas de decisión históricas sobre este valor y citas relevantes de los maestros. El recordatorio se ha sincronizado con el canal de notificaciones (si está configurado).
Integración con Claude Desktop
Conecta InvestBrain a Claude Desktop (compatible con macOS / Windows):
Ubicación del archivo de configuración:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
Contenido de la configuración (ajusta la ruta según tu ubicación real del clon):
{
"mcpServers": {
"investbrain": {
"command": "python",
"args": [
"D:/claudework/invest-brain/src/mcp_server/server.py"
],
"env": {
"DEEPSEEK_API_KEY": "sk-your-key-here"
}
}
}
}
Después de configurar, reinicia Claude Desktop; aparecerá el icono "Asistente de inversión" en la barra de herramientas (39 herramientas, coincidiendo con la lista registrada en
server.json).
Licencia de código abierto y hoja de ruta
Este proyecto está licenciado bajo GNU Affero General Public License v3.0 (AGPLv3). En resumen: puedes usar, modificar y distribuir libremente, pero las obras derivadas que ofrezcan servicios a través de la red también deben ser de código abierto bajo la misma licencia. Ver LICENSE.
| Nivel | Funcionalidad | Estado |
|---|---|---|
| Nivel gratuito | Servidor MCP local | ✅ Disponible |
| RAG de preguntas sobre 16 maestros | ✅ Disponible | |
| Detección de patrones de comportamiento | ✅ Disponible | |
| Sistema de recordatorios | ✅ Disponible | |
| Almacenamiento de memoria ilimitado | ✅ Disponible | |
| Versión personal | Informes semanales/mensuales en la nube (generados por IA) | Planificado (¥39/mes) |
| Sincronización de datos entre dispositivos | Planificado | |
| Versión de equipo | Colaboración en equipo y base de conocimiento compartida | Planificado (¥199/mes) |
Arquitectura
src/mcp_server/ # MCP Server(39 个工具)
├── server.py # 主入口
├── tools/ # 工具集
│ ├── thought_tools.py # 想法记录
│ ├── rag_tools.py # 投资 RAG
│ ├── memory_tools.py # 记忆系统
│ ├── reminder_tools.py # 提醒系统
│ ├── pattern_tools.py # 行为模式
│ ├── report_tools.py # 周报/月报
│ ├── roundtable_tools.py # 大师圆桌
│ └── notifier_tools.py # 多通道通知
├── datasources/ # 数据源
│ ├── akshare_datasource.py
│ └── tushare_datasource.py
├── knowledge/ # 知识库
│ ├── vector_store.py # Chroma 向量存储
│ └── graph_client.py # 图存储
├── memory/ # 记忆存储
├── patterns/ # 行为模式挖掘
├── llm/ # LLM 客户端
│ ├── llm_router.py # 通用 LLM 路由
│ ├── providers.py # Provider 配置
│ └── deepseek_client.py
└── api_server.py # REST API (LLM 配置)
data/
├── graph/ # 知识图谱(16 位大师 + 概念)
├── knowledge/
│ └── vectors/ # 向量索引(Chroma)
├── memory/ # 用户记忆
├── cards/ # 想法卡片
├── reminders/ # 提醒条件
└── config/ # 配置文件
Herramientas MCP (40)
// 想法记录(3)
"thought_record_thought(text)",
"thought_search_memories(query)",
"thought_get_thought_cards(ticker)",
// 投资 RAG(4)
"rag_ask_investment(question)",
"rag_get_master_view(master, topic)",
"rag_search_knowledge(query)",
"rag_search_reports(query, top_k)",
// 记忆系统(3)
"memory_get_user_profile()",
"memory_record_decision(data)",
"memory_get_behavior_patterns()",
// 提醒系统(3)
"reminder_set_reminder(condition)",
"reminder_get_reminders()",
"reminder_delete_reminder(id)",
// 行为模式(3)
"pattern_run_pattern_detection()",
"pattern_get_pattern_summary()",
"pattern_get_pattern_report(id)",
// 周报/月报(1)
"report_run_scheduled_report(range)",
// 大师圆桌(1)
"invest_roundtable(question)",
// 通知配置(2)
"notify_configure_notifier(channel, webhook_url)",
"notify_get_notifier_config()",
// 行情数据 — AKShare(5)
"market_get_stock_quote(ticker)",
"market_get_stock_history(ticker, period)",
"market_get_index_components(index_code)",
"market_get_valuation(ticker)",
"market_get_market_sentiment()",
// 行情数据 — Tushare(15)
"tushare_get_daily_price(ts_code)",
"tushare_get_weekly_price(ts_code)",
"tushare_get_realtime_quote(ts_code)",
"tushare_get_index_daily(index_code)",
"tushare_get_financial_indicator(ts_code)",
"tushare_get_income_statement(ts_code)",
"tushare_get_balance_sheet(ts_code)",
"tushare_get_cash_flow(ts_code)",
"tushare_get_index_components(index_code)",
"tushare_get_industry_classification(ts_code)",
"tushare_get_valuation_multi(ts_code)",
"tushare_get_market_top_movers()",
"tushare_get_stock_pledge_status(ts_code)",
"tushare_convert_ticker(ticker)",
"tushare_check_token_status()"
La lista completa de herramientas está en src/mcp_server/tools/.
Base de conocimiento
16 maestros de inversión: Buffett, Munger, Duan Yongping, Howard Marks, Li Lu, Graham, Damodaran, Ackman, Cathie Wood, Michael Burry, Pabrai, Taleb, Lynch, Fisher, Druckenmiller
5 conceptos centrales: Foso económico, margen de seguridad, círculo de competencia, pensamiento de segundo nivel, riesgo asimétrico
Conocimiento sectorial: 28 marcos de investigación profunda de sectores Shenwan (recuperables en la base vectorial, sin publicar el texto original, protegiendo la propiedad intelectual de la metodología central)
Fuentes de datos
| Fuente de datos | Uso | Estado |
|---|---|---|
| AKShare | Cotizaciones en tiempo real | ✅ |
| Tushare | Datos financieros/históricos | ✅ |
| Chroma | Índice vectorial | ✅ |
| SQLite | Memoria local | ✅ |
Desarrollo
# 启动 REST API Server(用于 LLM 配置)
python src/mcp_server/api_server.py
# 访问 http://localhost:8000/api/llm/config
# 启动前端(Next.js 落地页 + 设置面板)
npm install
npm run dev
# 访问 http://localhost:3000
Pruebas:
pytest tests/
Proyectos relacionados
| Proyecto | Uso |
|---|---|
| invest-buddy-pet | Producto de acompañamiento para principiantes (test de personalidad) |
| mangoview | Sitio de sistemas avanzados (análisis profesional) |
🛠️ Cadena de herramientas recomendada
Las siguientes recomendaciones se generan a partir del mapa de escenarios→herramientas de SKILL.md en awesome-finai-tools-zn, seleccionando la mejor herramienta para cada tipo de escenario. La lista completa de herramientas está en la página principal del repositorio.
| Herramienta recomendada | Funcionalidad | Método de instalación |
|---|---|---|
| ashare-mcp | Servidor MCP de acciones A de nivel producción, 30 herramientas (cotizaciones en tiempo real/K-lines/piscina de límite diario/lista de dragones y tigres/estados financieros/flujo de fondos sectorial) | git clone https://github.com/CharmYue/ashare-mcp && cd ashare-mcp && uv sync |
| opencli-eastmoney-quote | CLI sin configuración, cotizaciones en tiempo real de acciones A/HK/US al instante | npm install -g @jackwener/opencli |
| opencli-xueqiu-search | Búsqueda de acciones en Xueqiu + análisis de sentimiento de publicaciones populares, compatible con chino/código | npm install -g @jackwener/opencli |
| Qlib | Framework de cuantificación de IA de Microsoft, minería automática de factores + entrenamiento de modelos + evaluación con backtesting | pip install pyqlib |
| MCP de Yingmi Funds | 69 herramientas MCP estandarizadas + 16 componentes de habilidades, incluye backtesting de carteras/simulación de Monte Carlo | Contacta con la plataforma abierta de IA de Yingmi para obtener la clave API |
La lógica de recomendación se basa en awesome-finai-tools-zn/data/institution-skills.json y se actualiza automáticamente cada semana.
🔗 Integración de la cadena de herramientas
Este repositorio forma parte del ecosistema de herramientas FinAI y colabora con otros repositorios:
| Repositorio | Posición | Relación con este repositorio |
|---|---|---|
| awesome-finai-tools-zn | Base de datos | Proporciona la lista de herramientas + datos de habilidades institucionales |
| invest-brain | Motor de recomendación de herramientas | Recomienda herramientas automáticamente según el escenario |
| investment-buddy-pet | Asesor de inversión personalizado | Empareja cajas de herramientas según la personalidad inversora |
| SoloAdvisor-Toolkit | Kit de herramientas para procesos de asesoría | KYC→Configuración→Cartera→Informe |
| knowledge-workflow | Gestión del conocimiento | Recopilar→Etiquetar→Almacenar→Producir |
🗺️ Hoja de ruta
Documento detallado de requisitos de transformación: docs/改造需求-roadmap.md
Transformación central P0 (visión de base de conocimiento personal):
- 🔴 Base de conocimiento RAG personalizada por el usuario (para que el propio marco del usuario pueda ser referenciado por RAG)
- 🔴 Recordatorios activados por noticias/eventos (compras de oro por bancos centrales, conflictos geopolíticos, congelación de bonos del Tesoro de EE. UU., etc.)
- 🔴 Herramienta de gestión de marcos de inversión (registro estructurado de las reglas y condiciones de activación del marco del usuario)
Fuentes de datos P1:
- 🟡 Datos en tiempo real de oro al contado / índice del dólar / rendimiento de bonos del Tesoro de EE. UU.
- 🟡 Corrección de datos de ETF de oro (518880 / GLD)
Optimización de experiencia P2:
- 🟢 Bug de extracción NLU en tarjetas de pensamiento (reconocimiento erróneo de números/nombres en inglés)
Avances recientes (2026-07-29):
- ✅ El marco central de inversión en oro se ha escrito en la tarjeta de pensamiento (
thought_8) - ✅ La simulación de oro basada en datos reales se ha escrito en la tarjeta de pensamiento (
thought_9) - ✅ El documento de requisitos de transformación se ha creado (
docs/改造需求-roadmap.md)
Versión: v0.1.2 Fecha de creación: 2026-06-24 Licencia: AGPL v3