StartupStarter S2 markBlog

    The latest

    Product updates, new features, and improvements to StartupStarter.

    Knowledge MCP module — agents can now write your notes

    The /knowledge surface is live on the Agent API. Connected agents (Claude, Claude Desktop, or any MCP client) can now create folders, draft notes in Markdown, and append content to existing pages. The server runs every Markdown input through a TipTap-compatible converter that supports the full custom-block set — callouts, columns, toggles, highlights, page mentions, and page breaks — so pages an agent writes look identical to ones you'd build by hand.

    • 14 new MCP tools across knowledge folders and notes
    • Markdown-to-TipTap converter with full custom-block support
    • Append-by-default update semantics; replace_all opt-in for overwrites
    • Per-user tenancy, folder-type validation, and audit-friendly decision IDs

    Uniform table density across the workspace

    Every table surface now lands at the same 38px header and 38px row height — CRM, master directory, /raise list and cap table, /agreements analytics, /transactions, /publish leads, /documents leads, /trash, finance customer tables. The CRM geometry lock and the shared `s2x-publish-table` and `s2x-app-table` classes were rewritten to mirror the CRM's flex-cell technique, so rows respect a min-height floor while multi-line content still expands naturally.

    • Uniform 38px header + 38px row across every table component
    • Action buttons on /raise list and /agreements list shrunk from 32px to 24px
    • Tokenized layered shadow (`--shadow-elevated`, `--shadow-elevated-sm`) for popovers and buttons
    • Dark-mode selected-row colour for /documents and /publish contact tables
    • Horizontal rubber-band fix on CRM tables and kanban swim-lanes

    MCP server — Claude × StartupStarter is live

    MCP server — Claude × StartupStarter is live

    The full StartupStarter Agent API is now reachable from Claude.ai, Claude Desktop, Claude Code, and any other MCP-compatible client. 363 tools across 24 modules — CRM, finance, capital, invoices, inbox, calendar, documents, one-pagers, link-in-bio, widget, threads, knowledge, Cortex, agent jobs. Connect once with OAuth, and Claude can read and write across your entire workspace with the same access controls as a human user.

    • OAuth (DCR + PKCE) handshake from claude.ai, no manual key paste required
    • Cloudflare Worker → Fly mcp-server → Supabase agent-api architecture
    • Per-tool scope enforcement plus X-Cortex-Decision-Id audit chain on writes
    • Agent-first pagination (cursor cap lifted 100 → 1000 for agent traffic)
    • First-class agent identity — separate access controls, audit trail, rate limits

    Prerendered landing for crawlers and AI search

    Every public marketing page (home, pricing, about, security, docs, changelog, blog, terms, privacy) is now prerendered into static HTML at build time and served verbatim to crawlers — including the new generation of LLM-powered search bots. The result is faster first paint, complete structured data for indexing, and surfaces that AI search engines can actually parse.

    • GitHub Actions prerender pipeline runs on every push
    • Schema.org JSON-LD on every page (Organization, WebSite, BreadcrumbList, TechArticle)
    • Crawler-aware sitemap, robots.txt, llms.txt, and per-page OG images

    Self-service reliability audit log for agents

    Agents working on the CRM can now file their own work-log entries and risk-register updates directly through the Agent API. Every CRM-touching commit lands a structured audit record without anyone having to file it manually through the admin UI.

    • POST /reliability/audit-log endpoint with scoped sk_w_ key authentication
    • Two-gate security — scope check plus platform-admin verification
    • Mirrors the Work Log tab at /admin/crm-reliability

    Documents, data rooms, one-pagers, and link-in-bio on the Agent API

    Phase B of the Agent API surface build: documents and data rooms (with shared links and visit analytics), one-pager management, link-in-bio control, and the embeddable widget — all reachable from connected agents. This is the foundation for shipping the full Knowledge MCP module two weeks later.

    • documents.* and data_rooms.* scopes added
    • onepagers.* and bio.* scopes for publish-surface control
    • widget.* scope for managing the embeddable site widget

    Agent jobs — autonomous AI on a schedule

    Agent jobs — autonomous AI on a schedule

    40+ preset agents are now available across six categories: sales, fundraising, customer, email, marketing, and operations. Each preset ships with default tools, instructions, and a sensible schedule — start with Observe, move to Suggest, then graduate to Act when the output earns it. Custom jobs are supported too.

    • 41 presets + custom across sales, fundraising, customer, email, marketing, ops
    • Four autonomy levels — observe, suggest, act with approval, act
    • 43 scoped tools across data, intelligence, and action buckets
    • Proposal review queue with 48-hour expiry for Suggest-mode actions

    Assistant jobs — schedule the in-product AI to wake itself up

    Separate from agent jobs, assistant jobs let you schedule the assistant you already chat with to run a task on its own schedule. Same persona, same 30-day memory, full 163-tool registry — useful for morning briefs, weekly recaps, scheduled inbox triage, or any prompt that should run on a clock instead of waiting for you to ask.

    • Scheduled wakeups managed from the AI chat widget header
    • Separate runtime from agent jobs — keeps the assistant's full context intact
    • Each fired wakeup persists into your conversation history

    Cross-module automations

    The trigger-condition-action engine now reaches outside the CRM. One-pager views and form submissions, link-in-bio clicks, widget conversation milestones, data room access, document opens, and shared link visits can all drive the same kinds of automated follow-up work as a deal stage change.

    • module_automations table with first-class triggers from /publish and /widget
    • Same action library as CRM automations — fields, tasks, sequences, Slack, webhooks
    • Execution log unified with the CRM automation log

    CRM reports — preset dashboards and a drag-and-drop builder

    Three preset tabs (Executive, Rep, Account) and three customizable tabs for your own widget layouts. The library covers bar, line, area, donut, scatter, funnel, gauge, and table widgets. Every widget points at a metric (deal count, deal value, custom-field aggregates) with a time window, grouping dimension, and filter.

    • 11 chart types across 9 ECharts and 2 native widgets
    • Composite custom metrics with sum, average, min, max, count aggregations
    • Field-mapping flow so preset reports just work on custom workspaces

    RSS feed sync and article extraction

    RSS feed sync and article extraction

    Monitor competitor and industry feeds directly inside S2X. New connections flow pulls full article content using Readability, surfaces key takeaways, and flags articles worth sharing with investors.

    • Full article extraction with Mozilla Readability
    • Gated connection flow — add, verify, then sync
    • Content HTML rendering in the feed reader

    Bulk deal creation and CRM identity cleanup

    Create multiple deals at once from a CSV or pasted list. We also cleaned up how S2X identifies itself inside the assistant, so tool calls reference the correct product name everywhere.

    • bulk_create_deals tool for batch pipeline imports
    • S2X identity consistency across all assistant responses
    • INTERNAL_TOOL_NAMES sanitization for cleaner logs

    Cross-entity linking for deals, contacts, and companies

    Cross-entity linking for deals, contacts, and companies

    The entity triangle is now fully wired. Link a deal to a contact, and the company auto-populates. Edit inline without leaving the deal drawer. Primary contact assignment ensures the most relevant person surfaces first.

    • Deal ↔ Contact ↔ Company triangle linking
    • Inline deal editor from contact and company views
    • primary_contact_id column for deal-level contact priority

    Cortex v3: full AI learning loop

    Six-step intelligence pipeline deployed — 6,862 lines of SQL and 1,595 lines of TypeScript. Cortex now ingests CRM activity, financial data, and user behavior into a unified event stream, computes signals, and surfaces recommendations.

    Agreement editor with block-based document system

    Agreement editor with block-based document system

    Build, edit, and send agreements without leaving S2X. The new block-based editor supports headings, paragraphs, signature blocks, and clause libraries. Templates let you start from proven structures instead of blank pages.

    • Block-based document editor with drag-and-drop
    • Starter template gallery for SAFEs, NDAs, and advisor agreements
    • Inline signature capture and send-for-signing flow

    CRM performance and reliability improvements

    Tab-gated lazy loading reduced mount-time queries from ~14 to ~5. Query key registry enforces consistent cache management. Stale closure bugs in mutation callbacks eliminated with module-level persistence pattern.

    • Tab-gated lazy loading for all three CRM drawers
    • Query key registry for consistent cache invalidation
    • Module-level _persisted* pattern for mutation callbacks

    Document engagement tracking

    Know who actually read your pitch deck and how long they spent on each page. Engagement analytics surface the investors who are genuinely interested vs. the ones who opened it and bounced.

    Admin dashboard and revenue charts

    Platform administrators now get a dedicated dashboard with revenue charts, user activity metrics, and system health indicators. Charts use real financial data from the operating ledger.