Docs

Quickstart

Drop SessionSight into your app and confirm the first session lands

Last updated:

Skip the manual install
If you're already coding inside Claude Code, Cursor, Windsurf, Zed, or any other MCP-compatible agent, you don't need to read the rest of this page. Tell the agent to set SessionSight up and walk away. It picks the right SDK, writes the init code, and wires the env vars in the right place for your framework.

Two short commands, then plain English from there. The agent never sees your secret keys, never deletes anything, and is bound to the company and properties you authorize.

Claude Code

bash
/plugin marketplace add SessionSight/sdks
/plugin install sessionsight@sessionsight-sdks

The plugin auto-registers the MCP server. Your first tool call opens the browser so you can authorize the agent against your SessionSight account.

Cursor, Windsurf, Zed, or any MCP client

Point your client’s MCP config at:

text
https://api.sessionsight.com/mcp

The transport is Streamable HTTP. Your client handles the OAuth dance.

Then ask the agent

In any conversation, say something like:

text
set up SessionSight on this app and identify the logged-in user

The agent will:

  • Create a property (or pick one you already have)
  • Install the right SDK package for your framework
  • Generate the init snippet and drop it in the right place
  • Set up env vars with the correct prefix (NEXT_PUBLIC_*, VITE_*, PUBLIC_*, etc.)
  • Optionally wire identify() into your auth flow

For the full picture of what the agent can do, see Use a Coding Agent.

Or install it yourself

If you’d rather wire it by hand, four steps.

1. Create a Property

If you haven’t already, create a property for your domain from the dashboard. You’ll need a property ID and an API key to initialize the SDK. A localhost property is created automatically for local development.

2. Install the SDK

npm install @sessionsight/insights

// Then in your app entry point:
import SessionSight from '@sessionsight/insights';

SessionSight.init({
  publicApiKey: 'YOUR_PUBLIC_API_KEY',
  propertyId: 'YOUR_PROPERTY_ID',
});
Auto-fill your keys
Sign in and select a property and API key from the dropdowns in the top navigation bar. Code examples on this page will automatically fill in your real values.

That’s it. Recording starts automatically. Open your site, navigate around, then check Live View in your dashboard to see your session appear in real-time.

Link sessions to your users so you can filter by user properties and build segments:

typescript
// After your user logs in
SessionSight.identify({
  id: 'user_abc123',
  email: '[email protected]',
  plan: 'pro',
  accountType: 'enterprise',
});

This is optional but recommended. Without it, sessions are tracked by anonymous visitor ID only.

4. Track Goals (optional)

If you want to track conversions or revenue, add the Goals SDK to your server. First create a goal in the dashboard, then increment it from your code:

typescript
import SessionSightGoals from '@sessionsight/goals';

SessionSightGoals.init({
  secretApiKey: 'YOUR_SECRET_API_KEY',
  propertyId: 'YOUR_PROPERTY_ID',
});

await SessionSightGoals.increment('purchase', {
  value: 49.99,
  currency: 'USD',
});

The Goals SDK uses a secret API key and runs on your server, not in the browser. This keeps revenue data tamper-proof.

What Happens Next

Once the SDK is installed, SessionSight automatically captures:

  • Sessions: full recordings you can replay
  • Heatmaps: click, scroll, and movement maps for every page
  • Form Analytics: which fields users fill, skip, and abandon
  • Funnels: how users navigate through your site

No additional configuration needed. PII (emails, phone numbers, credit cards, etc.) is automatically detected and redacted before data leaves the browser. You can fine-tune what gets captured with privacy modes and data attributes.

Dive into the SDK docs for advanced options like manual recording, split testing, feature flags, and revenue goals.