A side-by-side look at the Rows.page and Tableaugen MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Rows.page for data visualization work; choose Tableaugen MCP for data visualization as a local process. You can also run both side by side in one mcpServers block.
push, pin_finding, get_dataset.generate_workbook, profile_dataset, publish_to_cloud.Rows where the two servers differ are marked.
| Spec | R Rows.page | |
|---|---|---|
| Category | Data Visualization | Data Visualization |
| Quality signal | 53/100 · Good | 53/100 · Good |
| Install command | Not confirmed yet | Confirmed |
| Transport | — | Local subprocess (stdio) |
| Auth | No auth required | Not declared |
| Pricing | Freemium | Not declared |
| Required env vars | None listed | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 0 | 0 |
| Directory activity | 0 views 0 installs 0 upvotes | 0 views 0 installs 0 upvotes |
| Tools | 6 | 5 |
| Full listing | View Rows.page | View Tableaugen MCP |
pushPublish rows as a rows.page dataset (or a new version of one) and get a shareable URL. Pass exactly one of csv, tsv, jsonl, json, rows or url. Up to 16 MB inline; use url for bigger files. Identical content returns unchanged: true without a new version. Re-pushes report rows_delta, columns_added/removed and a diff_url. Anonymous datasets expire after 7 days unless kept. Finding views use the rows.page query language in q: `word` or `"two words"` searches text columns; `field:value`, `field:"a b"`, `-field:value`, `field:*` (not null), `-field:*` (null), `field:foo*` (prefix); `field:>20`, `>=`, `<`, `<=`, `field:10..20`, ISO dates (`at:>2026-09-01`); dot paths for nested JSON (`payload.customer.country:NL`); `tags:urgent` means the list contains it; combine with `OR` and parentheses. A q starting with SELECT, WITH or FROM runs as SQL against the table `data`. sort is comma-separated columns, `-` for descending (`-price,name`); cols picks and orders visible columns (`a,b,c`).pin_findingPin a finding (a saved, titled view) to a dataset you own. Finding views use the rows.page query language in q: `word` or `"two words"` searches text columns; `field:value`, `field:"a b"`, `-field:value`, `field:*` (not null), `-field:*` (null), `field:foo*` (prefix); `field:>20`, `>=`, `<`, `<=`, `field:10..20`, ISO dates (`at:>2026-09-01`); dot paths for nested JSON (`payload.customer.country:NL`); `tags:urgent` means the list contains it; combine with `OR` and parentheses. A q starting with SELECT, WITH or FROM runs as SQL against the table `data`. sort is comma-separated columns, `-` for descending (`-price,name`); cols picks and orders visible columns (`a,b,c`).get_datasetRead a dataset: meta, recent versions, findings, columns and the first 20 preview rows.list_datasetsList the datasets kept on your account, newest first. Needs an API key.delete_datasetDelete a dataset you own. Its URL stops working immediately.get_limitsShow your plan, its caps (file size, datasets, version history) and usage.generate_workbookGenerate a Tableau `.twb` / `.twbx` from a CSV path and a natural-language promptprofile_datasetInspect a CSV and return schema, data types, cardinality, and null countspublish_to_cloudPublish a generated workbook to Tableau Cloud or Tableau Serverlist_templatesReturn available dashboard templates (sales, OEE, finance, marketing, etc.)preview_workbookReturn a thumbnail image of a generated workbook for inline previewPaste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
No confirmed install command for Rows.page yet — follow the setup steps linked from its listing page rather than a guessed package name.
{
"mcpServers": {
"tableaugen-mcp": {
"command": "npx",
"args": [
"-y",
"tableaugen-mcp"
]
}
}
}