crosstabs
Free survey crosstabs with local analysis and temporary hosted MCP project workflows.
What it can do
What data it sees
Do you need an account
No: the server works without sign-in
Free survey crosstabs with local analysis and temporary hosted MCP project workflows.
How to connect
How to connect crosstabs to Claude
The server address to paste into Claude settings:
https://mcp.crosstabs.com/mcp
- Open Claude (claude.ai or the desktop app).
- Go to Settings → Connectors.
- Click Add custom connector.
- Paste the server address copied below into Remote MCP server URL and click Add.
- In a chat, click + → Connectors and switch the new connector on.
Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.
Authorization
After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.
How to connect crosstabs to ChatGPT
The server address to paste into ChatGPT settings:
https://mcp.crosstabs.com/mcp
- Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
- Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
- Open Settings → Connectors and click Create.
- Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
- Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
- In a new chat open + → Apps/Connectors and enable the connector.
OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.
Authorization
On first use ChatGPT opens the service's sign-in window. Sign in and approve access.
How to connect crosstabs to Cursor
The server address to paste into Cursor settings:
https://mcp.crosstabs.com/mcp
Fastest: click Open in Cursor below and confirm the prompt.
Manually:
- In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
- Paste the JSON copied below into
~/.cursor/mcp.json(per project:.cursor/mcp.jsonin the repo root). - Save the file. The server appears in the MCP list; authorize it there if asked.
Authorization
If the service needs sign-in, an authorize button appears next to the server in the MCP list.
Server tool list (52)
Raw names from tools/list. Only developers need these.
| search | Discover fixed Crosstabs methodology, limitations, and evidence pages. |
| fetch | Fetch one fixed Crosstabs evidence record by identifier. |
| analyze_crosstab | Compute deterministic statistics from a bounded aggregate contingency matrix. |
| render_crosstab | Render a deterministic evidence-linked aggregate crosstab widget. |
| get_started | Get client-specific connection guidance, a health check, and the first prompt to try. No account, workspace, or upload is required. |
| run_demo_analysis | Run an instant, upload-free tour using a fixed synthetic survey table. Returns an AI-ready answer, numbers, interpretation, warnings and next action. |
| get_headless_capabilities | Describe the full accountless hosted MCP, privacy, retention and execution limits. |
| get_runtime_status | Inspect this hosted runtime and its fixed resource limits. |
| create_workspace | Create a private temporary workspace without signing in. Explain that uploads leave the device, then obtain consent. The secret token is the sole access credential and cannot be recovered. |
| get_workspace | List this temporary workspace's files, recent jobs and expiry. Includes a private upload link. |
| delete_workspace | Permanently delete the temporary workspace and all active project, file and job data. This revokes its token. |
| get_job | Read a queued analysis job. Wait at least two seconds between polls. Only succeeded jobs contain completed results; failed jobs contain an error. Use get_download_link for artifact IDs, or get_rendered_table for completed render_project_table jobs. |
| get_download_link | Create a private browser download link for an uploaded file or generated artifact in this workspace. The link contains a secret in its fragment; never share it publicly. |
| get_rendered_table | Render the canonical aggregate result of a succeeded render_project_table job. Respondent rows are never included in the widget. |
| analyze_survey | Run a governed crosstab for an existing hosted project. This task shortcut uses the same deterministic run_table engine and returns a job to poll with get_job. |
| build_tab_book | Build a reusable tab book for an existing hosted project. This task shortcut uses the same deterministic run_tab_book engine and returns a job to poll with get_job. |
| compare_survey_waves | Compare compatible saved survey waves. This task shortcut uses the same deterministic compare_waves engine and preserves all comparability warnings. |
| create_editable_report | Generate an editable PPTX or DOCX report pack from an existing hosted project. Use get_download_link on the returned artifact ID after the job succeeds. |
| create_analysis_plan | Create a portable revision-bound document for explicitly selected saved tables without mutating the project. Queues a hosted job; use get_job to retrieve its result. |
| validate_analysis_plan | Preflight a portable analysis plan against the current workspace project and return actionable validation issues. Queues a hosted job; use get_job to retrieve its result. |
| run_analysis_plan | Validate and execute a portable plan against one loaded project revision, returning aggregate evidence and review findings. Queues a hosted job; use get_job to retrieve its result. |
| preview_raking_weights | Preview explicit population margins against the saved active wave. Returns aggregate balance, trimming and effective-base diagnostics with a revision-bound review fingerprint; respondent weights remain in the temporary hosted workspace. Queues a hosted job; use get_job to retrieve its result. |
| apply_raking_weights | Recompute a reviewed weighting fingerprint and atomically save a new sampling-weight column and definition with human approval, warning acknowledgement, revision checks and replay. Does not authorize ordinary or complex-survey inference. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields. |
| create_project | Create an empty, versioned research project. Queues a hosted job; use get_job to retrieve its result. |
| import_project | Verify and import a full-data Crosstabs project package as a new workspace copy. Queues a hosted job; use get_job to retrieve its result. |
| import_dataset | Validate and import respondent records into a project wave. Queues a hosted job; use get_job to retrieve its result. |
| profile_dataset | Return bounded types, missingness and cardinality diagnostics. Queues a hosted job; use get_job to retrieve its result. |
| define_row_set | Create or replace a reusable ordered row-variable set, with an optional cases-or-responses denominator for one detected multi-select question. Queues a hosted job; use get_job to retrieve its result. |
| define_banner | Create or replace a reusable multilevel banner. Queues a hosted job; use get_job to retrieve its result. |
| apply_filter | Create and assign an auditable project filter. Queues a hosted job; use get_job to retrieve its result. |
| set_weight | Create and assign a validated weighting definition. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields. |
| run_table | Compute one crosstab with diagnostics and evidence metadata. Queues a hosted job; use get_job to retrieve its result. |
| render_project_table | Render one revision-bound saved table execution through the canonical workspace evidence widget. Queues a hosted job; use get_job to retrieve its result. |
| update_variable_metadata | Apply an approved label, coding, missing-value, measurement, role, and display-format update without rewriting respondent rows. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields. |
| propose_transformation | Create a draft, data-free transformation recipe for later review. Queues a hosted job; use get_job to retrieve its result. |
| review_transformation | Approve or reject a draft transformation recipe with recorded human approval. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields. |
| apply_transformation | Apply an approved transformation to one workspace wave with recorded human approval and reversible provenance. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields. |
| undo_transformation | Mark one applied transformation run undone and restore its derived variable in this workspace. Queues a hosted job; use get_job to retrieve its result. |
| run_complex_survey_method | Run a declared-design OLS, logistic, or K-means method and record bounded canonical evidence. Queues a hosted job; use get_job to retrieve its result. |
| run_tab_book | Compute the selected tab-book recipe with progress and cancellation. Queues a hosted job; use get_job to retrieve its result. |
| compare_waves | Compare compatible tables across project waves. Queues a hosted job; use get_job to retrieve its result. |
| undo_change | Reverse a recorded reversible project mutation. Queues a hosted job; use get_job to retrieve its result. |
| replace_dataset | Import a replacement wave without overwriting prior source data. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields. |
| detect_schema_drift | Inspect wave compatibility and propose repairs without mutation. Queues a hosted job; use get_job to retrieve its result. |
| repair_schema | Apply an approved, reversible schema repair plan. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields. |
| generate_report_pack | Generate an editable evidence-linked PPTX or DOCX pack. Queues a hosted job; use get_job to retrieve its result. |
| refresh_report_pack | Refresh generated regions while preserving declared manual regions. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields. |
| export_project | Export a definition-only package by default or an explicit full-data package to the temporary hosted workspace. Queues a hosted job; use get_job to retrieve its result. |
| list_projects | List redacted summaries from the workspace project store. Queues a hosted job; use get_job to retrieve its result. |
| inspect_project | Inspect a redacted workspace project graph, capabilities and current revision. Queues a hosted job; use get_job to retrieve its result. |
| get_audit_history | Return paginated append-only project audit events. Queues a hosted job; use get_job to retrieve its result. |
| define_survey_design | Create an approved immutable Taylor or replicate-weight survey design, or assign an identical existing design, atomically across selected tables. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields. |