Skip to content

Palm Pulse

Status: Shipped

Domain: Pulse Linear Projects: Palm Chat


What It Does

Palm Pulse is the intelligence layer — all reactive and proactive AI-powered features that help treasury teams get answers, insights, and alerts without manual effort.

The first Pulse feature is Palm Chat, an AI assistant embedded in the platform that lets treasury teams ask questions about their data in natural language. Behind the scenes, Palm Chat connects to the treasury data layer via MCP (Model Context Protocol), translating questions into queries against transactions, balances, forecasts, and more.

Beyond chat, Pulse will expand to include proactive intelligence: automated insights, anomaly notifications, and report delivery through channels like Slack — meeting treasurers where they already work.


Capabilities

Capability Status Notes
Palm MCP (internal only) Shipped MCP server on Cloud Run for internal Palm team use only (via Claude/Cursor). BigQuery access, schema-first workflow. Restricted to @usepalm.com domain.
Palm Chat infrastructure Shipped Customer-facing chat with customer isolation via GCP service account impersonation, row-level security on customer_public_id
Palm Chat in platform Shipped Conversation threads, context management (last 20 messages + summarization), user summaries across 10 threads
AI Digest (homepage) Shipped LLM-generated daily summary with structured sections (balances, transactions, forecasts). Structured JSON validated against real records.
Customer Slack App foundations Shipped /ask slash command using same backend as Palm Chat
Scheduled agent workflows In development Data report agents that run on schedule, produce PDF/Excel output. Demoed internally.
Forecast referencing in chat In development Reference specific forecasts from the app to start chat with proper context
Pulse branding Shipped Renamed digest and chat to "Pulse" with icon change

What's NOT Included (Yet)

  • Natural language forecast scenario creation ("what if payroll is delayed 3 days?") — Simon prototyping
  • Proactive anomaly alerts (push notifications when something unexpected happens)
  • Personalized digest (learning from user behavior to customize blocks per role)
  • Unstructured document ingestion (policies, investment terms as retrieval context — requires RAG)
  • Chat toggle on every page (contextual chat referencing current dashboard)
  • LLM-assisted flexible file ingestion for new data types
  • Email-based intelligence delivery

How It Works (Technical)

Component Technology Notes
MCP server Cloud Run (Python) First externally-exposed Python service. MCP tools imported directly as functions (no inter-service calls).
Data access BigQuery + dbt Silver + gold layers. Gold used ~80-90% of the time.
Security GCP service account impersonation Per-customer service accounts with row-level security on customer_public_id. Infrastructure-enforced — cannot be bypassed by prompt injection.
Schema discovery dbt persist_docs + get_schema tool LLM must retrieve schema before executing queries (eliminates hallucination).
Chat backend Treasury API (Go) + Python AI service Thread management in Go, generative AI in Python. Firebase tokens for auth.
Chat UI Web app Embedded in Palm platform
Slack integration Slack App /ask command, same backend as web chat


Last updated: 2026-03-10