Skip to content

shipgtm/knowledge-base

Repository files navigation

GTM Knowledge Base

An AI assistant that helps go-to-market teams find answers across Slack, Notion, and HubSpot.

For a full walkthrough of the design and how each piece fits together, see our substack Ship GTM.

What it does

The agent connects to the systems where GTM knowledge lives:

  • Slack — channel history, threads, files, and user lookup
  • Notion — playbooks, wikis, specs, and database-backed records
  • HubSpot — contacts and companies, searchable via a hybrid index

Ask a question in natural language and the agent picks the right source, looks it up, and returns a concise answer.

Reference architecture

┌─────────────────────────────────────────────────────────────┐
│                     GTM Knowledge Base Agent                  │
│                        (eve on Vercel)                      │
└──────────────┬──────────────────────┬───────────────────────┘
               │                      │
     MCP via Vercel Connect    Custom tools + scheduled sync
               │                      │
       ┌───────┴───────┐              │
       ▼               ▼              ▼
   Slack MCP      Notion MCP    HubSpot → Turbopuffer
   (live search)  (live search)  (hybrid vector + BM25 search)

Slack and Notion are connected as remote MCP servers. Vercel Connect handles OAuth and token minting so the agent can call each service's MCP tools at query time.

HubSpot follows a different pattern due to their APIs being much slower than the other MCP connections: a daily job pulls contacts and companies from the HubSpot CRM API, embeds them, and upserts them into Turbopuffer for fast hybrid search. Conversations use a dedicated search_hubspot tool against that index.

Tools & services

Service Role Docs
eve Agent framework — tools, schedules, connections, deployment eve.dev/docs
Vercel Connect OAuth and token management for MCP connections (Slack, Notion) vercel.com/docs/connect
Turbopuffer Vector + full-text search index for HubSpot CRM data turbopuffer.com/docs
HubSpot API Source of truth for contacts and companies developers.hubspot.com/docs

Getting started

bun install
bun run dev

You'll need environment variables for Turbopuffer and HubSpot (TURBOPUFFER_API_KEY, HUBSPOT_ACCESS_TOKEN, etc.) and Vercel Connect authorization for Slack and Notion. Use the consent scripts to authorize MCP connections:

bun run slack:consent
bun run notion:consent

See SKILL.md for agent-oriented architecture details, file layout, and tool routing.

Learn more

Read the full explanatory post on Ship GTM →