Install
$ agentstack add mcp-reatlat-fullstory-claude-plugin ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Fullstory Claude Plugin
Talk to your product data. \ Ask Claude anything about your users — drop-offs, rage clicks, conversion funnels — and get answers backed by real sessions.
- [Install](#quick-install)
- [What it does](#what-it-does)
- [Skills](#skills)
- [Prerequisites](#prerequisites)
- [Troubleshooting](#troubleshooting)
Quick Install
One command in Claude Code:
/plugin marketplace add reatlat/fullstory-claude-plugin
/plugin install fullstory-reatlat@fullstory-marketplace
Also works in Cursor (Marketplace panel, same URL) and VS Code Copilot (Chat: Install Plugin from Source).
No local server. No API keys to juggle. OAuth handles auth — you sign in once and it just works.
Claude Desktop (manual setup)
Claude Desktop doesn't support the plugin marketplace — you get the MCP tools but not the skills/agents. Add this to claude_desktop_config.json:
{
"mcpServers": {
"fullstory": {
"type": "http",
"url": "https://api.fullstory.com/mcp/fullstory"
}
}
}
Config file locations: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS), %APPDATA%\Claude\claude_desktop_config.json (Windows). Restart Claude Desktop after editing.
What It Does
Fullstory records every session on your site. This plugin lets Claude read that data.
Before: Export CSV → pivot table → screenshot → Slack → someone asks "but why?" → repeat.
After: Type a question. Get an answer.
| You ask | Claude does | |----------|------------| | "What's the top frustration on our product right now?" | Builds a rage-click metric across all pages, surfaces the worst offenders, pulls sessions to show you exactly what users are clicking | | "How many users abandoned checkout last month, by device?" | Resolves or builds a funnel metric, attaches segment, computes, returns a table with percentages | | "Show me sessions where enterprise users hit errors on settings" | Builds enterprise segment, finds error sessions, reads each transcript in isolation, synthesizes patterns | | "Is our new onboarding flow actually reducing drop-off?" | Trend metric comparing before/after deploy date, with statistical context | | "Find session #abc123 and tell me why the submit button didn't work" | Opens session, steps through key moments, diffs before/after the click, reports what broke |
It doesn't just answer "how many." It answers "why" — by reading the actual sessions behind the numbers.
[See a real conversation →](EXAMPLE.md) — 10 skills, one investigation, zero SQL.
Skills
Forty-four skills ship with the plugin. Claude loads the right one automatically based on what you ask.
Analytics & Measurement
| Skill | Trigger | What it does | |-------|---------|-------------| | quick-stats | "How many users yesterday?" | One-number answers. Build → compute → present. No analysis overhead. | | general-analysis | Any quantitative question | Full workflow: classify intent, search/build, compute, validate, investigate | | comparisons | A vs B questions (auto) | Picks dimensionality vs segments correctly — prevents silent wrong results | | funnel-doctor | "Where are users dropping off?" | Funnel step analysis, drop-off quantification, session evidence for why | | weekly-digest | "What changed this week?" | Structured report: frustrations, errors, conversion, traffic — week-over-week | | page-performance | "Which page has the most errors?" | Page-level health: error rates, device breakdown, navigation patterns | | experiment-analyzer | "Did the variant win?" | A/B test analysis: impact, significance assessment, segment breakdown, side effects | | retention-analyzer | "Are users coming back?" | N-day retention, cohort stickiness, churn signals, engagement depth | | anomaly-detector | "Did anything unusual happen?" | Proactive scan: spikes, drops, pattern breaks across all key metrics | | campaign-tracker | "How did the email campaign perform?" | UTM-tagged traffic, landing page conversion, channel comparison, ROI signals | | feature-adoption | "Are users using the new feature?" | Adoption funnel: awareness → trial → adoption → retention, segment breakdown | | benchmark-analyzer | "What's our baseline conversion rate?" | Historical baselines, target setting, progress tracking, industry context | | dashboard-builder | "Set up a product health dashboard" | Curated KPI dashboards with north star metrics, auto-saved for weekly review | | predictive-alerts | "Warn me before conversion drops too low" | Trend projection, threshold breach prediction, early warning system | | persona-builder | "What types of users do we have?" | Behavioral personas from real session data, data-driven user profiles | | lifecycle-analyzer | "How many users are at risk of churning?" | New → active → at-risk → churned lifecycle mapping with transition rates | | onboarding-tutor | "I'm new — how do I use this?" | Interactive onboarding, role-specific guides, first query walkthrough | | query-translator | "How do I measure user happiness?" | Translates vague business questions into measurable Fullstory queries | | nps-proxy | "What's our user satisfaction?" | Behavioral NPS alternative — satisfaction proxy from frustration/engagement signals |
Investigation & Debugging
| Skill | Trigger | What it does | |-------|---------|-------------| | frustration-hunter | "What's frustrating users?" | Rage clicks, dead clicks, form abandonment — ranked, with session evidence | | error-forensics | "What's breaking in production?" | JS errors, network failures, console exceptions — root cause from sessions | | session-review | Session URL or bug report | Open → view → diff → close. Visual replay without a video player | | session-search | "Find sessions for user 84721" | Search by user ID, device, browser, page, custom event | | user-journey | "Trace user@example.com's sessions" | Multi-session timeline, friction points, churn signals | | jira-bug-reporter | "File a bug for this session" | Auto-populated bug reports with session URL, errors, repro steps, severity | | customer-360 | "Show me everything about this user" | Full customer snapshot: sessions, purchases, errors, engagement trajectory | | form-analyzer | "Which form field causes drop-off?" | Field-by-field abandonment, validation errors, time-to-complete, mobile forms | | mobile-analyzer | "How's the mobile experience?" | Touch targets, viewport issues, responsive bugs, mobile vs desktop gap | | scroll-depth-analyzer | "Are users reading to the bottom?" | Content visibility, CTA placement, where users stop scrolling per page | | heatmap-generator | "What do users click on most?" | Element-level interaction density, dead click zones, rage click hotspots | | a11y-analyzer | "Can keyboard users navigate this?" | Keyboard traps, focus order, missing labels, WCAG audit from real sessions | | api-monitor | "Are API errors affecting users?" | Endpoint latency, error rates, API-driven UX failures, backend deploy impact | | session-playlist | "Bundle these sessions for the team" | Curate annotated playlists with timestamps, narratives, and key moments | | changelog-detective | "What actually changed after the deploy?" | Diff errors, frustrations, and behaviors before/after — catch undocumented changes |
Operations & Maintenance
| Skill | Trigger | What it does | |-------|---------|-------------| | deploy-radar | "I just deployed — did anything break?" | Before/after comparison: errors, conversion, frustrations | | metric-auditor | "Clean up our metrics" (auto) | Find duplicates, stale segments, misconfigured objects | | cohort-compass | Cohort analysis (auto) | Build, track, reuse segments across analyses | | annotation-ops | "Mark the deploy on the timeline" (auto) | Create deploy markers, experiment windows, incident tags | | revenue-impact | "What does this cost us?" (auto) | Attach dollar estimates to UX issues and conversion drops | | segment-wizard | "Help me build a segment for..." | Guided interactive cohort building for non-technical users | | privacy-auditor | "Are we capturing PII?" | Audit session capture for PII leaks, verify masking and exclusion rules | | webhook-health | "Are our webhooks delivering?" | Webhook delivery monitoring, integration health, data pipeline verification | | slack-reporter | "Send this to #product-engineering" | Format findings as scannable Slack messages with evidence links and action items | | incident-responder | "We have an incident — checkout is down" | Structured response: triage, blast radius, session evidence, status updates |
Agents (isolated context workers)
| Agent | What it does | |-------|-------------| | session-context | Reads a single session transcript in isolation — keeps main context clean | | batch-session-reader | Reads multiple sessions in parallel — 5x faster for investigation workflows |
Prerequisites
- Fullstory account with MCP Beta access
- StoryAI features enabled — an org admin toggles this in Settings > Account Management > StoryAI Features
- Claude Code, Cursor, or VS Code Copilot
Without StoryAI enabled, the server connects but exposes zero tools. If you see "connected but no tools," that's the fix.
How It Works
You → Claude Code → Fullstory MCP Server (api.fullstory.com) → Your Fullstory Data
↑ OAuth, no local process
The plugin wires up three things:
| File | Role | |------|------| | .mcp.json | Points Claude at https://api.fullstory.com/mcp/fullstory | | skills/*/SKILL.md | Teaches Claude how to think about Fullstory data — mental models, workflows, edge cases | | agents/*.md | Isolated context workers for heavy lifting (session transcripts) |
The MCP server exposes tools like build_metric, compute_metric, get_sessions, session_open, session_view, session_diff — you don't memorize these. You ask questions. Claude picks the tools.
OAuth Scopes
The OAuth flow requests read-only access to your Fullstory org. No write scopes — the plugin queries and analyzes, never modifies.
| Scope | What it grants | |-------|----------------| | sessions:read | Session transcripts, replay events, session-level search | | playback:read | Session playback (open, view, step through, diff) | | playback.spec:read | Page definitions and element specs for playback | | playback.page.definitions:read | Page-level breakdowns within sessions | | specs.mappings:read | Element-to-spec mappings for session analysis | | metrics:read | Build and compute custom metrics | | metrics.funnel:read | Funnel metrics — conversion, drop-off, step analysis | | metrics.page:read | Page-level metrics — error rates, performance | | search:read | Search sessions, events, and users by criteria | | search.metadata:read | Search metadata — available fields, operators, values | | library.objects:read | Find existing saved segments and metrics before building new ones |
All scopes are read-only. Fullstory MCP does not expose write scopes — segments and metrics created during a session return a link for manual saving in the Fullstory UI.
Troubleshooting
| Problem | Fix | |---------|-----| | "Connected but no tools" | StoryAI features are off. Admin: enable in Settings > Account Management > StoryAI Features | | OAuth fails | Org might not be in MCP Beta. Contact Fullstory support. | | Rate limited | 3 req/s, 20-request burst. Space out big queries or narrow time ranges. | | Zero results that seem wrong | The general-analysis skill auto-validates — it'll broaden filters, expand time range, and cross-check before reporting zero |
Full FAQ: developer.fullstory.com/mcp/faq
License
MIT © Alex Zappa
Skill content adapted from fullstorydev/fullstory-skills (MIT).
[📝 Blog post: how we built 44 skills](BLOG.md) · [📋 MCP registry submission guide](SUBMIT.md) · [💬 Example conversation](EXAMPLE.md)
Not affiliated with Fullstory. Fullstory is a trademark of Fullstory, Inc.
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: reatlat
- Source: reatlat/fullstory-claude-plugin
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.