MCP Server Documentation
Connect SPSS InsightGenius to Claude Desktop, Cursor, or automation workflows via the Model Context Protocol.
Connecting Claude Desktop
Once connected, you can chat with your SPSS data inside Claude Desktop. All 14 analysis tools become available — frequency tables, crosstabs with significance, NPS, full tabulations exported to Excel — with no code.
- Get an API key. Generate one at spss.insightgenius.io/admin/keys (Free tier works — 100 respondents/file cap).
-
Open
claude_desktop_config.json:- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
If the file doesn't exist, create it. If it already has
mcpServers, add the entry below alongside the others. - macOS:
-
Paste this snippet (replace
YOUR_INSIGHTGENIUS_API_KEYwith your key from step 1):{ "mcpServers": { "insightgenius": { "url": "https://spss.insightgenius.io/mcp/sse", "headers": { "Authorization": "Bearer YOUR_INSIGHTGENIUS_API_KEY" } } } } - Save and fully quit Claude Desktop (Cmd/Ctrl+Q — not just closing the window). Reopen it.
-
Verify the connection. Click the hammer icon (🔨) below the chat input — you should see
insightgeniuslisted with 14 tools available. Try:"Upload my survey.sav, then show me the frequency of Q1 broken down by gender with significance letters."
/mcp/sse (not /mcp/http), your API key is valid (test it at /docs), and you fully quit + reopened the app.
Other Clients
Cursor IDE
Same JSON snippet as above, pasted into Cursor's MCP settings (Settings → MCP Servers → Add new MCP server).
Claude.ai Web (OAuth Connector)
Connect via Settings → Connectors → "Add custom connector" → URL: https://spss.insightgenius.io/mcp/sse. Authenticates via OAuth — no API key needed.
n8n / Make / Zapier (Automation)
SSE Endpoint: https://spss.insightgenius.io/mcp/sse
Header: Authorization: Bearer YOUR_INSIGHTGENIUS_API_KEY
How It Works
Upload
spss_upload_file stores your file in a 30-minute session. Returns a file_id.
Analyze
Use file_id with any analysis tool. No re-uploading. Get structured results + insights.
Present
Every response includes content_blocks ready for Gamma, PowerPoint, Canva, or Google Slides.
Tools (13)
System
spss_get_server_info
Engine status, available tools, plan limits, supported formats. No auth required.
spss_upload_file
writes
Upload .sav/.csv/.xlsx file. Returns file_id for reuse (30-min TTL, refreshes on use).
Exploration
spss_get_metadata
Variable names, labels, types, AI-detected: suggested banners, groups (MRS/Grid), preset nets.
spss_describe_variable
Deep profile of one variable: distribution, labels, missing values, mean/std/median.
Analysis
spss_analyze_frequencies
Frequency tables for 1-50 variables in one call (batch). Counts, %, mean, std, median.
spss_analyze_crosstab
Cross-tabulation with significance letters (A/B/C), chi-square p-value, optional means + T-test.
spss_analyze_correlation
requires MRX
Correlation matrix (Pearson/Spearman/Kendall) with p-values and significance flags.
spss_analyze_anova
requires MRX
One-way ANOVA with Tukey HSD post-hoc pairwise comparisons.
spss_analyze_gap
requires MRX
Importance-Performance gap analysis with priority classification and quadrant assignment.
spss_summarize_satisfaction
requires MRX
Compact summary: Top 2 Box %, Bottom 2 Box %, Mean for multiple scale variables in one call.
Output
spss_auto_analyze
zero-config
Upload file, get complete Excel. AI auto-detects banners, groups, nets. Returns download URL.
spss_create_tabulation
Full professional Excel: sig letters, nets, means, MRS, grids, custom groups. Returns download URL + tables_summary.
spss_export_data
Convert data to xlsx, csv, parquet, or dta format. Returns download URL.
Response Format
Every analysis tool returns a standard envelope with structured data, a deterministic insight summary, and presentation-ready content blocks:
{
"tool": "spss_analyze_frequencies",
"file_id": "abc123",
"variables_analyzed": ["Q1_satisfaction"],
"sample_size": 796,
"results": [ ... ],
"insight_summary": "Q1: most common is 'Satisfied' (38.2%, n=796)",
"content_blocks": {
"title": "Customer Satisfaction Distribution",
"key_finding": "'Satisfied' is the most common response (38.2%)",
"data_table_markdown": "| Value | % | Count |..."
}
}
content_blocks is tool-agnostic — feed it directly to Gamma, PowerPoint, Canva, or Google Slides.
File Sessions
Upload once, analyze many times. No need to re-send 50MB of data on every call.
1. spss_upload_file(file_base64="...", filename="survey.sav")
→ { file_id: "abc123", ttl_seconds: 1800 }
2. spss_get_metadata(file_id="abc123")
→ { variables: [...], suggested_banners: [...] }
3. spss_analyze_frequencies(file_id="abc123", variables=["Q1", "Q2"])
→ { results: [...], insight_summary: "..." }
Sessions last 30 minutes (sliding window — resets on each use).
Backwards compatible: you can still pass file_base64 directly to any tool.
Supported Formats
| Format | Extension | Metadata |
|---|---|---|
| SPSS | .sav, .por, .zsav | Full (variable labels, value labels, types) |
| CSV | .csv, .tsv | Inferred from column names + dtypes |
| Excel | .xlsx, .xls | Inferred from column names + dtypes |
Authentication
All tools require an API key (sk_live_... or sk_test_...).
- Streamable HTTP: Pass as
Authorization: Bearer YOUR_KEYheader - SSE: Pass as
api_keyparameter in each tool call
Data Privacy
- Stateless: Files processed in-memory, never stored on disk
- Sessions: File data in Redis with 30-min auto-delete TTL
- Downloads: 5-min TTL, then permanently deleted
- AI: Only metadata/labels sent to Haiku — never individual responses
- No retention: No database, no backups, no data sharing
Full policy: spss.insightgenius.io/privacy