Thesis
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ThesisSynthesize the latest financial research for NVDA."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Thesis
Self-hosted per-ticker research workspace for retail investors. Capture content from anywhere via the PWA share sheet. The workspace exposes an MCP server so your own agent (Claude, ChatGPT, Codex CLI) does the synthesis. Single-user MVP — your data stays in your Cloudflare account.
Research aid, not advice. The agent writes; you decide.
Architecture
┌─────────────────────────────────────────────────────────────┐
│ 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
Quick start
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:pwaOpen http://localhost:5173. Add a bearer token in Settings (use the value from .dev.vars).
Connect an agent (BYOA)
GET /api/mcp-info returns the MCP endpoint, tool list, and auth instructions. The Settings page renders the same info with copy-ready URLs.
Streamable HTTP (preferred):
POST /mcp,GET /mcpLegacy SSE:
GET /mcp/sse,POST /mcp/messagesAuth:
Authorization: Bearer <token>or?token=<token>
Env vars
All secrets go in apps/worker/.dev.vars for local dev. See apps/worker/.dev.vars.example.
Var | Required | Notes |
| Yes | Shared secret for all API + MCP requests |
| Optional | Free at finnhub.io — enables fundamentals, earnings, news |
| Optional | Free at fred.stlouisfed.org — enables macro tiles |
| Optional | 2025 captcha gate — skip to use Yahoo fallback |
| Slice 4 | Required for embedded agent nightly runs |
| Slice 4 | Cloudflare AI Gateway token |
| Slice 4 | Your CF account ID |
| Optional | Default 200000 tokens/month per workspace |
Slices shipped
Full decision log and slice history: docs/roadmap/GRILL-ME.md
Slice | Description | Status |
W0–W5 | Foundation, authorship, synthesis, lenses, evidence, data | ✅ |
Slice 0 | Stabilisation, Stooq doc, EDGAR retry, theme-color | ✅ |
Slice 1 | Composition primitive — | ✅ |
Slice 1.5 | Full slot map + extended component vocab | 🔄 |
Slice 2 | Retrieval — embeddings (BLOB cosine), | ✅ |
Slice 3 | Temporal — | ✅ |
Slice 4 | Embedded agent — WorkspaceAgent DO, nightly cron, AI Gateway | ✅ |
Slice 5 | Auth — better-auth, Dockerised auth app | Designing |
Slice 6 | Chat surface | Designing |
Slice 7 | Cross-ticker Vectorize tier | Designing |
Smoke tests
Categorised smoke tests live in 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_KEYDeploy
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 deployThe Worker serves the PWA from the same origin. /share-target, /mcp, and /api/* are all first-party.
Full deployment guide including auth-app Docker target, DNS, and post-deploy smoke checks: docs/deployment.md.
Tech stack
Layer | Tech |
Worker runtime | Cloudflare Workers + Durable Objects (SQLite) |
API framework | Hono |
MCP | Hand-rolled JSON-RPC over HTTP + SSE (30 tools) |
PWA | Vite 5 + React 18 + Tailwind 3 |
Rich text | Tiptap |
Embeddings | Workers AI |
Agent | Plain Durable Object ( |
Documents | R2 + |
Shared types |
|
Contributing
Read
docs/STATUS.md— current state + forward planRead
docs/architecture/v2-embedded-agent.md— v2 designRun
npm run typecheckbefore pushingAdd smoke coverage for new endpoints in
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