Thesis
Thesis
Espacio de trabajo de investigación por ticker autoalojado para inversores minoristas. Captura contenido desde cualquier lugar mediante la hoja de compartir de la PWA. El espacio de trabajo expone un servidor MCP para que tu propio agente (Claude, ChatGPT, Codex CLI) haga la síntesis. MVP de un solo usuario: tus datos permanecen en tu cuenta de Cloudflare.
Ayuda de investigación, no asesoramiento. El agente escribe; tú decides.
Arquitectura
┌─────────────────────────────────────────────────────────────┐
│ Browser / Mobile │
│ ┌──────────────────────────────────────────────────────┐ │
│ │ PWA (Vite + React + Tailwind) │ │
│ │ - Web Share Target - Workspace tabs │ │
│ │ - Tiptap rich text - Component renderer │ │
│ └────────────────────┬─────────────────────────────────┘ │
└───────────────────────┼─────────────────────────────────────┘
│ /api/* /mcp
┌───────────────────────▼─────────────────────────────────────┐
│ Cloudflare Worker (Hono) │
│ ┌───────────────────────────────┐ ┌──────────────────┐ │
│ │ Workspace Durable Object │ │ WorkspaceAgent │ │
│ │ SQLite + embedding BLOB │ │ DO (Slice 4) │ │
│ │ 30 MCP tools │ │ nightly cron │ │
│ └───────────────────────────────┘ └──────────────────┘ │
│ ┌───────────────────────────────────────────────────────┐ │
│ │ Data providers │ │
│ │ Yahoo Stooq EDGAR Finnhub FRED │ │
│ └───────────────────────────────────────────────────────┘ │
│ ┌──────────────┐ ┌────────────┐ ┌──────────────────────┐ │
│ │ R2 (docs) │ │ KV cache │ │ CF AI Gateway │ │
│ └──────────────┘ └────────────┘ └──────────────────────┘ │
└─────────────────────────────────────────────────────────────┘
Future:
┌─────────────────────────┐
│ Auth app (Slice 5) │
│ better-auth + Postgres │
│ Docker → Fly.io │
└─────────────────────────┘Related MCP server: Signal8 MCP Server
Inicio rápido
git clone <repo> && cd invest
npm install
cp apps/worker/.dev.vars.example apps/worker/.dev.vars
# Edit apps/worker/.dev.vars — set THESIS_BEARER_TOKEN, optionally FINNHUB_API_KEY + FRED_API_KEY
# Terminal 1 — worker on :8787
npm run dev:worker
# Terminal 2 — PWA on :5173 (proxies /api and /mcp to :8787)
npm run dev:pwaAbre http://localhost:5173. Añade un token de portador en Configuración (usa el valor de .dev.vars).
Conecta un agente (BYOA)
GET /api/mcp-info devuelve el endpoint de MCP, la lista de herramientas y las instrucciones de autenticación. La página de Configuración muestra la misma información con URL listas para copiar.
HTTP transmisible (preferido):
POST /mcp,GET /mcpSSE heredado:
GET /mcp/sse,POST /mcp/messagesAutenticación:
Authorization: Bearer <token>o?token=<token>
Variables de entorno
Todos los secretos van en apps/worker/.dev.vars para el desarrollo local. Consulta apps/worker/.dev.vars.example.
Variable | Requerida | Notas |
| Sí | Secreto compartido para todas las solicitudes de API + MCP |
| Opcional | Gratis en finnhub.io: habilita fundamentos, ganancias y noticias |
| Opcional | Gratis en fred.stlouisfed.org: habilita mosaicos macro |
| Opcional | Puerta de captcha 2025: omítela para usar el respaldo de Yahoo |
| Slice 4 | Requerida para ejecuciones nocturnas del agente integrado |
| Slice 4 | Token de Cloudflare AI Gateway |
| Slice 4 | Tu ID de cuenta de CF |
| Opcional | Por defecto 200000 tokens/mes por espacio de trabajo |
Slices entregados
Registro completo de decisiones e historial de slices: docs/roadmap/GRILL-ME.md
Slice | Descripción | Estado |
W0–W5 | Fundación, autoría, síntesis, lentes, evidencia, datos | ✅ |
Slice 0 | Estabilización, documento de Stooq, reintento de EDGAR, theme-color | ✅ |
Slice 1 | Primitiva de composición: | ✅ |
Slice 1.5 | Mapa de slots completo + vocabulario de componentes extendido | 🔄 |
Slice 2 | Recuperación: embeddings (coseno BLOB), herramienta | ✅ |
Slice 3 | Temporal: | ✅ |
Slice 4 | Agente integrado: WorkspaceAgent DO, cron nocturno, AI Gateway | ✅ |
Slice 5 | Autenticación: better-auth, aplicación de autenticación dockerizada | Diseñando |
Slice 6 | Superficie de chat | Diseñando |
Slice 7 | Nivel Vectorize entre tickers | Diseñando |
Pruebas de humo
Las pruebas de humo categorizadas viven en smoke/.
# All Playwright specs (UI + E2E)
npm run smoke
# Individual shell scripts (worker API — no browser needed)
bash smoke/ingestion/capture.smoke.sh
bash smoke/claims/claims.smoke.sh
bash smoke/agent/agent.smoke.sh # needs ANTHROPIC_API_KEYDespliegue
Cloudflare Worker + PWA
# 1. Build PWA into apps/pwa/dist
npm run build:pwa
# 2. Set production secrets (one-time)
cd apps/worker
wrangler secret put THESIS_BEARER_TOKEN
wrangler secret put ANTHROPIC_API_KEY
wrangler secret put CF_AIG_TOKEN
wrangler secret put FINNHUB_API_KEY
wrangler secret put FRED_API_KEY
# 3. Deploy worker + PWA assets
wrangler deployEl Worker sirve la PWA desde el mismo origen. /share-target, /mcp y /api/* son todos de primera parte.
Guía de despliegue completa, incluido el destino Docker de la aplicación de autenticación, DNS y comprobaciones de humo posteriores al despliegue: docs/deployment.md.
Pila tecnológica
Capa | Tecnología |
Runtime de Worker | Cloudflare Workers + Durable Objects (SQLite) |
Framework de API | Hono |
MCP | JSON-RPC hecho a mano sobre HTTP + SSE (30 herramientas) |
PWA | Vite 5 + React 18 + Tailwind 3 |
Texto enriquecido | Tiptap |
Embeddings | Workers AI |
Agente | Objeto Durable simple ( |
Documentos | R2 + tabla de unión |
Tipos compartidos |
|
Contribuciones
Lee
docs/STATUS.md— estado actual + plan a futuroLee
docs/architecture/v2-embedded-agent.md— diseño v2Ejecuta
npm run typecheckantes de hacer pushAñade cobertura de pruebas de humo para nuevos endpoints en
smoke/
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseCqualityCmaintenanceEnables financial research and analysis through AI agents that combine web search, content crawling, entity extraction, and deep research workflows. Supports extracting stock/fund entities with security codes and conducting structured financial investigations.924Apache 2.0

Signal8 MCP Serverofficial
AlicenseAqualityDmaintenanceProvides AI agents with direct access to SEC filing intelligence, company fundamentals, dilution risk scoring, and cross-company analytics for financial research.871791MIT- FlicenseAqualityDmaintenanceProvides AI assistants with real-time stock prices, financial statements, SEC filings, and analytical tools like DCF valuation and ratio analysis.14

ROIC.ai Financial Data MCPofficial
AlicenseAqualityBmaintenanceEnables AI assistants to access stock prices, financial statements, earnings call transcripts, and fundamental data for 60,000+ public companies via 25 read-only tools.252MIT
Related MCP Connectors
Real SEC, 13F, insider, congress & macro data your AI agent can cite. Hosted MCP, 24 tools.
Private company data & real-time news signals for AI agents.
The financial MCP for AI agents - 90+ financial tables, SEC filings, signals, alt-data.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Bilaltariq98/invest'
If you have feedback or need assistance with the MCP directory API, please join our Discord server