Overview
Finn is Rise Analytics’ AI analytics assistant for credit unions. It connects to your analytics data warehouse and answers questions in plain English — “How many active members do I have?” — by generating and running the right queries, then synthesizing a natural-language answer (not raw rows).
The Finn SDK (@riseanalytics/finn-sdk) is the client you use to talk to
Finn from your own application. It hides the transport, auth, and streaming
protocol behind a small, framework-agnostic API.
How it fits together
Section titled “How it fits together”Your app ──▶ @riseanalytics/finn-sdk (FinnClient) ──WebSocket──▶ Finn backend ──▶ AI + data warehouse- You call
FinnClientwith a URL and an API key. - The SDK opens a WebSocket, authenticates, sends your question, and streams the answer back as it’s generated.
- The Finn backend does the heavy lifting: planning, querying the warehouse, and composing the answer.
What the SDK gives you
Section titled “What the SDK gives you”- Streaming. Answers arrive token by token through an async-iterable, so you can render them live.
- Conversations. Each turn returns a
conversationId; pass it back to ask follow-ups with full context. - Plain errors. Failures surface as a typed
FinnErrorwith acodeyou can switch on (unauthorized,rate_limited,timeout, …). - Framework-agnostic. No framework required — it’s a plain TypeScript package (ESM + CJS) that runs anywhere Node ≥ 18 does.
Two clients, one Finn
Section titled “Two clients, one Finn”| Package | Use it when |
|---|---|
@riseanalytics/finn-sdk | You’re writing code (a service, a script, a web backend) and want to call Finn directly. |
@riseanalytics/finn-mcp | You want an AI agent (Claude, Cursor, …) to call Finn as a tool via the Model Context Protocol. |
Ready? Head to the Quick Start.